@@ -31,107 +31,85 @@ classifiers = [
31
31
" License :: OSI Approved :: MIT License" ,
32
32
]
33
33
34
+ requires-python = " >=3.9"
35
+
34
36
# NOTE: Minimum dependencies are tested with the packages defined in the
35
37
# `ci/environment-mindeps.yaml` conda environment. When updating minimum dependencies
36
38
# here, make sure to also update `ci/environment-mindeps.yaml`.
37
- [tool .poetry .dependencies ]
38
- python = " >=3.9,<4.0"
39
- python-cmr = " >=0.10.0"
40
- pqdm = " >=0.1"
41
- requests = " >=2.26"
42
- s3fs = " >=2022.11"
43
- fsspec = " >=2022.11"
44
- tinynetrc = " ^1.3.1"
45
- multimethod = " >=1.8"
46
- importlib-resources = " >=6.3.2"
47
- typing_extensions = " >=4.10.0"
39
+ dependencies = [
40
+ " python-cmr >=0.10.0" ,
41
+ " pqdm >=0.1" ,
42
+ " requests >=2.26" ,
43
+ " s3fs >=2022.11" ,
44
+ " fsspec >=2022.11" ,
45
+ " tinynetrc ^1.3.1" ,
46
+ " multimethod >=1.8" ,
47
+ " importlib-resources >=6.3.2" ,
48
+ " typing_extensions >=4.10.0" ,
49
+ " numpy >=1.24.0;python<3.12" ,
50
+ " numpy >=1.26.0;python>=3.12" ,
51
+ ]
48
52
49
53
# # Optional dependencies; can be opted-in with extra specifications below
50
54
# # This is so verbose because Poetry requires it: https://python-poetry.org/docs/pyproject#extras
51
55
# # If we switch to PEP621 specification, we can specify extras (called
52
56
# # "optional" under PEP621) with versions in one line:
53
57
# https://peps.python.org/pep-0621/#example
54
- kerchunk = { version = " >=0.1.2" , optional = true }
55
58
# kerchunk requires numpy, but numpy >=1.26.0 is required for Python 3.12 support
56
- numpy = [
57
- { version = " >=1.24.0" , optional = true , python = " <3.12" },
58
- { version = " >=1.26.0" , optional = true , python = " >=3.12" }
59
+ [project .optional-dependencies ]
60
+ kerchunk = [
61
+ " kerchunk >=2022.1.0" ,
62
+ " dask >=0.1.2" ,
63
+ ]
64
+ dev = [
65
+ " bump-my-version >=0.10.0" ,
66
+ " pre-commit >=2.4" ,
67
+ " ruff >=0.4.2" ,
59
68
]
60
- dask = { version = " >=2022.1.0" , optional = true }
61
-
62
- # Dev
63
- bump-my-version = { version = " >=0.10.0" , optional = true }
64
- pre-commit = { version = " >=2.4" , optional = true }
65
- ruff = { version = " >=0.4.2" , optional = true }
66
-
67
- # Test
68
- mypy = { version = " >=0.812" , optional = true }
69
- pytest = { version = " >=6.0" , optional = true }
70
- pytest-cov = { version = " >=2.8" , optional = true }
71
- pytest-watch = { version = " >=4.2" , optional = true }
72
- python-magic = { version = " >=0.4" , optional = true }
73
- responses = { version = " >=0.14" , optional = true }
74
- types-requests = { version = " >=0.1" , optional = true }
75
- types-setuptools = { version = " >=0.1" , optional = true }
76
- vcrpy = { version = " >=6.0.1" , optional = true }
77
-
78
- # Docs
79
- jupyterlab = { version = " >=3" , optional = true }
80
- ipywidgets = { version = " >=7.7.0" , optional = true }
81
- widgetsnbextension = { version = " >=3.6.0" , optional = true }
82
- # Prevent install of 1.6.0 because the module mkdocs.tests
83
- # is no longer exported, which causes mkdocs-jupyter to
84
- # break with a ModuleNotFoundError.
85
- mkdocs = { version = " >=1.2,!=1.6.0" , optional = true }
86
- mkdocs-material = { version = " >=7.1,<10.0" , optional = true }
87
- mkdocs-redirects = { version = " >=1.2.1" , optional = true }
88
- markdown-callouts = { version = " >=0.2.0" , optional = true }
89
- markdown-include = { version = " >=0.6" , optional = true }
90
- mkdocstrings = {extras = [" python" ], version = " >=0.19.0" , optional = true }
91
- mkdocs-jupyter = { version = " >=0.19.0" , optional = true }
92
- pymdown-extensions = { version = " >=9.2" , optional = true }
93
- pygments = { version = " >=2.11.1" , optional = true }
94
- # for notebook integrations and documentation examples
95
- xarray = { version = " >=2023.01" , optional = true }
96
- matplotlib = { version = " >=3.3" , optional = true }
97
- h5netcdf = { version = " >=0.11" , optional = true }
98
- pyproj = [
99
- { version = " >=3.5.0" , python = " <3.12" , optional = true },
100
- { version = " >=3.6.1" , python = " >=3.12" , optional = true },
69
+ test = [
70
+ " mypy >=0.812" ,
71
+ " pytest >=6.0" ,
72
+ " pytest-cov >=2.8" ,
73
+ " pytest-watch >=4.2" ,
74
+ " python-magic >=0.4" ,
75
+ " responses >=0.14" ,
76
+ " types-requests >=0.1" ,
77
+ " types-setuptools >=0.1" ,
78
+ " vcrpy >=6.0.1" ,
101
79
]
102
- # The following error occurs when building the docs, so we must explicitly
103
- # include lxml-html-clean as a dev dependency until mkdocs-jupyter is updated:
104
- #
105
- # ImportError: lxml.html.clean module is now a separate project lxml_html_clean.
106
- # Install lxml[html_clean] or lxml_html_clean directly.
107
- #
108
- # See https://github.com/danielfrg/mkdocs-jupyter/issues/200
109
- # See https://github.com/danielfrg/mkdocs-jupyter/issues/197
110
- lxml-html-clean = {version = " >=0.1.1" , optional = true }
111
-
112
- [tool .poetry .extras ]
113
- kerchunk = [" kerchunk" , " dask" ]
114
- dev = [" bump-my-version" , " pre-commit" , " ruff" ]
115
- test = [" mypy" , " pytest" , " pytest-cov" , " pytest-watch" , " python-magic" , " responses" , " types-requests" , " types-setuptools" , " vcrpy" ]
116
80
docs = [
117
- " jupyterlab" ,
118
- " mkdocs" ,
119
- " mkdocs-material" ,
120
- " mkdocs-redirects" ,
121
- " markdown-callouts" ,
122
- " markdown-include" ,
123
- " mkdocstrings" ,
124
- " mkdocs-jupyter" ,
125
- " pymdown-extensions" ,
126
- " ipywidgets" ,
127
- " widgetsnbextension" ,
128
- " xarray" ,
129
- " matplotlib" ,
130
- " h5netcdf" ,
131
- " pyproj" ,
81
+ " jupyterlab >=3" ,
82
+ " ipywidgets >=7.7.0" ,
83
+ " widgetsnbextension >=3.6.0" ,
84
+ # Prevent install of 1.6.0 because the module mkdocs.tests
85
+ # is no longer exported, which causes mkdocs-jupyter to
86
+ # break with a ModuleNotFoundError.
87
+ # for notebook integrations and documentation examples
88
+ " mkdocs >=1.2,!=1.6.0" ,
89
+ " mkdocs-material >=7.1,<10.0" ,
90
+ " mkdocs-redirects >=1.2.1" ,
91
+ " markdown-callouts >=0.2.0" ,
92
+ " markdown-include >=0.6" ,
93
+ " mkdocs-jupyter >=0.19.0" ,
94
+ " mkdocstrings[python] >=0.19.0" ,
95
+ " pymdown-extensions >=9.2" ,
96
+ " pygments >=2.11.1" ,
97
+ " xarray >=2023.01" ,
98
+ " matplotlib >=3.3" ,
99
+ " h5netcdf >=0.11" ,
100
+ " pyproj >=3.5.0;python<3.12" ,
101
+ " pyproj >=3.6.1;python>=3.12" ,
102
+ # The following error occurs when building the docs, so we must explicitly
103
+ # include lxml-html-clean as a dev dependency until mkdocs-jupyter is updated:
104
+ #
105
+ # ImportError: lxml.html.clean module is now a separate project lxml_html_clean.
106
+ # Install lxml[html_clean] or lxml_html_clean directly.
107
+ #
108
+ # See https://github.com/danielfrg/mkdocs-jupyter/issues/200
109
+ # See https://github.com/danielfrg/mkdocs-jupyter/issues/197
110
+ " lxml-html-clean >=0.1.1" ,
132
111
]
133
112
134
- [tool .poetry .group .dev .dependencies ]
135
113
136
114
[build-system ]
137
115
requires = [" poetry-core>=1.0.0" ]
0 commit comments