Skip to content

chore(deps): update xxhash requirement from <4.0.0,>=3.0.0 to >=3.0.0,<5.0.0 - #1008

Closed
dependabot[bot] wants to merge 1 commit into
developmentfrom
dependabot/pip/xxhash-gte-3.0.0-and-lt-5.0.0
Closed

dependabot[bot] wants to merge 1 commit into
developmentfrom
dependabot/pip/xxhash-gte-3.0.0-and-lt-5.0.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 18, 2026 •

Copy link
Copy Markdown
Contributor

Updates the requirements on xxhash to permit the latest version.

Release notes

Sourced from xxhash's releases.

v4.0.1

  • 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: ifduyue/python-xxhash@v4.0.0...v4.0.1

Changelog

Sourced from xxhash's changelog.

v4.0.1 2026-08-17


- 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

v4.0.0 2026-08-12

  • 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 in constructors and one-shot functions. update() additionally gains a data keyword argument (it accepted no keyword arguments before).
  • 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. The GIL is now released only while hashing inputs larger than 64 KiB; previously update() released it unconditionally and one-shot functions always held it.
  • 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.2 2026-10-18


- Build wheels for Python 3.15

v3.8.1 2026-07-06

  • Register the "benchmark" pytest mark to avoid PytestUnknownMarkWarning
  • Update C extension docstrings and remove stale comments

v3.8.0 2026-06-27

... (truncated)

Commits
  • e2c1bcf Release v4.0.1
  • 669a69c Clean up _parse_init_args keyword handling
  • 4a6136d build(deps): bump astral-sh/setup-uv from 9.0.0 to 10.0.1
  • aa26ed6 Bump version to 4.0.1.dev0
  • d774e2a Add _xxhash module docstring
  • c8d9a0e Clarify changelog: update() keyword and GIL release threshold
  • 80d42d2 Mention exact str rejection error in changelog
  • befdf3b Update changelog: note str input rejection
  • 5c5e42f Release v4.0.0
  • 88fe191 Bump version to 4.0.0.dev8
  • Additional commits viewable in compare view

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Updates the requirements on [xxhash](https://github.com/ifduyue/python-xxhash) to permit the latest version.
- [Release notes](https://github.com/ifduyue/python-xxhash/releases)
- [Changelog](https://github.com/ifduyue/python-xxhash/blob/master/CHANGELOG.rst)
- [Commits](ifduyue/python-xxhash@v3.0.0...v4.0.1)

---
updated-dependencies:
- dependency-name: xxhash
  dependency-version: 4.0.1
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot
dependabot Bot requested a review from cemililik as a code owner October 18, 2026 09:42
@dependabot dependabot Bot added area: packaging-ci Code area: packaging-ci dependencies Dependency or ecosystem currency labels Oct 18, 2026
@coderabbitai

coderabbitai Bot commented Oct 18, 2026

Copy link
Copy Markdown

Important

Review skipped

Bot user detected.

To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration
  • Configuration used: defaults
  • Review profile: CHILL
  • Plan: Advanced
  • Run ID: 37be1450-ffd2-4337-b41a-e23c5f9e5b69

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Comment @coderabbitai help to get the list of available commands.

cemililik added a commit that referenced this pull request Oct 18, 2026
…y 4-5 (#1014)

## Summary

Four Dependabot range bumps (#1003, #1008, #1010, #1011) combined into
one pull request so they cost one CI round instead of four (each merge
makes the others "behind" and the branch protection requires an
up-to-date branch). Dependabot closes its own pull requests when the
same change lands. The individual Dependabot commits are merged
unchanged.

## What each range change admits, and the evidence

| Dependency | Range | Where it is used | Evidence |
|---|---|---|---|
| `datasketch` | `<2` → `<3` | `ingestion-scale` extra (MinHash LSH) |
**CI installs 2.0.0** for the full suite (5868 passed, 22 skipped); the
data-audit modules also pass locally on 2.0.0 (283 passed) |
| `pytest-randomly` | `<4` → `<6` | `dev` extra | **CI installs 5.0.0**
for the full suite (5868 passed, 22 skipped) |
| `xxhash` | `<4` → `<5` | `ingestion` extra (simhash) | **Not exercised
by CI** (the extra is not installed there). Locally on 4.0.1 the
data-audit modules give the same result as on 3.8: 283 passed, 1 skipped
|
| `pypdf` | `<6` → `<7` | `ingestion` extra (PDF reading) | **Not
exercised by CI**: pypdf is not installed there, so the PDF tests skip
(224 passed, 19 skipped). Locally the same modules give 238 passed, 5
skipped on both 5.9.0 and 6.21.1 |

So for xxhash and pypdf the green CI proves nothing; the local runs
above are the evidence.

### Not included

**#1007 (`huggingface_hub` `<2` → `<3`)** is left open on purpose. CI
installs 1.33.0 either way, so the change is untested, and widening the
range lets pip install hub 2.x for users once their other dependencies
allow it. That is a claim ForgeLM has not checked, and the core stack
(`huggingface_hub`, transformers, torch, TRL, PEFT, accelerate,
datasets) is migrated deliberately, not by an automatic bump. I would
close it, and add a Dependabot `ignore` for semver-major bumps of that
stack; that is a separate change.

## Type

- [x] Dependency

## Testing

- CI (lint, validate, tests on Python 3.10–3.13) on this branch.
- Local runs against throwaway installs of datasketch 2.0.0, xxhash
4.0.1 and pypdf 5.9.0 / 6.21.1 as in the table.

## Checklist

- [x] CHANGELOG entry under `[Unreleased]`

🤖 Generated with [Claude Code](https://claude.com/claude-code)

## Summary by Sourcery

Expand dependency compatibility ranges for ingestion extras and
development tooling while retaining the existing huggingface_hub
constraint.

Enhancements:
- Broaden supported version ranges for optional ingestion dependencies
and development tooling, admitting pypdf 6, xxhash 4, datasketch 2, and
pytest-randomly 4–5.

Documentation:
- Document the newly admitted dependency major versions and their
validation status in the unreleased changelog.

Tests:
- Validate compatibility with the newer dependency versions through CI
and targeted local test runs.

<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->

## Summary by CodeRabbit

* **Chores**
* Expanded supported version ranges for optional ingestion and scaling
packages, plus the development testing package. Minimum supported
versions are unchanged.
* Verified ingestion tests with updated package versions and CI with the
newer scaling and testing package versions.
  * Updated the changelog to document these compatibility updates.

<!-- end of auto-generated comment: release notes by coderabbit.ai -->

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
@dependabot @github

dependabot Bot commented on behalf of github Oct 18, 2026

Copy link
Copy Markdown
Contributor Author

Looks like xxhash is no longer updatable, so this is no longer needed.

@dependabot dependabot Bot closed this Oct 18, 2026
@dependabot
dependabot Bot deleted the dependabot/pip/xxhash-gte-3.0.0-and-lt-5.0.0 branch October 18, 2026 11:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: packaging-ci Code area: packaging-ci dependencies Dependency or ecosystem currency

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants