• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

Ouranosinc / xscen / 35857258869
90%

Build:
DEFAULT BRANCH: main
Ran 23 Sep 2026 12:00PM UTC
Jobs 11
Files 17
Run time 1min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

23 Sep 2026 11:54AM UTC coverage: 90.171% (+0.08%) from 90.093%
35857258869

push

github

web-flow
Add possibility to "unstack" iterable columns in catalog (#763)

<!-- Please ensure the PR fulfills the following requirements! -->
<!-- If this is your first PR, make sure to add your details to the
AUTHORS.rst! -->
### Pull Request Checklist:
- [x] This PR addresses an already opened issue (for bug fixes /
features)
    - This PR fixes #762 
- [x] (If applicable) Documentation has been added / updated (for bug
fixes / features).
- [x] (If applicable) Tests have been added.
- [x] This PR does not seem to break the templates.
- [x] CHANGELOG.rst has been updated (with summary of main changes).
- [x] Link to issue (:issue:`number`) and pull request (:pull:`number`)
has been added.

### What kind of change does this PR introduce?

* `DataCatalog.unstack(col)` will take the iterables in "col" and create
one entry per element, copying all other fields over.
* `DataCatalog.stack(col)` does the opposite : for all groups where all
columns except "col" are the same, merge entries by making "col" a
tuple.
* `search_data_catalogs` now will `unstack` before filtering and `stack`
(if needed) at the end.

`search_data_catalogs` has one step where it keeps only the coarsest
frequencies for each variable in the result. But by grouping on
"variable" is doesn't see that "(XYZ,)" is similar to "(XYZ, ABC)". That
was my bug in #762 .

In general, I think this can help for some filtering stuff. Once
unstacked, the datasets seems to open correctly, even though the same
paths are opened multiple times. So, re-stacking is not required, one
can keep the non-iterable variable column.

### Does this PR introduce a breaking change?
I don't think so, but the test suite might not cover all
`search_data_catalogs` cases...


### Other information:
The way this is done might not be compatible with the newest intake
esm... We'll see!

This also introduces a new sample catalog and dataset to use in the
tests. We didn't have any multi-variable catalog.

45 of 48 new or added lines in 2 files covered. (93.75%)

1 existing line in 1 file now uncovered.

4477 of 4965 relevant lines covered (90.17%)

9.75 hits per line

Uncovered Changes

Lines Coverage ∆ File
2
89.86
0.26% src/xscen/catalog.py
1
89.14
0.14% src/xscen/extract.py

Coverage Regressions

Lines Coverage ∆ File
1
89.14
0.14% src/xscen/extract.py
Jobs
ID Job ID Ran Files Coverage
1 run-Python3.12-pypi-macos-latest - 35857258869.1 23 Sep 2026 12:04PM UTC 17
87.59
GitHub Action Run
2 run-Python3.10-pypi-ubuntu-latest - 35857258869.2 23 Sep 2026 12:01PM UTC 17
87.41
GitHub Action Run
3 run-Python3.11-conda-ubuntu-latest - 35857258869.3 23 Sep 2026 12:05PM UTC 17
89.95
GitHub Action Run
4 run-Python3.13-conda-ubuntu-latest - 35857258869.4 23 Sep 2026 12:06PM UTC 17
89.95
GitHub Action Run
5 run-Python3.12-pypi-ubuntu-latest - 35857258869.5 23 Sep 2026 12:06PM UTC 17
87.65
GitHub Action Run
6 run-Python3.14-conda-ubuntu-latest - 35857258869.6 23 Sep 2026 12:00PM UTC 17
89.95
GitHub Action Run
7 run-Python3.12-conda-ubuntu-latest - 35857258869.7 23 Sep 2026 12:05PM UTC 17
89.95
GitHub Action Run
8 run-Python3.14-pypi-ubuntu-latest - 35857258869.8 23 Sep 2026 12:03PM UTC 17
87.65
GitHub Action Run
9 run-Python3.11-pypi-ubuntu-latest - 35857258869.9 23 Sep 2026 12:03PM UTC 17
87.65
GitHub Action Run
10 run-Python3.10-conda-ubuntu-latest - 35857258869.10 23 Sep 2026 12:03PM UTC 17
89.63
GitHub Action Run
11 run-Python3.13-pypi-ubuntu-latest - 35857258869.11 23 Sep 2026 12:01PM UTC 17
87.65
GitHub Action Run
Source Files on build 35857258869
  • Tree
  • List 17
  • Changed 4
  • Source Changed 3
  • Coverage Changed 3
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #35857258869
  • 375e6fc9 on github
  • Prev Build on main (#35269569792)
  • Next Build on main (#36487779260)
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc