-
Couldn't load subscription status.
- Fork 297
Iris 2.3 What's New #3450
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
Iris 2.3 What's New #3450
Conversation
Merge remote-tracking branch 'upstream/v2.3.x' into v2.3.x
docs/iris/src/whatsnew/2.3.rst
Outdated
| What's New in Iris 2.3 | ||
| ********************** | ||
|
|
||
| :Release: 2.3 |
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.
@trexfeathers Can we explicitly clarify this as 2.3.0
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.
👍
docs/iris/src/whatsnew/2.3.rst
Outdated
| * :class:`~iris.analysis.RMS` (more detail below) | ||
| * :class:`~iris.analysis.MEAN` | ||
|
|
||
| | |
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.
@trexfeathers Is this | intentional, if so what does it do?
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.
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.
@trexfeathers How does it look with a divider instead? i.e., see reStructuredText transitions
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.
@bjlittle I think your idea looks better so I've switched to that
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.
@trexfeathers Could you also delete the contributions_2.3.0 directory as part of this PR
docs/iris/src/whatsnew/2.3.rst
Outdated
| Bugs Fixed | ||
| ========== | ||
| * Cube equality of boolean data is now handled correctly. | ||
| * Iris now supports NetCDF Climate and Forecast (CF) Metadata Conventions 1.7 (see `CF 1.7 Conventions Document <http://cfconventions.org/Data/cf-conventions/cf-conventions-1.7/cf-conventions.html>`_ for more information) |
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.
This shouldn't be a bug fix.
I think the original whats new contribution (that I wrote!) was incorrectly labelled as bugfix
Could you remove?
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.
I've moved this to new features
docs/iris/src/whatsnew/2.3.rst
Outdated
| * The name of cubes loaded from abf/abl files has been corrected. | ||
| * Fixed a bug in UM file loading, where any landsea-mask-compressed fields | ||
| (i.e. with LBPACK=x2x) would cause an error later, when realising the data. | ||
| * :meth:`iris.cube.Cube.coll\apsed` now handles partial collapsing of |
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.
Should there be a backslash in coll\apsed?
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.
I will double check all the links next time!
docs/iris/src/whatsnew/2.3.rst
Outdated
|
|
||
|
|
||
| Iris 2.3.0 Dependency Updates | ||
| =========================== |
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.
This needs a couple extra =
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.
Thanks, missed that after I added ".0"
docs/iris/src/whatsnew/2.3.rst
Outdated
| @@ -0,0 +1,193 @@ | |||
| What's New in Iris 2.3.0 | |||
| ********************** | |||
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.
This underline is too short
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.
Thanks, missed that after I added ".0"
docs/iris/src/whatsnew/2.3.rst
Outdated
| (:doc:`View all changes <index>`.) | ||
|
|
||
| Iris 2.3.0 Features | ||
| ================= |
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.
This underline is too short
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.
Thanks, missed that after I added ".0"
docs/iris/src/whatsnew/2.3.rst
Outdated
| 'bounds' attribute and accompanying 'bnds' boundary variable. See below | ||
| for an example: | ||
|
|
||
| .. code-block:: |
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.
This errors when building:
2.3.rst:41: WARNING: Error in "code-block" directive:
And the resulting built page misses the code block completely.
| .. code-block:: | |
| .. code-block:: none |
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.
Interesting that this worked on my local build without "none". Anyway I've made this change and the new formatting still looks good 👍
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.
This may be because I'm using an old version of sphinx. I think more recent versions have a default
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.
It is now allowed to omit the argument in more recent versions of sphinx
sphinx-doc/sphinx#6015
I just need to update my environment!
docs/iris/src/whatsnew/2.3.rst
Outdated
| When an Iris climatological coordinate is saved in NetCDF, the NetCDF time | ||
| axis will be given a 'climatology' attribute, and the contents of the |
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.
| When an Iris climatological coordinate is saved in NetCDF, the NetCDF time | |
| axis will be given a 'climatology' attribute, and the contents of the | |
| coordinate variable will be given a 'climatology' attribute, and the contents of the |
From CF conventions:
a climatological time coordinate variable does not have a bounds attribute. Instead, it has a climatology attribute, which names a variable with dimensions (n,2), n being the dimension of the climatological time axis
So its the variable that has a climatology attribute
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.
Thanks, I appreciate the guidance. I've read and re-read that CF section but it's taking me a while to get my head around all the terminology
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.
Closing this extra review...
docs/iris/src/whatsnew/2.3.rst
Outdated
| .. admonition:: New Chunking Strategy | ||
|
|
||
| Iris now makes better choices of Dask chunk sizes when loading from NetCDF | ||
| files: If a file variable has specified, small chunks, Iris will now choose |
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.
I remember this phrasing tripping me up in the PR it was included.
I think the ordering of the adjectives are wrong. I think it should be:
If a file variable has small, specified chunks, Iris will now choose
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.
👍
docs/iris/src/whatsnew/2.3.rst
Outdated
| Previously, Iris compared cube data arrays using "abs(a - b) < 1.e-8". | ||
| We now apply the default operation of :func:`numpy.allclose` instead, | ||
| which is equivalent to "abs(a - b) < (1.e-8 + 1.e-5 * b)". | ||
| * Added support to render HTML for :class:`iris.cube.CubeList`s in Jupyter Notebooks and JupyterLab. |
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.
This may be due to my old version of Sphinx, but it is complaining about this line and in the built copy it doesn't correctly create the link to iris.cube.CubeList
You could also argue that we should use the ~ i.e. :class:~iris.cube.CubeListso that it reads more nicely:
Added support to render HTML for CubeList in Jupyter Notebooks and JupyterLab
where cube list would link off to the ref for CubeList
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.
I caught this one. I'm pretty sure the cause is the "s" immediately following.
I'm sure there is a way to fix this ...
In the 2.2 whatsnew I found :
:class:`iris.coords.AuxCoord`'s can now test as 'equal'
That at least seems to work.
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.
Went for @lbdreyer's idea
docs/iris/src/whatsnew/2.3.rst
Outdated
| which is equivalent to "abs(a - b) < (1.e-8 + 1.e-5 * b)". | ||
| * Added support to render HTML for :class:`iris.cube.CubeList`s in Jupyter Notebooks and JupyterLab. | ||
| * Loading CellMeasures with non-float values is now supported. | ||
| * New coordinate system: :class:`iris.coord_systems.Geostationary`, based on |
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.
This should be in the showcase as Geostationary was introduced in CF1.7
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.
👍
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.
Quite a few points, but all a bit trivial I hope.
docs/iris/src/whatsnew/2.3.rst
Outdated
| * climatological coordinate support | ||
| * standard name modifier support | ||
| * name tokens enforcement in cell methods | ||
| * coordinate var_name, CF_CONVENTIONS_VERSION advanced to 1.7 |
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.
- The "coordinate var_name" and "CF_CONVENTIONS_VERSION advanced to 1.7" are separate points.
- What "coordinate var_name" means needs explaining.
I don't get this myself : is it actually part of the previous point ?
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.
This wasn't how I intended, hence it read strangely. Have fixed to what I wanted originally
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.
I have also added links to internal anchors. Unfortunately anchors can't be placed in the middle of a bullet list so the links will only take you to the relevant section. See what you think
docs/iris/src/whatsnew/2.3.rst
Outdated
|
|
||
| * climatological coordinate support | ||
| * standard name modifier support | ||
| * name tokens enforcement in cell methods |
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.
This point either needs more explaining or, if there was some more detail below, we could maybe treat it as a sort of title and turn it into a link?
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.
I don't think we should mention this as it is a bugfix so isn't really suitable in this section
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.
OK it's gone
docs/iris/src/whatsnew/2.3.rst
Outdated
| * The :data:`iris.analysis.RMS` aggregator now supports a lazy calculation. | ||
| However, the "weights" keyword is not currently supported by this, so a | ||
| *weighted* calculation will still return a realised result, *and* force | ||
| realisation of the original cube data. **NOTE:** lazy calculation with RMS | ||
| is currently only supported for un-masked arrays. |
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.
The "NOTE" bit just seems to repeat the same information.
Sorry if this was my fault ??
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.
Having read in more detail I see your point, have remoted the NOTE
docs/iris/src/whatsnew/2.3.rst
Outdated
| * Cube data equality testing (and hence cube equality) now uses a more relaxed | ||
| tolerance : This means that some cubes may now test 'equal' that previously | ||
| did not. | ||
| Previously, Iris compared cube data arrays using "abs(a - b) < 1.e-8". | ||
| We now apply the default operation of :func:`numpy.allclose` instead, | ||
| which is equivalent to "abs(a - b) < (1.e-8 + 1.e-5 * b)". |
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.
Can we get those maths expressions to display on one line somehow?
Otherwise it's a bit unreadable.
I know there are special forms for maths -- see the docstring for iris.analysis.calculus.curl,
but that may well be overkill for this, especially if you need to do learning just for this..
Maybe there is a simpler way ?
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.
Have reformatted
docs/iris/src/whatsnew/2.3.rst
Outdated
| * The Proj4 pin has been moved from version 5 to version 6 pending `fixes to | ||
| some cartopy tests <https://github | ||
| .com/SciTools/cartopy/pull/1289#pullrequestreview-272774087>`_. | ||
| * Iris now requires Dask > 1.2 to allow for improved coordinate equality |
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.
"> 1.2" should be ">= 1.2"
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.
👍
docs/iris/src/whatsnew/2.3.rst
Outdated
|
|
||
| Documentation Changes | ||
| ===================== | ||
| * Added a gallery example showing how to concatenate NEMO ocean model data. |
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.
Could we make "a gallery example" into a link ?
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.
👍
docs/iris/src/whatsnew/2.3.rst
Outdated
| ===================== | ||
| * Added a gallery example showing how to concatenate NEMO ocean model data. | ||
| * Added an example in the | ||
| `Loading Iris Cubes: Constraining on Time <https://scitools.org.uk/iris/docs/latest/userguide/loading_iris_cubes.html#constraining-on-time>`_ |
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.
Because this is written as an external link, it doesn't go to the page in this same docs build, so it doesn't show the changes it ought to !
This was my fault 😱
After some experiment, I think this should instead be ... "Loading Iris Cubes: Constraining on Time <../userguide/loading_iris_cubes.html#constraining-on-time>_"
The initial '..' is probably not the best way, but I'm not quite sure how it goes otherwise. That did at least work for me.
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.
👍
docs/iris/src/whatsnew/2.3.rst
Outdated
| Userguide section, demonstrating how to load data within a specified date | ||
| range. | ||
| * Added notes to the :func:`iris.load` documentation, and the userguide | ||
| `Loading Iris Cubes <https://scitools.org.uk/iris/docs/latest/userguide/loading_iris_cubes.html>`_ |
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.
As above, links to the "wrong docs", i.e. the Scitools release docs.
I think this one should be "Loading Iris Cubes <../userguide/loading_iris_cubes.html>_.
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.
👍
docs/iris/src/whatsnew/2.3.rst
Outdated
| We now apply the default operation of :func:`numpy.allclose` instead, | ||
| which is equivalent to "abs(a - b) < (1.e-8 + 1.e-5 * b)". | ||
| * Added support to render HTML for :class:`iris.cube.CubeList`s in Jupyter Notebooks and JupyterLab. | ||
| * Loading CellMeasures with non-float values is now supported. |
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.
I think this should be "integer values". It won't cope with strings !
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.
👍
docs/iris/src/whatsnew/2.3.rst
Outdated
| which is equivalent to "abs(a - b) < (1.e-8 + 1.e-5 * b)". | ||
| * Added support to render HTML for :class:`iris.cube.CubeList`s in Jupyter Notebooks and JupyterLab. | ||
| * Loading CellMeasures with non-float values is now supported. | ||
| * New coordinate system: :class:`iris.coord_systems.Geostationary`, based on |
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.
Do we also load+save these in netcdf ? If so, should say so (like the one below).
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.
👍
docs/iris/src/whatsnew/2.3.rst
Outdated
| * Cubes are now rendered more robustly by Jupyter. | ||
| :meth:`~iris.cube.Cube._repr_html_` no longer crashes for a cube with | ||
| attributes containing ``\n``. | ||
| * Variables which reference themselves in ``cell_measures`` can now be read. |
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.
This is a bit unclear.
I would specify that the you are talking about netCDF here.
And possibly explicitly say the cell_measures attribute.
Something like:
| * Variables which reference themselves in ``cell_measures`` can now be read. | |
| * NetCDF Variables which reference themselves in their ``cell_measures`` attribute can now be read. |
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.
👍
|
Brilliant! 🎉 🎉 This all looks good! Thanks for all your hard work on this @trexfeathers ! And as @trexfeathers mentioned offline, the amount of content in this what's new is proof of just how much we have accomplished these past few weeks! Well done team! 💯 |
* Manual elements of What's New * renamed manual 2.3 What's New entries * Created 2.3 What's New document. * Referencing 2.3 What's New in index.html * Explicit reference to 2.3.0 * Added separator underneath showcases * Deleted contributions folder. * Referenced CF conventions for NetCDF format example * Moved CF 1.7 support from bugfix to new feature. * Typo in Cube.collapsed. * Underlines, code-block language and CF terminology fixes. * Correction to climatological docstring and What's New. * Correction to climatological docstring and What's New. * Added Geostationary projection to CF 1.7 showcase. * Chunking strategy phrasing. * CubeList link for render HTML point. * Removed reference to latest.rst from What's New index. * CF 1.7 section links. * Removed duplicate note about realisation with iris.analysis.RMS * Improved formatting for cube equality point. * Fixed Dask dependency to by >=1.2. * Proj4 dependency phrasing. * with masked arrays -> with arrays with missing points. * var_name name token phrasing. * Removed reference to private method Cube._html_repr_. * abf/abl cube pluralisation. * Link for NEMO example. * Corrected internal documentation links. * Corrected *integer* value support. * Geostationary includes load and save support. * Clarified self-referencing NetCDF variables. * Reworded CF 1.7 showcase. * Internal address fixes. * Removed name tokens from the CF 1.7 showcase.

No description provided.