pull_requests: 835041515
This data as json
id | node_id | number | state | locked | title | user | body | created_at | updated_at | closed_at | merged_at | merge_commit_sha | assignee | milestone | draft | head | base | author_association | auto_merge | repo | url | merged_by |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
835041515 | PR_kwDOAMm_X84xxbjr | 6207 | closed | 0 | Fix missing dependecy definition of 'packaging' | 9513634 | Hi there, we just wanted to upgrade `xarray` to version `0.21.0` and our [ASV workflow on the CI started failing](https://github.com/glotaran/pyglotaran/runs/4989968632?check_suite_focus=true). ```python File "/home/runner/work/pyglotaran/pyglotaran/benchmark/.asv/env/76391772e92136ec87b9940d70226329/lib/python3.8/site-packages/xarray/core/dask_array_compat.py", line 4, in <module> from packaging.version import Version ModuleNotFoundError: No module named 'packaging' ``` The reason is that `packaging` isn't a direct dependency of `xarray`. ```console $ johnnydep xarray 2022-01-29 08:28:38 [info ] init johnnydist [johnnydep.lib] dist=xarray parent=None 2022-01-29 08:28:40 [info ] init johnnydist [johnnydep.lib] dist=numpy>=1.18 parent=xarray 2022-01-29 08:28:44 [info ] init johnnydist [johnnydep.lib] dist=pandas>=1.1 parent=xarray 2022-01-29 08:28:47 [info ] init johnnydist [johnnydep.lib] dist=numpy>=1.18.5 parent=pandas>=1.1 2022-01-29 08:28:51 [info ] init johnnydist [johnnydep.lib] dist=python-dateutil>=2.8.1 parent=pandas>=1.1 2022-01-29 08:28:53 [info ] init johnnydist [johnnydep.lib] dist=pytz>=2020.1 parent=pandas>=1.1 2022-01-29 08:28:56 [info ] init johnnydist [johnnydep.lib] dist=six>=1.5 parent=python-dateutil>=2.8.1 name summary ------------------------------ ----------------------------------------------------------------------- xarray N-D labeled arrays and datasets in Python ├── numpy>=1.18 NumPy is the fundamental package for array computing with Python. └── pandas>=1.1 Powerful data structures for data analysis, time series, and statistics ├── numpy>=1.18.5 NumPy is the fundamental package for array computing with Python. ├── python-dateutil>=2.8.1 Extensions to the standard Python datetime module │ └── six>=1.5 Python 2 and 3 compatibility utilities └── pytz>=2020.1 World timezone definitions, modern and historical ``` The problem why your tests didn't catch this is that `packaging` is a dependency of `pytest` itself. ```console $ johnnydep pytest 2022-01-29 08:25:03 [info ] init johnnydist [johnnydep.lib] dist=pytest parent=None 2022-01-29 08:25:07 [info ] init johnnydist [johnnydep.lib] dist=atomicwrites>=1.0 parent=pytest 2022-01-29 08:25:09 [info ] init johnnydist [johnnydep.lib] dist=attrs>=19.2.0 parent=pytest 2022-01-29 08:25:11 [info ] init johnnydist [johnnydep.lib] dist=colorama parent=pytest 2022-01-29 08:25:14 [info ] init johnnydist [johnnydep.lib] dist=iniconfig parent=pytest 2022-01-29 08:25:16 [info ] init johnnydist [johnnydep.lib] dist=packaging parent=pytest 2022-01-29 08:25:18 [info ] init johnnydist [johnnydep.lib] dist=pluggy<2.0,>=0.12 parent=pytest 2022-01-29 08:25:20 [info ] init johnnydist [johnnydep.lib] dist=py>=1.8.2 parent=pytest 2022-01-29 08:25:23 [info ] init johnnydist [johnnydep.lib] dist=toml parent=pytest 2022-01-29 08:25:25 [info ] init johnnydist [johnnydep.lib] dist=pyparsing!=3.0.5,>=2.0.2 parent=packaging name summary -------------------------------- --------------------------------------------------------------------- pytest pytest: simple powerful testing with Python ├── atomicwrites>=1.0 Atomic file writes. ├── attrs>=19.2.0 Classes Without Boilerplate ├── colorama Cross-platform colored terminal text. ├── iniconfig iniconfig: brain-dead simple config-ini parsing ├── packaging Core utilities for Python packages │ └── pyparsing!=3.0.5,>=2.0.2 Python parsing module ├── pluggy<2.0,>=0.12 plugin and hook calling mechanisms for python ├── py>=1.8.2 library with cross-python path, ini-parsing, io, code, log facilities └── toml Python Library for Tom's Obvious, Minimal Language ``` We also only saw our ASV workflow fail since ASV only installs the package and all direct runtime dependencies in the venv it runs the benchmark with. I prepared a [dummy PR](https://github.com/s-weigand/pyglotaran/pull/84) on my fork to demonstrate that this [fixes the issue](https://github.com/s-weigand/pyglotaran/runs/4990111708?check_suite_focus=true). Since the release is only 10h old maybe just do a quick [post-release](https://www.python.org/dev/peps/pep-0440/#post-releases) so most users won't even notice. - [ ] User visible changes (including notable bug fixes) are documented in `whats-new.rst` | 2022-01-29T08:19:09Z | 2022-02-01T18:29:04Z | 2022-01-31T23:51:59Z | 2022-01-31T23:51:59Z | 5973ef380d244931f0b5d2d6bbf762ea7b0a0d44 | 0 | 1c64bd8ef4e62d96ffc96889501d71b36d041fa5 | e8d42394b0b4a887ca7246aaae55f9347076f430 | CONTRIBUTOR | 13221727 | https://github.com/pydata/xarray/pull/6207 |
Links from other tables
- 0 rows from pull_requests_id in labels_pull_requests