Skip to content

Releases

v4.1.0

Choose a tag to compare

@github-actions github-actions released this 09 Nov 13:46
  • Dispatch XXH3 on x86 targets at runtime: link xxh_x86dispatch.c
    into vendored x86 and x86_64 builds so one baseline wheel selects
    SSE2, AVX2, or AVX512 for xxh3_64 and xxh3_128 inputs
    longer than 240 bytes, including streaming update(). On AVX2
    those inputs are about 1.5x faster.
  • Upgrade bundled xxHash from v0.8.3 to v0.8.4.

v3.6.1

Choose a tag to compare

@ifduyue ifduyue released this 21 Oct 12:31
  • Build wheels for Python 3.15

Full list of changes: v3.6.0...v3.6.1

v3.5.1

Choose a tag to compare

@ifduyue ifduyue released this 21 Oct 15:08
  • Build wheels for Python 3.14 and 3.15

Full list of changes: v3.5.0...v3.5.1

v3.4.2

Choose a tag to compare

@ifduyue ifduyue released this 21 Oct 20:00
  • Build wheels for Python 3.13, 3.14 and 3.15

Full list of changes: v3.4.1...v3.4.2

v4.0.2

Choose a tag to compare

@github-actions github-actions released this 19 Oct 05:57
  • Improve type annotation compatibility with hashlib

Full Changelog: v4.0.1...v4.0.2

v3.8.2

Choose a tag to compare

@ifduyue ifduyue released this 18 Oct 06:33
  • Build wheels for Python 3.15

Full list of changes: v3.8.1...v3.8.2

v3.7.3

Choose a tag to compare

@ifduyue ifduyue released this 18 Oct 06:33
  • Build wheels for Python 3.15

Full list of changes: v3.7.2...v3.7.3

v4.0.1

Choose a tag to compare

@github-actions github-actions released this 17 Aug 08:19
  • Clean up _parse_init_args keyword handling so the defensive check
    for a duplicate data keyword raises a proper error message
  • Add _xxhash module docstring

Full Changelog: v4.0.0...v4.0.1

v4.0.0

Choose a tag to compare

@github-actions github-actions released this 12 Aug 16:52
  • Breaking change: Drop support for Python 3.8, require Python >= 3.9
  • Breaking change: Remove deprecated xxhash.VERSION_TUPLE
  • Breaking change: The input keyword argument is renamed to data
    across constructors, update(), and one-shot functions
  • Breaking change: str input is no longer accepted and raises
    TypeError: Strings must be encoded before hashing; encode to
    bytes before hashing
  • Upgrade xxHash from v0.8.2 to v0.8.3. Note: on GCC/Clang source builds
    that target AVX2 (e.g. -march=x86-64-v3), upstream v0.8.3
    autovectorizes XXH64_update() and makes the xxh64 streaming path
    about 2x slower. The shipped wheels are built for baseline x86-64 and
    are unaffected. Source builds can work around it by adding
    -fno-tree-vectorize to the compiler flags.
  • Add per-object locking for thread safety, with sub-interpreter and
    free-threaded (no-GIL) Python support
  • Speed up hash constructors by switching them to tp_vectorcall.
  • Build pyodide wasm32 wheels
  • Add s390x big-endian test job
  • Add Python 3.15 classifier
  • CI: shard the PyPI upload into parallel groups and create the GitHub
    Release automatically

v3.8.1

Choose a tag to compare

@ifduyue ifduyue released this 06 Jul 13:31
  • Register the "benchmark" pytest mark to avoid PytestUnknownMarkWarning
  • Update C extension docstrings and remove stale comments

Full list of changes: v3.8.0...v3.8.1