Timofey Solomko
0ff80e30b6
Merge branch 'release-4.7.0'
4.7.0
2021-11-04 12:12:34 +03:00
Timofey Solomko
1e8ad0e2a5
Prepare for 4.7.0 release
2021-11-04 12:12:10 +03:00
Timofey Solomko
6971656b63
Two minor changes: make Checksums a caseless enum, fix a grammar mistake in a code comment
2021-11-04 12:10:39 +03:00
Timofey Solomko
df9c3fc0e2
Update README for 4.7.0
...
This includes adding LZ4 to the table of supported algorithms, mentioning LZ4 in the cocoapods section, and changing mentions of 4.6.0 to 4.7.0.
2021-11-03 20:45:10 +03:00
Timofey Solomko
fbff12c435
[docs] Add new types to jazzy categories
2021-11-03 20:44:26 +03:00
Timofey Solomko
10905dc588
[docs] Minor fixes to LZ4 documentation
2021-11-03 20:41:48 +03:00
Timofey Solomko
9f7efc9276
[docs] Add documentation for LZ4 compression functions
2021-11-03 20:31:08 +03:00
Timofey Solomko
d73fc791b1
[docs] Add documentation for DataError
2021-11-03 20:19:41 +03:00
Timofey Solomko
e3ffb812b9
[docs] Add documentation for LZ4 decompression functions
2021-11-03 20:13:42 +03:00
Timofey Solomko
498d679062
Update Results.md for 4.7.0
2021-11-01 23:49:31 +03:00
Timofey Solomko
5d63df36cf
Prepare for the test release of 4.7.0
4.7.0-test
2021-10-30 13:06:45 +03:00
Timofey Solomko
87a94f17a8
Upgrade xcode project
2021-10-30 13:03:16 +03:00
Timofey Solomko
a3332364a7
[Tests] Add many tests that check that checksum errors are thrown correctly
2021-10-29 19:26:33 +03:00
Timofey Solomko
20e8db701f
[Tests] Add a test for correct usage of CP437 in ZIP
2021-10-28 19:54:25 +03:00
Timofey Solomko
4fa84e0546
[Tests] Add small string tests for Deflate
2021-10-27 07:53:30 +03:00
Timofey Solomko
06adf522d3
CI: update to swift 5.5.1
2021-10-27 07:53:09 +03:00
Timofey Solomko
088d63ac03
[swcomp] Add --use-format option to tar command
...
This option allows to specify which TAR format to use when creating a container.
2021-10-25 20:01:00 +03:00
Timofey Solomko
01c106228b
[swcomp] Replace ConvertibleFromString extension for BZip2.BlockSize with an empty conformance
...
SwiftCLI provides a default implementation for enums with Int raw values.
2021-10-25 20:00:22 +03:00
Timofey Solomko
68fd0e8f49
[swcomp] Compress after creating a tar container
2021-10-24 19:07:56 +03:00
Timofey Solomko
4443fd1339
[Tests] Add a test for correct match index behavior in Deflate compression
2021-10-24 15:05:04 +03:00
Timofey Solomko
a47431f86d
[Deflate] Don't use match index as a cycling index
...
This was the cause of incorrect results in some rare cases.
2021-10-24 15:03:53 +03:00
Timofey Solomko
dc93436269
[swcomp] Update to use SwiftCLI's property wrappers
...
This should fix all deprecation warnings.
2021-10-24 12:47:22 +03:00
Timofey Solomko
f7a3d289cc
Drop support for Swift 5.0
2021-10-23 21:51:28 +03:00
Timofey Solomko
29eb6f346c
[swcomp] Upgrade SwiftCLI to 6.0
2021-10-23 21:45:22 +03:00
Timofey Solomko
deeb02fb5c
[LZ4] Remove remaining TODOs
2021-10-23 21:14:44 +03:00
Timofey Solomko
04aa3bd034
[LZ4] Add comments about implementation
2021-10-23 21:04:21 +03:00
Timofey Solomko
6e920a4ecc
[LZ4] Fix compilation issues with swift pre-5.5
2021-10-22 23:56:54 +03:00
Timofey Solomko
f64c5264f8
[LZ4] Remove extra TODOs
2021-10-22 22:43:50 +03:00
Timofey Solomko
7a43328b8e
[BZip2] Rename crc32 function for bzip2
2021-10-22 21:55:33 +03:00
Timofey Solomko
33fd3001a0
[LZ4] Don't use optionals for storing dictionary in encoder
2021-10-22 21:51:58 +03:00
Timofey Solomko
8398f25b2b
[swcomp] Don't accept block sizes larger than 4MB in LZ4 compression
2021-10-22 21:01:13 +03:00
Timofey Solomko
c1496428d5
[LZ4] Don't accept block sizes larger than 4MB in compression
...
This matches the behavior of the reference implementation and allows to remove a couple of additional checks.
2021-10-22 20:53:56 +03:00
Timofey Solomko
c2465fcd75
[LZ4] Verify in decoder that block size is not larger than max block size
2021-10-22 20:52:34 +03:00
Timofey Solomko
6d6a32b7ae
[LZ4] Produce output as an arrary when decoding blocks
...
This change significantly improves performance.
2021-10-22 19:40:17 +03:00
Timofey Solomko
e860b9d4a9
[LZ4] Slightly optimize match calculation in compression
2021-10-22 19:27:23 +03:00
Timofey Solomko
100002cf8f
[LZ4] Simplify removing dictionary from the output in decompression
2021-10-21 22:31:34 +03:00
Timofey Solomko
9e7faebf90
[LZ4] Don't use crc32 for matches identification
2021-10-21 22:31:00 +03:00
Timofey Solomko
de7864c6db
[Deflate] Replace crc32 of a match with bytes contacenated into UInt32
...
Previously, we were using crc32 to identify matches when doing compression. This not only was an overkill computationally (the new version has boosted the compression speed), but it could also lead to incorrect results in some rare cases (potentially, only theoretical situtations) due to collisions of crc32 algorithm.
2021-10-21 22:30:23 +03:00
Timofey Solomko
aa9377b5f5
[Tests] Print compression ratios only with 3 figures after the dot
2021-10-20 15:02:52 +03:00
Timofey Solomko
7877ad9e35
[Tests] Add lz4 test for even smaller input
2021-10-20 15:02:26 +03:00
Timofey Solomko
c1315b5727
[swcomp] Rename the --no-content-checksums option of lz4 command to --no-content-checksum
...
There can be at most one content checksum in a frame.
2021-10-20 15:01:56 +03:00
Timofey Solomko
acb041cbf4
[LZ4] Fix incorrect encoding of small inputs
2021-10-20 15:00:57 +03:00
Timofey Solomko
bb9574cefd
[LZ4] Fix incorrect checks for the location of the last match
2021-10-20 14:48:43 +03:00
Timofey Solomko
1324744785
[swcomp] Print compression ratio in appropriate benchmarks
2021-10-18 21:38:31 +03:00
Timofey Solomko
da8f4f7f5c
[Deflate] Rename some variables in lengthEncode
2021-10-18 18:35:06 +03:00
Timofey Solomko
268aaaa356
[Deflate] Use start/endIndex instead of count property of data input
2021-10-18 18:31:40 +03:00
Timofey Solomko
113972bcce
[Deflate] Reduce nesting in lengthEncode
...
This should be a purely refactoring change with no effect on performance or functionality.
2021-10-18 18:30:15 +03:00
Timofey Solomko
f2be0db44f
[Tests] Add a small test for fixed incorrect matching in LZ4 compression
2021-10-17 15:45:11 +03:00
Timofey Solomko
3a54c54ecc
[LZ4] Fix incorrect matching
...
We erroneously used match index as a cyclical index which was producing non well-formed/incorrect results in some rare cases.
2021-10-17 15:45:11 +03:00
Timofey Solomko
743b83e4cb
[LZ4] Add default values for dictionary and blockSize arguments of LZ4.compress
2021-10-17 15:45:11 +03:00