Skip to content

Conversation

@jamesp
Copy link
Member

@jamesp jamesp commented Jul 6, 2021

🚀 Pull Request

Description

This PR reverts the state of iris.experimental.regrid to the code found in version 2.4.0.

This is to mitigate performance degradation introduced in the changes in 3.0.x.


Consult Iris pull request check list

bjlittle and others added 30 commits November 23, 2020 11:46
* Add release highlights and pin rc version (SciTools#3898)

* Add release highlights and pin rc version

* review actions

* reorder release highlights (SciTools#3899)

Tweak release highlights

* Add whatsnew announcement (SciTools#3900)

* Fix spelling (SciTools#3903)

* Fix unit label handling (SciTools#3902)

* Add failing test of plotting

* Implement fix to pass test

* Update idiff to ignore irrelevant hyphens in path

* Update imagerepo (following docs)

* Update after review by @trexfeathers

* Add whatsnew entries

* Move whatsnew entries into correct file

* Release Docs Improvements (SciTools#3895)

* Minor phrasing change in 'Release candidate'.

* Before release deprecations.

* Whatsnew highlights section.

* Relax setup.py setup requirements (SciTools#3909)

* Updated CF saver version in User Guide and docstring (SciTools#3925)

* Updated CF saver version in User Guide and docstring

* Remove references to CF version of the loader in docstrings

* Added whatsnew

* Pin cftime<1.3.0

* Migrate to cirrus-ci (SciTools#3928)

* migrate from travis-ci to cirrus-ci

* added whatsnew entries

* ignore url for doc link check (SciTools#3929)

* whatsnew for coord default units (SciTools#3924)

* merge back v3.0.x branch

Co-authored-by: tkknight <[email protected]>
Co-authored-by: Zeb Nicholls <[email protected]>
Co-authored-by: Martin Yeo <[email protected]>
Co-authored-by: Jon Seddon <[email protected]>
Co-authored-by: Ruth Comer <[email protected]>
* Test string argument for remove_ancilliary_variable

* Enable string argument for cell_measure_dims and ancillary_variable_dims

* Test string argument for cell_measure_dims and ancillary_variable_dims

* Update with relevant entries
* update seasonal example

* add whatsnew

* have matplotlib do contour choosing work

* remove redundant import

* review changes and grammar
…l or y coordinate (SciTools#3906)

* Set 1D plots to put the coordinate on the y-axis where appropriate.

* New target image-hashes for 1D y-axis-coordinate plots.

* Whatsnew entry for 1D y-axis-coordinate plots.

* Remove duplicate comment about flipping plot axes.

* Use simple_1d stock cube for TestAxisLabels instead of simple_2d.

* Only attempt 1D vertical axis swap if coord can be identified.

* Simplify usages of plot() to take advantage of auto 1D vertical axis swap.
* Extended the installation description

As mentioned in Issue 3949, installation of Iris on Ubuntu was very difficult. I described an easy way to install Iris on Ubuntu without conda here.

* Renamed a label.

 _installing_from_source_with_conda -> _installing_from_source because tests failed

* Formatting of code improved.

* update links (SciTools#3942)

* update links

* added s to http

* Reset.

* Simplified installation and modified latest.rst.

* Included missing link in latest.rst.

Co-authored-by: Ruth Comer <[email protected]>
* Add release highlights and pin rc version (SciTools#3898)

* Add release highlights and pin rc version

* review actions

* reorder release highlights (SciTools#3899)

Tweak release highlights

* Add whatsnew announcement (SciTools#3900)

* Fix spelling (SciTools#3903)

* Fix unit label handling (SciTools#3902)

* Add failing test of plotting

* Implement fix to pass test

* Update idiff to ignore irrelevant hyphens in path

* Update imagerepo (following docs)

* Update after review by @trexfeathers

* Add whatsnew entries

* Move whatsnew entries into correct file

* Release Docs Improvements (SciTools#3895)

* Minor phrasing change in 'Release candidate'.

* Before release deprecations.

* Whatsnew highlights section.

* Relax setup.py setup requirements (SciTools#3909)

* Updated CF saver version in User Guide and docstring (SciTools#3925)

* Updated CF saver version in User Guide and docstring

* Remove references to CF version of the loader in docstrings

* Added whatsnew

* Pin cftime<1.3.0

* Migrate to cirrus-ci (SciTools#3928)

* migrate from travis-ci to cirrus-ci

* added whatsnew entries

* ignore url for doc link check (SciTools#3929)

* whatsnew for coord default units (SciTools#3924)

* Cube._summary_coord_extra: efficiency and bugfix (SciTools#3922)

* Add Documentation Title Case Capitalization (SciTools#3940)

* Use Title Case Capitalisation for Documentation

* add whatsnew enter

* CI requirements drop pip packages (SciTools#3939)

* requirements pip to conda

* use pip install over develop

* default PY_VER to python versions

* update links (SciTools#3942)

* update links

* added s to http

* Add support for 1-d weights in collapse. (SciTools#3943)

* Remove warning for convert_units on lazy data (SciTools#3951)

* drop stickler references in docs (SciTools#3953)

* drop stickler references in docs

* remove sticker from common links

* update docs for travis-ci to cirrus-ci (SciTools#3954)

* update docs for travis-ci to cirrus-ci

* add 'travis-ci' reference locally to whatsnew

* update whatsnew comment

* docs for nox (SciTools#3955)

* docs for nox

* add titles, notices and additional detail

* review actions

* Resolve test coverage (SciTools#3947)

* test coverage for __init__ and __call__

* test coverage for metadata resolve and coverage

* partial test coverage for metadata mapping

* python 3.6 workaround for deepcopy of mock.sentinel

* test coverage for Resolve._free_mapping

* test coverage for Resolve convenience methods

* add test stub for Resolve._metadata_mapping

* fix Test__tgt_cube_position

* test coverage for shape

* test coverage for _as_compatible_cubes

* test coverage for Resolve._metadata_mapping

* test coverage for Resolve._prepare_common_dim_payload

* test coverage for Resolve._prepare_common_aux_payload

* test coverage for Resolve._prepare_points_and_bounds

* test coverage for Resolve._create_prepared_item

* test coverage for Resolve._prepare_local_payload_dim

* test coverage for Resolve._prepare_local_payload_aux

* test coverage for Resolve._prepare_local_payload_scalar + docs URL skip

* test coverage for Resolve._prepare_local_payload

* test coverage for Resolve._metadata_prepare

* added docs URL linkcheck skip

* test coverage for Resolve._prepare_factory_payload

* test coverage for Resolve._get_prepared_item

* review actions

* test coverage for Resolve.cube

* pin v3.0.0 version and whatnew date (SciTools#3956)

* update github ci checks image (SciTools#3957)

Co-authored-by: tkknight <[email protected]>
Co-authored-by: Zeb Nicholls <[email protected]>
Co-authored-by: Martin Yeo <[email protected]>
Co-authored-by: Jon Seddon <[email protected]>
Co-authored-by: Ruth Comer <[email protected]>
Co-authored-by: Patrick Peglar <[email protected]>
* Add release highlights and pin rc version (SciTools#3898)

* Add release highlights and pin rc version

* review actions

* reorder release highlights (SciTools#3899)

Tweak release highlights

* Add whatsnew announcement (SciTools#3900)

* Fix spelling (SciTools#3903)

* Fix unit label handling (SciTools#3902)

* Add failing test of plotting

* Implement fix to pass test

* Update idiff to ignore irrelevant hyphens in path

* Update imagerepo (following docs)

* Update after review by @trexfeathers

* Add whatsnew entries

* Move whatsnew entries into correct file

* Release Docs Improvements (SciTools#3895)

* Minor phrasing change in 'Release candidate'.

* Before release deprecations.

* Whatsnew highlights section.

* Relax setup.py setup requirements (SciTools#3909)

* Updated CF saver version in User Guide and docstring (SciTools#3925)

* Updated CF saver version in User Guide and docstring

* Remove references to CF version of the loader in docstrings

* Added whatsnew

* Pin cftime<1.3.0

* Migrate to cirrus-ci (SciTools#3928)

* migrate from travis-ci to cirrus-ci

* added whatsnew entries

* ignore url for doc link check (SciTools#3929)

* whatsnew for coord default units (SciTools#3924)

* Cube._summary_coord_extra: efficiency and bugfix (SciTools#3922)

* Add Documentation Title Case Capitalization (SciTools#3940)

* Use Title Case Capitalisation for Documentation

* add whatsnew enter

* CI requirements drop pip packages (SciTools#3939)

* requirements pip to conda

* use pip install over develop

* default PY_VER to python versions

* update links (SciTools#3942)

* update links

* added s to http

* Add support for 1-d weights in collapse. (SciTools#3943)

* Remove warning for convert_units on lazy data (SciTools#3951)

* drop stickler references in docs (SciTools#3953)

* drop stickler references in docs

* remove sticker from common links

* update docs for travis-ci to cirrus-ci (SciTools#3954)

* update docs for travis-ci to cirrus-ci

* add 'travis-ci' reference locally to whatsnew

* update whatsnew comment

* docs for nox (SciTools#3955)

* docs for nox

* add titles, notices and additional detail

* review actions

* Resolve test coverage (SciTools#3947)

* test coverage for __init__ and __call__

* test coverage for metadata resolve and coverage

* partial test coverage for metadata mapping

* python 3.6 workaround for deepcopy of mock.sentinel

* test coverage for Resolve._free_mapping

* test coverage for Resolve convenience methods

* add test stub for Resolve._metadata_mapping

* fix Test__tgt_cube_position

* test coverage for shape

* test coverage for _as_compatible_cubes

* test coverage for Resolve._metadata_mapping

* test coverage for Resolve._prepare_common_dim_payload

* test coverage for Resolve._prepare_common_aux_payload

* test coverage for Resolve._prepare_points_and_bounds

* test coverage for Resolve._create_prepared_item

* test coverage for Resolve._prepare_local_payload_dim

* test coverage for Resolve._prepare_local_payload_aux

* test coverage for Resolve._prepare_local_payload_scalar + docs URL skip

* test coverage for Resolve._prepare_local_payload

* test coverage for Resolve._metadata_prepare

* added docs URL linkcheck skip

* test coverage for Resolve._prepare_factory_payload

* test coverage for Resolve._get_prepared_item

* review actions

* test coverage for Resolve.cube

* pin v3.0.0 version and whatnew date (SciTools#3956)

* update github ci checks image (SciTools#3957)

* Promote unknown units to dimensionless in aux factories (SciTools#3965)

* promote unknown to dimensionless units in aux factories

* patch aux factories to promote unknown to dimensionless units for formula terms

* add whatnew PR for entry

Co-authored-by: tkknight <[email protected]>
Co-authored-by: Zeb Nicholls <[email protected]>
Co-authored-by: Martin Yeo <[email protected]>
Co-authored-by: Jon Seddon <[email protected]>
Co-authored-by: Ruth Comer <[email protected]>
Co-authored-by: Patrick Peglar <[email protected]>
* use enumerated lists in whatsnew

* add enumerated list for latest template

* enumerate patch dropdown

* review actions
* add release highlights dropdown to latest and template

* add the patches dropdown to latest template

* make the patch release pulldown v3 generic
* reorganise docs common links + add core devs

* add common links comment
* document that iris.coords.Coord is an ABC

* use rst comment directive instead of only directive
* test_incompatible_dimensions used a ragged array for the test, which has been deprecated in numpy, and now fails if dtype is anything other than object.  This test appears to be checking that the addition of a [2x4] masked array to a [2x3] masked cube should raise a ValueError. This commit fixes the creation of `data3` object to be a [2x4] non-ragged array.

* Added entry to what's new

* Added name to core developer list :)

* Update latest.rst

Fixed space in PR macro call
* moved docs dir and updated references to it

* added whatsnew

* updated more docs directory references

* updated docs dir references
* automate docs discovery of iris and python versions
* update release docs + whatsnew entry
…ols#3989)

* Added text to state the Python version used to build the docs.

* Added footer template that includes the Python version used to build.

* added new line

* Review actions

* added whatsnew
* support for py38

* update CI and noxfile

* enforce alphabetical xml element attribute order

* full tests for py38 + fix docs-tests

* add whatsnew entry

* update doc-strings + review actions

* Alternate xml handling routine (SciTools#29)

* all xml tests pass for nox tests-3.8

* restored docstrings

* move sort_xml_attrs

* make sort_xml_attrs a classmethod

* update sort_xml_attr doc-string

Co-authored-by: Bill Little <[email protected]>

* add jamesp to whatsnew + minor tweak

Co-authored-by: James Penn <[email protected]>
* update cop maps example

* comment tweaks

* minor comment tweak + whatsnew

* reinstate whatsnew addition

* remove duplicate whatsnew
* Extra tests; fix for array attributes.

* Docstring for CubeSummary, and remove some unused parts.

* Fix section name capitalisation, in line with existing cube summary.

* Handle array differences; quote strings in extras and if 'awkward'-printing.

* Ensure scalar string coord 'content' prints on one line.
* update intersphinx mapping and matplotlib urls

* use matplotlib intersphinx where possible

* review actions

* review actions
* update readme badges

* pimp twitter badge
github-actions bot and others added 25 commits June 2, 2021 17:22
* Updated environment lockfiles

* Fix add_weekday. (SciTools#4169)

Co-authored-by: Lockfile bot <[email protected]>
Co-authored-by: Martin Yeo <[email protected]>
* refactor setup.py to setup.cfg

* add keywords

* added a whatsnew entry

* review actions

* review actions

* rebase with review actions

* review actions
updates:
- [github.com/psf/black: 21.5b2 → 21.6b0](psf/black@21.5b2...21.6b0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* adopt automated import sorting

* resolve circular imports

* rename isort pre-commit git-hook

* fix LBPROC_PAIRS

* set isort known-first-party

* fix circular import dependencies

* rebase with minor tweak

* review actions

* add whatsnew entry

* isort force sort within sections

* remove import cycle

* break util/coords cycle

* add test imports
* change master to main references

* black + flake8 + isort nox with abs paths

* review actions

* added a whatsnew entry

* review actions
* pre-commit blacked docs

* add whatsnew entry
* drop black and flake8 dependencies

* use pre-commit for ci

* added additional whatsnew entry

* review actions

* review actions - align hooks cli
)

* Widen cube printout for long ancil or cell-measure names.

* Adjust result for fixed cube-units printout.
updates:
- [github.com/asottile/blacken-docs: v1.8.0 → v1.10.0](adamchainz/blacken-docs@v1.8.0...v1.10.0)

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* First steps in parallel rules implementation.

* Rename some things + add comments.

* Headers, tweaks, reorg test__load_cube.

* Fix handling of coord-systems.

* Remove extra cdl.

* Add more grid-mapping tests; tidy testcode structure a bit.

* Test more grid types : rotated and some non-latlon (WIP).

* Fix 'checker' call usage.

* Reorganise testcode inheritance to provide testclasses for pyke/nonpyke. Replace 'bad mapping' control with scale-factor key. **NOTE** non-pyke bad mercatorhas outstanding test failures -- to be fixed.

* Tests for all supported grid-mappings. Note which rules trigger in each case.

* Disable testing against non-pyke code, for now.

* Revert old tests/test_netcdf.py

* Odd clarifying comments.

* Tidy testcase creation a bit.

* Tests for mapping-types mismatch between coords+grid-mapping; Test nonmonotonic dimcoord values; Test warnings (or not).

* Refactor to put different test areas in their own sourcefiles.

* Small fix to actions code.

* Move grid-mapping-specific content out of common load_cube__activate code.

* Add tests for time rules.

* Simplify and remove unused keys; check coord classes; test dim+aux shared dim.

* Simpler 'Opts' implementation.

* Tidy testing classes a bit.

* Tests for hybrid vertical coords.

* Small review changes.

* Regularise per-test records of rules triggered.

* Added tests for auxiliary lat+lon coords.

* Tests for remaining miscellaneous rules.

* Review: fix typos.

* Add testing option to compare pyke and nonpyke loads.

* Fixes to grid-mapping/dimcoord actions: passing all compare-tests.

* Actions for remaining 'miscellaneous' behaviour: All tests passing, including pyke == nonpyke checks.

* Improved comments in actions routines.

* Added actions for formulae (aka hybrid coords, factories).

* Tiny fix.

* Small review changes.

* Added basic tests for Engine class.

* Raise actual warning for unrecognised formulae.

* Remove unreachable warning code.

* Remove unreachable rule-fail code.

* Testcase for multiple hybrid coordinates.

* Fix rotated-aux-latitude test.

* Isort fixes.

* Remove pyke and simplify testing.

* Ensure a definite ordering for formula-root processing.

* Odd corrections to comments.

* Updated all 'rules triggered' comments.

* Fix scope-bleed from actions test debugging, and turn it off.

* Updated lockfiles.

* Small fixes to comments.

* Remove refs to pyke in project config files.

* Review changes for comments: fix, clarify + make consistent.

* Review change: correct test comment.

* Review changes: clarify comments.
- git checkout v2.4.0 lib/iris/experimental/regrid.py
- remove six imports
- satisfy linters
- update license
@jamesp jamesp changed the title WIP: Reverted regrid to state at v2.4.0. Reverted regrid to state at v2.4.0. Jul 6, 2021
@bjlittle
Copy link
Member

bjlittle commented Jul 6, 2021

@jamesp Could you target v3.0.x instead of main 👍

@jamesp jamesp changed the base branch from main to v3.0.x July 6, 2021 09:57
@jamesp jamesp closed this Jul 6, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

10 participants