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
6a6e75d752
[docs] Fix an error in documentation for TarEntryInfo.deviceMinorNumber
2023-09-20 11:45:27 +03:00
Timofey Solomko
43132fc39d
Update copyright year to 2023
2023-02-07 15:31:45 +02:00
Timofey Solomko
5b590803b8
[TAR] Remove outdated code comment
2022-10-21 19:33:50 +03:00
Timofey Solomko
79295db930
Update copyright year to 2022
2022-01-08 15:02:59 +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
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
265191ea05
[TAR] Remove TarEntryInfo.specialEntryType
2021-07-26 21:16:48 +03:00
Timofey Solomko
a743229456
[docs] Mention format forcing in the docs for TarEntryInfo properties
2021-07-25 15:55:31 +03:00
Timofey Solomko
c87e8bece7
[TAR] Remove unused generateContainerData function from TarEntry[Info]
2021-07-24 14:16:15 +03:00
Timofey Solomko
11a2054498
[TAR] Move Data extensions from TarEntryInfo into separate file
...
In addition Data.append(tarString:maxLength:) has been modified to not be throwing.
2021-07-24 13:56:52 +03:00
Timofey Solomko
1730eabc1c
[TAR] TarEntryInfo (internal) init is no longer throwing
2021-07-23 15:18:39 +03:00
Timofey Solomko
1ec17a3137
[TAR] Rename several properties of TarHeader for consistency
2021-07-22 23:52:54 +03:00
Timofey Solomko
a65f66c473
[TAR] Update TarEntryInfo.init and TarEntryInfoProvider to use TarHeader
...
Temporarily we had to leave the code that is being moved to TarHeader (such as TarEntryInfo.specialEntryType and blockStartIndex properties), because the format and create functionalities of TAR currently rely on it being present in TarEntryInfo to work. However, we were able to remove TarEntryInfo.SpecialEntryType enum, and use the TarHeader's version of it.
2021-07-22 23:49:47 +03:00
Timofey Solomko
7646ec34a1
[TAR] Remove pre-Swift 5.0 crash workaround
2021-07-21 19:34:48 +03:00
Timofey Solomko
e83f23effa
Update copyright year to 2021
2021-01-11 11:20:57 +02:00
Timofey Solomko
deab72a831
Merge branch 'hotfix-4.5.7' into develop
2020-10-16 15:57:08 +03:00
Timofey Solomko
a07fc290a0
Small fixes to code comments
2020-10-15 23:35:34 +03:00
Timofey Solomko
a844b34436
Update copyright year to 2020
2020-03-20 09:43:42 +03:00
Timofey Solomko
f6949a8f66
Replace the usage of the deprecated Data(bytes:) initializer
2020-03-20 09:40:48 +03:00
Timofey Solomko
31ec1f1553
Update copyright year to 2020
2020-01-01 19:06:33 +03:00
Timofey Solomko
75b21ae107
Replace usage of ByteReader with LittleEndianByteReader
2019-05-01 19:34:30 +03:00
Timofey Solomko
db82490ed8
Replace the usage of the deprecated Data(bytes:) initializer
2019-05-01 19:30:48 +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
79b5a951e2
Better detect pre-4.2 Swift in Data.prefix(upTo:) crash workaround in TarEntryInfo.generateContainerData()
2018-12-16 12:42:18 +03:00
Timofey Solomko
0f65983f49
[docs] Small typo fix in docs for TarEntryInfo.ownerUserName
2018-08-15 16:52:51 +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
6836384a34
[docs] Update TarEntryInfo properties docs to explain how their values influence creation of PAX headers
2018-08-07 21:05:24 +03:00
Timofey Solomko
0ae4c685c1
[TAR] Use "TarEntryInfo.generateContainerData prefx-runtime-crash-Swift-bug" workaround only on Linux with Swift version less than 4.2
2018-08-06 18:33:28 +03:00
Timofey Solomko
cc6d82c753
[TAR] Add a workaround for swift runtime crash on linux when creating name prefix
...
For some reason Data.prefix(upTo:).range(of:options:) crashes on linux and doesn't crash on macOS, so I've added a, hopefully, temporary workaround for this problem.
2018-08-05 23:34:23 +03:00
Timofey Solomko
02f7db0e39
[TAR] TarEntryInfo.size is now never nil (again)
...
This fixes potential force-unwrapping crashes in TarEntryInfoProvider and makes TarError.wrongField being in use again.
2018-08-05 13:05:35 +03:00
Timofey Solomko
bf96273ea8
[TAR] Apply base-256 encoding to negative values as well
2018-07-31 18:56:18 +03:00
Timofey Solomko
9c7937504e
[TAR] Add ustar implementation part of TarEntryInfo.generateContainerData
2018-07-29 18:04:25 +03:00
Timofey Solomko
16e7fc7d44
[TAR] Add pre-POSIX implementation part of TarEntryInfo.generateContainerData()
2018-07-29 18:04:24 +03:00
Timofey Solomko
0281f11a86
[TAR] Add Data extension function which appends string field
2018-07-29 18:04:24 +03:00
Timofey Solomko
40ea63c456
[TAR] Add Data extension which appends numeric field value either in octal or base-256 format
2018-07-29 18:04:24 +03:00
Timofey Solomko
46bf2a6d94
[TAR] Add fileprivate extension to Data which works like String.padding and Data.prefix combined
2018-07-29 18:04:19 +03:00
Timofey Solomko
dcabef6e95
[TAR] Add basic public initializer to TarEntryInfo
...
It takes two the most necessary properties of EntryInfo as arguments: name and type.
2018-07-29 18:04:19 +03:00
Timofey Solomko
14a4df3182
[TAR] Make almost all properties of TarEntryInfo var (instead of let)
...
This also makes several nil-initializations redundant.
2018-07-29 18:04:11 +03:00
Timofey Solomko
d17e772abf
[TAR] Support Sun's version of pax extended headers
...
Their version's only noticeable difference is in the typeflag (aka fileTypeIndicator) used ("X" instead of "x").
2018-07-24 22:52:34 +03:00
Timofey Solomko
1a583b5bc8
[TAR] Remove radix argument from ByteReader.tarInt function
...
Reason: it is always equals to 8.
2018-07-24 22:42:52 +03:00
Timofey Solomko
e795924b5d
[TAR] Correctly read device major/minor number as octal number
2018-07-24 22:42:05 +03:00
Timofey Solomko
a959703e2c
[TAR] Remove hasRecognizedMagic property from TarEntryInfo
2018-07-23 09:34:17 +03:00
Timofey Solomko
2d60b339fc
[TAR] Add correctly set format property to TarEntryInfo
2018-07-23 09:27:39 +03:00
Timofey Solomko
ef162c4b4f
[TAR] Correctly handle gnu format when used for incremental backups
...
Previously, in such cases the resulting entries were having incorrect file names instead of having ctime/atime.
2018-07-23 09:25:06 +03:00
Timofey Solomko
aee78e3030
[TAR] Correctly read uid and gid as octal numbers
2018-07-16 20:14:17 +03:00
Timofey Solomko
2a2842ebc3
[TAR] Replace nullEndedAsciiString function with a better version of it called tarCString
...
It uses String(cString:) initiliazer, since TAR's null-ending ASCII strings are, basically, CStrings. As a bonus this initializer is not failable, so there remains no situation where throwing wrongField error is necessary. This makes tarCString function non-throwing and also wrongField error case unused (thus, it is possible to remove it in the next major update).
2018-07-14 20:38:42 +03:00
Timofey Solomko
ffe6265b3e
[TAR] Slightly optimize checksum calculations
2018-07-13 23:23:45 +03:00