Timofey Solomko
98b5ee3610
[swcomp] Save results file JSON with keys sorted
...
This ensures a more stable layout of JSON fields between updates to the same file.
2026-02-12 21:44:35 +08:00
Timofey Solomko
3f5694aeee
[swcomp] Rename SaveFile to OldSaveFile
2026-02-12 21:44:35 +08:00
Timofey Solomko
b2b4e18a58
[swcomp] Remove redundant import statements
2026-02-12 21:44:30 +08:00
Timofey Solomko
871b5dbe03
[swcomp] Add benchmark remove-run subcommand
2026-02-12 21:44:29 +08:00
Timofey Solomko
5618fea2ee
[swcomp] Add --self-compare option to benchmark show command
...
This option allows to compare a run with other runs in the same file.
2026-02-11 21:56:37 +08:00
Timofey Solomko
c05b37d324
[swcomp] Add --metadata-only option to benchmark show command
...
With this option only metadata is printed for the benchmark runs saved in the file.
2026-02-11 19:15:20 +08:00
Timofey Solomko
6b701e0b2f
[swcomp] Add --print-uuid option to benchmark show command
...
This option enables printing of internal UUIDs of benchmark runs saved in the file.
2026-02-11 19:14:26 +08:00
Timofey Solomko
e236b502b7
[swcomp] Improve benchmark show output for multi-way comparsions
2026-02-11 19:03:48 +08:00
Timofey Solomko
3537e0ada1
[swcomp] Save raw benchmark data for posterity
2026-02-11 19:03:14 +08:00
Timofey Solomko
5e8f568f64
[swcomp] Save and show benchmark warmup iteration
2026-02-11 19:03:14 +08:00
Timofey Solomko
5a0eb8187a
[XZ] Rename a file for consistency
2026-02-11 19:03:14 +08:00
Timofey Solomko
5d27f1b9b9
[swcomp] Print benchmark metadatas in normal order
2026-02-11 19:03:09 +08:00
Timofey Solomko
d8c4527c89
[BZip2] Slightly optimize MTF transform of selectors during compression
...
It can be statically proven that the output of MTF transform lies within a certain range, so a guard check can be replaced with an assertion.
2026-02-11 17:21:52 +08:00
Timofey Solomko
e7c4c13543
[BZip2] Code comments clarification
2026-02-11 17:21:48 +08:00
Timofey Solomko
33341b690b
[LZ4] Code comments grammar and wording improvements
2026-02-03 01:17:21 +08:00
Timofey Solomko
1566b49ce3
[7-Zip][ZIP] Remove support for CocoaPods optional dependencies
2026-02-03 01:15:33 +08:00
Timofey Solomko
ea9aaccfb9
Update copyright year to 2026
2026-01-31 15:30:24 +08:00
Timofey Solomko
fa4af5803a
[TAR] Remove compatibility functions for FileHandle
2024-04-21 17:18:53 +03:00
Timofey Solomko
891848f939
[swcomp] Remove redundant compiler check
2024-04-21 14:05:16 +03:00
Timofey Solomko
687517cfd5
Prepare for 4.8.6 release
2024-04-21 13:13:02 +03:00
Timofey Solomko
eabfe947ea
Add stupid PrivacyInfo thing
2024-04-21 11:43:33 +03: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
1e7393dc54
Prepare for 4.8.5 release
2023-02-19 17:25:03 +02:00
Timofey Solomko
c85adf3d73
[LZMA] Init range decoder's code with only one byte reader call
2023-02-19 16:51:03 +02:00
Timofey Solomko
ae99c943f6
[LZMA] Fix incorrect check for empty out window
...
This was caused by incorrectly assuming that out window (dictionary) always starts at 0 index. This is not correct in the case of LZMA2 where dictionary may have been reset, but the out window is technically not an empty array.
2023-02-19 16:49:14 +02:00
Timofey Solomko
43132fc39d
Update copyright year to 2023
2023-02-07 15:31:45 +02:00
Timofey Solomko
cbb34a17ce
Prepare for 4.8.4 release
2022-12-20 22:09:04 +03:00
Timofey Solomko
c1ecadbcb7
Update some code comments
2022-12-17 19:02:19 +03:00
Timofey Solomko
db48b07ec2
[TAR] TarReader now always returns nil after reaching EOF
...
Previosuly, repeated calls of read() or process() after reaching EOF would result in DataError.truncated being thrown. This behavior caused issues when there was no EOF marker in the TAR container.
2022-12-17 19:02:19 +03:00
Timofey Solomko
b1fe47fdbb
[BZip2] Fix incorrect BWT pointer in compression
2022-12-15 23:25:21 +03:00
Timofey Solomko
c7f4665394
Prepare for 4.8.3 release
2022-10-22 20:06:24 +03:00
Timofey Solomko
9263cd3284
[swcomp] Correctly extract hard links from TAR containers
...
Note that creating containers with hard links is still not supported (I do not know how to detect hard links with FileManager).
2022-10-22 19:29:04 +03:00
Timofey Solomko
efd67feb07
[TAR] Handle PAX headers with non-utf8 values and values with newline characters
...
For example, Apple's implementation of TAR on macOS produces such containers, which technically do not conform to the (informal) specifications.
2022-10-22 18:42:44 +03:00
Timofey Solomko
f191db2494
[swcomp] Use saved (relative) paths when extracting symlinks
2022-10-21 21:27:47 +03:00
Timofey Solomko
5b590803b8
[TAR] Remove outdated code comment
2022-10-21 19:33:50 +03:00
Timofey Solomko
32d6dc8ae6
[GZip] Improve truncation detection in the footer and optional parts of the header
2022-10-21 19:27:25 +03:00
Timofey Solomko
dafd474b96
[GZip] Add a new parameter with a default value to GzipArchive.archive which allows to set any extra fields
2022-10-14 20:23:19 +03:00
Timofey Solomko
03e23231fa
[GZip] Add processing of extra fields in GzipHeader
2022-10-14 19:59:18 +03:00
Timofey Solomko
241e523ba7
[GZip] Add a struct that represents header's extra field
2022-10-14 19:57:20 +03:00
Timofey Solomko
c5362651dd
[GZip] Change GzipHeader properties to var instead of let
2022-10-14 19:32:23 +03:00
Timofey Solomko
f9297d96a1
[GZip] Reject non byte-aligned members
...
The reasoning here is that GZip format is "byte-oriented" and not "bit-oriented", so seemingly GZip members (headers) that begin not on a byte boundary should be disallowed.
2022-10-14 19:30:39 +03:00
Timofey Solomko
987111c620
[swcomp] Fix build issues on linux and windows due to absence of autoreleasepool
2022-10-12 13:13:59 +03:00
Timofey Solomko
7cf26da9cb
[swcomp] Optimize printing in benchmark show
2022-10-11 21:25:21 +03:00
Timofey Solomko
d3143d58b4
[swcomp] Perform benchmark speed computations using nanosecond time resolution
2022-10-11 21:14:11 +03:00
Timofey Solomko
5187f34a9d
[swcomp] Reuse saved benchmark metadata if possible
2022-10-11 11:22:03 +03:00
Timofey Solomko
9a948f8584
[swcomp] Make benchmark results timestamp optional by introducing --preserve-timestamp option
2022-10-11 11:22:03 +03:00
Timofey Solomko
708e1bbade
[swcomp] Add --append option to benchmark run
2022-10-11 11:22:02 +03:00
Timofey Solomko
f3ca7a7ff5
[swcomp] Print brackets around metadata numbers
2022-10-11 11:22:02 +03:00
Timofey Solomko
f47d541882
[swcomp] Introduce a new, more flexible version of the save file format
...
It features a separate struct for results metadata and also allows multi-way comparisons with previously saved results.
2022-10-11 11:21:36 +03:00