Timofey Solomko
626c1f7b62
Change utf8 detection alogrithm in zip to favor more cp437
2017-08-16 20:26:33 +03:00
Timofey Solomko
e40ddacd07
Fix incorrect posixPermissions in tar in some cases
...
Sometimes "mode" fields also includes unix type which we haven't accounted for.
2017-08-16 18:36:18 +03:00
Timofey Solomko
15b9169448
Add support for NTFS extra field in ZIP
2017-08-16 18:30:36 +03:00
Timofey Solomko
288e34179c
Use new Date extension in 7z
2017-08-16 18:07:05 +03:00
Timofey Solomko
7f78732973
Add Date extension with initializer from ntfs time
2017-08-16 18:06:49 +03:00
Timofey Solomko
a0d150c68c
Add isTextFile property to ZipEntry
2017-08-16 17:55:39 +03:00
Timofey Solomko
fe74423356
Fix problems when ZipEntry.data() is called multithreadingly
2017-08-16 17:48:25 +03:00
Timofey Solomko
f68a1f0cb7
Remove warnings about deprecation of certain TAR entry properties
2017-08-16 17:04:22 +03:00
Timofey Solomko
a29dc61183
Add isLink and linkPath properties to ContainerEntry protocol
2017-08-16 17:04:00 +03:00
Timofey Solomko
9160abf068
Add isLink and linkPath properties to ZIP
2017-08-16 17:03:42 +03:00
Timofey Solomko
67c445491e
Add isLink property to TAR
2017-08-16 17:03:24 +03:00
Timofey Solomko
a9b3a110fe
Save byte in bit functions instead of constantly access data property
2017-08-15 12:09:13 +03:00
Timofey Solomko
f21f0c7292
Reduce usage of intFromBits function
2017-08-15 12:04:22 +03:00
Timofey Solomko
2134d63535
Perform alignment of bitreader in 7z specific code of bitreader
2017-08-15 11:37:06 +03:00
Timofey Solomko
5210c16cf9
Change logic of alignment requirements in byte functions of BitReader
...
Previously, functions like byte(), uint32(), etc had a side effect: they were silently permorming alignement (skipping all bits until next byte's boundary). I've considered this as a bad practice and now a call of align() function is required before using byte function. In addition, isAligned computed property was added to check if alignment is required.
2017-08-15 11:18:02 +03:00
Timofey Solomko
0a1b356b1b
7z entries now always have type in entryAttributes
2017-08-14 18:49:59 +03:00
Timofey Solomko
8229afde2e
Prepare for first test release
2017-08-14 17:36:35 +03:00
Timofey Solomko
a65666cd19
Remove unused coder IDs and extra comments
2017-08-14 17:29:58 +03:00
Timofey Solomko
59a0896fa5
Add tests for different 7z compression methods
2017-08-10 16:48:36 +03:00
Timofey Solomko
b8eb63b834
Minor code improvements.
2017-08-06 18:17:43 +03:00
Timofey Solomko
ece5bc5c99
Fix problems with reading entries' data caused by incorrect interpretation of packedStreams property of 7zFolder
2017-08-06 17:44:24 +03:00
Timofey Solomko
c341a9263c
Fix incorrect reading of substreams' crcs
2017-08-06 17:43:23 +03:00
Timofey Solomko
ffb1c78434
Fix incorrect read of end byte in 7z substream
2017-08-05 15:11:22 +03:00
Timofey Solomko
f76a7c677a
Add support for several 7z coders
2017-08-03 00:32:32 +03:00
Timofey Solomko
e79924bf84
Populate entryAttributes for 7z entry; set linkPath, too
2017-08-02 17:34:09 +03:00
Timofey Solomko
8ca5f9e37c
Use new attribute types in 7z entry info
2017-08-02 17:31:33 +03:00
Timofey Solomko
0bc1d470e9
Add some types for permissions/attributes
2017-07-31 18:55:56 +03:00
Timofey Solomko
42553d82bf
Fix problem with 7z containers with empty and non-empty files
...
unpackSizes array doesn't have values for empty files.
2017-07-31 17:49:44 +03:00
Timofey Solomko
f0c0c24d90
Return empty arrays for completely empty containers
2017-07-30 22:26:25 +03:00
Timofey Solomko
995ee29531
Parse 7zEntryInfo into 7zEntry.entryAttributes
2017-07-30 20:03:26 +03:00
Timofey Solomko
5831c5201d
Add encryptionNotSupported error for 7z
2017-07-30 18:36:07 +03:00
Timofey Solomko
e9774296a5
Use folder.unpack(data:) function for unpacking packed headers
2017-07-30 16:00:06 +03:00
Timofey Solomko
a7dfb66820
Fix problems with unpacking files
...
We now account for the fact that one stream contains information for several files.
2017-07-30 15:53:52 +03:00
Timofey Solomko
3503bcbb89
Support unavailable data in SevenZipEntry (when no substreamInfo is found)
2017-07-30 15:52:28 +03:00
Timofey Solomko
f0bdff081a
Extract function for unpacking data in 7z
2017-07-30 15:48:03 +03:00
Timofey Solomko
45e70d5f7a
Fix incorrect badge link in README
2017-07-29 23:38:03 +03:00
Timofey Solomko
c477194969
Don't return empty info array when no substreamInfo found
...
In this case we can still get some information about files and we should return it.
2017-07-29 23:28:33 +03:00
Timofey Solomko
0968395757
Implement SevenZipContainer.open function
...
There are some problems when one packed stream contains several files, though.
2017-07-29 23:28:33 +03:00
Timofey Solomko
b1bc89ecdd
Add update-crc version for crc32 function with Data argument
2017-07-29 23:28:33 +03:00
Timofey Solomko
559c47a42d
Fixes for packed header decoding
...
Don't use optional for storing packed header end index, use correct pointer data object for LZMA2 decoding.
2017-07-29 23:28:33 +03:00
Timofey Solomko
b3dcb761d9
Style improvements
2017-07-29 15:44:09 +03:00
Timofey Solomko
a222b05c71
Make winAttributes uint32
2017-07-29 15:35:05 +03:00
Timofey Solomko
8f9a0393f7
Remove unused 7zFileInfo.File properties
2017-07-29 15:34:46 +03:00
Timofey Solomko
363fe78ead
Add 7zEntry class and its first iteration
2017-07-29 00:02:17 +03:00
Timofey Solomko
8c558c5a77
Fix problems with isDirectory and times in 7zEntryInfo
2017-07-28 20:26:14 +03:00
Timofey Solomko
83c2a0d213
Add new EntryInfo struct for 7z and public function for getting them
2017-07-28 19:48:48 +03:00
Timofey Solomko
c98ed2a62e
Extract function to read "definedBits" as a BitReader extension
2017-07-28 19:19:23 +03:00
Timofey Solomko
3b31a51792
Use BitReader everywhere in 7z
...
It should protect from not updating index in DWP when we switch between DWP and BitReader.
2017-07-28 19:19:11 +03:00
Timofey Solomko
e0f84717de
Return only integer in multi-byte decode function for 7z
...
We never use its bytes for anything.
2017-07-28 19:03:14 +03:00
Timofey Solomko
415d6669d5
Throw error on detected additional streams
...
Because we don't support them (yet?)
2017-07-28 19:00:07 +03:00