ObjFW  History of src/OFData.m of dd467ddb20e1f120

History of the file that is called src/OFData.m at check-in dd467ddb20e1f120

2024-04-29
21:42
[1f60c6d11f] part of check-in [f16bccc7b3] Properly hide private symbols (check-in: [f16bccc7b3] user: js, branch: trunk, size: 16321) [annotate] [blame] [check-ins using] [diff]
2024-04-03
02:16
[4dc9cb934e] part of check-in [7413a728a7] Change license to LGPLv3 only (check-in: [7413a728a7] user: js, branch: trunk, size: 16298) [annotate] [blame] [check-ins using] [diff]
2024-03-10
16:49
[e46674d159] part of check-in [6060a03291] Avoid some unnecessary I/O (check-in: [6060a03291] user: js, branch: trunk, size: 16090) [annotate] [blame] [check-ins using] [diff]
2024-01-11
20:12
[dc16e1e87f] part of check-in [4320b1bf7d] Merge trunk into branch "asn1" (check-in: [4320b1bf7d] user: js, branch: asn1, size: 16110) [annotate] [blame] [check-ins using] [diff]
2024-01-02
17:17
[236ab0e955] part of check-in [26ddd2e4e4] Update copyright (check-in: [26ddd2e4e4] user: js, branch: trunk, size: 16071) [annotate] [blame] [check-ins using] [diff]
2023-09-13
22:00
[33c2057892] part of check-in [082c0f8d0f] -[OFData initWithContentsOfIRI:]: Fix memory leak (check-in: [082c0f8d0f] user: js, branch: trunk, size: 16071) [annotate] [blame] [check-ins using] [diff]
2023-08-22
16:16
[753e5c551b] part of check-in [8471999204] Don't require a regular file to init an object (check-in: [8471999204] user: js, branch: trunk, size: 16057) [annotate] [blame] [check-ins using] [diff]
2023-08-09
11:30
[6b96716473] part of check-in [f42a4471b9] OFData: Ensure init methods return correct class (check-in: [f42a4471b9] user: js, branch: trunk, size: 16584) [annotate] [blame] [check-ins using] [diff]
10:09
[4738b91ed8] part of check-in [281b494de4] More consistency in naming of private classes (check-in: [281b494de4] user: js, branch: trunk, size: 16186) [annotate] [blame] [check-ins using] [diff]
09:08
[f7d95004e7] part of check-in [36310f6263] Add OF_SINGLETON_METHODS (check-in: [36310f6263] user: js, branch: trunk, size: 16186) [annotate] [blame] [check-ins using] [diff]
08:25
[caad88cdae] part of check-in [6da6276ae7] More consistent naming for concrete classes (check-in: [6da6276ae7] user: js, branch: trunk, size: 16164) [annotate] [blame] [check-ins using] [diff]
08:14
[c534072540] part of check-in [d1a8c88dc6] Add OFSubdata

This replaces the hack of OFAdjacentData being able to keep a pointer to
the parent. (check-in: [d1a8c88dc6] user: js, branch: trunk, size: 16164) [annotate] [blame] [check-ins using] [diff]

2023-08-08
15:32
[466d9af03d] part of check-in [a6f520157a] A few minor cleanups (check-in: [a6f520157a] user: js, branch: trunk, size: 16044) [annotate] [blame] [check-ins using] [diff]
09:41
[daaae842d6] part of check-in [f886f21ad5] Rename OFConcreteData -> OFAdjacentData (check-in: [f886f21ad5] user: js, branch: trunk, size: 15973) [annotate] [blame] [check-ins using] [diff]
09:36
[b2f1d97df1] part of check-in [9706b6199d] OFData: Fix a brain fart (check-in: [9706b6199d] user: js, branch: trunk, size: 15973) [annotate] [blame] [check-ins using] [diff]
2023-08-07
18:20
[7bf8c0e585] part of check-in [91fa20d993] Make OFData a class cluster (check-in: [91fa20d993] user: js, branch: trunk, size: 15975) [annotate] [blame] [check-ins using] [diff]
2023-04-10
19:22
[fedaecf95c] part of check-in [6ce0093f8d] 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. (check-in: [6ce0093f8d] user: js, branch: trunk, size: 13201) [annotate] [blame] [check-ins using] [diff]

2023-01-06
09:04
[5fe996c5b2] part of check-in [8939cbdb52] Update copyright (check-in: [8939cbdb52] user: js, branch: trunk, size: 14190) [annotate] [blame] [check-ins using] [diff]
2022-11-24
00:21
[d8b1fa1eb1] part of check-in [23272e6d43] Rename OFURI to OFIRI (check-in: [23272e6d43] user: js, branch: trunk, size: 14190) [annotate] [blame] [check-ins using] [diff]
2022-11-07
00:20
[7f49d598ed] part of check-in [d8ef56254d] Merge trunk into branch "asn1" (check-in: [d8ef56254d] user: js, branch: asn1, size: 14229) [annotate] [blame] [check-ins using] [diff]
00:17
[2ce5037425] part of check-in [b37858358e] Merge trunk into branch "asn1" (check-in: [b37858358e] user: js, branch: asn1, size: 14436) [annotate] [blame] [check-ins using] [diff]
2022-10-20
16:37
[b0fcc38dae] part of check-in [93f0d2a78f] -[initWithContentsOfFile:]: Avoid stat call (check-in: [93f0d2a78f] user: js, branch: trunk, size: 14190) [annotate] [blame] [check-ins using] [diff]
2022-09-28
21:40
[9d8368a480] part of check-in [e7ab06503c] Rename OFUR{L -> I} in preparation for URI support (check-in: [e7ab06503c] user: js, branch: trunk, size: 14148) [annotate] [blame] [check-ins using] [diff]
2022-09-24
15:32
[f9aa8dca83] part of check-in [96e0a91a06] Do not document exceptions that are obvious

Otherwise every second method would need to have
OFInvalidArgumentException documented. (check-in: [96e0a91a06] user: js, branch: trunk, size: 14148) [annotate] [blame] [check-ins using] [diff]

2022-09-23
14:01
[20063078c8] part of check-in [60ebc06824] Rename OFInvalidServer{Reply -> Response}Exception (check-in: [60ebc06824] user: js, branch: trunk, size: 14032) [annotate] [blame] [check-ins using] [diff]
2022-08-30
00:48
[35cd79313e] part of check-in [4ad0c363f3] OFObject: Small API change (check-in: [4ad0c363f3] user: js, branch: trunk, size: 14074) [annotate] [blame] [check-ins using] [diff]
2022-08-11
20:54
[d1f758e1e7] part of check-in [338d452f33] OFURLHandler: Add +[openItemAtURL:mode:] (check-in: [338d452f33] user: js, branch: trunk, size: 14070) [annotate] [blame] [check-ins using] [diff]
2022-02-12
07:46
[b6152aa57a] part of check-in [1a86b8175b] Update copyright (check-in: [1a86b8175b] user: js, branch: trunk, size: 14397) [annotate] [blame] [check-ins using] [diff]
2021-04-30
21:56
[64e7bb32f2] part of check-in [4507e0bee3] Merge trunk into branch "asn1" (check-in: [4507e0bee3] user: js, branch: asn1, size: 14436) [annotate] [blame] [check-ins using] [diff]
2021-04-19
21:54
[1a9ee2a47d] part of check-in [458420998c] Rename a few more constants (check-in: [458420998c] user: js, branch: new-naming-convention, size: 14397) [annotate] [blame] [check-ins using] [diff]
2021-04-18
20:51
[d0e4846ab5] part of check-in [35de667566] Rename everything in several smaller files (check-in: [35de667566] user: js, branch: new-naming-convention, size: 14401) [annotate] [blame] [check-ins using] [diff]
15:55
[be1b948012] part of check-in [7392685ffc] Rename all functions in macros.h (check-in: [7392685ffc] user: js, branch: new-naming-convention, size: 14406) [annotate] [blame] [check-ins using] [diff]
2021-04-17
22:45
[4045525c7b] part of check-in [498074dab9] Rename of_(re)alloc and add OFFreeMemory (check-in: [498074dab9] user: js, branch: new-naming-convention, size: 14406) [annotate] [blame] [check-ins using] [diff]
14:13
[1ddf45efe0] part of check-in [eb0cfa6ff9] Always prefix functions with the type (check-in: [eb0cfa6ff9] user: js, branch: new-naming-convention, size: 14342) [annotate] [blame] [check-ins using] [diff]
02:29
[98780c8b8b] part of check-in [88ed17ad48] Rename all types in OFData.h (check-in: [88ed17ad48] user: js, branch: new-naming-convention, size: 14342) [annotate] [blame] [check-ins using] [diff]
02:10
[e6a5e2a76a] part of check-in [255f21fb3d] of_string_encoding_t -> OFStringEncoding (check-in: [255f21fb3d] user: js, branch: new-naming-convention, size: 14329) [annotate] [blame] [check-ins using] [diff]
01:24
[351546f0a3] part of check-in [83dc0fe6e5] OF_NOT_FOUND -> OFNotFound (check-in: [83dc0fe6e5] user: js, branch: new-naming-convention, size: 14353) [annotate] [blame] [check-ins using] [diff]
00:44
[2dbcaf9024] part of check-in [d975c53a43] of_range_t -> OFRange (check-in: [d975c53a43] user: js, branch: new-naming-convention, size: 14357) [annotate] [blame] [check-ins using] [diff]
00:14
[54da306e4c] part of check-in [61fc389aee] of_comparison_result_t -> OFComparisonResult (check-in: [61fc389aee] user: js, branch: new-naming-convention, size: 14350) [annotate] [blame] [check-ins using] [diff]
2021-04-07
22:27
[565aab28b7] part of check-in [88b56f8ce9] Merge trunk into branch "asn1" (check-in: [88b56f8ce9] user: js, branch: asn1, size: 14403) [annotate] [blame] [check-ins using] [diff]
22:20
[398b865989] part of check-in [96ee4795ad] Make GCC happy again (check-in: [96ee4795ad] user: js, branch: trunk, size: 14364) [annotate] [blame] [check-ins using] [diff]
21:18
[8df6dac3bd] part of check-in [36669d22b4] Merge trunk into 1.0 branch (check-in: [36669d22b4] user: js, branch: 1.0, size: 14422) [annotate] [blame] [check-ins using] [diff]
21:14
[526e2e37ba] part of check-in [2969086342] Rename OFCryptoHash -> OFCryptographicHash (check-in: [2969086342] user: js, branch: trunk, size: 14461) [annotate] [blame] [check-ins using] [diff]
2021-03-30
21:23
[d34247ee72] part of check-in [564d6d6b6f] Merge trunk into 1.0 branch (check-in: [564d6d6b6f] user: js, branch: 1.0, size: 14415) [annotate] [blame] [check-ins using] [diff]
2021-03-07
20:25
[0640a57f3d] part of check-in [1b82d3bf4f] *.m: Fold methods into one line where it fits (check-in: [1b82d3bf4f] user: js, branch: trunk, size: 14454) [annotate] [blame] [check-ins using] [diff]
2021-01-02
22:04
[e36b8d42d3] part of check-in [374e1a1bfa] Update copyright (check-in: [374e1a1bfa] user: js, branch: trunk, size: 14661) [annotate] [blame] [check-ins using] [diff]
2020-11-29
04:38
[86e2a3f40f] part of check-in [db2ba76342] Merge trunk into 1.0 branch (check-in: [db2ba76342] user: js, branch: 1.0, size: 14711) [annotate] [blame] [check-ins using] [diff]
2020-11-14
12:23
[7ddb882b03] part of check-in [627511b032] Rename of_malloc and of_calloc

The new names should be more accurate. (check-in: [627511b032] user: js, branch: trunk, size: 14750) [annotate] [blame] [check-ins using] [diff]

2020-11-12
00:45
[c84ec47cce] part of check-in [a1163fb58b] Merge trunk into 1.0 branch (check-in: [a1163fb58b] user: js, branch: 1.0, size: 14715) [annotate] [blame] [check-ins using] [diff]
2020-11-06
02:12
[aa10f00100] part of check-in [9d74d1b74e] OFData: Make parameter order more consistent (check-in: [9d74d1b74e] user: js, branch: trunk, size: 14754) [annotate] [blame] [check-ins using] [diff]
01:11
[f4f38100bd] part of check-in [1a70abc65d] OF*Data: Avoid -[allocMemoryWithSize:] (check-in: [1a70abc65d] user: js, branch: trunk, size: 14754) [annotate] [blame] [check-ins using] [diff]
2020-11-05
00:24
[20a79e42c1] part of check-in [0ddaac3f5b] Avoid -[allocMemoryWithSize:] for temporary memory

-[allocMemoryWithSize:] has book keeping overhead that is unnecessary
for temporary memory. (check-in: [0ddaac3f5b] user: js, branch: trunk, size: 14753) [annotate] [blame] [check-ins using] [diff]

2020-11-04
23:18
[8ada741898] part of check-in [3d8286feee] Remove of_free()

While it makes sense to wrap malloc and calloc to replace the error
checking with exceptions, it does not make sense to wrap free. (check-in: [3d8286feee] user: js, branch: trunk, size: 14753) [annotate] [blame] [check-ins using] [diff]

23:11
[e268178a8e] part of check-in [4d5b2623c8] OFData: Fix memory leak (check-in: [4d5b2623c8] user: js, branch: trunk, size: 14765) [annotate] [blame] [check-ins using] [diff]
2020-10-25
23:33
[bf7091f2d8] part of check-in [d0ae3bfd6c] Add of_{malloc,calloc,realloc,free} (check-in: [d0ae3bfd6c] user: js, branch: trunk, size: 14703) [annotate] [blame] [check-ins using] [diff]
2020-10-10
14:27
[fe0918c4c9] part of check-in [aeb403a1ed] 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. (check-in: [aeb403a1ed] user: js, branch: trunk, size: 14787) [annotate] [blame] [check-ins using] [diff]

2020-10-04
14:39
[468c0a34a5] part of check-in [a9f08709d2] Merge trunk into 1.0 branch (check-in: [a9f08709d2] user: js, branch: 1.0, size: 14743) [annotate] [blame] [check-ins using] [diff]
2020-08-13
22:29
[63de509839] part of check-in [e479cef7b3] OFData: ASN1DERValue -> objectByParsingASN1DER (check-in: [e479cef7b3] user: js, branch: trunk, size: 14782) [annotate] [blame] [check-ins using] [diff]
21:12
[40564fad69] part of check-in [6cfa8f5c7e] messagePackValue -> objectByParsingMessagePack (check-in: [6cfa8f5c7e] user: js, branch: trunk, size: 14780) [annotate] [blame] [check-ins using] [diff]
2020-08-12
20:56
[1f025529e1] part of check-in [d74f244ab7] Avoid using (u)intmax_t in methods

It is not guaranteed that a type encoding for it exists. (check-in: [d74f244ab7] user: js, branch: trunk, size: 14778) [annotate] [blame] [check-ins using] [diff]

2020-01-08
02:29
[67254f98ad] part of check-in [e7e1e1c6c5] Merge branch 'master' into 1.0 (check-in: [e7e1e1c6c5] user: js, branch: 1.0, size: 14733) [annotate] [blame] [check-ins using] [diff]
2020-01-02
01:51
[9637aa54ff] part of check-in [c7f0229795] Update copyright (check-in: [c7f0229795] user: js, branch: trunk, size: 14770) [annotate] [blame] [check-ins using] [diff]
2019-09-29
15:22
[0c39341785] part of check-in [dd2394fc3c] Remove ASN.1 support as it is still incomplete (check-in: [dd2394fc3c] user: js, branch: 1.0, size: 14730) [annotate] [blame] [check-ins using] [diff]
2019-03-08
00:35
[5a0f1a8428] part of check-in [bceb7ed4c9] Use dot syntax (check-in: [bceb7ed4c9] user: js, branch: trunk, size: 14767) [annotate] [blame] [check-ins using] [diff]
2019-01-03
19:13
[fa334deef0] part of check-in [0509d7a844] Update copyright (check-in: [0509d7a844] user: js, branch: trunk, size: 14803) [annotate] [blame] [check-ins using] [diff]
2018-10-13
21:40
[64ff22bfd0] part of check-in [d276166f70] Initial ASN.1 DER parsing support (check-in: [d276166f70] user: js, branch: trunk, size: 14797) [annotate] [blame] [check-ins using] [diff]
21:39
[183d3ab057] part of check-in [4075c3beaf] Add -[OFData subdataWithRange:] (check-in: [4075c3beaf] user: js, branch: trunk, size: 14760) [annotate] [blame] [check-ins using] [diff]
2018-04-07
14:13
[b6b253b742] part of check-in [d4d9072480] Add OFSecureData (check-in: [d4d9072480] user: js, branch: trunk, size: 14287) [annotate] [blame] [check-ins using] [diff]
2018-02-25
17:16
[8d40ffbf81] part of check-in [81156ee75a] No self = [self init…] with self-releasing @catch

When using self = [self init…], this already releases self on an
exception, so using it inside of a @try / @catch block that releases
self would lead to a double-release. (check-in: [81156ee75a] user: js, branch: trunk, size: 14287) [annotate] [blame] [check-ins using] [diff]

2018-02-16
22:25
[f8e15d9a7d] part of check-in [dae363ef82] 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. (check-in: [dae363ef82] user: js, branch: trunk, size: 14276) [annotate] [blame] [check-ins using] [diff]

2018-02-15
00:35
[b491272801] part of check-in [d30dfac8ae] OFData: Fix #ifdef (check-in: [d30dfac8ae] user: js, branch: trunk, size: 14404) [annotate] [blame] [check-ins using] [diff]
2018-01-15
00:34
[28b1c3f1d0] part of check-in [5c08717941] Add -[writeToURL:] (check-in: [5c08717941] user: js, branch: trunk, size: 14466) [annotate] [blame] [check-ins using] [diff]
2018-01-14
18:25
[7c051801e0] part of check-in [c85b63d2af] OFData: Add -[rangeOfData:options:range:] (check-in: [c85b63d2af] user: js, branch: trunk, size: 14087) [annotate] [blame] [check-ins using] [diff]
2018-01-03
20:02
[5e3c55fa09] part of check-in [87b416fb5a] OFData: Fix stream being uninitialized (check-in: [87b416fb5a] user: js, branch: trunk, size: 12989) [annotate] [blame] [check-ins using] [diff]
19:49
[5d66d418f0] part of check-in [7e5c81e186] Update copyright notice (check-in: [7e5c81e186] user: js, branch: trunk, size: 12922) [annotate] [blame] [check-ins using] [diff]
00:42
[9c40edc919] part of check-in [99cb9ac6f9] -[initWithContentsOfURL:]: Use OFURLHandler (check-in: [99cb9ac6f9] user: js, branch: trunk, size: 12899) [annotate] [blame] [check-ins using] [diff]
2017-11-26
14:29
[d98f273881] part of check-in [6cf7d6c33e] OFData: Change no copy handling

OFMutableData supports no copy now by just copying anyway and freeing if
required. (check-in: [6cf7d6c33e] user: js, branch: trunk, size: 12403) [annotate] [blame] [check-ins using] [diff]

2017-11-19
12:56
[744ee14c6a] part of check-in [615a9f2eba] Fix compilation with GCC (check-in: [615a9f2eba] user: js, branch: trunk, size: 12427) [annotate] [blame] [check-ins using] [diff]
12:05
[7aeee7380b] part of check-in [11f24addd7] Fix warnings introduced by OFComparing change

Since OFComparing no longer conforms to OFObject, OFObject needed to be
added at a few places. (check-in: [11f24addd7] user: js, branch: trunk, size: 12433) [annotate] [blame] [check-ins using] [diff]

2017-11-12
18:27
[995d1dfd33] part of check-in [34fe205b84] OFFileManager: Major API redesign

This removes all query methods and replaces them by a single one that
returns a dictionary. Not only does this allow querying multiple
attributes at once, it is also more extensible, as the previous
attributes were specific to file URLs. (check-in: [34fe205b84] user: js, branch: trunk, size: 12423) [annotate] [blame] [check-ins using] [diff]

2017-11-11
23:27
[78d0532385] part of check-in [526feacebc] Small optimization for -[isEqual:] (check-in: [526feacebc] user: js, branch: trunk, size: 12431) [annotate] [blame] [check-ins using] [diff]
2017-10-29
00:41
[878145eec0] part of check-in [b83d1414b1] 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. (check-in: [b83d1414b1] user: js, branch: trunk, size: 12394) [annotate] [blame] [check-ins using] [diff]

2017-10-22
15:05
[118e27647e] part of check-in [a06354b42a] Make Apple GCC with -Wshadow happy (check-in: [a06354b42a] user: js, branch: trunk, size: 12368) [annotate] [blame] [check-ins using] [diff]
14:09
[cb311cd255] part of check-in [31c0f5b89e] Make Apple GCC with -Wshadow happy (check-in: [31c0f5b89e] user: js, branch: 0.90, size: 14026) [annotate] [blame] [check-ins using] [diff]
2017-10-17
00:33
[15a4b9e206] part of check-in [2f4e0df8be] 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. (check-in: [2f4e0df8be] user: js, branch: trunk, size: 12374) [annotate] [blame] [check-ins using] [diff]

2017-09-24
00:59
[74dd1893f5] part of check-in [56a18442e2] Make OFHTTPClient asynchronous

This does not make OFHTTPClientResponse completely asynchronous yet.

Since -[initWithURL:] does not work well with an asynchronous API, it no
longer supports HTTP URLs. However, a new, asynchronous API will be
added as a replacement later on. (check-in: [56a18442e2] user: js, branch: trunk, size: 12198) [annotate] [blame] [check-ins using] [diff]

2017-08-13
22:38
[945c020d4d] part of check-in [484c7987d2] Fix -[OFData description] (check-in: [484c7987d2] user: js, branch: trunk, size: 14032) [annotate] [blame] [check-ins using] [diff]
2017-07-24
20:10
[ab1e932258] part of check-in [8da165721c] OFData: Add casts to make 32 bit Clang happy (check-in: [8da165721c] user: js, branch: trunk, size: 14023) [annotate] [blame] [check-ins using] [diff]
2017-07-22
23:04
[504d17c5e3] part of check-in [23e57c5040] OFFile: Simplify mode

This removes "b" for binary and always uses binary, as there is no good
reason to not use binary. (check-in: [23e57c5040] user: js, branch: trunk, size: 13991) [annotate] [blame] [check-ins using] [diff]

20:50
Added: [e5c693e728] part of check-in [c8f7b90082] Split OFDataArray into OFData and OFMutableData (check-in: [c8f7b90082] user: js, branch: trunk, size: 13993) [annotate] [blame] [check-ins using]