Skip to content

Conversation

@shoyer
Copy link
Member

@shoyer shoyer commented Aug 11, 2025

This changes the way DataTree objects are written to disk in a single call to DataTree.to_netcdf(), as well as netCDF groups written by passing an explicit group to Dataset.to_netcdf().

Conceivably we could only adjust the behavior for DataTree, but doing so for Dataset was well felt more consistent to me (and was also easier to implement).

This changes the way DataTree objects are written to disk in a single
call to `DataTree.to_netcdf()`, as well as netCDF groups written by
passing an explicit `group` to `Dataset.to_netcdf()`.

Conceivably we could only adjust the behavior for `DataTree`, but doing
so for `Dataset` was well felt more consistent to me (and was also
easier to implement).

Fixes: GH10241
@shoyer shoyer requested a review from TomNicholas August 12, 2025 01:21
Copy link
Contributor

@kmuehlbauer kmuehlbauer left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Stephan, I've one minor suggestion, but this is looking good to me.

@shoyer shoyer merged commit 6762c2e into pydata:main Aug 13, 2025
37 checks passed
@shoyer
Copy link
Member Author

shoyer commented Aug 13, 2025

Thanks @dcherian and @kmuehlbauer for the reviews!

dcherian added a commit to dhruvak001/xarray that referenced this pull request Aug 24, 2025
* main: (46 commits)
  use the new syntax of ignoring bots (pydata#10668)
  modification methods on `Coordinates` (pydata#10318)
  Silence warnings from test_tutorial.py (pydata#10661)
  test: update write_empty test for zarr 3.1.2 (pydata#10665)
  Bump actions/checkout from 4 to 5 in the actions group (pydata#10652)
  Add load_datatree function (pydata#10649)
  Support compute=False from DataTree.to_netcdf (pydata#10625)
  Fix typos (pydata#10655)
  In case of misconfiguration of dataset.encoding `unlimited_dims` warn instead of raise (pydata#10648)
  fix ``auto_complex`` for ``open_datatree`` (pydata#10632)
  Fix bug indexing with boolean scalars (pydata#10635)
  Improve DataTree typing (pydata#10644)
  Update Cartopy and Iris references (pydata#10645)
  Empty release notes (pydata#10642)
  release notes for v2025.08.0 (pydata#10641)
  Fix `ds.merge` to prevent altering original object depending on join value (pydata#10596)
  Add asynchronous load method (pydata#10327)
  Add DataTree.prune() method              … (pydata#10598)
  Avoid refining parent dimensions in NetCDF files (pydata#10623)
  clarify lazy behaviour and eager loading chunks=None in open_*-functions (pydata#10627)
  ...
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Dimensions re-defined in netCDF groups

3 participants