1
0
Fork 0
Commit Graph

436 Commits

Author SHA1 Message Date
chylex ae65c89970 wip 2020-04-08 18:12:12 +02:00
chylex a6f194b4d8 Fix nullability hints in FileWorker 2020-04-08 17:20:58 +02:00
chylex f28bf6b619 Add BrotliBuilder menu option to break debugger 2020-04-08 16:57:56 +02:00
chylex 998e5b2fc0 Add error message when BrotliCalc is given a folder w/o uncompressed files 2020-04-08 16:40:47 +02:00
chylex c229d678d6 Ensure empty command length code lists don't throw an exception 2020-04-07 22:49:23 +02:00
chylex fb70490404 Add simpler ContextMapBuilder constructors 2020-04-07 22:48:22 +02:00
chylex 8b531f2e2b Fix broken final block-switch & improve command building API 2020-04-07 22:36:59 +02:00
chylex 6e4e0509d3 Reduce allocations & unnecessary calls in IC commands and distance codes 2020-04-07 18:01:09 +02:00
chylex 9c57e552a1 Split HuffmanGenerator into 2 files & refactor 2020-04-07 17:51:34 +02:00
chylex f20b41faf8 Optimize BitStream enumeration and cloning & unit test enumeration 2020-04-07 17:43:29 +02:00
chylex 440fa7fd16 Add RingBufferFast & optimize construction 2020-04-07 17:41:24 +02:00
chylex b29c044263 Minor code fixes (in/readonly keywords, exception messages, LINQ tweaks) 2020-04-07 17:41:24 +02:00
chylex 6227914384 Add compressed meta-block panel to BrotliBuilder w/ command filtering 2020-04-07 00:45:42 +02:00
chylex 4cdf3825d2 Rewrite BlockSwitchTracker 2020-04-06 20:58:09 +02:00
chylex 777f6de11f Add more block-switch command and builder validation 2020-04-06 20:57:03 +02:00
chylex 5d9ddf89f0 Allow last block-switch command to exceed total symbol count in builder 2020-04-06 20:52:57 +02:00
chylex 20bb732d30 Add a few BrotliLib API utilities to DistanceInfo, TransformType & more 2020-04-06 01:34:59 +02:00
chylex 0fe554e2b3 Add block-switch builder command merging & additional validation 2020-04-05 19:14:44 +02:00
chylex 11df776279 Ensure FrequencyList does not have negative or leftover frequency counts 2020-04-05 18:11:26 +02:00
chylex 3d43f27bc9 Make CompressedMetaBlockBuilder return concrete MetaBlock.Compressed type 2020-04-05 17:49:32 +02:00
chylex ed931fe700 Update FrequencyList API & update existing uses 2020-04-05 17:34:10 +02:00
chylex 21dc319539 Add anchor (^$) support to Static Dictionary dialog & tweak UI 2020-04-05 17:02:08 +02:00
chylex b4e55f2f54 Update validate-compression cmd to use streaming API & distinguish mismatch and exception 2020-03-31 12:02:46 +02:00
chylex fba5c43d39 Add BrotliFileReader output callbacks & IBrotliFileStream default method as extension 2020-03-30 13:34:44 +02:00
chylex 3dd95dec86 Make BrotliCalc find (other) compressed files when path points to a file 2020-03-30 11:45:26 +02:00
chylex 7afdbe3e10 Fix relative paths in BrotliCalc 2020-03-30 11:15:15 +02:00
chylex 55f3010362 Expand console buffer height in BrotliCalc & fix long error messages 2020-03-30 10:04:16 +02:00
chylex 6db7509b81 Work around Thread.Abort being removed from .NET Core 2020-03-30 08:06:49 +02:00
chylex 6f118ab05c Fix broken menu checkboxes w/ legacy menu 2020-03-26 23:46:16 +01:00
chylex 6fb64d62d2 Avoid calling BrotliCompressionParameters code pickers with only 1 candidate 2020-03-19 23:00:45 +01:00
chylex e8796b7050 Fix BrotliDictionaryIndex.Find length constraints not counting prefix/suffix 2020-03-19 22:58:15 +01:00
chylex 1183f9fdec Split BrotliCalc test-reserialize-rebuild command into test-reserialize & test-rebuild 2020-03-19 16:51:10 +01:00
chylex a9e8ecece6 Add separators to BrotliCalc command list 2020-03-19 16:41:20 +01:00
chylex a3cec2a898 Simplify EncodeUncompressedOnly implementation 2020-03-18 17:22:30 +01:00
chylex aa0cb63f58 Add MetaBlock.Uncompressed constructor that takes ArraySegment 2020-03-18 17:22:11 +01:00
chylex f9a0ec4e7d Add support for merging with last final InsertCopyCommand in CompressedMetaBlockBuilder 2020-03-18 17:02:22 +01:00
chylex 28082860d4 Add compression parameters for generating Huffman trees for block codes 2020-03-18 16:56:45 +01:00
chylex 2938bdff49 Minor builder API additions & fixes 2020-03-18 16:56:40 +01:00
chylex 4b427cb7b4 Add BrotliCalc command for stats about literals and backward/dictionary references 2020-03-17 15:14:53 +01:00
chylex 678d0f1b9d Add BrotliImpl transformer that converts compressed meta-blocks into uncompressed 2020-03-17 14:14:17 +01:00
chylex c3bd51bed5 Add a BrotliGlobalState output callback system & use it for marking copies 2020-03-17 14:10:19 +01:00
chylex 29d57b15b3 Use Literal.ToString to mark raw bytes & add escape codes for tab characters 2020-03-17 13:59:09 +01:00
chylex a002a8454c Rework BrotliCalc progress to show every thread's current workload 2020-03-17 11:16:19 +01:00
chylex 83ea326957 Add BrotliCalc argument for file processing order 2020-03-17 10:38:25 +01:00
chylex b2272ac8ce Turn % operator into bitwise AND where possible 2020-03-17 10:02:53 +01:00
chylex e25839acf3 Make ArraySegments into 'in' parameters 2020-03-17 09:13:56 +01:00
chylex e8ab507ef4 Change dictionary index to find all matches & allow min length of 1 2020-03-16 12:32:12 +01:00
chylex 88bd8d928b Rename interface & classes of the new streaming API 2020-03-15 16:22:22 +01:00
chylex 49dc43e480 Add BrotliCalc commands to rebuild/encode/transform files and save them 2020-03-15 16:17:55 +01:00
chylex 6cffbc91d5 Update BrotliCalc commands to use the new streaming APIs 2020-03-15 13:44:39 +01:00