File: Changelog.rst

package info (click to toggle)
py7zr 0.11.3%2Bdfsg-1%2Bdeb11u1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 3,740 kB
  • sloc: python: 6,786; makefile: 198; ansic: 35
file content (282 lines) | stat: -rw-r--r-- 7,529 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
===============
Py7zr ChangeLog
===============

All notable changes to this project will be documented in this file.

`Unreleased`_
=============

Added
-----

Changed
-------

Fixed
-----

Deprecated
----------

Removed
-------

Security
--------



`v0.11.3`_
==========

Fixed
-----

* Fix test failure when running on pypi source(#279)

Security
--------

* Drop issue_218.7z test data wihch is reported a blackmoon trojan(#285)


`v0.11.1`_
==========

Changed
-------
* Improve BCJ filter performance with LZMA1, ZStd compressions.

Fixed
-----

* Fix to allow writing encrypted header(#280)
* Avoid crash when creationtime is wrong or Unix epoch. (#275,#276)


`v0.11.0`_
==========

Changed
-------

* PPMd: Use stream encoder/decoder instead of buffered one.
* PPMd: Use ppmd-cffi@v0.3.1 and later.(#268)

Added
-----

* PPMd compression/decompression support.(#255)
* New API to set methods to set header encode mode, encode or encrypted.(#259)
* Support Python 3.9.(#261)
* Support arm64/aarch64 architecture on Linux.(#262)

Fixed
-----

* Append mode cause error when target archive use LZMA2+BCJ.(#266)
* Fix zstandard compression/decompression.(#258)

Deprecated
----------

* Drop support for python 3.5 which become end-of-line in Sept. 2020.

`v0.10.1`_
==========

Fixed
-----

*  Fix exception when reading header which size is larger than buffer size (#252)


`v0.10.0`_
==========

* Release is same as v0.10.0b3.

`v0.10.0b3`_
============

Fixed
-----

* Fix BCJ(x86) filter code with a missing logic which cause extraction error
  for certain data. (#249, #250)


`v0.10.0b2`_
============

Added
-----

* Compatibility test with python-libarchive-c/libarchive for compression(#247)
* Document: express how to handle multi-volume archive (#243)

Changed
-------

* Calculate CRC32 of header without re-reading header from disk again.(#245)


`v0.10.0b1`_
============

Added
-----

* SevenZipFile.needs_password() method.(#208, #235)
* CLI: Support append mode command line.(#228)
* Support "APPEND" mode. User can open SevenZipFile() class with mode='a' (#227)

Changed
-------

* read(), extract(): improve performance when specifying parts of archived file,
  by skipping rest of arcvhive when target file has extracted.(#239,#242)
* read(), extract(): improve performance when specifying parts of archived file,
  by not running threads for unused compression blocks(folders).(#239,#242)
* docs: improve API documentation.(#244)
* setup: set minimum required python version as >=3.5
* Compression will be happened when call write() not close() (#222, #226)
* Handle file read/write in SevenZipCompressor/Decompressor class (#213)

Fixed
-----

* Raise PasswordRequired when encrypted header without passing password (#234, #237)
* CLI: don't raise exception when password is wrong or not given.(#229)
* Fix specification typo.
* Catch exception in threading extraction(#218,#219)

`v0.9.2`_
=========

Changed
-------

* Utilize max_length argument for each decompressor.(#210, #211)
* Change READ_BUFFER_SIZE 32768 for python 3.7.5 and before.
* Extend Buffer size when necessary.(#209)


`v0.9.1`_
=========

Changed
-------

* Improve DecompressionChain.decompress() logics.(#207)

Fixed
-----

* Fix BCJ filter for decompression that can cause infinite loop or wrong output.(#204,#205,#206)

`v0.9.0`_
=========

Added
-----

* BCJ Decoder/Encoder written by python.(#198, #199)
* Support Bzip2, Defalte + BCJ(X86, PPC, ARM, ARMT, SPARC) (#199)
* Add Copy method as an extraction only support.(#184)

Changed
-------

* Use large(1MB) read blocksize for Python 3.7.5 and later and PyPy 7.2.0 and later.
* Set ZStandard compression as unsupported because of a bug with unknown reason.(#198)
* Manage compression methods to handle whether decompressor requires coder['property'] or not.

Fixed
-----

* Significantly improve decompress performance which is as same speed as v0.7.*.
  by updating buffer handling.
* Fix decompression max_size to pass lzma module. Now it is as same as out_remaining.
* Support LZMA+BCJ(X86, PPC, ARM, ARMT, SPARC) with alternative BCJ filter.(#198, #199)
* Fix packinfo crc  read and write (#187, #189)
* Accept archive which Method ID is NULL(size=0)(#181, #182)
* CLI: Does not crash when trying extract archive which use unsupported method(#183)


v0.8.0
======

Added
-----

* test: add test for #178 bug report the case of LZMA+BCJ as xfails.
* File format specification: add ISO/IEC standard style specification document.
* Support extra methods for archiveinfo() method.(#150)
* test: unit tests for Sparc, ARMT and IA64 filters.
* Support for PPC and ARM filters.
* Support encryption(#145)
* Export supported filter constants, such as FILTER_ZSTD(#145)

Changed
-------

* Improve README, documents and specifications.
* Update password handling and drop get_password() helper (#162)
* Enable encoded header and add more test with 7zip compatibility.(#164)
* Refactoring SevenZipFile class internals. (#160)
* Refactoring classes in compressor module. (#161)
* Add 'packinfo.crcs' field digests data when creating archive.(#157)
  It help checking archive integrity without extraction.
* CLI: help option to show py7zr version and python version.
* Use importlib for performance improvement instead of pkg_resources module.
* Documents: additional methods, filter examples.
* CI configurations: Manage coverage with Coveralls.
* Refactoring decompression classes to handle data precisely with folder.unpacksizes(#146)
* Default compression mode is LZMA2+BCJ which is as same as
  7zip and p7zip(#145)
* Enhance encryption strength, IV is now 16 bytes, and generated
  with cryptodom.random module.(#145)
* Refactoring compression algorythm related modules.

Fixed
-----

* Now return correct header size by archiveinfo() method.(#169)
* Disable adding CRC for encoded header packinfo.(#164)
* Fix password leak/overwrite among SevenZipFile objects in a process.(#159)
  This can cause decryption error or encryption with unintended password.
* Release password on close()
* SevenZipFile.test() method now working properly. (#155)
* Fix extraction error on python 3.5.(#151)
* Support combination of filters(#145)
* Compression of Delta, BZip2, ZStandard, and Deflate(#145)
* Fix archived head by multiple filter specified.
* Fix delta filter.
* Working with BCJ filter.
* Fix archiveinfo to provide proper names.

Removed
-------

* test: Drop some test case with large files.
* Drop ArchiveProperty class: A field has already deprecated or not used.(#170)
* Drop AntiFile property: a property has already deprecated or not used.
* remove final_header definition.



.. History links
.. _Unreleased: https://github.com/miurahr/py7zr/compare/v0.11.3...HEAD
.. _v0.11.3: https://github.com/miurahr/py7zr/compare/v0.11.1...v0.11.3
.. _v0.11.1: https://github.com/miurahr/py7zr/compare/v0.11.0...v0.11.1
.. _v0.11.0: https://github.com/miurahr/py7zr/compare/v0.10.1...v0.11.0
.. _v0.10.1: https://github.com/miurahr/py7zr/compare/v0.10.0...v0.10.1
.. _v0.10.0: https://github.com/miurahr/py7zr/compare/v0.10.0b3...v0.10.0
.. _v0.10.0b3: https://github.com/miurahr/py7zr/compare/v0.10.0b2...v0.10.0b3
.. _v0.10.0b2: https://github.com/miurahr/py7zr/compare/v0.10.0b1...v0.10.0b2
.. _v0.10.0b1: https://github.com/miurahr/py7zr/compare/v0.9.2...v0.10.0b1
.. _v0.9.2: https://github.com/miurahr/py7zr/compare/v0.9.1...v0.9.2
.. _v0.9.1: https://github.com/miurahr/py7zr/compare/v0.9.0...v0.9.1
.. _v0.9.0: https://github.com/miurahr/py7zr/compare/v0.8.0...v0.9.0