Skip to content

🚨 Update release workflow for Python 3.14, dropping 3.9#1952

Merged
ArthurZucker merged 9 commits intohuggingface:mainfrom
ngoldbaum:update-release-workflow
Apr 10, 2026
Merged

🚨 Update release workflow for Python 3.14, dropping 3.9#1952
ArthurZucker merged 9 commits intohuggingface:mainfrom
ngoldbaum:update-release-workflow

Conversation

@ngoldbaum
Copy link
Copy Markdown
Contributor

@ngoldbaum ngoldbaum commented Feb 19, 2026

See ngoldbaum#9 where I hacked this together on my fork to test.

See https://github.com/ngoldbaum/tokenizers/actions/runs/22193203602/job/64186704987?pr=9 for the python-release workflow. I verified that all workflows are generating an abi3 and cp314t wheel.

maturin doesn't support Python 3.9 or pypy 3.9 and pypy 3.10 anymore. They do support pypy3.11, so I could add those builds if you want.

Pypy is not actively developed anymore, so from my perspective it doesn't make sense to start shipping pypy3.11 wheels only to need to stop shipping them next year when maturin drops support for pypy entirely.

Copy link
Copy Markdown
Collaborator

@ArthurZucker ArthurZucker left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Okay, as I am not too familiar with this:

  1. we are dropping support for py39
  2. but we still have support for 310->314 since we use abi310
    ?

@HuggingFaceDocBuilderDev
Copy link
Copy Markdown

The docs for this PR live here. All of your documentation changes will be reflected on that endpoint. The docs are available until 30 days after the last update.

@ngoldbaum
Copy link
Copy Markdown
Contributor Author

we are dropping support for py39
but we still have support for 310->314 since we use abi310
?

Exactly! See https://pyo3.rs/v0.28.2/building-and-distribution.html#minimum-python-version-for-abi3

@ngoldbaum
Copy link
Copy Markdown
Contributor Author

Also, for what it's worth, I'm looking at adding a section to PEP 803 with quotes from library maintainers.

If you wouldn't mind, I'd appreciate it if I could include your opinion about the need for a stable ABI that supports the free-threaded build. Accepting PEP 803 will ensure that such a thing exists for Python 3.15 and I'd like to make that case as strong as possible.

@ngoldbaum
Copy link
Copy Markdown
Contributor Author

It looks like the tests failed due to an issue conntecting with Peter Norvig's blog.

@ArthurZucker let me know when you're ready to prepare a new tokenizers release and I'll update this PR.

@ArthurZucker
Copy link
Copy Markdown
Collaborator

I am hoping for EOW

@ArthurZucker
Copy link
Copy Markdown
Collaborator

Update sorry will do one tomorrow / today but want to drop py3.9 in the next

@ngoldbaum
Copy link
Copy Markdown
Contributor Author

Let me know if you need me to do anything here!

samdoran added a commit to samdoran/linux-mcp-server that referenced this pull request Apr 9, 2026
There are no Python 3.14t wheels available for macOS and
the build fails.

huggingface/tokenizers#1952
samdoran added a commit to rhel-lightspeed/linux-mcp-server that referenced this pull request Apr 9, 2026
There are no Python 3.14t wheels available for macOS and
the build fails.

huggingface/tokenizers#1952
@ArthurZucker
Copy link
Copy Markdown
Collaborator

Actually we'll drop it for 0.23!

@ArthurZucker ArthurZucker changed the title Update release workflow for Python 3.14 🚨 Update release workflow for Python 3.14, dropping 3.9 Apr 10, 2026
@ArthurZucker ArthurZucker merged commit 765f857 into huggingface:main Apr 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants