Skip to content

Support for Python 3.14#28

Draft
SamEdwardes wants to merge 7 commits into
mainfrom
python3.14
Draft

Support for Python 3.14#28
SamEdwardes wants to merge 7 commits into
mainfrom
python3.14

Conversation

@SamEdwardes

Copy link
Copy Markdown
Owner

Summary

Adds Python 3.14 to the supported versions and bumps the package to 0.5.0.

  • requires-python widened to >=3.10, <3.15
  • Added the Programming Language :: Python :: 3.14 classifier
  • spacy>=3.8.13 (3.8.13 is the first release with Pydantic v2 and Python 3.14 support)
  • Test matrix and default just test version updated to 3.14
  • Bumped uv_build build backend to >=0.11.24,<0.12.0
  • Changelog entry for 0.5.0

Blocked: draft until spaCy republishes cp314 wheels

This is a draft because the project is not currently installable on Python 3.14. spaCy 3.8.13 published cp314 wheels, but 3.8.14 dropped them (it ships only cp310–cp313 with no sdist). With spacy>=3.8.13, resolvers pick the latest (3.8.14) and uv sync fails on Python 3.14:

error: Distribution `spacy==3.8.14` can't be installed because it doesn't have
a source distribution or wheel for the current platform

Tracked upstream in explosion/spaCy#13949. Once spaCy republishes the cp314 wheels in 3.8.14+, uv sync will resolve and this can be marked ready.

Related spaCy issues

claude and others added 7 commits June 18, 2026 14:56
Migrate the documentation site from MkDocs + Material to Great Docs
(https://posit-dev.github.io/great-docs/), a Quarto-based docs generator
for Python packages.

- Add great-docs.yml with branding, authors, user-guide ordering, and an
  API reference covering pdf_reader and the pdfminer/pytesseract parsers
- Move guide content into user_guide/*.qmd (parsers, multiprocessing,
  spaCy extensions, changelog, contributing); convert MkDocs admonitions
  to Quarto callouts. The landing page is generated from README.md, so the
  old docs/hooks.py README-copy trick is no longer needed
- Add .github/workflows/docs.yml to build and deploy to GitHub Pages on
  every push to main (uv sync --all-extras so the pytesseract parser can
  be introspected)
- Remove mkdocs.yml, the docs/ directory, and the mkdocs/mkdocstrings dev
  dependencies; refresh uv.lock
- Update justfile (preview-docs/build-docs via uvx), CLAUDE.md, and the
  changelog project URL

Great Docs runs via uvx (Python 3.11+) so it stays separate from the
package's own Python 3.9+ dependency floor.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
Claude-Session: https://claude.ai/code/session_012GMFfCNP6RbewDcAKDbmf5
Configure prek (pre-commit reimplementation) via prek.toml with ruff,
rumdl, and basic file-check hooks. Add prek to the dev dependency group
and document hook setup in the contributing guide and CLAUDE.md.
It doesn't appear that he's publishing the space for Python 3.14 yet.
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.

2 participants