mirror of
https://github.com/python/cpython.git
synced 2025-09-27 10:50:04 +00:00
Issue #12306: Add ZLIB_RUNTIME_VERSION to the zlib module.
While we're at it, also document ZLIB_VERSION. Patch by Torsten Landschoff.
This commit is contained in:
parent
249ab5e8d1
commit
64d25ddb9c
4 changed files with 40 additions and 0 deletions
|
@ -122,6 +122,7 @@ The available exception and functions in this module are:
|
||||||
won't fit into memory at once. The *wbits* parameter controls the size of the
|
won't fit into memory at once. The *wbits* parameter controls the size of the
|
||||||
window buffer.
|
window buffer.
|
||||||
|
|
||||||
|
|
||||||
Compression objects support the following methods:
|
Compression objects support the following methods:
|
||||||
|
|
||||||
|
|
||||||
|
@ -217,6 +218,26 @@ Decompression objects support the following methods and attributes:
|
||||||
seeks into the stream at a future point.
|
seeks into the stream at a future point.
|
||||||
|
|
||||||
|
|
||||||
|
Information about the version of the zlib library in use is available through
|
||||||
|
the following constants:
|
||||||
|
|
||||||
|
|
||||||
|
.. data:: ZLIB_VERSION
|
||||||
|
|
||||||
|
The version string of the zlib library that was used for building the module.
|
||||||
|
This may be different from the zlib library actually used at runtime, which
|
||||||
|
is available as :const:`ZLIB_RUNTIME_VERSION`.
|
||||||
|
|
||||||
|
.. versionadded:: 3.3
|
||||||
|
|
||||||
|
|
||||||
|
.. data:: ZLIB_RUNTIME_VERSION
|
||||||
|
|
||||||
|
The version string of the zlib library actually loaded by the interpreter.
|
||||||
|
|
||||||
|
.. versionadded:: 3.3
|
||||||
|
|
||||||
|
|
||||||
.. seealso::
|
.. seealso::
|
||||||
|
|
||||||
Module :mod:`gzip`
|
Module :mod:`gzip`
|
||||||
|
|
|
@ -13,6 +13,17 @@ except ImportError:
|
||||||
mmap = None
|
mmap = None
|
||||||
|
|
||||||
|
|
||||||
|
class VersionTestCase(unittest.TestCase):
|
||||||
|
|
||||||
|
def test_library_version(self):
|
||||||
|
# On the build system, ZLIB_RUNTIME_VERSION should match ZLIB_VERSION.
|
||||||
|
# ZLIB_RUNTIME_VERSION is the actual library version while ZLIB_VERSION
|
||||||
|
# is the version from the header file. On the build system, the headers
|
||||||
|
# should match with the library exactly. At runtime, only the first
|
||||||
|
# digit is required to match.
|
||||||
|
self.assertEqual(zlib.ZLIB_RUNTIME_VERSION, zlib.ZLIB_VERSION)
|
||||||
|
|
||||||
|
|
||||||
class ChecksumTestCase(unittest.TestCase):
|
class ChecksumTestCase(unittest.TestCase):
|
||||||
# checksum test cases
|
# checksum test cases
|
||||||
def test_crc32start(self):
|
def test_crc32start(self):
|
||||||
|
@ -647,6 +658,7 @@ LAERTES
|
||||||
|
|
||||||
def test_main():
|
def test_main():
|
||||||
support.run_unittest(
|
support.run_unittest(
|
||||||
|
VersionTestCase,
|
||||||
ChecksumTestCase,
|
ChecksumTestCase,
|
||||||
ChecksumBigBufferTestCase,
|
ChecksumBigBufferTestCase,
|
||||||
ExceptionTestCase,
|
ExceptionTestCase,
|
||||||
|
|
|
@ -274,6 +274,9 @@ Core and Builtins
|
||||||
Library
|
Library
|
||||||
-------
|
-------
|
||||||
|
|
||||||
|
- Issue #12306: Expose the runtime version of the zlib C library as a constant,
|
||||||
|
ZLIB_RUNTIME_VERSION, in the zlib module. Patch by Torsten Landschoff.
|
||||||
|
|
||||||
- Issue #12959: Add collections.ChainMap to collections.__all__.
|
- Issue #12959: Add collections.ChainMap to collections.__all__.
|
||||||
|
|
||||||
- Issue #12567: Add curses.unget_wch() function. Push a character so the next
|
- Issue #12567: Add curses.unget_wch() function. Push a character so the next
|
||||||
|
|
|
@ -1169,6 +1169,10 @@ PyInit_zlib(void)
|
||||||
if (ver != NULL)
|
if (ver != NULL)
|
||||||
PyModule_AddObject(m, "ZLIB_VERSION", ver);
|
PyModule_AddObject(m, "ZLIB_VERSION", ver);
|
||||||
|
|
||||||
|
ver = PyUnicode_FromString(zlibVersion());
|
||||||
|
if (ver != NULL)
|
||||||
|
PyModule_AddObject(m, "ZLIB_RUNTIME_VERSION", ver);
|
||||||
|
|
||||||
PyModule_AddStringConstant(m, "__version__", "1.0");
|
PyModule_AddStringConstant(m, "__version__", "1.0");
|
||||||
|
|
||||||
return m;
|
return m;
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue