Skip to content

TST: upgrade all dev jobs to CPython 3.14#43

Open
neutrinoceros wants to merge 2 commits into
astropy:mainfrom
neutrinoceros:tst/cp314
Open

TST: upgrade all dev jobs to CPython 3.14#43
neutrinoceros wants to merge 2 commits into
astropy:mainfrom
neutrinoceros:tst/cp314

Conversation

@neutrinoceros
Copy link
Copy Markdown
Contributor

Hopefully this should already be stable. If not, it'll help identify packages that could use a hand with forward compatibility issues.

@neutrinoceros
Copy link
Copy Markdown
Contributor Author

the one error that may be related is from reproject, where the built package appears non-functional at runtime:

_ ERROR collecting .tox/py314-reproject-dev/lib/python3.14/site-packages/reproject/spherical_intersect/setup_package.py _
.tox/py314-reproject-dev/lib/python3.14/site-packages/reproject/spherical_intersect/setup_package.py:4: in <module>
    from setuptools import Extension
E   ModuleNotFoundError: No module named 'setuptools'

setuptools isn't present at runtime, though that shouldn't be a problem since setup_package.py shouldn't be there either
FYI @astrofrog

@neutrinoceros
Copy link
Copy Markdown
Contributor Author

opening for review as is. I'll report + fix the build issue on reproject later.

@neutrinoceros neutrinoceros marked this pull request as ready for review May 11, 2026 13:30
@neutrinoceros
Copy link
Copy Markdown
Contributor Author

It seems like there are two different problems, compounding into a runtime error:

  • reproject.spherical_intersect.setup_package ends up in the installed package (it should be build-only)
  • pytest insists on collecting test cases from this module (even though its name doesn't contain "test"). I assume this is because doctest_plus is enabled, which I think implies all modules are collected from, but I cannot reproduce this locally yet, so there's possibly a third piece in this puzzle that's specific to how this repo runs things.

@neutrinoceros
Copy link
Copy Markdown
Contributor Author

(the first point is addressable on the project's side, however)

@neutrinoceros
Copy link
Copy Markdown
Contributor Author

got it. reproject also needs --doctest-ignore-import-errors (which it addopts on its own pytest config) to survive this, which is why it only shows up when testing it as an installed package with doctest enabled.

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.

1 participant