Skip to content

Tags: pycompression/xopen

Tags

v2.0.2

Toggle v2.0.2's commit message
v2.0.2 (2024-06-12)

* #161: Fix a bug that was triggered when reading large compressed files with
  an external program.

v2.0.1

Toggle v2.0.1's commit message
v2.0.1 (2024-03-28)

+ #158: Fixed a bug where reading from stdin and other pipes would discard the
  first bytes from the input.
+ #156: Zstd files compressed with the ``--long=31`` files can now be opened
  without throwing errors.

v2.0.0

Toggle v2.0.0's commit message
v2.0.0 (2024-03-26)

* #154: Support for gzip levels has been made more consistent. Levels 0-9
  are supported. Level 11 which was only available when the ``pigz`` backend was
  present is not supported anymore. Level 0, gzip format without compression,
  lead to crashes when the ``gzip`` application backend was used as this does
  not have a ``-0`` flag. ``xopen()`` now defers to other backends in that case.
* #152: ``xopen()`` now accepts `file-like objects
  <https://docs.python.org/3/glossary.html#term-file-object>`_ for its filename
  argument.
* #146, #147, #148: Various refactors for better code size and readability:

    * PipedCompressionReader/Writer are now combined _PipedCompressionProgram
      class.
    * _PipedCompressionProgram is binary-only. For text reading and writing
      it is wrapped in an ``io.TextIOWrapper`` in the ``xopen()`` function.
    * Classes that derive from PipedCompressionReader/Writer have been removed.
* #148: xopen's classes, variables and functions pertaining to piped reading
  and writing are all made private by prefixing them with an underscore.
  These are not part of the API and may change between releases.

v1.9.0

Toggle v1.9.0's commit message
v1.9.0 (2024-01-31)

* #142: The python-isal compression backend is now only used for compression
  levels 1 and 2. Contrary to other backends, python-isal level 0 gave
  compressed rather than uncompressed data in gzip format. Level 3 on
  python-isal did not provide better compression than level 2.
* #140: PipedCompressionReader/Writer now derive from the `io.IOBase
  <https://docs.python.org/3/library/io.html#io.IOBase>`_ abstract class.
* #138: The gzip default compression level is now 1 when no value is provided
  by the calling function. The default used to be determined by the backend.
* #135: xopen now uses zlib-ng when available and applicable.
* #133: Piped ``igzip`` is no longer used as a (de)compression backend as
  python-isal's threaded mode is a better choice in all use cases.

v1.8.0

Toggle v1.8.0's commit message
v1.8.0 (2023-11-03)

* #131: xopen now defers to the ``isal.igzip_threaded`` module rather than
  piping to external programs in applicable cases. This makes reading and
  writing to gzip files using threads more efficient.
* Support for Python 3.7 is dropped and support for Python 3.12 is added.

v1.7.0

Toggle v1.7.0's commit message
Version 1.7.0

v1.6.0

Toggle v1.6.0's commit message
Version 1.6.0

v1.5.0

Toggle v1.5.0's commit message
Version 1.5.0

v1.4.0

Toggle v1.4.0's commit message
Changelog

v1.3.0

Toggle v1.3.0's commit message
Changelog