Download Latest Version v3.8.7_ Python 3.13 support, Cython 3, centralize registry entries source code.tar.gz (18.9 MB)
Email in envelope

Get an email when there's a new version of spaCy

Home / release-v3.8.7
Name Modified Size InfoDownloads / Week
Parent folder
spacy-3.8.7-cp39-cp39-macosx_10_9_x86_64.whl 2025-05-22 6.6 MB
spacy-3.8.7-cp39-cp39-macosx_11_0_arm64.whl 2025-05-22 6.3 MB
spacy-3.8.7-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl 2025-05-22 31.1 MB
spacy-3.8.7-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl 2025-05-22 31.4 MB
spacy-3.8.7-cp39-cp39-musllinux_1_2_aarch64.whl 2025-05-22 30.5 MB
spacy-3.8.7-cp39-cp39-musllinux_1_2_x86_64.whl 2025-05-22 31.3 MB
spacy-3.8.7-cp39-cp39-win_amd64.whl 2025-05-22 14.9 MB
spacy-3.8.7-cp310-cp310-macosx_10_9_x86_64.whl 2025-05-22 6.6 MB
spacy-3.8.7-cp310-cp310-macosx_11_0_arm64.whl 2025-05-22 6.3 MB
spacy-3.8.7-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl 2025-05-22 31.2 MB
spacy-3.8.7-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl 2025-05-22 31.5 MB
spacy-3.8.7-cp310-cp310-musllinux_1_2_aarch64.whl 2025-05-22 30.5 MB
spacy-3.8.7-cp310-cp310-musllinux_1_2_x86_64.whl 2025-05-22 31.4 MB
spacy-3.8.7-cp310-cp310-win_amd64.whl 2025-05-22 14.9 MB
spacy-3.8.7-cp311-cp311-macosx_10_9_x86_64.whl 2025-05-22 6.7 MB
spacy-3.8.7-cp311-cp311-macosx_11_0_arm64.whl 2025-05-22 6.4 MB
spacy-3.8.7-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl 2025-05-22 32.7 MB
spacy-3.8.7-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl 2025-05-22 33.0 MB
spacy-3.8.7-cp311-cp311-musllinux_1_2_aarch64.whl 2025-05-22 31.9 MB
spacy-3.8.7-cp311-cp311-musllinux_1_2_x86_64.whl 2025-05-22 32.8 MB
spacy-3.8.7-cp311-cp311-win_amd64.whl 2025-05-22 14.9 MB
spacy-3.8.7-cp312-cp312-macosx_10_13_x86_64.whl 2025-05-22 6.3 MB
spacy-3.8.7-cp312-cp312-macosx_11_0_arm64.whl 2025-05-22 5.9 MB
spacy-3.8.7-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl 2025-05-22 33.4 MB
spacy-3.8.7-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl 2025-05-22 33.9 MB
spacy-3.8.7-cp312-cp312-musllinux_1_2_aarch64.whl 2025-05-22 31.9 MB
spacy-3.8.7-cp312-cp312-musllinux_1_2_x86_64.whl 2025-05-22 33.0 MB
spacy-3.8.7-cp312-cp312-win_amd64.whl 2025-05-22 13.9 MB
spacy-3.8.7-cp313-cp313-macosx_10_13_x86_64.whl 2025-05-22 6.2 MB
spacy-3.8.7-cp313-cp313-macosx_11_0_arm64.whl 2025-05-22 5.9 MB
spacy-3.8.7-cp313-cp313-manylinux_2_17_aarch64.manylinux2014_aarch64.whl 2025-05-22 33.1 MB
spacy-3.8.7-cp313-cp313-manylinux_2_17_x86_64.manylinux2014_x86_64.whl 2025-05-22 33.4 MB
spacy-3.8.7-cp313-cp313-musllinux_1_2_aarch64.whl 2025-05-22 31.5 MB
spacy-3.8.7-cp313-cp313-musllinux_1_2_x86_64.whl 2025-05-22 32.6 MB
spacy-3.8.7-cp313-cp313-win_amd64.whl 2025-05-22 13.9 MB
spacy-3.8.7.tar.gz 2025-05-22 1.3 MB
README.md 2025-05-22 1.5 kB
v3.8.7_ Python 3.13 support, Cython 3, centralize registry entries source code.tar.gz 2025-05-22 18.9 MB
v3.8.7_ Python 3.13 support, Cython 3, centralize registry entries source code.zip 2025-05-22 20.3 MB
Totals: 39 Items   818.6 MB 6

In order to support Python 3.13, spaCy is now compiled with Cython 3. This brings a change to the way types are handled at runtime (Cython 3 uses the from __future__ import annotations semantics, which stores types as strings at runtime. This difference caused problems for components registered within Cython files, as we rely on building Pydantic models from factory function signatures to do validation.

To support Python 3.13 we therefore create a new module, spacy.pipeline.factories, which contains the factory function implementations. __getattr__ import shims have been added to the previous locations of these functions to prevent backwards incompatibilities.

As well as moving the factories, the new implementation avoids import-time side-effects, by moving the actual calls to the decorator inside a function, which is executed once when the Language class is initialised.

A matching change has been made to the catalogue registry decorators. A new module spacy.registrations has been created that performs all the catalogue registrations. Moving these registrations away from the functions prevents these decorators from running at import time. This change was not necessary for the Python 3.13 support, but it means we no longer rely on any import-time side-effects, which will allow us to improve spaCy's import time and therefore CLI execution time. The change also makes maintenance easier as it's easier to find the implementations of different registry functions (this may help library users as well).

Source: README.md, updated 2025-05-22