ObjFW  History of src/OFXMLAttribute.m of c5f91347e72528ad

History of file src/OFXMLAttribute.m at check-in c5f91347e72528ad

2024-04-03
02:16
Change license to LGPLv3 only file: [d69d481a36] check-in: [7413a728a7] user: js, branch: trunk, size: 3113 [annotate] [blame] [check-ins using] [diff]
2024-01-02
17:17
Update copyright file: [4bbe01e11d] check-in: [26ddd2e4e4] user: js, branch: trunk, size: 2905 [annotate] [blame] [check-ins using] [diff]
2023-04-10
19:22
Remove OFSerialization

While the idea sounds nice that the tag name is the class, this means the
serialization includes whether something is mutable or immutable. This means
doing as much as making something immutable changes the serialization, which
can then cause issues after being deserialized. file: [5c47193c55] check-in: [6ce0093f8d] user: js, branch: trunk, size: 2905 [annotate] [blame] [check-ins using] [diff]

2023-01-06
09:04
Update copyright file: [b0ce591345] check-in: [8939cbdb52] user: js, branch: trunk, size: 4264 [annotate] [blame] [check-ins using] [diff]
2022-09-04
13:17
OFXMLElement: Remove defaultNamespace property file: [fef93ca0aa] check-in: [eed200181b] user: js, branch: trunk, size: 4264 [annotate] [blame] [check-ins using] [diff]
2022-02-12
07:46
Update copyright file: [f2a6cbc394] check-in: [1a86b8175b] user: js, branch: trunk, size: 4102 [annotate] [blame] [check-ins using] [diff]
2021-04-19
21:54
Rename a few more constants file: [21dca426df] check-in: [458420998c] user: js, branch: new-naming-convention, size: 4102 [annotate] [blame] [check-ins using] [diff]
2021-04-18
15:55
Rename all functions in macros.h file: [62ddc040cf] check-in: [7392685ffc] user: js, branch: new-naming-convention, size: 4106 [annotate] [blame] [check-ins using] [diff]
2021-03-07
20:25
*.m: Fold methods into one line where it fits file: [6ec2a305ed] check-in: [1b82d3bf4f] user: js, branch: trunk, size: 4109 [annotate] [blame] [check-ins using] [diff]
2021-01-02
22:04
Update copyright file: [29268ae3e9] check-in: [374e1a1bfa] user: js, branch: trunk, size: 4115 [annotate] [blame] [check-ins using] [diff]
2020-10-10
14:27
OFObject: Change type of -[hash] to unsigned long

The internal hash is still 32 bit in most places, but this way, it is at
least not baked into the API and ABI and can be upgraded later, should
that ever be necessary. file: [182fa6d94f] check-in: [aeb403a1ed] user: js, branch: trunk, size: 4204 [annotate] [blame] [check-ins using] [diff]

2020-01-02
01:51
Update copyright file: [e9a34efaab] check-in: [c7f0229795] user: js, branch: trunk, size: 4199 [annotate] [blame] [check-ins using] [diff]
2019-03-08
00:35
Use dot syntax file: [87a544a7c5] check-in: [bceb7ed4c9] user: js, branch: trunk, size: 4196 [annotate] [blame] [check-ins using] [diff]
2019-01-03
19:13
Update copyright file: [bc86f5c2b5] check-in: [0509d7a844] user: js, branch: trunk, size: 4220 [annotate] [blame] [check-ins using] [diff]
2018-01-03
19:49
Update copyright notice file: [880be3a454] check-in: [7e5c81e186] user: js, branch: trunk, size: 4214 [annotate] [blame] [check-ins using] [diff]
2017-11-11
23:27
Small optimization for -[isEqual:] file: [4c88350128] check-in: [526feacebc] user: js, branch: trunk, size: 4191 [annotate] [blame] [check-ins using] [diff]
2017-10-17
00:33
Do not use implicit method return types

Instead, explicitly declare them, as OF_ASSUME_NONNULL_{BEGIN,END} does
not apply to implicit return types. This means that after this commit,
all init methods have a nonnull return type, as they should have. file: [3298ffe82d] check-in: [2f4e0df8be] user: js, branch: trunk, size: 4154 [annotate] [blame] [check-ins using] [diff]

2017-09-28
23:02
Enable -Wnullable-to-nonnull-conversion and adjust file: [292617ba84] check-in: [2de9660312] user: js, branch: trunk, size: 4124 [annotate] [blame] [check-ins using] [diff]
2017-05-21
21:28
Prefix private methods with of_ instead of OF_

This matches Apple's style. file: [464c2003f8] check-in: [6b77a5dd8b] user: js, branch: trunk, size: 4112 [annotate] [blame] [check-ins using] [diff]

2017-05-07
23:14
Add OF_UNAVAILABLE file: [6356477585] check-in: [16c05e87e1] user: js, branch: trunk, size: 4112 [annotate] [blame] [check-ins using] [diff]
20:10
Small code style change

Casts are now written like types in variable declarations. file: [08b89a1a1d] check-in: [4af49a13c3] user: js, branch: trunk, size: 4076 [annotate] [blame] [check-ins using] [diff]

2017-01-09
17:36
Update copyright

Forgot to add 2017, even though I already did quite some changes in
2017. file: [c87ea13e1e] check-in: [44f45c2e35] user: js, branch: trunk, size: 4061 [annotate] [blame] [check-ins using] [diff]

2016-01-03
00:43
Update copyright

While at it, also update the mail address. file: [f82f6e9583] check-in: [cec0f072f8] user: js, branch: 0.8, size: 4108 [annotate] [blame] [check-ins using] [diff]

00:41
Update copyright

While at it, also update the mail address. file: [65bd213eb3] check-in: [2a27cf3000] user: js, branch: trunk, size: 4055 [annotate] [blame] [check-ins using] [diff]

2015-11-29
11:43
Make properties a requirement and clean up code

This increases the required GCC version from 4.0 to 4.6 (exception:
Apple GCC, which already supports this with >= 4.0 starting with OS X
10.5). Since even GCC 4.6 is really old by now, there is no point in
still supporting something even older and making the code ugly because
of that. While some hardware and OS support was dropped from GCC 4.6
compared to GCC 4.0, there is nothing in there that would be an
interesting target with the exception of BeOS maybe - but a port to BeOS
can also be achieved using the Haiku support. The other dropped OSes are
mostly old versions of OSes while newer ones are still being supported
(and those newer versions of those OSes still support the same
hardware). file: [b71bf6d4d2] check-in: [48980f2297] user: js, branch: trunk, size: 4051 [annotate] [blame] [check-ins using] [diff]

2015-01-03
20:57
Update copyright file: [37b2f68d9a] check-in: [cfd374b906] user: js, branch: trunk, size: 4104 [annotate] [blame] [check-ins using] [diff]
2014-06-21
21:43
Move all macros from OFObject.h to macros.h

This means that OFObject.h imports macros.h now, making it unnecessary
to manually import macros.h in almost every file. And while at it, also
import autorelease.h in OFObject.h, so that this doesn't need to be
manually imported in almost every file as well. file: [5edd5a2978] check-in: [13ee56edf3] user: js, branch: trunk, size: 4098 [annotate] [blame] [check-ins using] [diff]

2014-05-04
23:57
Move -[setStringValue:] to OFXMLNode file: [15d4c89e57] check-in: [bb63873748] user: js, branch: trunk, size: 4142 [annotate] [blame] [check-ins using] [diff]
2014-01-04
00:24
Update copyright. file: [de4a0a8f01] check-in: [3b97fc3cd9] user: js, branch: trunk, size: 3995 [annotate] [blame] [check-ins using] [diff]
2013-08-01
23:07
OFXMLParser: Improve handling of whitespaces. file: [37b3db44bd] check-in: [a69e13fa8d] user: js, branch: trunk, size: 3989 [annotate] [blame] [check-ins using] [diff]
2013-06-22
12:12
Rework exceptions.

This mostly removes the argument for the class in which the exception
occurred. As backtraces were recently added for all platforms, the
passed class does not give any extra information on where the exception
occurred anymore.

This also removes a few other arguments which were not too helpful. In
the past, the idea was to pass as many arguments as possible so that it
is easier to find the origin of the exception. However, as backtraces
are a much better way to find the origin, those are not useful anymore
and just make the exception more cumbersome to use. The rule is now to
only pass arguments that might help in recovering from the exception or
provide information that is otherwise not easily accessible. file: [476d95eb23] check-in: [3d16a30f41] user: js, branch: trunk, size: 3989 [annotate] [blame] [check-ins using] [diff]

2013-03-04
17:20
Replace BOOL with bool.

The only places where BOOL is left are those where they are required by
the ABI. file: [7c243af737] check-in: [c5ef582958] user: js, branch: trunk, size: 4044 [annotate] [blame] [check-ins using] [diff]

2013-02-12
18:22
Prefix all ivars with an underscore. file: [a242f67939] check-in: [e40729d406] user: js, branch: trunk, size: 4028 [annotate] [blame] [check-ins using] [diff]
2013-01-09
22:24
Update copyright. file: [39e877686b] check-in: [813c00ccf0] user: js, branch: trunk, size: 3921 [annotate] [blame] [check-ins using] [diff]
2012-11-12
11:55
Add +[attributeWithName:stringValue:]. file: [a8302232a0] check-in: [fd4f24cc22] user: js, branch: trunk, size: 3915 [annotate] [blame] [check-ins using] [diff]
2012-10-09
15:07
Make use of instancetype. file: [cc7877f544] check-in: [fb515e8e24] user: js, branch: trunk, size: 3531 [annotate] [blame] [check-ins using] [diff]
2012-08-10
20:08
Directly use the runtime's autorelease pools.

This greatly improves performance, as it gets rid of the overhead of
OFAutoreleasePool. file: [3e96efbf3c] check-in: [1255f3a11a] user: js, branch: trunk, size: 3510 [annotate] [blame] [check-ins using] [diff]

2012-07-12
01:28
Don't access isa directly. file: [9f7e711096] check-in: [8892ae9fcc] user: js, branch: trunk, size: 3533 [annotate] [blame] [check-ins using] [diff]
2012-02-01
13:42
Clean up the properties mess. file: [506cef53d5] check-in: [c1b35e1495] user: js, branch: trunk, size: 3524 [annotate] [blame] [check-ins using] [diff]
2012-01-05
00:56
Update copyright. file: [b5c4c645a4] check-in: [ce70e17b38] user: js, branch: trunk, size: 3563 [annotate] [blame] [check-ins using] [diff]
2011-10-04
13:14
Split OFXMLElement into OFXML{Element,Characters,CDATA,Comment}. file: [dcb09a451f] check-in: [03f14bf019] user: js, branch: trunk, size: 3557 [annotate] [blame] [check-ins using] [diff]
2011-09-28
00:05
Add OFXMLNode as a common base class for OFXMLElement & OFXMLAttribute. file: [bdb655cad5] check-in: [96c3df8f67] user: js, branch: trunk, size: 3387 [annotate] [blame] [check-ins using] [diff]
2011-09-22
23:25
Exceptions are now autoreleased.

This is safe as an "exception loop" can't happen, since if allocating
an exception fails, it throws an OFAllocFailedException which is
preallocated and can always be thrown.

So, the worst case would be that an autorelease of an exception fails,
triggering an OFOutOfMemoryException for which there is no memory,
resulting in an OFAllocFailedException to be thrown. file: [04b01cd2af] check-in: [e1e7ffa903] user: js, branch: trunk, size: 3649 [annotate] [blame] [check-ins using] [diff]

2011-09-17
19:18
Make hashes independant of endianess in OF{Float,Double}{Vector,Matrix}.

Also removes unnecessary OF_HASH_ADD_INT* macros (except
OF_HASH_ADD_INT32 which was often used to hash hashes and is now called
OF_HASH_ADD_HASH). file: [d248ebf982] check-in: [f3db074478] user: js, branch: trunk, size: 3640 [annotate] [blame] [check-ins using] [diff]

2011-09-09
13:35
[pool release] can never throw by convention now. file: [72bfa63edb] check-in: [798d9e6320] user: js, branch: trunk, size: 3643 [annotate] [blame] [check-ins using] [diff]
2011-06-30
18:33
Add -[hash] to OFXMLElement and OFXMLAttribute. file: [8ed5b9d71d] check-in: [0ae2dee38f] user: js, branch: 0.5, size: 2601 [annotate] [blame] [check-ins using] [diff]
18:27
Add -[isEqual:] to OFXMLElement and OFXMLAttribute. file: [ea5e3160de] check-in: [05c094a39f] user: js, branch: 0.5, size: 1778 [annotate] [blame] [check-ins using] [diff]
2011-06-28
01:51
Change serialization format to be way more readable and shorter. file: [836db12fdb] check-in: [756bb26c98] user: js, branch: trunk, size: 3670 [annotate] [blame] [check-ins using] [diff]
2011-06-26
23:54
Add -[{decimal,hexadecimal,float,double}Value] to OFXMLAttribute. file: [6b3b878926] check-in: [0952a96827] user: js, branch: trunk, size: 4065 [annotate] [blame] [check-ins using] [diff]
2011-06-05
19:27
Add OFNull class. file: [259ae30ded] check-in: [183825f113] user: js, branch: trunk, size: 3803 [annotate] [blame] [check-ins using] [diff]
2011-06-04
16:07
Add -[hash] to OFXMLElement and OFXMLAttribute. file: [cce5966614] check-in: [a698b98203] user: js, branch: trunk, size: 3802 [annotate] [blame] [check-ins using] [diff]
14:00
Add -[isEqual:] to OFXMLElement and OFXMLAttribute. file: [a89f552160] check-in: [cee604408e] user: js, branch: trunk, size: 3558 [annotate] [blame] [check-ins using] [diff]
2011-06-03
15:14
Add deserialization. file: [583d33a3b1] check-in: [dca3061dfc] user: js, branch: trunk, size: 3173 [annotate] [blame] [check-ins using] [diff]
2011-05-14
12:26
Use XML for serialization.

This way, we don't need a new parser and don't use a new format. file: [be193dc061] check-in: [494dca4ae4] user: js, branch: trunk, size: 2272 [annotate] [blame] [check-ins using] [diff]

2011-05-12
18:27
Add version to serialization and add serialization to more classes. file: [a0cfce89af] check-in: [ace6f683f7] user: js, branch: trunk, size: 2156 [annotate] [blame] [check-ins using] [diff]
2011-01-01
20:19
Change license. file: [1771d20c62] check-in: [da6b3d26cb] user: js, branch: trunk, size: 1447 [annotate] [blame] [check-ins using] [diff]
2010-10-25
23:03
Clean up a lot of code (mostly init methods) and fix a missing rethrow. file: [beaa9ae3cf] check-in: [8a7ca573c4] user: js, branch: trunk, size: 1191 [annotate] [blame] [check-ins using] [diff]
2010-09-08
21:17
Fix Objective C++ compatibility. file: [2b47f3dee2] check-in: [9d6716470e] user: js, branch: trunk, size: 1128 [annotate] [blame] [check-ins using] [diff]
2010-06-12
20:47
Added: Move a few classes and categories so they have their own files. file: [97f1780df3] check-in: [67917b918a] user: js, branch: trunk, size: 1147 [annotate] [blame] [check-ins using]