Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/auto_test.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: ["3.9", "3.10", "3.11", "3.12"]
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

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

The PR description mentions that "slow tests" could not be fully run. Before merging Python 3.13 support, it's important to verify that the slow tests (marked with the "slow" marker as seen in pyproject.toml line 153) pass with the new numba version. These tests may exercise numba-JIT compiled code paths that could have compatibility issues with the version upgrade from 0.55.2 to 0.61.2. Consider running the full test suite including slow tests, or document any known limitations with Python 3.13 support.

Copilot uses AI. Check for mistakes.

steps:
- uses: actions/checkout@v3
Expand Down
4 changes: 2 additions & 2 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ description = "Connectome and task-constrained vision models of the fruit fly."
dynamic = ["version"]
name = "flyvis"
readme = "readme.md"
requires-python = ">=3.9,<3.13"
requires-python = ">=3.9,<3.14"
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

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

The documentation at docs/docs/install.md line 13 needs to be updated to include Python 3.13 in the list of tested versions. Currently it states "flyvis is tested on Linux for python 3.9, 3.10, 3.11, 3.12" but should be updated to include 3.13 to match the changes in this PR.

Copilot uses AI. Check for mistakes.

[project.optional-dependencies]
dev = [
Expand Down Expand Up @@ -93,7 +93,7 @@ docs = [
examples = ["jupyter", "tabulate", "tqdm", "ipywidgets"]

pretrained = [
"numba==0.55.2",
"numba==0.61.2",
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

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

The main dependencies list includes "numba" without version constraints (line 39), while the pretrained optional dependencies pin numba to version 0.61.2. This could lead to version conflicts when installing the package with the pretrained extra. When a user installs with "pip install flyvis[pretrained]", pip will need to reconcile the unpinned numba in the main dependencies with the pinned version 0.61.2 in the pretrained group. Consider either removing numba from the main dependencies if it's only needed for pretrained functionality, or ensuring the version constraints are compatible across both dependency sets.

Copilot uses AI. Check for mistakes.
"matplotlib==3.7.1",
"scikit-learn==1.1.1",
Comment on lines 97 to 98
Copy link

Copilot AI Feb 27, 2026

Choose a reason for hiding this comment

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

Numba 0.61.2 may have compatibility issues with the pinned versions of other dependencies in the pretrained group. Specifically, matplotlib 3.7.1 (line 97) and scikit-learn 1.1.1 (line 98) are quite old. Numba 0.61.2 was released in late 2024 and may not have been tested with these older library versions. Additionally, numba 0.61.2 requires llvmlite 0.45.x which might conflict with these older dependencies. Consider testing the full pretrained dependency set or upgrading the other pinned versions as well.

Suggested change
"matplotlib==3.7.1",
"scikit-learn==1.1.1",
"matplotlib==3.9.0",
"scikit-learn==1.4.2",

Copilot uses AI. Check for mistakes.
"umap-learn==0.5.3",
Expand Down