Esmvaltool: Conda build broken because iris 1.13 requires cf_units < 2

Created on 11 Jun 2018  路  8Comments  路  Source: ESMValGroup/ESMValTool

The conda build is broken because iris 1.13 requires cf_units < 2, but in this PR we updated to cf_units > 2: #367. The easiest solution would be to remove the cf_units=>2.0.1 requirement from setup.py.

https://circleci.com/gh/ESMValGroup/ESMValTool/2860

Most helpful comment

For the moment, I will revert partially the changes in #367 to add again our simplification of the calendar, but also I will made 'gregorian' the default to be fully compatible with cf-units 2.

Once we can move again to cf-units2, we will just delete again our simplification function and everything should work seamlessly

All 8 comments

Note that we could also solve this issue by upgrading to iris 2 instead.

I am all up for going to iris=2.0, I think it's about time we start looking into getting this to work efficiently with ESMValTool; I have put a check on iris.__version__ in a few of the codes on autoassess branch, we can always do that so we maintain backwards compatibility

iris__version__

I think we are not ready for Iris 2 yet. The performance issues are not solved (https://github.com/ESMValGroup/ESMValTool/issues/318).

@bjlittle Maybe you can comment on this? The iris 1.13 conda package requires cf-units < 2, but it seems to work fine with cf-units 2. Also, from the release notes of cf-units 2 it looks like there are no problems to be expected from upgrading from cf-units 1 to cf-units 2.

The reason we want cf-units 2 is that we would like to use the cf-units 2 functionality of simplifying calendar names.

For the moment, I will revert partially the changes in #367 to add again our simplification of the calendar, but also I will made 'gregorian' the default to be fully compatible with cf-units 2.

Once we can move again to cf-units2, we will just delete again our simplification function and everything should work seamlessly

@bouweandela Apologies for the tard response ...

I'm kinda surprised that iris version 1.13 would work with cf-units version 2+...

When it comes to dealing with time the iris version 1.13 code will be expecting to deal with netcdftime objects, but cf-units is building using cftime not netcdftime, hence the pin back on netcdf4 <1.4

So in the main, iris version 1.13 may appear to be working, I'd expect certain situations when dealing with time specifically it misbehaves, so caveat emptor in that regard.

@bjlittle Thanks for the explanation. I guess we just haven't used the cases where it goes wrong so far.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

jhardenberg picture jhardenberg  路  5Comments

nielsdrost picture nielsdrost  路  3Comments

lukasbrunner picture lukasbrunner  路  4Comments

francesco-cmcc picture francesco-cmcc  路  4Comments

BenMGeo picture BenMGeo  路  5Comments