Releases: Changaco/python-libarchive-c
Releases · Changaco/python-libarchive-c
5.3
5.2
5.1
5.0
Changes to the library:
- It is now possible to specify a codec for archive entry metadata (
pathname,linkpath,unameandgname) (#125).- BREAKING: If you use the
archive_read_classandarchive_write_classarguments, the classes you provide will receive a codec name as a second positional argument.
- BREAKING: If you use the
- The
timestamp_nsecarguments of the legacyArchiveEntry.set_{a,c,m}timemethods are now optional (#123).
Changes to the tests and packaging:
4.0
- BREAKING & SECURITY: The archive extraction functions now pass 3 security flags (
SECURE_NODOTDOT,SECURE_NOABSOLUTEPATHSandSECURE_SYMLINKS) to libarchive by default, unless the current directory is the root. - BREAKING: The
ArchiveEntrypropertiesatime,mtime,ctime,birthtimeandsizenow have the valueNoneinstead of0when they're unset. - BREAKING: The
ArchiveEntry.pathnameproperty now attempts to decode bytes using UTF-8. This breaks reading archives that contain file names which look like UTF-8 but aren't, if such a thing exists. Proper support of encodings will probably be added in the next version. - Multiple entries from the same archive can now be kept in memory, however only the current entry's content can be read.
- The
filetype,linkpath,size,mode,redvmajor,redvminor,uidandgidattributes of an archive entry can now be modified. - The four time properties of archive entries now have setters, so for example
entry.set_mtime(0, 0)can be replaced byentry.mtime = 0. - Archive entries have 4 new properties:
perm,rdev,unameandgname. - When adding files to an archive, a destination path can now be specified.
- The
ArchiveReadclass now has abytes_readproperty. - The
ArchiveWriteclass now has abytes_writtenproperty. - Python 3.6 is no longer tested.
- The documentation has been improved.
3.2
3.1
This release is mostly meant to fix #113 (a bug introduced in 3.0), but it also contains the following changes:
- the
ffi.archive_error()function now returns an exception instead of raising it seekable_stream_readeris now an alias ofstream_reader- the misleadingly named
ffi.VOID_CBfunction has been removed
3.0
Changes to the library:
- BREAKING: dropped support for Python 2.7 (#108)
- implemented reading and writing encrypted archives (#109)
- created a new context manager:
seekable_stream_reader(#107) - added support for 64-bit
time_ton 32-bit systems (#101) - load extra formats and filters when they're requested (#95)
Tests:
- dropped testing with Python 2.7 and 3.5, added 3.9 (#108)
2.9
Changes to the library:
- optimized the
ArchiveEntryclass (#94) - added support for the
zstdformat (#90) - fixed the top-level
__all__list (7b97d8b) - updated the code to support Python 3.8 (#88)
- improved the
add_file_from_memorymethod (#85 and #86) - lowered the level of log messages from warning to info (#83)
Tests:
2.8
Changes to the library:
- add support for setting
atime,ctime,mtimeandbirthtime(#50 and #63) - tell libarchive when writing an archive is aborted due to an exception (#53)
- add support for getting
uidandgid(#57) - add support for high resolution timestamps (#58)
- add two new archive readers:
stream_readerandcustom_reader(#60) - add missing archive extraction flags (#61)
- add the
lz4andwarcformats (#62) - add support for write options and uid/gid lookup (#72)
Tests: