-
Notifications
You must be signed in to change notification settings - Fork 222
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
WIP: Test lowest versions of all required and optional dependencies #3639
base: main
Are you sure you want to change the base?
Changes from 5 commits
3a5d6da
f303964
3f6909d
788fc46
4139f4e
1263075
d1fa38d
1c69406
3b7b777
6120bbe
3299229
0584459
7d542a9
4733bda
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -33,18 +33,18 @@ dependencies = [ | |
"numpy>=1.24", | ||
"pandas>=2.0", | ||
"xarray>=2023.04", | ||
"netCDF4", | ||
"netCDF4>=1.7", | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. We discussed making NetCDF an optional dependency before in #429. Maybe we could revisit that discussion? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. That's a good point. NetCDF4 was needed by xarray when reading and writing netCDF files. As mentioned in #239 (comment), previously, our After we refactor our I've opened PR #3643 to see how the PyGMT relies on the netCDF package. Edit: There are only 14 failures in the Python 3.11 + Ubuntu CI job after removing netCDF entirely (see https://github.com/GenericMappingTools/pygmt/actions/runs/11968416461/job/33367210857?pr=3643) and most of them are caused by |
||
"packaging", | ||
] | ||
dynamic = ["version"] | ||
|
||
[project.optional-dependencies] | ||
all = [ | ||
"contextily", | ||
"geopandas", | ||
"IPython", # 'ipython' is not the correct module name. | ||
"pyarrow", | ||
"rioxarray", | ||
"contextily>=1", | ||
"geopandas>=0.14", | ||
"IPython>=8", # 'ipython' is not the correct module name. | ||
"pyarrow>=14", | ||
"rioxarray>=0.14", | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Setting lower bounds here, otherwise Edit see comments at #3639 (comment) and #3639 (comment) below. |
||
] | ||
|
||
[project.urls] | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Using
--resolution lowest-direct
for now, because--resolution lowest
grabs many other transitive dependencies that may be hard to install (e.g. missing wheels for newer Python versions, so requires compilation from source). We could switch to--resolution lowest
once the Python ecosystem does lower bound pins a bit more thoroughly (which may take years).