ObjFW  History of src/OFTarArchive.m of 23272e6d43115eae

History of file src/OFTarArchive.m at check-in 23272e6d43115eae

2025-01-01
12:58
Update copyright file: [2c4547e53e] check-in: [9d802a786d] user: js branch: trunk, size: 11470
2024-06-04
23:51
Add OHGamepad file: [0a16baeb97] check-in: [c45b04b1f8] user: js branch: trunk, size: 11470
2024-04-29
21:42
Properly hide private symbols file: [300800373d] check-in: [f16bccc7b3] user: js branch: trunk, size: 11480
2024-04-03
02:16
Change license to LGPLv3 only file: [67f03e487e] check-in: [7413a728a7] user: js branch: trunk, size: 11479
2024-04-02
01:33
OFTarArchive: Fix a memory leak file: [2181e993e8] check-in: [9c7610b3b7] user: js branch: 1.0, size: 11294
01:33
OFTarArchive: Fix a memory leak file: [4064e91319] check-in: [ea9079b62b] user: js branch: trunk, size: 11271
2024-03-03
19:42
Rename schemes for archive IRI handlers

Some names are too generic and might cause conflicts (e.g. zoo). file: [1855b6b9b8] check-in: [13f0321eff] user: js branch: trunk, size: 11241

2024-02-27
21:07
Add missing imports when using --disable-sockets file: [1f37604a46] check-in: [7234d82dff] user: js branch: 1.0, size: 11250
21:06
Add missing imports when using --disable-sockets file: [23e0c065c8] check-in: [2d14df1979] user: js branch: trunk, size: 11227
2024-02-03
11:41
Update copyright file: [810fd76094] check-in: [7324ec8590] user: js branch: 1.0, size: 11216
2024-01-02
17:17
Update copyright file: [bbedb2f448] check-in: [26ddd2e4e4] user: js branch: trunk, size: 11193
2023-10-15
12:32
Add -[OFStream lowlevelIsAtEndOfStream]

This allows for a much cleaner solution to avoid the internal read
buffer of e.g. a TLS connection never being processed while waiting for
a delimiter. file: [1c76370f81] check-in: [a61e0594b4] user: js branch: trunk, size: 11193

2023-01-06
09:04
Update copyright file: [0ba99f6e66] check-in: [8939cbdb52] user: js branch: trunk, size: 11216
2022-11-24
00:21
Rename OFURI to OFIRI file: [f6df68ff0d] check-in: [23272e6d43] user: js branch: trunk, size: 11216
2022-11-23
21:50
Remove OFTarArchiveMode from header

It's private anyway. file: [734cc4a931] check-in: [e520af4113] user: js branch: trunk, size: 11216

21:45
OFTarArchive: Fix iterating without reading file: [73f1de6b8e] check-in: [0966f1b371] user: js branch: trunk, size: 11290
2022-10-11
00:28
+[URIForFile{ -> Path}:inArchive{ -> WithURI}:] file: [8086f04e85] check-in: [a8bc0b31d0] user: js branch: trunk, size: 10970
2022-10-09
16:33
Drop of- prefix from URI schemes

It's generally uncommon to prefix those.

Additionally, it might be worthwhile to try to get those actually
registered, which requires usage. file: [e86038baec] check-in: [9b3cae6cba] user: js branch: trunk, size: 10967

2022-10-08
23:47
Move all archive URI handling to a single file file: [4c749d1fe6] check-in: [55858a10bb] user: js branch: trunk, size: 10970
2022-10-06
23:33
OFTarArchive: Make returned streams retain archive

In order to not create a retain cycle, this changes the reference to the
last returned stream to an unsafe unretained one that the stream itself
resets to nil in its dealloc. file: [d33bd24f84] check-in: [6c08b57605] user: js branch: trunk, size: 10921

2022-10-04
22:22
OF*Archive: Share +[URIForFile:inArchive:] code file: [e6e921bda1] check-in: [519c277156] user: js branch: trunk, size: 10588
21:49
Add of-tar: URI handler file: [0dbf94ce58] check-in: [4f56311b57] user: js branch: trunk, size: 11124
2022-09-28
21:40
Rename OFUR{L -> I} in preparation for URI support file: [859f5b3b09] check-in: [e7ab06503c] user: js branch: trunk, size: 10440
2022-08-27
21:24
OFTarArchiveEntry: Rename size to uncompressedSize file: [640e7a1648] check-in: [98c64d0af9] user: js branch: trunk, size: 10440
20:58
OFSeekableStream: Add OFSeekWhence enum file: [4ba7eaf65d] check-in: [73f5e3aa84] user: js branch: trunk, size: 10380
20:42
OFTarArchive: Clean up types file: [acb7a099c2] check-in: [fc63341028] user: js branch: trunk, size: 10368
20:39
Rename OFFileOffset -> OFStreamOffset file: [d41a5109d6] check-in: [51589c6496] user: js branch: trunk, size: 10316
2022-08-15
23:02
OF{LHA,Tar,ZIP}Archive: Use URL instead of path file: [90c0fe7151] check-in: [fee2316eca] user: js branch: trunk, size: 10305
2022-02-12
07:46
Update copyright file: [5a61b65e4b] check-in: [1a86b8175b] user: js branch: trunk, size: 10295
2022-01-28
19:34
Don't assume EWOULDBLOCK and EAGAIN are the same file: [2761dfa7b5] check-in: [d9586ed175] user: js branch: trunk, size: 10295
2021-11-06
17:00
Fix too strict OFEnsure introduced in last checkin file: [80091b13c1] check-in: [0eb7274946] user: js branch: trunk, size: 10274
15:57
OFStream: New write API

The old write API made it too easy to lose bytes when a stream is set to
non-blocking mode. The new API always throws when not all bytes were
written, which forces handling the number of bytes being written being
smaller than the number of bytes requested to be written. file: [651ec2f405] check-in: [d1d36ae522] user: js branch: trunk, size: 10235

2021-04-17
14:19
of_offset_t -> OFFileOffset file: [6412c1538f] check-in: [e69db838d9] user: js branch: new-naming-convention, size: 10217
05:28
Rename all types in OFTarArchive(Entry).h file: [72e6e59f69] check-in: [795618c69f] user: js branch: new-naming-convention, size: 10215
02:10
of_string_encoding_t -> OFStringEncoding file: [f67573ffd6] check-in: [255f21fb3d] user: js branch: new-naming-convention, size: 10274
2021-03-07
20:25
*.m: Fold methods into one line where it fits file: [0481cd7f61] check-in: [1b82d3bf4f] user: js branch: trunk, size: 10278
2021-01-02
22:04
Update copyright file: [a40561e369] check-in: [374e1a1bfa] user: js branch: trunk, size: 10408
2020-09-27
03:08
Work around bugs in Apple GCC 4.0.1

Still miscompiles things. file: [6889b3aa0d] check-in: [9e9ce6aa1c] user: js branch: trunk, size: 10497

2020-06-28
15:03
Use OF_DIRECT(_MEMBERS) where appropriate file: [22d3bc898d] check-in: [b6cb3addd0] user: js branch: trunk, size: 10560
2020-05-06
00:32
Improve names of several properties file: [74012ab28d] check-in: [bc67e98833] user: js branch: trunk, size: 10524
2020-04-19
14:52
Reduce usage of unions file: [9fc8cae7a2] check-in: [e0459c419c] user: js branch: trunk, size: 10530
2020-02-16
18:22
OF{LHA,Tar,ZIP}Archive: Gracefully handle close file: [fe80dcdcf2] check-in: [1d6d3eb61c] user: js branch: trunk, size: 10615
2020-01-14
00:16
More consistent -[close] behavior

This means refusing to close twice, calling -[close] from -[dealloc] and
not calling -[cancelAsyncRequests].

Calling -[cancelAsyncRequests] in -[close] is too dangerous, as -[close]
gets called by -[dealloc]: If the queue is the last reference to the
object, at the point where -[cancelAsyncRequests] removes it from the
queue, the object will start to deallocate and call into
-[cancelAsyncRequests] again, which is still in the middle of removing
it and now finds itself with an inconsistent state. file: [9fd5fb5c63] check-in: [3b43d51006] user: js branch: trunk, size: 10273

2020-01-02
01:51
Update copyright file: [e1828579de] check-in: [c7f0229795] user: js branch: trunk, size: 10090
2019-06-17
02:33
Remove underscores from class names file: [bd5d8687ca] check-in: [17d57e01ff] user: js branch: trunk, size: 10087
2019-03-09
10:48
Several minor fixes file: [b446679d60] check-in: [c1e949a8c6] user: js branch: trunk, size: 10096
2019-03-08
00:35
Use dot syntax file: [c1512afd3b] check-in: [bceb7ed4c9] user: js branch: trunk, size: 10093
2019-01-03
19:13
Update copyright file: [cfc88dc079] check-in: [0509d7a844] user: js branch: trunk, size: 9933
2018-07-08
18:00
OF{LHA,Tar}Archive: Fix skipping over entries file: [641014739a] check-in: [8333373867] user: js branch: trunk, size: 9927
2018-06-17
02:54
Make GCC happy again file: [9cb41be19d] check-in: [abf95ba35e] user: js branch: trunk, size: 9902
01:01
OFLHAArchive: Add write and append support file: [370be37c72] check-in: [54fe3999b7] user: js branch: trunk, size: 9891
2018-05-26
23:04
Add OFLHAArchive

This is currently limited to reading uncompressed LHA level 2 files. file: [d5ac892200] check-in: [790b5344d6] user: js branch: trunk, size: 9874

07:56
OFTarArchive: Allow specifying the encoding file: [969975ba2f] check-in: [9db1965939] user: js branch: trunk, size: 9736
2018-01-03
19:49
Update copyright notice file: [68a00e534e] check-in: [7e5c81e186] user: js branch: trunk, size: 9604
2017-11-19
11:04
Do not conform to OFReadyFor*Observing by default

Instead of letting OFStream conform to it, which itself does not really
conform to it, let all the subclasses that actually do conform to it. file: [247f54af17] check-in: [69749b6a5b] user: js branch: trunk, size: 9581

2017-10-22
15:05
Make Apple GCC with -Wshadow happy file: [72c8a07e42] check-in: [a06354b42a] user: js branch: trunk, size: 9448
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: [deb3b00a60] check-in: [2f4e0df8be] user: js branch: trunk, size: 9442

2017-10-01
18:09
OFTarArchive: Support for star numbers file: [4f6abee812] check-in: [6b6856298d] user: js branch: trunk, size: 9358
14:05
Disable -Wnullable-to-nonnull-conversion again

It does not work well enough yet: While creating a lot of noise, it
fails to even find many of the obvious cases. Depending on the static
analyzer seems to be the better approach for now. file: [5865d323f0] check-in: [e47c219327] user: js branch: trunk, size: 9349

2017-09-28
23:02
Enable -Wnullable-to-nonnull-conversion and adjust file: [0808282283] check-in: [2de9660312] user: js branch: trunk, size: 9373
2017-09-24
12:24
OFStream: Add support for async writes file: [f74f1d447e] check-in: [481225349f] user: js branch: trunk, size: 9266
2017-08-11
18:14
Fix warnings with 32 bit Clang file: [6d92ac1a5f] check-in: [2071d164bb] user: js branch: trunk, size: 9194
2017-08-07
00:20
OFTarArchive: More efficient skipping

If the stream is seekable, seek instead of reading to skip. file: [944c9a1051] check-in: [29ee511f56] user: js branch: trunk, size: 9156

2017-08-06
21:45
OFTarArchiveEntry: Minor refactoring file: [794d54862e] check-in: [a6b87a1a0c] user: js branch: trunk, size: 8730
20:27
OFZIPArchive: Fix uncompressed + data descriptor file: [d2f44563d3] check-in: [4f04f5be98] user: js branch: trunk, size: 10512
19:40
OFZIPArchive: Add write and append support file: [3df34606f0] check-in: [4594f434e7] user: js branch: trunk, size: 10441
2017-08-05
21:39
ofzip: Support for creating / appending tar files file: [4feff55415] check-in: [ddfb995c90] user: js branch: trunk, size: 10429
18:00
OFZIPArchive: Don't require an OFSeekableStream

This is now only necessary for reading and appending. file: [cb4c96888d] check-in: [c404c33cf1] user: js branch: trunk, size: 10365

15:22
OFTarArchive: Add write and append support file: [69e4750cf1] check-in: [0c5035dd3f] user: js branch: trunk, size: 10381
12:27
Add OFMutableTarArchiveEntry

This is in preparation for OFTarArchive write support. file: [0db6ddc7de] check-in: [3f34a360bf] user: js branch: trunk, size: 4838

2017-08-02
20:11
OFTarArchive: Prepare for adding write support file: [8e5558d27e] check-in: [9104575517] user: js branch: trunk, size: 2852
2017-07-22
23:04
OFFile: Simplify mode

This removes "b" for binary and always uses binary, as there is no good
reason to not use binary. file: [4c3a4649ab] check-in: [23e57c5040] user: js branch: trunk, size: 2366

2017-05-21
21:28
Prefix private methods with of_ instead of OF_

This matches Apple's style. file: [cd4c802a1e] check-in: [6b77a5dd8b] user: js branch: trunk, size: 2367

2017-05-13
22:38
Reduce retain + autorelease file: [a36962d678] check-in: [504e13cf00] user: js branch: trunk, size: 2367
19:51
Make Apple GCC happy file: [de5a95ce6d] check-in: [7e8ee9b1f9] user: js branch: trunk, size: 2390
2017-05-08
21:37
Add OF_DESIGNATED_INITIALIZER & OF_METHOD_FAMILY file: [8c89569c12] check-in: [469a496cd2] user: js branch: trunk, size: 2375
2017-05-07
20:10
Small code style change

Casts are now written like types in variable declarations. file: [ef68919153] check-in: [4af49a13c3] user: js branch: trunk, size: 2384

2017-01-09
17:36
Update copyright

Forgot to add 2017, even though I already did quite some changes in
2017. file: [ffe423de16] check-in: [44f45c2e35] user: js branch: trunk, size: 2379

2016-05-22
19:53
Added: Add OFTarArchive

This only implements the UNIX v7 format for now. file: [370eb5f8c8] check-in: [7ecdc71677] user: js branch: trunk, size: 2373