Timofey Solomko
cebf0555e5
Make HuffmanLength Comparable and use this in their sorting in HuffmanTree
2017-09-03 20:04:44 +03:00
Timofey Solomko
f96f446827
More elegant solution for zero code lengths problem
2017-09-03 19:59:46 +03:00
Timofey Solomko
69fa9a2646
Remove unused inits from HuffmanTrees
2017-09-03 14:18:23 +03:00
Timofey Solomko
49228a049f
Fix HuffmanTree init crash when zero codeLength is encountered
2017-09-03 14:16:59 +03:00
Timofey Solomko
a357837065
Use new HuffmanLengths in deflate compression huffmantree construction
2017-09-03 14:16:30 +03:00
Timofey Solomko
818e387028
Use new HuffmanLengths in dynamic deflate huffman tree construction
2017-09-03 14:16:10 +03:00
Timofey Solomko
4addd8098e
Use new HuffmanLengths in construction of static huffman trees in deflate
2017-09-03 14:05:12 +03:00
Timofey Solomko
fc63053899
Use new HuffmanLengths in BZip2 decompression (in huffman tables creation)
2017-09-03 14:01:50 +03:00
Timofey Solomko
5d19120b63
Add inits from new HuffmanLengths to HuffmanTrees
2017-09-03 14:00:26 +03:00
Timofey Solomko
97c767abf5
Add HuffmanLength class
...
This class represents (symbol, codeLength) pairs used in construction of HuffmanTrees. It also includes useful functions for generating HuffmanLengths from other structures.
2017-09-03 13:58:11 +03:00
Timofey Solomko
94545c06a9
Another batch of small changes to bzip2
2017-09-03 13:49:18 +03:00
Timofey Solomko
6e9248fcd5
Remove try and throws where possible
...
This is because of the replacement of symbolNotFound throws with fatalErrors in compression related functions.
2017-09-02 23:24:55 +03:00
Timofey Solomko
af38fa1717
Fix problems with write(number:...) function of BitWriter
2017-09-02 23:12:55 +03:00
Timofey Solomko
8b6b9b9478
Add bitSize function to EncodingHuffmanTree
...
This function calculates expected size (in bits) of data based on data's stats.
2017-09-02 23:01:01 +03:00
Timofey Solomko
baad3196dc
Add variant of bzip2 crc32 function with Data argument
...
Will be used in BZip2 compression
2017-09-02 23:00:10 +03:00
Timofey Solomko
78fb8cb07b
Small changes to bzip2 code
2017-09-02 22:59:31 +03:00
Timofey Solomko
cc77cfaad6
Use fatalError instead of symbolNotFound error throw in EncodingHuffmanTree
...
It is a programming error if symbol is not found during encoding, thus, we should use fatalError.
2017-09-02 20:07:19 +03:00
Timofey Solomko
60b1499be8
Enable some new swiftlint rules
2017-09-02 20:03:48 +03:00
Timofey Solomko
cb54a5fa02
Use tuples in inits of huffman trees
2017-09-02 20:03:21 +03:00
Timofey Solomko
5b3e4e72d3
Extract Deflate huffman trees' bootstraps as constants
2017-09-02 20:02:55 +03:00
Timofey Solomko
89dfa410fe
Rename file with BZip2 tests for consistency
2017-09-02 19:56:40 +03:00
Timofey Solomko
12da128ddd
Change EncodingHuffmanTree API to be more consistent with decoding tree and cleanup usage
2017-08-29 00:10:04 +03:00
Timofey Solomko
2aca494757
Rename HuffmanTree into DecodingHuffmanTree
2017-08-29 00:03:56 +03:00
Timofey Solomko
9827e32bdd
Extract code for huffman encoding into separate class
2017-08-29 00:01:03 +03:00
Timofey Solomko
43f7dd6c50
Remove FIXME in 7zContainer
2017-08-22 15:01:13 +03:00
Timofey Solomko
9ac826ff74
Merge branch 'release-3.3.0' into develop
2017-08-20 10:51:04 +03:00
Timofey Solomko
c32cd538d6
Prepare for 3.3.0
2017-08-20 10:49:42 +03:00
Timofey Solomko
2446350bf0
Small fixes to README
2017-08-20 10:44:31 +03:00
Timofey Solomko
7aae6255f9
Update Readme
2017-08-20 10:41:50 +03:00
Timofey Solomko
617c86fe92
Rebuild jazzy docs
2017-08-19 16:28:01 +03:00
Timofey Solomko
a012413000
Update jazzy categories
2017-08-19 16:27:50 +03:00
Timofey Solomko
82b4da8789
Add and update docs for other classes.
2017-08-19 16:23:55 +03:00
Timofey Solomko
33c347c131
Add documentation for 7z
2017-08-19 16:23:26 +03:00
Timofey Solomko
0ff3e2f5e3
Significantly reduce number of error cases in 7zError
...
Also some of them were renamed.
2017-08-19 15:46:43 +03:00
Timofey Solomko
31aa347842
Update test results
2017-08-18 09:49:12 +03:00
Timofey Solomko
f78eef000d
Fix compile issues for performance tests
2017-08-18 09:48:55 +03:00
Timofey Solomko
14e77ee616
Fix compile issues with renamed variable
2017-08-18 09:48:36 +03:00
Timofey Solomko
745368e50d
Small fixes here and there
2017-08-16 22:47:24 +03:00
Timofey Solomko
c8be30a942
Prepare for second test release
v3.3.0-test.2
2017-08-16 22:17:59 +03:00
Timofey Solomko
a1daa622a5
Swiftlinted
2017-08-16 22:16:22 +03:00
Timofey Solomko
87c35fcc24
Add build time configuration of used compression methods in 7z in cocoapods configurations
2017-08-16 22:07:09 +03:00
Timofey Solomko
e365dd3617
Add build flag for deflate subspec
2017-08-16 22:06:44 +03:00
Timofey Solomko
df223ebde5
Add 7z subspec
2017-08-16 22:06:32 +03:00
Timofey Solomko
5ae920edb3
Rename build flags used in cocoapods configurations
2017-08-16 21:55:29 +03:00
Timofey Solomko
b7d5b3c997
Store unknown properties of 7z file info
2017-08-16 21:52:37 +03:00
Timofey Solomko
c155b3910d
Remove rawUnpackSize from 7z.open()
2017-08-16 21:51:53 +03:00
Timofey Solomko
3bfce7fe7f
Move Date extension into Extensions file
2017-08-16 21:36:51 +03:00
Timofey Solomko
ce4e12ac18
Rework XZ so multiByteDecode doesn't return tuples
2017-08-16 21:36:12 +03:00
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