Timofey Solomko
41a6c9bae3
Various refactors and fixes for swiftlint
2017-10-02 23:11:38 +03:00
Timofey Solomko
aa8df11302
Add block size changing support for bzip2 compression
2017-10-02 00:16:41 +03:00
Timofey Solomko
58cb43959f
Extract deflate constants into separate file as an extension
2017-10-01 15:02:58 +03:00
Timofey Solomko
d3839a70ad
Rename files with compress extensions
2017-09-27 22:02:42 +03:00
Timofey Solomko
401d3cf26b
Extract code for BW transformation
2017-09-27 20:04:01 +03:00
Timofey Solomko
a28732828f
Update xcode project with xcode 9
2017-09-19 23:48:05 +03:00
Timofey Solomko
f8d4451c18
Remove recursive procedure for huffman lengths generation
2017-09-17 13:03:59 +03:00
Timofey Solomko
e5d2b78781
Add new procedure for huffman code length generation
2017-09-17 13:02:09 +03:00
Timofey Solomko
ce1c64ebcd
Add some tests for BZip2 compression
2017-09-10 13:10:51 +03:00
Timofey Solomko
34f718e152
Add BZip2 compression implementation
2017-09-10 13:10:36 +03:00
Timofey Solomko
26d7e7e1b4
Add SuffixArray implementation
2017-09-10 13:09:40 +03:00
Timofey Solomko
59237d3790
Add RecursiveHuffmanTree enum
...
It will be used in HuffmanTree construction in BZip2 compression.
2017-09-03 23:18:49 +03:00
Timofey Solomko
a70e557f38
Extract HuffmanLength array creation code into Deflate specific file
2017-09-03 22:46:00 +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
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
59a0896fa5
Add tests for different 7z compression methods
2017-08-10 16:48:36 +03:00
Timofey Solomko
a23b685008
Add tests for several 7z format features
2017-08-06 18:08:14 +03:00
Timofey Solomko
29f99d8f53
Add a lot of tests for containers' corner cases
...
This includes containers created on Windows, as well as container with only empty file or directory and completely empty containers (which are somewhat hard to create for ZIP or TAR).
Also typo in one 7z test is fixed.
2017-08-03 22:59:34 +03:00
Timofey Solomko
86874b9bee
Add some tests for 7z "empty" cases
2017-07-30 22:25:37 +03:00
Timofey Solomko
e455ccb5b0
Add xcode project groups for deflate and bzip2
2017-07-29 23:30:34 +03:00
Timofey Solomko
b01e3c99d3
Rework 7z tests to also use open function, provide long versions of them and use 7z container with SWCompression source code
2017-07-29 23:28:25 +03:00
Timofey Solomko
363fe78ead
Add 7zEntry class and its first iteration
2017-07-29 00:02:17 +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
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
133d2325fc
Another iteration of 7zip implementation
...
Extracted 7zProperty into a separate file; converted all structs to classes (to eliminates cows); replaced switches with ifs to ensure correct order of structures; overall completed implementation of structures (except fileinfo properties and packed header); codec renamed to coder.
2017-07-25 17:35:03 +03:00
Timofey Solomko
adf55c3d64
Revert "Extract multiByteDecode for use in 7z"
...
This reverts commit e390e582b1 .
2017-07-25 13:42:20 +03:00
Timofey Solomko
8e88fd3167
Add two more 7z tests
2017-07-25 13:39:42 +03:00
Timofey Solomko
f76c2b575a
More 7z progress
2017-07-18 23:28:17 +03:00
Timofey Solomko
507db69ddb
Add a lot of 7z related files for structures
2017-07-18 21:06:37 +03:00
Timofey Solomko
e390e582b1
Extract multiByteDecode for use in 7z
2017-07-18 21:06:22 +03:00
Timofey Solomko
b5c0032f38
First steps in 7z development
2017-07-18 18:50:27 +03:00
Timofey Solomko
81ba512994
Remove SWCompression/Common
2017-07-15 21:07:50 +03:00
Timofey Solomko
f8a2297f63
Add tests for tars with long names inside
2017-07-15 20:29:30 +03:00
Timofey Solomko
7ba077aab7
Extract some common code for ZIP
2017-07-15 20:03:25 +03:00
Timofey Solomko
a9ab327583
Add test of zip file with BZip2 compression
2017-07-09 13:50:44 +03:00
Timofey Solomko
eeefa31be0
Rename BitToByteWriter to BitWriter
2017-07-09 13:06:25 +03:00
Timofey Solomko
a4cd339fc4
Separated byte and bit reading parts of DWP into distinct class
2017-07-08 22:02:26 +03:00
Timofey Solomko
410ab31473
Split several more classes into separate files
2017-07-08 17:05:25 +03:00
Timofey Solomko
e3b21c9d0f
Merge branch 'hotfix-3.1.2' into develop
2017-07-08 00:22:32 +03:00
Timofey Solomko
6c323f9add
Add tests for various tar formats
2017-07-08 00:08:08 +03:00
Timofey Solomko
a10b47f334
Rearrange files in project
2017-07-06 18:46:31 +03:00
Timofey Solomko
39eea7c42a
Split code into separate files
...
Overtime size of source files became unmanageble, so it is better to split them. Also internal zip structure have been renamed to include word zip.
2017-07-06 18:41:30 +03:00
Timofey Solomko
da072b0ab1
Added test for zip container with lzma compression.
2017-07-01 23:49:22 +03:00
Timofey Solomko
e352c5abd6
Added tests for XZ multi-unarchive.
2017-06-30 23:55:58 +03:00
Timofey Solomko
e90a1d244c
Added test for gzip multiUnarchive.
2017-06-29 00:13:22 +03:00
Timofey Solomko
2c8966d4ca
Now uses single Info.plist file for all platforms.
2017-06-12 16:18:19 +03:00
Timofey Solomko
85acfcc8da
Added zip test with file with utf-8 name.
2017-05-27 22:45:37 +03:00