Skip to content

Conversation

@h-mayorquin
Copy link
Collaborator

@h-mayorquin h-mayorquin commented Nov 4, 2025

I think we should remove the <3.14 upper bound on the Python version constraint in pyproject.toml.

The Python version constraint has gone through several iterations:

The current <3.14 cap was preemptive and I think a legacy decision of that period when numpy was doing a lot of breaking changes. This is not longer the case.

As discussed in this analysis, Python maintains backward compatibility between minor versions (3.x), so basic code rarely breaks. If our code breaks with a new Python version, it will likely be due to dependency incompatibilities, which will surface at installation time. By removing the cap, we allow these dependency issues to be identified specifically (e.g., "package X doesn't support Python 3.14") rather than being masked by a blanket restriction on SpikeInterface. This helps us identify and fix actual compatibility issues faster.

Related to:
#4173

@h-mayorquin h-mayorquin added the dependencies Issue/PR that is related to dependencies label Nov 4, 2025
@h-mayorquin h-mayorquin self-assigned this Nov 4, 2025
@chrishalcrow
Copy link
Member

Agreed!
Worth noting that "core" spikeinterface works on 3.14 at the moment, but we're artificially not allowing users to use it because numba-based tests fail.

@alejoe91 alejoe91 merged commit f246b6a into SpikeInterface:main Nov 12, 2025
15 checks passed
@h-mayorquin h-mayorquin deleted the remove_python_cap branch November 12, 2025 15:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Issue/PR that is related to dependencies

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants