TST/DEP: add version constraints on IPython's direct dependencies#18834
TST/DEP: add version constraints on IPython's direct dependencies#18834pllim merged 1 commit intoastropy:mainfrom
Conversation
|
Thank you for your contribution to Astropy! 🌌 This checklist is meant to remind the package maintainers who will review this pull request of some common things to look for.
|
|
Welcome to Astropy 👋 and congratulations on your first pull A project member will respond to you as soon as possible; in the If you feel that this pull request has not been responded to in a |
|
👋 Thank you for your draft pull request! Do you know that you can use |
c0a54b7 to
67c632e
Compare
|
Is this a rabbit hole, if we start adding constraints for all our optional dependencies? |
|
sort-of, but one that we'll eventually get out of:
|
|
(also: I'd like to point out that I had no part in building this giant (optional) dependency tree, I'm just taking care of it) |
pyproject.toml
Outdated
| "asdf-coordinates-schemas>=0.2.0", | ||
|
|
||
| # reproduce IPython minimal requirements on its dependencies | ||
| # as of version 9.7.0, the earliest one to consistently declare |
There was a problem hiding this comment.
9.7.0 has not been released yet, so it might have different dependencies. That's not really a problem for the constraints, but the comment could be clearer that the constraints were taken from a development version.
pyproject.toml
Outdated
| "jedi>=0.18.1", | ||
| "matplotlib-inline>=0.1.5", | ||
| 'pexpect>4.3; sys_platform != "win32" and sys_platform != "emscripten"', | ||
| "prompt_toolkit>=3.0.41,<3.1.0", |
There was a problem hiding this comment.
Why should we want to set a constraint from the above?
| "prompt_toolkit>=3.0.41,<3.1.0", | |
| "prompt_toolkit>=3.0.41", |
67c632e to
6035425
Compare
|
Good points. Thanks @eerovaher ! |
eerovaher
left a comment
There was a problem hiding this comment.
It is obvious that the oldestdeps CI job should be using uv's --resolution=lowest strategy, but in practice some of our dependencies have not been declaring the supported versions of their dependencies, for which reason we have been using --resolution=lowest-direct instead. Specifying constraints is better because that only has to be done for the dependencies that are missing that metadata and we can already start using --resolution=lowest for the rest. Eventually all our dependencies should declare the supported versions of their dependencies, at which point we will not need the constraints anymore.
|
Thanks, all! |
Description
ref #18782
Mirrors ipython/ipython#15054