ObjFW  History of src/OFIRI.h of 7413a728a7973303

History of file src/OFIRI.h at check-in 7413a728a7973303

2024-08-17
09:51
Move private functions into private headers file: [876405bbfe] check-in: [b829f3e798] user: js, branch: trunk, size: 12289 [annotate] [blame] [check-ins using] [diff]
2024-06-17
21:08
Always use <ObjFW/ObjFW.h> in documentation file: [d3be3e515c] check-in: [164f2fb4bf] user: js, branch: trunk, size: 12520 [annotate] [blame] [check-ins using] [diff]
2024-04-29
21:42
Properly hide private symbols file: [6f424a4bd0] check-in: [f16bccc7b3] user: js, branch: trunk, size: 12520 [annotate] [blame] [check-ins using] [diff]
2024-04-03
02:16
Change license to LGPLv3 only file: [46c48a2808] check-in: [7413a728a7] user: js, branch: trunk, size: 12472 [annotate] [blame] [check-ins using] [diff]
2024-03-10
18:44
OFIRI: Add methods for path extension file: [48519fe9fc] check-in: [0ca94307e6] user: js, branch: trunk, size: 12264 [annotate] [blame] [check-ins using] [diff]
16:23
OFIRI: Add -[IRIByDeletingLastPathComponent] file: [d4857e1b44] check-in: [e832f884e6] user: js, branch: trunk, size: 11763 [annotate] [blame] [check-ins using] [diff]
2024-02-03
08:53
Fix typos in documentation found by spell checker file: [5b4311643f] check-in: [19f3948a26] user: js, branch: 1.0, size: 11627 [annotate] [blame] [check-ins using] [diff]
08:49
Fix typos in documentation found by spell checker file: [d647ebbbce] check-in: [f97dc452b1] user: js, branch: trunk, size: 11627 [annotate] [blame] [check-ins using] [diff]
2024-01-02
17:17
Update copyright file: [30cbd259c9] check-in: [26ddd2e4e4] user: js, branch: trunk, size: 11625 [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: [659e656a72] check-in: [6ce0093f8d] user: js, branch: trunk, size: 11625 [annotate] [blame] [check-ins using] [diff]

2023-01-06
09:04
Update copyright file: [79cb8c8321] check-in: [8939cbdb52] user: js, branch: trunk, size: 11670 [annotate] [blame] [check-ins using] [diff]
2022-11-26
23:05
OFIRI: Minor documentation improvement file: [3d78ef4d4f] check-in: [8c62d4520a] user: js, branch: trunk, size: 11670 [annotate] [blame] [check-ins using] [diff]
01:29
OFIRI: Improve documentation file: [dbc29e6a1a] check-in: [3e3b00eb93] user: js, branch: trunk, size: 11620 [annotate] [blame] [check-ins using] [diff]
2022-11-25
23:15
-[IRIByAddingPercentEncodingForUnicodeCharacters] file: [00fdae8a0e] check-in: [f77acec498] user: js, branch: trunk, size: 11581 [annotate] [blame] [check-ins using] [diff]
2022-11-24
00:21
Renamed src/OFURI.h → src/OFIRI.h. Rename OFURI to OFIRI file: [4e3a03862f] check-in: [23272e6d43] user: js, branch: trunk, size: 11406 [annotate] [blame] [check-ins using] [diff]
2022-10-21
13:07
Document more exceptions file: [90c837e175] check-in: [a62b254fda] user: js, branch: trunk, size: 11384 [annotate] [blame] [check-ins using] [diff]
2022-10-11
19:27
OFURI: Make scheme and path nonnull

This is as per the RFC, which says the scheme and path can never be
missing, while the path can be empty. file: [b3a4d03434] check-in: [3e455c4839] user: js, branch: trunk, size: 11236 [annotate] [blame] [check-ins using] [diff]

00:18
OFURI: Remove percentEncodedScheme

The scheme does not allow percent encoding. file: [9ffb55b5cf] check-in: [13ead1212f] user: js, branch: trunk, size: 11331 [annotate] [blame] [check-ins using] [diff]

2022-10-04
22:22
OF*Archive: Share +[URIForFile:inArchive:] code file: [80857913fd] check-in: [519c277156] user: js, branch: trunk, size: 11575 [annotate] [blame] [check-ins using] [diff]
21:33
Add +[OFZIPArchive URIForFile:inArchive:]

This allows constructing a URI to access a file within an archive. file: [0e7faecce0] check-in: [19bbbbd95d] user: js, branch: trunk, size: 11579 [annotate] [blame] [check-ins using] [diff]

2022-10-03
22:18
A few minor documentation fixes file: [63067c2093] check-in: [694da470d4] user: js, branch: trunk, size: 11505 [annotate] [blame] [check-ins using] [diff]
2022-09-29
21:53
OFURI: Make query items an array of pairs

With a dictionary the order is lost and keys cannot exist more than
once. file: [ef45469449] check-in: [bd6dd6dd00] user: js, branch: trunk, size: 11489 [annotate] [blame] [check-ins using] [diff]

2022-09-28
21:40
Renamed src/OFURL.h → src/OFURI.h. Rename OFUR{L -> I} in preparation for URI support file: [4aa8c42360] check-in: [e7ab06503c] user: js, branch: trunk, size: 11351 [annotate] [blame] [check-ins using] [diff]
2022-09-26
20:32
Document more exceptions file: [c47b91b130] check-in: [4b8c89a6fe] user: js, branch: trunk, size: 11202 [annotate] [blame] [check-ins using] [diff]
2022-06-07
19:50
OFURL: Minor documentation fixes file: [40faae77ac] check-in: [022418ee31] user: js, branch: trunk, size: 10761 [annotate] [blame] [check-ins using] [diff]
2022-02-12
07:46
Update copyright file: [1399f037a2] check-in: [1a86b8175b] user: js, branch: trunk, size: 10760 [annotate] [blame] [check-ins using] [diff]
2021-04-18
23:36
A few more renames for consistency file: [4f2aa36df7] check-in: [bd7addd9e8] user: js, branch: new-naming-convention, size: 10760 [annotate] [blame] [check-ins using] [diff]
22:56
Rename all symbols marked extern file: [c664c0ea4b] check-in: [e73c65a849] user: js, branch: new-naming-convention, size: 10758 [annotate] [blame] [check-ins using] [diff]
2021-03-07
15:07
*.h: Fold methods into one line where it fits file: [82ad0a3397] check-in: [1948e7e972] user: js, branch: trunk, size: 10700 [annotate] [blame] [check-ins using] [diff]
2021-01-02
22:04
Update copyright file: [8e156f58b1] check-in: [374e1a1bfa] user: js, branch: trunk, size: 10705 [annotate] [blame] [check-ins using] [diff]
2020-10-03
23:25
OFURL: Add queryDictionary property file: [125797e09d] check-in: [a151f9c31f] user: js, branch: trunk, size: 10794 [annotate] [blame] [check-ins using] [diff]
11:35
Use /** */ instead of /*! */ for documentation file: [7ab8abd7a3] check-in: [163a4a5a2e] user: js, branch: trunk, size: 10031 [annotate] [blame] [check-ins using] [diff]
2020-09-26
21:58
Don't require __COUNTER__ for OF_RESERVE_IVARS

__COUNTER__ does not exist in GCC 4.2, and Apple GCC 4.2 is still the
newest compiler available for macOS 10.5. file: [08c79490ee] check-in: [ef614a225d] user: js, branch: trunk, size: 10031 [annotate] [blame] [check-ins using] [diff]

2020-03-01
23:40
OFURL: Implement URL-{en,de}coding of IPv6 hosts file: [6decb7864f] check-in: [c517c57c89] user: js, branch: trunk, size: 10024 [annotate] [blame] [check-ins using] [diff]
2020-01-02
01:51
Update copyright file: [b7146fe684] check-in: [c7f0229795] user: js, branch: trunk, size: 9907 [annotate] [blame] [check-ins using] [diff]
2019-09-29
19:35
Either restrict subclassing or reserve ivar space

This allows ABI stability with the fragile ABI. file: [6489d1ac08] check-in: [496695d778] user: js, branch: trunk, size: 9904 [annotate] [blame] [check-ins using] [diff]

2019-04-07
19:30
Improve -[OFURL pathComponents] file: [d5f7b8d500] check-in: [b1d795b650] user: js, branch: trunk, size: 9883 [annotate] [blame] [check-ins using] [diff]
2019-02-03
19:19
Move a few URL methods from OFString to OFURL file: [b537389466] check-in: [f19cde3a14] user: js, branch: trunk, size: 9885 [annotate] [blame] [check-ins using] [diff]
2019-01-03
19:13
Update copyright file: [e32aace5ab] check-in: [0509d7a844] user: js, branch: trunk, size: 9761 [annotate] [blame] [check-ins using] [diff]
2018-04-15
13:34
OFURL: Require files for fileSystemRepresentation file: [34af006a63] check-in: [d7269ab32a] user: js, branch: trunk, size: 9755 [annotate] [blame] [check-ins using] [diff]
2018-02-16
22:25
Remove OF_UNAVAILABLE from two -[init] methods

These were unavailable in the immutable class, but available in the
mutable subclass. However, Clang 3.4 does not support this. file: [fe71aaca70] check-in: [dae363ef82] user: js, branch: trunk, size: 9727 [annotate] [blame] [check-ins using] [diff]

2018-01-03
19:49
Update copyright notice file: [2b01f4ba2c] check-in: [7e5c81e186] user: js, branch: trunk, size: 9765 [annotate] [blame] [check-ins using] [diff]
2017-12-29
13:38
OFURL: Add -[URLByAppendingPathComponent:] file: [0bd973e0db] check-in: [409a52fd05] user: js, branch: trunk, size: 9742 [annotate] [blame] [check-ins using] [diff]
2017-12-28
20:35
OFURL: Fix #ifdefs in header file: [aeb825266c] check-in: [62cf5f9255] user: js, branch: trunk, size: 8726 [annotate] [blame] [check-ins using] [diff]
2017-11-18
18:50
Documentation: Use @brief for all properties file: [3047860851] check-in: [cc3ad3ddd3] user: js, branch: trunk, size: 8726 [annotate] [blame] [check-ins using] [diff]
2017-11-06
23:01
OFURL: Store the URL-encoded version internally

This allows retrieving it how it was originally stored, which is useful
for example for query strings, as these often URL-encode allowed
characters in order to allow pairs of the form foo=bar&bar=qux. file: [8793c73a5f] check-in: [a15b403a11] user: js, branch: trunk, size: 8593 [annotate] [blame] [check-ins using] [diff]

2017-11-05
19:53
Make -[stringByURLEncoding] take an OFCharacterSet file: [7ad59d1622] check-in: [2f555742c0] user: js, branch: trunk, size: 8503 [annotate] [blame] [check-ins using] [diff]
2017-10-31
22:06
OFURL: Add -[URLEncoded*] for encoded components file: [2730012cb2] check-in: [03e111614e] user: js, branch: trunk, size: 6410 [annotate] [blame] [check-ins using] [diff]
21:39
OFURL: URL-encode according to RFC 3986

This also means the parameters go away and get folded into the path. file: [a6d37c0b2c] check-in: [5f7305c659] user: js, branch: trunk, size: 5359 [annotate] [blame] [check-ins using] [diff]

2017-10-29
21:58
Convert methods to properties where appropriate

This improves Swift compatibility. file: [cb95b72aba] check-in: [f3ccf14461] user: js, branch: trunk, size: 5518 [annotate] [blame] [check-ins using] [diff]

15:05
Add -[OFURL lastPathComponent] file: [6ad21dffff] check-in: [eba3667137] user: js, branch: trunk, size: 5566 [annotate] [blame] [check-ins using] [diff]
13:37
Add -[OFURL pathComponents] file: [9597f5d99f] check-in: [7f64141183] user: js, branch: trunk, size: 5386 [annotate] [blame] [check-ins using] [diff]
11:25
Add +[OFURL fileURLWithPath:isDirectory:] file: [76db36b252] check-in: [773997d072] user: js, branch: trunk, size: 5095 [annotate] [blame] [check-ins using] [diff]
00:41
Fix conversion between URL and path on Win32

This also adds -[OFURL fileSystemRepresentation] to correctly convert a
URL back to a path in the local file system. file: [cd4f15175b] check-in: [b83d1414b1] user: js, branch: trunk, size: 3908 [annotate] [blame] [check-ins using] [diff]

2017-10-28
23:52
OFURL: Return a proper URL for +[fileURLWithPath:] file: [b68aeab9b8] check-in: [8aa7f964bc] user: js, branch: trunk, size: 3622 [annotate] [blame] [check-ins using] [diff]
21:08
Make OFURL more generic

This removes the special handling dependent on the scheme. file: [eee6f35b3b] check-in: [0f995db06d] user: js, branch: trunk, size: 3594 [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: [c55211ca68] check-in: [2f4e0df8be] user: js, branch: trunk, size: 3455 [annotate] [blame] [check-ins using] [diff]

2017-09-26
22:01
Many nullability fixes file: [d9d859f93e] check-in: [319709fff1] user: js, branch: 0.90, size: 3413 [annotate] [blame] [check-ins using] [diff]
21:53
Many nullability fixes file: [1961d082fb] check-in: [52011fbfd6] user: js, branch: trunk, size: 3413 [annotate] [blame] [check-ins using] [diff]
2017-08-11
22:26
Always have retain / copy before nonatomic file: [fe07110d1a] check-in: [9db36c14b5] user: js, branch: trunk, size: 3343 [annotate] [blame] [check-ins using] [diff]
2017-07-20
22:28
Split OFURL into OFURL and OFMutableURL file: [94ac818021] check-in: [3a5570ab20] user: js, branch: trunk, size: 3343 [annotate] [blame] [check-ins using] [diff]
2017-05-13
16:29
Also use nonatomic for non-object properties file: [2905af2049] check-in: [f663d40cbd] user: js, branch: trunk, size: 3284 [annotate] [blame] [check-ins using] [diff]
2017-05-07
20:10
Small code style change

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

2017-04-30
13:35
Use nonatomic for properties and clean up

This changes retaining behavior, meaning properties are not returned
retained and autoreleased anymore, so a property returned from a getter
now needs to be manually retained and autoreleased before calling the
setter. However, this is rarely the case and not using atomic improves
performance. file: [336f088c44] check-in: [0a73af49f0] user: js, branch: trunk, size: 3264 [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: [5188a3f0dd] check-in: [44f45c2e35] user: js, branch: trunk, size: 3176 [annotate] [blame] [check-ins using] [diff]

2016-02-21
12:04
Add +[OFURL fileURLWithPath:] file: [b9cdd57013] check-in: [3eb411511e] user: js, branch: trunk, size: 3170 [annotate] [blame] [check-ins using] [diff]
10:52
OFURL.h: Add missing @brief to documentation file: [1f6d5f7a9d] check-in: [2a6c3df320] user: js, branch: trunk, size: 2972 [annotate] [blame] [check-ins using] [diff]
2016-01-03
00:43
Update copyright

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

00:41
Update copyright

While at it, also update the mail address. file: [1ffe3a44f6] check-in: [2a27cf3000] user: js, branch: trunk, size: 2946 [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: [3cbefbabba] check-in: [48980f2297] user: js, branch: trunk, size: 2942 [annotate] [blame] [check-ins using] [diff]

2015-06-17
22:11
Add OF_NULLABLE_PROPERTY

This is necessary to make GCC (>= 4.6 and Apple GCC) happy as they don't
like the list of property attributes ending in a comma. file: [f7f23cc369] check-in: [80e1a9655b] user: js, branch: trunk, size: 4870 [annotate] [blame] [check-ins using] [diff]

2015-06-13
22:26
Add support for and use the new nullability file: [a3a984e369] check-in: [9e76144ef8] user: js, branch: trunk, size: 4982 [annotate] [blame] [check-ins using] [diff]
2015-01-03
20:57
Update copyright file: [5d05ef422c] check-in: [cfd374b906] user: js, branch: trunk, size: 4794 [annotate] [blame] [check-ins using] [diff]
2014-02-18
18:50
Documentation: Show correct imports file: [af43440b6a] check-in: [246cfe0807] user: js, branch: trunk, size: 4788 [annotate] [blame] [check-ins using] [diff]
2014-01-04
00:24
Update copyright. file: [d006b15fd2] check-in: [3b97fc3cd9] user: js, branch: trunk, size: 4747 [annotate] [blame] [check-ins using] [diff]
2013-02-12
18:22
Prefix all ivars with an underscore. file: [17bbc676ef] check-in: [e40729d406] user: js, branch: trunk, size: 4741 [annotate] [blame] [check-ins using] [diff]
2013-01-10
22:52
Fix all Doxygen warnings. file: [74eb4f4df2] check-in: [365d74aa27] user: js, branch: trunk, size: 4792 [annotate] [blame] [check-ins using] [diff]
2013-01-09
22:24
Update copyright. file: [98eb48b129] check-in: [813c00ccf0] user: js, branch: trunk, size: 4835 [annotate] [blame] [check-ins using] [diff]
2012-12-11
12:12
OFURL: Add +[URL].

This also makes -[description] more robust, as with this change, it is
now possible that required parts of the URL are nil. file: [0221f4c097] check-in: [12a4d43f67] user: js, branch: trunk, size: 4829 [annotate] [blame] [check-ins using] [diff]

2012-10-29
08:00
Documentation improvements. file: [33f810be9b] check-in: [7a3977d7fd] user: js, branch: 0.7, size: 4694 [annotate] [blame] [check-ins using] [diff]
07:59
Documentation improvements. file: [7d9024f690] check-in: [63bf4de97b] user: js, branch: trunk, size: 4694 [annotate] [blame] [check-ins using] [diff]
2012-10-28
12:38
Switch to a headerdoc-compatible doc format. file: [ed2d442f57] check-in: [1ad9565253] user: js, branch: trunk, size: 4694 [annotate] [blame] [check-ins using] [diff]
2012-10-09
15:07
Make use of instancetype. file: [23c8849a02] check-in: [fb515e8e24] user: js, branch: trunk, size: 4694 [annotate] [blame] [check-ins using] [diff]
2012-02-01
13:42
Clean up the properties mess. file: [b99e18b61d] check-in: [c1b35e1495] user: js, branch: trunk, size: 4666 [annotate] [blame] [check-ins using] [diff]
2012-01-05
00:56
Update copyright. file: [2496ad8f75] check-in: [ce70e17b38] user: js, branch: trunk, size: 4675 [annotate] [blame] [check-ins using] [diff]
2011-09-11
17:09
Documentation improvements. file: [1de97e1fce] check-in: [8d554c0421] user: js, branch: trunk, size: 4669 [annotate] [blame] [check-ins using] [diff]
2011-05-08
22:42
Add serialization for OFURL and OFXMLElement. file: [0d2f2e2772] check-in: [cb3be92fe6] user: js, branch: trunk, size: 3946 [annotate] [blame] [check-ins using] [diff]
22:17
Add -[string] to OFURL. file: [75baa54cee] check-in: [925754a097] user: js, branch: trunk, size: 3901 [annotate] [blame] [check-ins using] [diff]
2011-04-22
22:46
More style improvements. file: [8d20bb8741] check-in: [c9c78d86d3] user: js, branch: trunk, size: 3798 [annotate] [blame] [check-ins using] [diff]
2011-02-09
12:33
Add support for relative URLs to OFURL. file: [dd0072857c] check-in: [ddd3a6683f] user: js, branch: trunk, size: 3774 [annotate] [blame] [check-ins using] [diff]
2011-01-15
17:59
Improve OFURL. file: [a030f72131] check-in: [c655fa54d2] user: js, branch: trunk, size: 3332 [annotate] [blame] [check-ins using] [diff]
2011-01-14
12:22
Added: Add OFURL class. file: [e36be7b9d6] check-in: [164c76c0cf] user: js, branch: trunk, size: 2204 [annotate] [blame] [check-ins using]