Commit Graph

449 Commits

Author SHA1 Message Date
Yann Collet
49f8459d11 fixed minor cast warning 2017-06-21 18:43:39 -07:00
Paul Cruz
0950b3159a more meaningful names for count variables 2017-06-21 18:30:27 -07:00
Paul Cruz
0b6eedeace malloc samples instead of static allocation 2017-06-21 18:24:19 -07:00
Yann Collet
4d3bdcf130 reduced CLevelMax for --no-big-tests 2017-06-21 18:20:02 -07:00
Paul Cruz
52a13abf3f removed comment regarding windowSize requirement 2017-06-21 18:13:52 -07:00
Paul Cruz
32e36c2d9a removed requirement that offset be less than windowSize 2017-06-21 18:00:47 -07:00
Yann Collet
bfc2f00080 --no-big-tests for zstreamtest
Apply --no-big-tests for tsan tests
2017-06-21 17:57:14 -07:00
Paul Cruz
eeff2d0e3c added const x2 2017-06-21 17:48:37 -07:00
Paul Cruz
04253e21bb added const 2017-06-21 17:48:01 -07:00
Paul Cruz
2ceaec1aad got rid of unnecessary casting to void* 2017-06-21 17:46:37 -07:00
Paul Cruz
ccae9ec807 added comment addressing use of bits in frame header descriptor 2017-06-21 17:43:21 -07:00
Yann Collet
dce789281b fixed : decompression of skippable frames in streaming mode 2017-06-21 15:53:42 -07:00
Yann Collet
c16748b137 added test cases for new command --list 2017-06-21 12:09:53 -07:00
Yann Collet
7bd1a2900e added ZSTD_dictMode_e to control dictionary loading mode 2017-06-21 11:50:33 -07:00
Paul Cruz
db3606e249 added test for files with no frame content size 2017-06-20 17:43:36 -07:00
Paul Cruz
acf0df678c fixed strange spacing 2017-06-20 15:41:43 -07:00
Paul Cruz
69bc4fab25 free the context object once done with decompression 2017-06-20 15:37:14 -07:00
Paul Cruz
ceb4f65620 allocate statically so we don't have to deal with freeing 2017-06-20 15:31:54 -07:00
Paul Cruz
a73c2a444a added tests with null files, changed condition to check that the file is more than 0 bytes 2017-06-20 14:33:08 -07:00
Paul Cruz
58c19b4202 spacing matters for test scripts 2017-06-20 14:14:53 -07:00
Yann Collet
ff8f83bd47 fixed fuzzer test 2017-06-20 12:17:32 -07:00
Paul Cruz
b07d0af2ba added additional tests for error detection 2017-06-20 11:54:44 -07:00
Paul Cruz
43ffcdde40 const dictOffset 2017-06-20 11:27:39 -07:00
Paul Cruz
1e0d125e76 const value 2017-06-20 11:15:26 -07:00
Paul Cruz
0034129270 made changes to accommodate single file use case 2017-06-20 11:07:38 -07:00
Paul Cruz
6a99de2dd8 change test to list info on .zst files 2017-06-20 10:45:06 -07:00
Paul Cruz
36e14b1963 added description to advanced usage, changed to use-dict 2017-06-20 10:34:34 -07:00
Paul Cruz
15102069a1 removed testing code from generation code 2017-06-20 10:25:16 -07:00
Paul Cruz
ff5589c091 added comments for clarity 2017-06-20 10:17:38 -07:00
Paul Cruz
551fb7ca05 changed error condition 2017-06-20 10:14:03 -07:00
Paul Cruz
b8237c6c66 refactoring for readability 2017-06-20 10:12:13 -07:00
Paul Cruz
6f17de2132 changed computation for readability 2017-06-20 09:50:28 -07:00
Paul Cruz
4a4f9ba262 const value that doesn't change 2017-06-19 17:46:21 -07:00
Paul Cruz
3a6856edca changed scope to avoid errors 2017-06-19 17:43:16 -07:00
Paul Cruz
7d2b5613b4 adhere to min dict size 2017-06-19 17:37:14 -07:00
Paul Cruz
ea2af1ffc4 changed dictionary to stay reasonable size during test 2017-06-19 17:34:50 -07:00
Paul Cruz
fdbb07283a added test to runTestMode 2017-06-19 17:29:15 -07:00
Paul Cruz
bdec7b8ce7 fixed for loop declaration, fixed test case 2017-06-19 17:18:43 -07:00
Paul Cruz
23098b53e8 wrote a test for dictionary corpus 2017-06-19 17:13:00 -07:00
Paul Cruz
7a26390989 changing for loop declaration 2017-06-19 16:39:57 -07:00
Paul Cruz
147ef05f12 for loop declaration not allowed 2017-06-19 16:38:51 -07:00
Paul Cruz
791352ad0e scope change 2017-06-19 16:32:38 -07:00
Paul Cruz
365e265a8e changed scope so that warning disappears 2017-06-19 16:28:40 -07:00
Paul Cruz
f4f928595b changed scope to get rid of mixed code/variables warning 2017-06-19 16:27:05 -07:00
Paul Cruz
7ea025cc7d added in struct to keep functions more orderly 2017-06-19 16:23:00 -07:00
Paul Cruz
b91b810c64 made some small changes to dictInfo struct and initDictInfo 2017-06-19 16:05:05 -07:00
Paul Cruz
1ee4f6b36c cleaning up code 2017-06-19 15:55:01 -07:00
Paul Cruz
2a52d72712 added comment to anotate decompressed error code 2017-06-19 14:21:35 -07:00
Paul Cruz
73ebb646d8 small stylistic changes 2017-06-19 14:20:35 -07:00
Paul Cruz
34f4e5cab2 changed if statement styling 2017-06-19 14:07:56 -07:00
Paul Cruz
1fc1a35dc4 added calls to free to match calls to malloc, made some stylistic changes, added init function for new struct 2017-06-19 14:02:27 -07:00
Paul Cruz
8f4fa43fe8 got files to decompress 2017-06-19 13:21:50 -07:00
Yann Collet
688952062b minor declaration statement warning fix 2017-06-19 11:53:42 -07:00
Yann Collet
d7a3bffba9 new api : setting compression parameters is refused if a dictionary is already loaded 2017-06-19 11:53:01 -07:00
Paul Cruz
da4ddc1f76 fixed decompression so that it uses compressed version 2017-06-19 11:40:45 -07:00
Paul Cruz
33467add60 made changes so that HUF_writeCTable no longer fails 2017-06-19 11:27:50 -07:00
Yann Collet
ed1d039127 newapi fuzzer tests : random flush orders in main loop 2017-06-19 11:07:33 -07:00
Paul Cruz
09ac51b56b small style changes 2017-06-19 09:24:38 -07:00
Yann Collet
f5deae8a67 new api fuzzer tests : frame parameters are randonly set 2017-06-18 23:41:38 -07:00
Yann Collet
ea3630a889 new api fuzzer set : dictionary is randomly set 2017-06-18 23:31:55 -07:00
Yann Collet
8dee0ec99e new api fuzzer tests : compression parameters are randomly set 2017-06-18 23:25:15 -07:00
Yann Collet
bd05b19713 removed macro CLAMP from decodecorpus
never used,
and would duplicate with CLAMP from zstd_compress.c
2017-06-16 18:16:27 -07:00
Yann Collet
01743a36e7 fuzzer tests for new API 2017-06-16 17:56:41 -07:00
Paul Cruz
2f30433cd7 fixing general style 2017-06-15 18:06:32 -07:00
Paul Cruz
ddd1ab710c added tests in playTest.sh 2017-06-15 16:53:03 -07:00
Paul Cruz
623b8fce85 add print statements for debugging and change malloc with updated size 2017-06-15 11:37:24 -07:00
Paul Cruz
52934fbfc8 added print statements for debugging, fixed first segfault 2017-06-15 09:47:29 -07:00
Paul Cruz
03a208e27c changed samples to geometric distribution so that it is huffman compressible 2017-06-14 18:06:16 -07:00
Paul Cruz
d93207a79f changed dictionary from using fixed amount of bytes for the header / entropy tables 2017-06-14 17:23:56 -07:00
Paul Cruz
664ed05ff6 changed randomly generated samples to randomly selected from the dictionary content 2017-06-14 16:42:51 -07:00
Paul Cruz
3b0e24c06b added error message to catch case where size not given 2017-06-14 12:04:22 -07:00
Paul Cruz
aa95bc0a5f code refactoring and adding some print statements for debugging 2017-06-14 10:54:47 -07:00
Paul Cruz
07cfc975bb debugging error with finalizeDictionary() not writing dictionary properly 2017-06-13 17:27:02 -07:00
Paul Cruz
8dd621f788 changed makefile to include zdict functions, wrote out dictionary to path 2017-06-13 14:19:35 -07:00
Paul Cruz
f35f252e36 added code to generate dictionary using finalizeDictionary 2017-06-13 11:54:43 -07:00
Paul Cruz
37e1b1488b removed previous double free crash, used new crash function 2017-06-09 13:57:18 -07:00
Paul Cruz
be9b0ae627 added error function for different compilation modes 2017-06-09 13:41:34 -07:00
Paul Cruz
11c3987baf added code to extend the offset when a dictionary is detected 2017-06-09 09:48:56 -07:00
Paul Cruz
125ed59968 made sure dictionary ID was being written in the frame header of each file 2017-06-08 17:27:15 -07:00
Paul Cruz
233ee5334e set the lower bits of frame header descriptor if dictionary is needed 2017-06-08 17:11:33 -07:00
Paul Cruz
c2d909e396 added code for generating dictionary/test files randomly. Still need to make sure dictionary ID matches 2017-06-08 17:06:30 -07:00
Yann Collet
8c910d2097 updated ZSTDMT streaming API
ZSTDMT streaming API is now similar
and has same capabilites as single-thread streaming API.
It makes it easier to blend them together.
2017-06-03 01:15:02 -07:00
Yann Collet
cdf7e82222 Added ZSTD_initStaticCDict() 2017-05-25 18:05:49 -07:00
Yann Collet
57827f906f added ZSTD_initStaticDDict() 2017-05-25 15:44:06 -07:00
Yann Collet
25989e361c updated ZSTD_estimate?DictSize() to pass parameter byReference
resulting ?Dict object is smaller when created byReference.
Seems better than a documentation note.
2017-05-25 15:07:37 -07:00
Yann Collet
0fdc71c3dc added ZSTD_initStaticDCtx() 2017-05-24 17:41:41 -07:00
Yann Collet
c7fe262dc9 added ZSTD_initStaticCCtx()
makes it possible to statically or externally allocate CCtx.
static CCtx will only use provided memory area,
it will never resize nor malloc.
2017-05-23 13:20:41 -07:00
Yann Collet
60a557e7fd fixing symbol.c test
I believe it would be better to rely on fuzzer tests compiled with dll
2017-05-19 11:27:43 -07:00
Yann Collet
fa3671eac7 changed ZSTD_BLOCKSIZE_ABSOLUTEMAX into ZSTD_BLOCKSIZE_MAX
Also :
change ZSTD_getBlockSizeMax() into ZSTD_getBlockSize()
created ZSTD_BLOCKSIZELOG_MAX
2017-05-19 10:51:30 -07:00
Yann Collet
009d604e00 ZSTD_compress_generic() supports multiple successive frames
also : clarified streaming API implementation
2017-05-19 10:17:59 -07:00
Yann Collet
0bdb575c31 Merge branch 'dev' into advancedAPI2 2017-05-16 16:32:29 -07:00
Yann Collet
2d4d31c18a removed gcc compilation flag -Wbad-function-cast
It makes it more difficult to directly cast the result of a function,
requiring to store the result in an intermediate variable.
It does not necessarily help readability,
and this restriction can be difficult to overcome in some constructions,
like some macros.

also : fixed minor Visual conversion warnings in datagencli.c
2017-05-16 11:34:38 -07:00
Yann Collet
83d0c764dc added several compilation flags 2017-05-15 17:15:46 -07:00
Yann Collet
a5ffe3d370 pushed enum values for strategy by one (ZSTD_fast==1)
this makes it possible to use `0` to mean:
"do not change strategy"
2017-05-12 16:29:19 -07:00
Nick Terrell
5f2c7213c7 Merge remote-tracking branch 'upstream/dev' into btopt
* upstream/dev: (305 commits)
  added test for ZSTD_estimateCStreamSize()
  changed variable name, for clarity
  fixed ZSTD_estimateCStreamSize()
  shortened ZSTD_createCStream_Advanced()
  fixed symbols test
  added ZSTD_estimateDStreamSize()
  changed name frameParams into frameHeader
  regroup memory usage function declarations
  separated ZSTD_estimateCStreamSize() from ZSTD_estimateCCtxSize()
  bumped version number
  added ZSTD_estimateCDictSize() and ZSTD_estimateDDictSize()
  Updated ZSTD_freeCCtx()
  updated ZSTD_estimateCCtxSize()
  Updated ZSTD_sizeof_CCtx()
  merged CCtx and CStream as a single same object
  cli : -d and -t do not stop after a failed decompression
  added dev branch CircleCI badge
  added dev branch Appveyor badge
  keep dev branch status only
  creates a binary archive without the `programs` directory
  ...
2017-05-10 16:49:58 -07:00
Yann Collet
30ab64e21d added test for ZSTD_estimateCStreamSize() 2017-05-10 11:30:19 -07:00
Yann Collet
461a9cc7c6 fixed symbols test 2017-05-09 16:53:09 -07:00
Yann Collet
f16f4497ca added ZSTD_estimateDStreamSize() 2017-05-09 16:18:17 -07:00
Yann Collet
542c9dfcf8 changed name frameParams into frameHeader
ZSTD_frameParams => ZSTD_frameHeader
ZSTD_getFrameParams() -> ZSTD_getFrameHeader()

The new naming is more distinctive from ZSTD_frameParameters,
which is used during compression.

ZSTD_frameHeader is clearer in its intention to described frame header content.
It also implies we are decoding a ZSTD frame, hence we are at decoding stage.
2017-05-09 15:46:07 -07:00
Yann Collet
fa8dadb294 separated ZSTD_estimateCStreamSize() from ZSTD_estimateCCtxSize()
for clarity
2017-05-08 18:24:16 -07:00