Skip to content
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

Define Iris 2.4 #3638

Merged
merged 36 commits into from
Jan 16, 2020
Merged

Define Iris 2.4 #3638

merged 36 commits into from
Jan 16, 2020

Conversation

pp-mo
Copy link
Member

@pp-mo pp-mo commented Jan 15, 2020

@pp-mo replacement for #3636, because @trexfeathers is absent today.

I have implicitly accepted the commits from #3636,
and will be completing remaining tasks ..

  • fix remaining grib test failures (since 1148b37)
  • review all commits inherited from Cut v2.4 Features #3636 (i.e, up to 57d82fa), and if needed ...
    • [ ] add further corrections
    • [ ] get additional independent review ?
    • okay to go
  • complete release notes

Next + afterwards (todo on 2.4.x branch) ...

  • fix version string
  • tag RC
  • make release

trexfeathers and others added 30 commits January 13, 2020 13:09
…ask_test

Analysis percentile method - update applicability test for fast_percentile_method
* Have Travis test with iris-grib, remove problem tests

* mock GribInternalError correctly

* Update license headers

* account for changes in handling of grib message defaults

* Test against the latest version of python-eccodes

* Moved irir-grib skip to iris.tests
* Revert to single-line command for doctr invocation.

* Added script comment, partly to force Github respin.
* PI-2472: Tweak area weighting regrid move xdim and ydim axes (SciTools#3594)

* _regrid_area_weighted_array: Set axis order to y_dim, x_dim last dimensions

* _regrid_area_weighted_array: Extra tests for axes ordering

* PI-2472: Tweak area weighting regrid enforce xdim ydim (SciTools#3595)

* _regrid_area_weighted_array: Set axis order to y_dim, x_dim last dimensions

* _regrid_area_weighted_array: Extra tests for axes ordering

* _regrid_area_weighted_array: Ensure x_dim and y_dim

* PI-2472: Tweak area weighting regrid move averaging out of loop (SciTools#3596)

* _regrid_area_weighted_array: Refactor weights and move averaging outside loop
* The Area-weights routine is refactored into the "__prepare" and "__perform" structure, in-line with our other regridding methods.
* The area-weights are now computed in the "__prepare", so are calculated once.
* The information required for checking the regridding weights and target grid info are now cached on the "regridder" object.
* This is inline with the general use already described in the documentation.
LGTM

* Allow some 'key=None' args in Geostationary creation.

* Integration test loading netcdf geostationary without offset properties.
@pp-mo
Copy link
Member Author

pp-mo commented Jan 15, 2020

Grib tests fixing

Problem:
We include above the commit 6735245 "Fixes required due to the release of iris-grib v0.15.0 (#3582)", which is cherry-picked from master : This PR fixed outstanding problems with several Iris grib tests (which had gone stale while grib installation was broken), and also made key changes for compatibility with iris-grib v 0.15.
The problem is that while it "fixes" all the iris grib tests, it also means they now only work with iris-grib >= 0.15 -- which is not compatible with python 2.

So... this all works ok when testing under python3 with iris-grib v0.15
See : all-phases Travis test page

... but when run in python2, against iris-grib 0.14, it introduces a bunch of problems
See : Travis log for initial results in python2
What is notable here :

  1. tests with python3 and iris-grib v0.15 all pass
  2. tests with python2 and iris-grib v0.14 have a bunch of problems :
    a) one test not running because it expects to import iris_grib.GRIBcode (>=0.15 only)
    b) a lot of tests failing because they expect the GRIB_PARAM attribute
    • either explitly in test code
    • or in results files used in a tests.assertCML()

Fixing:
Now added commit 76afe7c "Hacked tests.integration.test_grib2 to avoid import error from iris-grib version < 0.15." to enable iris.tests.integration.test_grib2 to function with iris=grib v.0.14 (in python2 testing).
Re-spun tests ... Travis page showing python2/python3 test results
... shows python3 still working, and python2 problems now reduced to "expected" differences, as checked against changes in iris-grib 0.15, listed in 0.15 release notes.

@pp-mo
Copy link
Member Author

pp-mo commented Jan 15, 2020

Latest commit 1148b37 prevents install of iris-grib in Python 2.
This means all the grib testing is skipped in Python 2, to avoid the known test problems with iris-grib v0.14.

The above comment demonstrates that iris 2.4 does "work" with iris-grib v0.14, though the tests do not all pass for reasons given.
This should be good enough, as we don't expect to develop any further beyond Iris 2.4

@pp-mo
Copy link
Member Author

pp-mo commented Jan 15, 2020

@lbdreyer @trexfeathers
Good to merge now, I hope.
See list of following TODOs above in main PR description -- these to be done in separate PRs I think

@pp-mo pp-mo mentioned this pull request Jan 15, 2020
@trexfeathers
Copy link
Contributor

Latest commit 1148b37 prevents install of iris-grib in Python 2.
This means all the grib testing is skipped in Python 2, to avoid the known test problems with iris-grib v0.14.
The above comment demonstrates that iris 2.4 does "work" with iris-grib v0.14, though the tests do not all pass for reasons given.
This should be good enough, as we don't expect to develop any further beyond Iris 2.4

Agreed. The tests failed exactly how we would predict them to. No other failures occurred

@trexfeathers trexfeathers merged commit e698d76 into SciTools:v2.4.x Jan 16, 2020
@pp-mo pp-mo deleted the my__v24x2 branch January 16, 2020 12:22
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.

7 participants