59 Commits

Author SHA1 Message Date
Timofey Solomko 273b6ed9e9 Remove redundant imports 2026-02-18 12:21:57 +08:00
Timofey Solomko ea9aaccfb9 Update copyright year to 2026 2026-01-31 15:30:24 +08:00
Timofey Solomko ed66991cbd Update copyright year to 2024 2024-01-11 16:57:04 +03:00
Timofey Solomko 43132fc39d Update copyright year to 2023 2023-02-07 15:31:45 +02:00
Timofey Solomko 4ccb5e1de8 [docs] Small fixes to the documentation of TarContainer.create(from:force:) 2022-01-22 13:39:40 +03:00
Timofey Solomko 79295db930 Update copyright year to 2022 2022-01-08 15:02:59 +03:00
Timofey Solomko 0ac48ae704 [docs] Add documentation for TarContainer.create(from:force:) 2021-08-04 10:52:31 +03:00
Timofey Solomko 4e8be1d4fc [TAR] Remove TarEntryInfo.format in favor of working with header format directly 2021-08-03 18:39:03 +03:00
Timofey Solomko d335ed450e [TAR] Counters for special entries are now UInt to prevent overflowing into negatives 2021-07-31 12:23:00 +03:00
Timofey Solomko 2a8fe7d37f [TAR] Remove an extra check in TarContainer functions for very small files
This situation is already covered by the check in TarParser, which results in ParsingResult.truncated. In addition, we repurposed TarError.tooSmallFileIsPassed for this cases (updated documentation).
2021-07-26 21:37:00 +03:00
Timofey Solomko 36f34c4e8f [TAR] Remove TarEntryInfo.blockStartIndex
To accomplish this, we added a second associated value to ParsingResult.entryInfo and rewrote TarContainer.open in similar way to TarContainer.info.
2021-07-26 21:22:03 +03:00
Timofey Solomko b2f7084a0e [TAR] Rename TarEntryInfoProvider to TarParser 2021-07-26 21:15:06 +03:00
Timofey Solomko 49c4adf8e9 [TAR] Return ParsingResult from TarEntryInfoProvider.next()
ParsingResult is a new enum. This allows us to better distinguish between different situtations encounterd during parsing a TAR container.
2021-07-26 21:13:27 +03:00
Timofey Solomko 3d7a4a8fbc [docs] Remove Throws section from TarContainer.create 2021-07-25 15:54:29 +03:00
Timofey Solomko cc217f8f93 [TAR] The names of created special entries are now quasi-unique 2021-07-25 15:54:00 +03:00
Timofey Solomko 8415cee9ae [TAR] Fix missing return statement in TarContainer.create 2021-07-24 15:15:29 +03:00
Timofey Solomko 505f35fc28 [TAR] Make TarContainer.create non-throwing by removing the usage of TarCreateError.utf8NonEncodable 2021-07-24 14:21:27 +03:00
Timofey Solomko 017afa06b8 [TAR] Add TarContainer.create(from:force:) function which can be used to specify tar format
In addition use this new function in the old TarContainer.create(from:) function with .pax format.
2021-07-24 14:15:35 +03:00
Timofey Solomko aba14af8c5 Small changes to code comments 2021-07-17 11:14:53 +03:00
Timofey Solomko f766fbc7ed [TAR] Add a comment explaining why the new data indices check uses strict inequalitites 2021-06-09 21:14:58 +03:00
Timofey Solomko d197d76769 [TAR] Check if the data is truncated before extracting entry data 2021-06-08 20:26:42 +03:00
Timofey Solomko 1fca632c2d Update copyright year to 2021 2021-03-26 13:50:20 +02:00
Timofey Solomko a844b34436 Update copyright year to 2020 2020-03-20 09:43:42 +03:00
Timofey Solomko c93a783d21 [docs] Fix grammar issues with regards to a/the/null articles, while/during, and extra commas 2019-03-13 12:27:08 +03:00
Timofey Solomko ce47019097 Update copyright year to 2019 2019-01-02 23:15:43 +03:00
Timofey Solomko 9559979233 [docs] Small improvements to TAR's docs 2018-12-22 20:10:09 +03:00
Timofey Solomko 160e55d9ce [TAR] Return a copy of data for entries in open function
This is consistent behavior with other containers and solves two problems: non-zero based indices and (probably) keeping entire container data in memory for the data of single entry (for example, all other entries were discarded).
2018-08-09 22:11:00 +03:00
Timofey Solomko 6d63e02d21 [docs] Add docs to all new TAR-create-related APIs 2018-08-07 21:05:36 +03:00
Timofey Solomko 6477cc63e7 [TAR] Restore info.size being nil for directories 2018-07-30 22:46:02 +03:00
Timofey Solomko 4b0a361aea [TAR] Add ext headers creation to TarContainer.create 2018-07-29 19:25:12 +03:00
Timofey Solomko 74b50be568 [TAR] Make TarEntry.init public and add argument labels 2018-07-29 19:21:25 +03:00
Timofey Solomko d3949524a1 [TAR] Add create function to TarContainer 2018-07-29 18:04:24 +03:00
Timofey Solomko 12d70a4856 [TAR] Use new format property in formatOf function
As a result, gnu format is now returned correctly in some cases where previously ustar was a result.
2018-07-23 09:33:54 +03:00
Timofey Solomko 8434e7b1bd [docs] Add documentation for TarContainer.Format and formatOf(container:) 2018-04-13 18:45:28 +03:00
Timofey Solomko 477ebcf48e [TAR] Add TarContainer.formatOf function 2018-04-13 17:34:56 +03:00
Timofey Solomko 58d96a1961 [TAR] Add Format enum 2018-04-13 17:34:56 +03:00
Timofey Solomko 8045b7e7ab [TAR] Use info provider in info function 2018-04-07 13:44:19 +03:00
Timofey Solomko c9ea4f33fc [TAR] Use special entry type internal property of TarEntryInfo instead of several isSomething properties 2018-03-31 12:15:43 +03:00
Timofey Solomko 309a07ed15 [docs] Slightly simplify notes about entries order of container functions 2018-03-17 15:37:41 +03:00
Timofey Solomko e714dc308b Updated copyright year to 2018 2018-01-03 19:44:18 +03:00
Timofey Solomko c8d92e56d3 Replace BitReader and ByteReader with BitByteData's implementations 2018-01-03 19:22:15 +03:00
Timofey Solomko 20ab480737 Complete renaming of DataWithPointer to ByteReader
This includes renaming pointerData variables to byteReader as well as renaming of files with extensions to ByteReader.
2018-01-03 19:22:14 +03:00
Timofey Solomko b9eeb1bc7c Rename ByteReader.index to offset 2018-01-03 19:22:13 +03:00
Timofey Solomko 3751e25c4f Rename DataWithPointer to ByteReader
This and following commits should ease switch to BitByteData usage.
2018-01-03 19:22:13 +03:00
Timofey Solomko 556e42e179 Add and update documentation 2017-11-14 20:37:20 +03:00
Timofey Solomko 5a7b8dc812 Swiftlint autocorrect 2017-11-04 23:30:54 +03:00
Timofey Solomko 8b67fca4fe Directories from TAR and ZIP now have nil for their data 2017-10-28 13:44:13 +03:00
Timofey Solomko 0d3369a4e5 Rename some variables for consistency 2017-10-21 13:51:20 +03:00
Timofey Solomko bdfaa3d073 Rework TarContainer.open to first call info() and then get data based on info entries 2017-10-21 13:50:02 +03:00
Timofey Solomko 05fa830c05 Move gnu long name tar extensions support code into TarEntryInfo 2017-10-21 13:42:20 +03:00