TSVZ 4.4__tar.gz → 4.5__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: TSVZ
3
- Version: 4.4
3
+ Version: 4.5
4
4
  Summary: Key-value store kept in a TSV / CSV / NSV / PSV file, with tsvz-spec-v1 support
5
5
  Home-page: https://github.com/yufei-pan/TSVZ
6
6
  Author: Yufei Pan
@@ -34,7 +34,7 @@ key-value store in a delimiter-separated text file**. The first column of each
34
34
  row is the key; the file behaves like an ordered dictionary that is persisted to
35
35
  disk as you change it.
36
36
 
37
- **Version 4.4**, Python **3.6+**, one self-contained module (`TSVZ.py`): drop it
37
+ **Version 4.5**, Python **3.6+**, one self-contained module (`TSVZ.py`): drop it
38
38
  next to your code and `import TSVZ`, or install it.
39
39
 
40
40
  ```bash
@@ -7,7 +7,7 @@ key-value store in a delimiter-separated text file**. The first column of each
7
7
  row is the key; the file behaves like an ordered dictionary that is persisted to
8
8
  disk as you change it.
9
9
 
10
- **Version 4.4**, Python **3.6+**, one self-contained module (`TSVZ.py`): drop it
10
+ **Version 4.5**, Python **3.6+**, one self-contained module (`TSVZ.py`): drop it
11
11
  next to your code and `import TSVZ`, or install it.
12
12
 
13
13
  ```bash
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: TSVZ
3
- Version: 4.4
3
+ Version: 4.5
4
4
  Summary: Key-value store kept in a TSV / CSV / NSV / PSV file, with tsvz-spec-v1 support
5
5
  Home-page: https://github.com/yufei-pan/TSVZ
6
6
  Author: Yufei Pan
@@ -34,7 +34,7 @@ key-value store in a delimiter-separated text file**. The first column of each
34
34
  row is the key; the file behaves like an ordered dictionary that is persisted to
35
35
  disk as you change it.
36
36
 
37
- **Version 4.4**, Python **3.6+**, one self-contained module (`TSVZ.py`): drop it
37
+ **Version 4.5**, Python **3.6+**, one self-contained module (`TSVZ.py`): drop it
38
38
  next to your code and `import TSVZ`, or install it.
39
39
 
40
40
  ```bash
@@ -40,7 +40,7 @@ if os.name == 'nt':
40
40
  elif os.name == 'posix':
41
41
  import fcntl
42
42
 
43
- version = '4.4'
43
+ version = '4.5'
44
44
  __version__ = version
45
45
  author = 'pan@zopyr.us'
46
46
  COMMIT_DATE = '2026-10-12'
@@ -2007,9 +2007,10 @@ def _gzipUnpad(region):
2007
2007
  try:
2008
2008
  inflater.decompress(stripped[start:])
2009
2009
  if not inflater.eof: # its last bytes may be zero bytes of its own
2010
- # Fed only zeros, compressed data can end only inside a final stored block (65535 bytes, after a
2011
- # header of at most 5); anywhere else it fails or never ends. So 65544 zeros give the whole answer.
2012
- zeros = min(zeros, 65544)
2010
+ # Fed only zeros, compressed data in a Huffman block ends within a few hundred bytes, fails or
2011
+ # never ends. In a stored block it can end only if the block is final, after the rest of its
2012
+ # NLEN (both bytes zero only when LEN is 65535) and of its data: at most 2 + 65535 zeros.
2013
+ zeros = min(zeros, 2 + 65535)
2013
2014
  fed = 0
2014
2015
  while fed < zeros: # in pieces, with bounded output
2015
2016
  piece = b'\0' * min(1 << 16, zeros - fed)
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes