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

notebooks: fix output change breaking Jenkins due to new Jupyter env #212

Merged
merged 8 commits into from Apr 9, 2021

Conversation

tlvu
Copy link
Contributor

@tlvu tlvu commented Apr 8, 2021

New Jupyter env Ouranosinc/PAVICS-e2e-workflow-tests#68.

Passing Jenkins build with this fix http://jenkins.ouranos.ca/job/PAVICS-e2e-workflow-tests/job/new-docker-build-for-clisops-and-add-xkcd-font-for-matplotlib/16/console

See each commit for the fixed output detected by Jenkins.

Migrate to Xarray html output with NBVAL_IGNORE_OUTPUT to avoid breaking Jenkins (html output always detected as different by nbval).

…er env

New Jupyter env Ouranosinc/PAVICS-e2e-workflow-tests#68.

Fix following error:
```
  _______ pavics-sdi-master/docs/source/notebooks/regridding.ipynb::Cell 5 _______
  Notebook cell execution failed
  Cell 5: Cell outputs differ

  Input:
  ds_in.cf.describe()

  Traceback:
   mismatch 'stdout'

   assert reference_output == test_output failed:

    "Axes:\n\tX: ...'siconc']\n\n" == "Coordinates:...'siconc']\n\n"
    + Axes:
    + 	X: []
    + 	Y: []
    + 	Z: []
    + 	T: ['time']
    +
      Coordinates:
    - - CF Axes: * T: ['time']
    -              X, Y, Z: n/a
    + 	longitude: ['longitude']
    + 	latitude: ['latitude']
    + 	vertical: []
    + 	time: ['time']

    + Cell Measures:
    + 	area: ['areacello']
    + 	volume: []
    - - CF Coordinates:   longitude: ['longitude']
    -                     latitude: ['latitude']
    -                   * time: ['time']
    -                     vertical: n/a

    - - Cell Measures:   area, volume: n/a
    + Standard Names:
    + 	area_type: ['type']
    + 	cell_area: ['areacello']
    + 	sea_ice_area_fraction: ['siconc']

    - - Standard Names:   area_type: ['type']
    -                     latitude: ['latitude']
    -                     longitude: ['longitude']
    -                   * time: ['time']
    -
    - Data Variables:
    - - Cell Measures:   area: ['areacello']
    -                    volume: n/a
    -
    - - Standard Names:   cell_area: ['areacello']
    -                     sea_ice_area_fraction: ['siconc']
    -
```
@tlvu tlvu requested review from huard and tlogan2000 April 8, 2021 18:18
@review-notebook-app
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

Copy link
Contributor

@aulemahal aulemahal left a comment

Choose a reason for hiding this comment

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

Simply an update of cf-xarray, nothing different for the user's comprehension!

@tlvu
Copy link
Contributor Author

tlvu commented Apr 8, 2021

Simply an update of cf-xarray, nothing different for the user's comprehension!

Thanks for the clarification. So I'll add # NBVAL_IGNORE_OUTPUT to ignore output change for that cell in the future.

tlvu added 3 commits April 8, 2021 16:52
New Jupyter env from
Ouranosinc/PAVICS-e2e-workflow-tests#68

Switch to use xarray html display at the same time together with NBVAL_IGNORE_OUTPUT.

Fix the following error:

```
  _ pavics-sdi-update-regridding-ipynb-for-new-jupyter-env/docs/source/notebooks/pavics_thredds.ipynb::Cell 2 _
  Notebook cell execution failed
  Cell 2: Cell outputs differ

  Input:
  import requests
  from requests_magpie import MagpieAuth

  secured_url = "https://pavics.ouranos.ca/twitcher/ows/proxy/thredds/dodsC/birdhouse/testdata/secure/tasmax_Amon_MPI-ESM-MR_rcp45_r2i1p1_200601-200612.nc"
  auth = MagpieAuth("https://pavics.ouranos.ca/magpie", "authtest", "authtest1234")

  # Open session
  session = requests.Session()
  session.auth = auth

  # Open a Pydap data store and pass it to xarray
  store = xr.backends.PydapDataStore.open(secured_url, session=session)
  ds = xr.open_dataset(store, decode_cf=False) # Attributes are problematic with this file.
  ds

  Traceback:
   mismatch 'text/html'

   assert reference_output == test_output failed:

    '<pre>&lt;xar...:  time</pre>' == '<pre>&lt;xar...:  time</pre>'
    Skipping 625 identical leading characters in diff, use -v to show
    - ttributes: (12/28)
    + ttributes:
          institution:                     Max Planck Institute for Meteorology
          institute_id:                    MPI-M
          experiment_id:                   rcp45
          source:                          MPI-ESM-MR 2011; URL: http://svn.zmaw.de...
          model_id:                        MPI-ESM-MR
          forcing:                         GHG,Oz,SD,Sl,Vl,LU
    -     ...                              ...
    +     parent_experiment_id:            historical
    +     parent_experiment_rip:           r1i1p1
    +     branch_time:                     56978.0
    +     contact:                         cmip5-mpi-esm@dkrz.de
    +     history:                         Model raw output postprocessing with mod...
    +     references:                      ECHAM6: n/a; JSBACH: Raddatz et al., 200...
    +     initialization_method:           1
    +     physics_version:                 1
    +     tracking_id:                     e7e78b40-458b-48bd-963a-aa377a89f90b
    +     product:                         output
    +     experiment:                      RCP4.5
    +     frequency:                       mon
    +     creation_date:                   DATE_TIME_TZ
    +     Conventions:                     CF-1.4
    +     project_id:                      CMIP5
    +     table_id:                        Table Amon (27 April 2011) a5a1c518f52ae...
          title:                           MPI-ESM-MR model output prepared for CMI...
          parent_experiment:               historical
          modeling_realm:                  atmos
          realization:                     1
          cmor_version:                    2.6.0
          DODS_EXTRA.Unlimited_Dimension:  time</pre>
```
New Jupyter env from
Ouranosinc/PAVICS-e2e-workflow-tests#68

Fix the following error and switch to xarray html output and NBVAL_IGNORE_OUTPUT at the same time:

```
  _ pavics-sdi-update-regridding-ipynb-for-new-jupyter-env/docs/source/notebooks/subsetting.ipynb::Cell 4 _
  Notebook cell execution failed
  Cell 4: Cell outputs differ

  Input:
  res = resp.get()
  print("URL: ", res.output)
  res = resp.get(asobj=True)
  res.output

  Traceback:
   mismatch 'text/html'

   assert reference_output == test_output failed:

    '<pre>&lt;xar...  2.6.0</pre>' == '<pre>&lt;xar...  2.6.0</pre>'
    Skipping 587 identical leading characters in diff, use -v to show
    - ttributes: (12/27)
    + ttributes:
          institution:            Max Planck Institute for Meteorology
          institute_id:           MPI-M
          experiment_id:          rcp45
          source:                 MPI-ESM-MR 2011; URL: http://svn.zmaw.de/svn/cosm...
          model_id:               MPI-ESM-MR
          forcing:                GHG,Oz,SD,Sl,Vl,LU
    -     ...                     ...
    +     parent_experiment_id:   historical
    +     parent_experiment_rip:  r1i1p1
    +     branch_time:            56978.0
    +     contact:                cmip5-mpi-esm@dkrz.de
    +     history:                Model raw output postprocessing with modelling en...
    +     references:             ECHAM6: n/a; JSBACH: Raddatz et al., 2007. Will t...
    +     initialization_method:  1
    +     physics_version:        1
    +     tracking_id:            e7e78b40-458b-48bd-963a-aa377a89f90b
    +     product:                output
    +     experiment:             RCP4.5
    +     frequency:              mon
    +     creation_date:          DATE_TIME_TZ
    +     Conventions:            CF-1.4
    +     project_id:             CMIP5
          table_id:               Table Amon (27 April 2011) a5a1c518f52ae340313ba0...
          title:                  MPI-ESM-MR model output prepared for CMIP5 RCP4.5
          parent_experiment:      historical
          modeling_realm:         atmos
          realization:            1
          cmor_version:           2.6.0</pre>
```
New Jupyter env from
Ouranosinc/PAVICS-e2e-workflow-tests#68

Fix this error:
```
  _ pavics-sdi-update-regridding-ipynb-for-new-jupyter-env/docs/source/notebooks/regridding.ipynb::Cell 28 _
  Notebook cell execution failed
  Cell 28: Cell outputs differ

  Input:
  # Now we can plot easily the results as a choropleth map!
  ax = shapes_data.plot('tasmin', legend=True, legend_kwds={'label': 'Minimal temperature 1993-05-20 [K]'})
  ax.set_ylabel('Latitude')
  ax.set_xlabel('Longitude')

  Traceback:
   mismatch 'text/plain'

   assert reference_output == test_output failed:

    "Text(0.5, 79... 'Longitude')" == "Text(0.5, 79... 'Longitude')"
    - Text(0.5, 79.15273424321427, 'Longitude')
    ?                          ^^
    + Text(0.5, 79.1527342432141, 'Longitude')
    ?                          ^
```
@tlvu tlvu changed the title regridding.ipynb: fix output change breaking Jenkins due to new Jupyter env notebooks: fix output change breaking Jenkins due to new Jupyter env Apr 8, 2021
@tlvu
Copy link
Contributor Author

tlvu commented Apr 8, 2021

@aulemahal I have a new output change with regridding.ipynb, see 9937bc3.

This is probably due to a full build of the Jupyter env which also pull in the latest xarray. Is that change due to xarray? Is it normal that the Longitude value changed slightly?

@aulemahal
Copy link
Contributor

Oh that's weird. Something somewhere slightly changed the position of the text label... We can avoid the output with a ";", commit in a sec.

@tlvu tlvu merged commit cc7adb3 into master Apr 9, 2021
@tlvu tlvu deleted the update-regridding-ipynb-for-new-jupyter-env branch April 9, 2021 00:28
@tlvu
Copy link
Contributor Author

tlvu commented Apr 9, 2021

Oh that's weird. Something somewhere slightly changed the position of the text label... We can avoid the output with a ";", commit in a sec.

@aulemahal thanks! I didn't realized it's the position of the label, I thought it was the value of the label! Merged.

tlvu added a commit to Ouranosinc/PAVICS-e2e-workflow-tests that referenced this pull request Apr 9, 2021
…nd-add-xkcd-font-for-matplotlib

New docker build for updated clisops, ravenpy, xclim and add xkcd font for matplotlib

Jenkins build passing http://jenkins.ouranos.ca/job/PAVICS-e2e-workflow-tests/job/new-docker-build-for-clisops-and-add-xkcd-font-for-matplotlib/16/console with notebook fix Ouranosinc/pavics-sdi#212

Matching PR bird-house/birdhouse-deploy#144 to deploy to PAVICS.

This new Jupyter env needed to run the Pavics-homepage tutorial notebooks here bird-house/birdhouse-deploy-ouranos#8

Fixes Ouranosinc/pavics-sdi#204

Relevant changes:
```diff
<   - clisops=0.5.1=pyhd3deb0d_0
>   - clisops=0.6.3=pyh44b312d_0

<   - xclim=0.23.0=pyhd8ed1ab_0
>   - xclim=0.25.0=pyhd8ed1ab_0

>   - ostrich=0.1.2=h2bc3f7f_0
>   - raven=0.1.1=h2bc3f7f_0

<     - ravenpy==0.2.3  # from pip
>   - ravenpy=0.3.1=py37_0  # from conda

>   - aiohttp=3.7.4=py37h5e8e339_0

<   - roocs-utils=0.1.5=pyhd3deb0d_1
>   - roocs-utils=0.3.0=pyh6c4a22f_0

<   - cf_xarray=0.4.0=pyh44b312d_0
>   - cf_xarray=0.5.1=pyh44b312d_0

<   - rioxarray=0.2.0=pyhd8ed1ab_0
>   - rioxarray=0.3.1=pyhd8ed1ab_0

<   - xarray=0.16.2=pyhd8ed1ab_0
>   - xarray=0.17.0=pyhd8ed1ab_0

<   - geopandas=0.8.2=pyhd8ed1ab_0
>   - geopandas=0.9.0=pyhd8ed1ab_0

<   - gdal=3.1.4=py37h2ec2946_5
>   - gdal=3.2.1=py37hc5bc4e4_7

<   - jupyter_conda=4.1.0=hd8ed1ab_1
>   - jupyter_conda=5.0.0=hd8ed1ab_0

<   - python=3.7.9=hffdb5ce_100_cpython
>   - python=3.7.10=hffdb5ce_100_cpython
```

Full diff of `conda env export`:
[210216-210216-update210406-1-conda-env-export.diff.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/6279489/210216-210216-update210406-1-conda-env-export.diff.txt)

[210216-210216-update210408-conda-env-export.diff.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/6280425/210216-210216-update210408-conda-env-export.diff.txt)

[210216-210408-conda-env-export.diff.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/6281293/210216-210408-conda-env-export.diff.txt)

```
2a3
>   - zeitsperre
10c11,12
<   - alembic=1.5.4=pyhd8ed1ab_0
---
>   - aiohttp=3.7.4=py37h5e8e339_0
>   - alembic=1.5.8=pyhd8ed1ab_0
12c14
<   - anyio=2.1.0=py37h89c1867_0
---
>   - anyio=2.2.0=py37h89c1867_0
14a17
>   - async-timeout=3.0.1=py_1000
19c22
<   - backports.functools_lru_cache=1.6.1=py_0
---
>   - backports.functools_lru_cache=1.6.3=pyhd8ed1ab_0
24c27
<   - bokeh=2.2.3=py37h89c1867_0
---
>   - bokeh=2.3.1=py37h89c1867_0
34c37
<   - c-ares=1.17.1=h36c2ea0_0
---
>   - c-ares=1.17.1=h7f98852_1
36,38c39,42
<   - cached-property=1.5.1=py_0
<   - cairo=1.16.0=h7979940_1007
<   - cartopy=0.18.0=py37h02548d7_10
---
>   - cached-property=1.5.2=hd8ed1ab_1
>   - cached_property=1.5.2=pyha770c72_1
>   - cairo=1.16.0=h6cf1ce9_1008
>   - cartopy=0.18.0=py37h26456f9_13
44c48
<   - cf_xarray=0.4.0=pyh44b312d_0
---
>   - cf_xarray=0.5.1=pyh44b312d_0
54c58,59
<   - clisops=0.5.1=pyhd3deb0d_0
---
>   - climpred=2.1.3=pyhd8ed1ab_0
>   - clisops=0.6.3=pyh44b312d_0
58,61c63,66
<   - configurable-http-proxy=1.3.0=0
<   - coverage=5.4=py37h5e8e339_0
<   - cryptography=3.4.4=py37hf1a17b8_0
<   - curl=7.71.1=he644dc0_8
---
>   - configurable-http-proxy=4.3.1=node15_he6ea98c_0
>   - coverage=5.5=py37h5e8e339_0
>   - cryptography=3.4.7=py37h5d9358c_0
>   - curl=7.76.0=h979ede3_0
71c76
<   - datashader=0.12.0=pyhd3deb0d_0
---
>   - datashader=0.12.1=pyh44b312d_0
73c78
<   - dbus=1.13.6=hfdff14a_1
---
>   - dbus=1.13.6=h48d8840_2
75,76c80,81
<   - decorator=4.4.2=py_0
<   - defusedxml=0.6.0=py_0
---
>   - decorator=5.0.6=pyhd8ed1ab_0
>   - defusedxml=0.7.1=pyhd8ed1ab_0
80a86
>   - docrep=0.3.2=pyh44b312d_0
82c88
<   - eccodes=2.20.0=ha0e6eb6_0
---
>   - eccodes=2.21.0=ha0e6eb6_0
84,87c90,94
<   - esgf-compute-api=2.3.7=0_h1234567_
<   - esmf=8.0.1=nompi_he31a43a_2
<   - esmpy=8.0.1=nompi_py37h59b2dc9_2
<   - expat=2.2.10=h9c3ff4c_0
---
>   - eofs=1.4.0=py_0
>   - esgf-compute-api=2.3.9=0_h1234567_
>   - esmf=8.1.0=nompi_hed08645_0
>   - esmpy=8.1.0=nompi_py37hff16fce_0
>   - expat=2.3.0=h9c3ff4c_0
89c96
<   - fiona=1.8.18=py37h527b4ca_0
---
>   - fiona=1.8.18=py37h17d6ad9_1
91c98
<   - flask-compress=1.8.0=pyhd8ed1ab_0
---
>   - flask-compress=1.9.0=pyhd8ed1ab_0
94,95c101,102
<   - freexl=1.0.5=h516909a_1002
<   - fsspec=0.8.5=pyhd8ed1ab_0
---
>   - freexl=1.0.6=h7f98852_0
>   - fsspec=0.9.0=pyhd8ed1ab_0
98c105
<   - gdal=3.1.4=py37h2ec2946_5
---
>   - gdal=3.2.1=py37hc5bc4e4_7
100,102c107,108
<   - geojson=2.5.0=py_0
<   - geopandas=0.8.2=pyhd8ed1ab_0
<   - geos=3.9.0=h9c3ff4c_0
---
>   - geopandas=0.9.0=pyhd8ed1ab_0
>   - geos=3.9.1=h9c3ff4c_2
104,105c110,111
<   - geoviews=1.8.2=py_0
<   - geoviews-core=1.8.2=py_0
---
>   - geoviews=1.9.1=pyhd8ed1ab_0
>   - geoviews-core=1.9.1=pyha770c72_0
109,112c115,118
<   - gitdb=4.0.5=pyhd8ed1ab_1
<   - gitpython=3.1.13=pyhd8ed1ab_0
<   - glib=2.66.7=h9c3ff4c_0
<   - glib-tools=2.66.7=h9c3ff4c_0
---
>   - gitdb=4.0.7=pyhd8ed1ab_0
>   - gitpython=3.1.14=pyhd8ed1ab_0
>   - glib=2.68.0=h9c3ff4c_2
>   - glib-tools=2.68.0=h9c3ff4c_2
115,116c121,123
<   - gst-plugins-base=1.14.5=h0935bb2_2
<   - gstreamer=1.18.3=h3560a44_0
---
>   - greenlet=1.0.0=py37hcd2ae1e_0
>   - gst-plugins-base=1.18.4=h29181c9_0
>   - gstreamer=1.18.4=h76c114f_0
122,123c129,130
<   - holoviews=1.14.1=pyhd3deb0d_0
<   - hvplot=0.7.0=pyhd3deb0d_0
---
>   - holoviews=1.14.3=pyhd8ed1ab_0
>   - hvplot=0.7.1=pyh44b312d_0
126c133
<   - imagecodecs=2021.1.11=py37h95c7a1b_1
---
>   - imagecodecs=2021.3.31=py37haf4b6ec_0
128,130c135,137
<   - importlib-metadata=3.4.0=py37h89c1867_0
<   - importlib_metadata=3.4.0=hd8ed1ab_0
<   - importlib_resources=5.1.0=py37h89c1867_0
---
>   - importlib-metadata=3.10.0=py37h89c1867_0
>   - importlib_metadata=3.10.0=hd8ed1ab_0
>   - importlib_resources=5.1.2=py37h89c1867_0
132c139
<   - ipykernel=5.4.2=py37h888b3d9_0
---
>   - ipykernel=5.5.3=py37h085eea5_0
134c141
<   - ipython=7.20.0=py37h888b3d9_2
---
>   - ipython=7.22.0=py37h085eea5_0
143c150
<   - json-c=0.13.1=hbfbb72e_1002
---
>   - json-c=0.15=h98cffda_0
145c152
<   - jsonschema=3.2.0=py_2
---
>   - jsonschema=3.2.0=pyhd8ed1ab_3
150,152c157,159
<   - jupyter_client=6.1.11=pyhd8ed1ab_1
<   - jupyter_conda=4.1.0=hd8ed1ab_1
<   - jupyter_console=6.2.0=py_0
---
>   - jupyter_client=6.1.12=pyhd8ed1ab_0
>   - jupyter_conda=5.0.0=hd8ed1ab_0
>   - jupyter_console=6.4.0=pyhd8ed1ab_0
154c161
<   - jupyter_server=1.3.0=py37h89c1867_0
---
>   - jupyter_server=1.6.0=py37h89c1867_0
156,157c163,164
<   - jupyterhub=1.3.0=py37h89c1867_0
<   - jupyterhub-base=1.3.0=py37h89c1867_0
---
>   - jupyterhub=1.3.0=py37h89c1867_1
>   - jupyterhub-base=1.3.0=py37h89c1867_1
159c166
<   - jupyterlab-git=0.23.3=pyhd8ed1ab_0
---
>   - jupyterlab-git=0.24.0=pyhd8ed1ab_0
163c170
<   - jupytext=1.10.0=pyh44b312d_0
---
>   - jupytext=1.11.1=pyh44b312d_0
165c172
<   - kealib=1.4.14=he4dc956_1
---
>   - kealib=1.4.14=hcc255d8_2
169c176
<   - lazy-object-proxy=1.5.2=py37h5e8e339_1
---
>   - lazy-object-proxy=1.6.0=py37h5e8e339_0
178,180c185,187
<   - libclang=11.0.1=default_ha53f305_1
<   - libcurl=7.71.1=hcdd3856_8
<   - libdap4=3.20.6=hd7c4107_1
---
>   - libclang=11.1.0=default_ha53f305_0
>   - libcurl=7.76.0=hc4aaa36_0
>   - libdap4=3.20.6=hd7c4107_2
189c196
<   - libgdal=3.1.4=h0a4f56a_5
---
>   - libgdal=3.2.1=h38ff51b_7
192c199
<   - libglib=2.66.7=h1f3bc88_0
---
>   - libglib=2.68.0=h3e27bee_2
196c203
<   - libkml=1.3.0=h02e6976_1012
---
>   - libkml=1.3.0=h238a007_1013
199c206
<   - libllvm11=11.0.1=hf817b99_0
---
>   - libllvm11=11.1.0=hf817b99_2
204,206c211,213
<   - libpq=12.3=h255efa7_3
<   - libprotobuf=3.14.0=h780b84a_0
<   - librttopo=1.1.0=hccdd1c9_5
---
>   - libpq=13.1=hfd2b0eb_2
>   - libprotobuf=3.15.7=h780b84a_0
>   - librttopo=1.1.0=h1185371_6
209,210c216,217
<   - libspatialite=5.0.1=h04c9dda_2
<   - libssh2=1.9.0=hab1572f_5
---
>   - libspatialite=5.0.1=he52d314_3
>   - libssh2=1.9.0=ha56f1ee_6
215,216c222,223
<   - libuv=1.40.0=h7f98852_0
<   - libwebp-base=1.2.0=h7f98852_0
---
>   - libuv=1.41.0=h7f98852_0
>   - libwebp-base=1.2.0=h7f98852_2
222c229
<   - llvmlite=0.35.0=py37h9d7f4d0_1
---
>   - llvmlite=0.36.0=py37h9d7f4d0_0
224c231
<   - lxml=4.6.2=py37h77fd288_1
---
>   - lxml=4.6.3=py37h77fd288_0
227,228c234,235
<   - mamba_gator=4.1.0=pyhd8ed1ab_1
<   - markdown=3.3.3=pyh9f0ad1d_0
---
>   - mamba_gator=5.0.0=pyhd8ed1ab_0
>   - markdown=3.3.4=pyhd8ed1ab_0
231,233c238,240
<   - matplotlib=3.3.4=py37h89c1867_0
<   - matplotlib-base=3.3.4=py37h0c9df89_0
<   - mdit-py-plugins=0.2.5=pyhd8ed1ab_0
---
>   - matplotlib=3.4.1=py37h89c1867_0
>   - matplotlib-base=3.4.1=py37hdd32ed1_0
>   - mdit-py-plugins=0.2.6=pyhd8ed1ab_0
238a246
>   - multidict=5.1.0=py37h5e8e339_1
241,243c249,251
<   - mysql-common=8.0.22=ha770c72_3
<   - mysql-libs=8.0.22=h935591d_3
<   - nbclient=0.5.2=pyhd8ed1ab_0
---
>   - mysql-common=8.0.23=ha770c72_1
>   - mysql-libs=8.0.23=h935591d_1
>   - nbclient=0.5.3=pyhd8ed1ab_0
245c253
<   - nbformat=5.0.8=py_0
---
>   - nbformat=5.1.3=pyhd8ed1ab_0
249,250c257,258
<   - nest-asyncio=1.4.3=pyhd8ed1ab_0
<   - netcdf-fortran=4.5.3=nompi_h1a0d97b_101
---
>   - nest-asyncio=1.5.1=pyhd8ed1ab_0
>   - netcdf-fortran=4.5.3=nompi_h996563d_103
254,259c262,267
<   - nodejs=15.3.0=h92b4a50_1
<   - notebook=6.2.0=py37h89c1867_0
<   - nspr=4.29=h9c3ff4c_1
<   - nss=3.61=hb5efdd6_0
<   - numba=0.52.0=py37hdc94413_0
<   - numpy=1.20.1=py37haa41c4c_0
---
>   - nodejs=15.14.0=h92b4a50_0
>   - notebook=6.3.0=py37h89c1867_0
>   - nspr=4.30=h9c3ff4c_0
>   - nss=3.63=hb5efdd6_0
>   - numba=0.53.1=py37h134767a_0
>   - numpy=1.20.2=py37h038b26d_0
265c273,274
<   - openssl=1.1.1i=h7f98852_0
---
>   - openssl=1.1.1k=h7f98852_0
>   - ostrich=0.1.2=h2bc3f7f_0
270,271c279,280
<   - pandas=1.2.2=py37hdc94413_0
<   - pandoc=2.11.4=h7f98852_0
---
>   - pandas=1.2.3=py37hdc94413_0
>   - pandoc=2.12=h7f98852_0
273c282
<   - panel=0.10.3=pyhd8ed1ab_0
---
>   - panel=0.11.1=pyhd8ed1ab_0
275c284
<   - parso=0.8.1=pyhd8ed1ab_0
---
>   - parso=0.8.2=pyhd8ed1ab_0
281,282c290,291
<   - pillow=8.1.0=py37h4600e1f_2
<   - pint=0.16.1=py_0
---
>   - pillow=8.1.2=py37h4600e1f_1
>   - pint=0.17=pyhd8ed1ab_0
290c299
<   - postgresql=12.3=hc2f5b80_3
---
>   - postgresql=13.1=h6303168_2
292,295c301,305
<   - prometheus_client=0.9.0=pyhd3deb0d_0
<   - prompt-toolkit=3.0.16=pyha770c72_0
<   - prompt_toolkit=3.0.16=hd8ed1ab_0
<   - protobuf=3.14.0=py37hcd2ae1e_1
---
>   - prometheus_client=0.10.0=pyhd8ed1ab_0
>   - prompt-toolkit=3.0.18=pyha770c72_0
>   - prompt_toolkit=3.0.18=hd8ed1ab_0
>   - properscoring=0.1=py_0
>   - protobuf=3.15.7=py37hcd2ae1e_0
306,307c316,317
<   - pygments=2.8.0=pyhd8ed1ab_0
<   - pyjwt=2.0.1=pyhd8ed1ab_0
---
>   - pygments=2.8.1=pyhd8ed1ab_0
>   - pyjwt=2.0.1=pyhd8ed1ab_1
310c320
<   - pyproj=3.0.0.post1=py37hf874b97_0
---
>   - pyproj=3.0.1=py37h63c117d_0
319,320c329,330
<   - pytest=6.2.2=py37h89c1867_0
<   - python=3.7.9=hffdb5ce_100_cpython
---
>   - pytest=6.2.3=py37h89c1867_0
>   - python=3.7.10=hffdb5ce_100_cpython
329,331c339,341
<   - pyzmq=22.0.3=py37h499b945_0
<   - qt=5.12.9=h9d6b050_2
<   - qtconsole=5.0.2=pyhd8ed1ab_0
---
>   - pyzmq=22.0.3=py37h336d617_1
>   - qt=5.12.9=hda022c4_4
>   - qtconsole=5.0.3=pyhd8ed1ab_0
333c343,345
<   - rasterio=1.2.0=py37ha549118_0
---
>   - rasterio=1.2.2=py37hd5c4cce_0
>   - raven=0.1.1=h2bc3f7f_0
>   - ravenpy=0.3.1=py37_0
338,339c350,351
<   - rioxarray=0.2.0=pyhd8ed1ab_0
<   - roocs-utils=0.1.5=pyhd3deb0d_1
---
>   - rioxarray=0.3.1=pyhd8ed1ab_0
>   - roocs-utils=0.3.0=pyh6c4a22f_0
345c357
<   - scipy=1.6.0=py37h14a347d_0
---
>   - scipy=1.6.2=py37h29e03ee_0
348,349c360,361
<   - shapely=1.7.1=py37h4c50fd9_2
<   - siphon=0.8.0=py37h89c1867_1004
---
>   - shapely=1.7.1=py37hf7ed6d2_4
>   - siphon=0.9=py37h89c1867_0
357,358c369,370
<   - sqlalchemy=1.3.23=py37h5e8e339_0
<   - sqlite=3.34.0=h74cdb3f_0
---
>   - sqlalchemy=1.4.6=py37h5e8e339_0
>   - sqlite=3.35.4=h74cdb3f_0
360,361c372,373
<   - tblib=1.6.0=py_0
<   - terminado=0.9.2=py37h89c1867_0
---
>   - tblib=1.7.0=pyhd8ed1ab_0
>   - terminado=0.9.4=py37h89c1867_0
365,366c377,378
<   - tifffile=2021.2.1=pyhd8ed1ab_0
<   - tiledb=2.2.3=h91fcb0e_0
---
>   - tifffile=2021.3.31=pyhd8ed1ab_0
>   - tiledb=2.2.7=h91fcb0e_0
371c383
<   - tqdm=4.56.2=pyhd8ed1ab_0
---
>   - tqdm=4.60.0=pyhd8ed1ab_0
373a386
>   - typing-extensions=3.7.4.3=0
375,377c388,391
<   - tzcode=2021a=h7f98852_0
<   - udunits2=2.2.27.27=h360fe7b_0
<   - urllib3=1.26.3=pyhd8ed1ab_0
---
>   - tzcode=2021a=h7f98852_1
>   - tzdata=2021a=he74cb21_0
>   - udunits2=2.2.27.27=h975c496_1
>   - urllib3=1.26.4=pyhd8ed1ab_0
379c393
<   - voila=0.2.6=pyhd8ed1ab_0
---
>   - voila=0.2.7=pyhd8ed1ab_0
383c397
<   - webob=1.8.6=py_0
---
>   - webob=1.8.7=pyhd8ed1ab_0
389,390c403,404
<   - xarray=0.16.2=pyhd8ed1ab_0
<   - xclim=0.23.0=pyhd8ed1ab_0
---
>   - xarray=0.17.0=pyhd8ed1ab_0
>   - xclim=0.25.0=pyhd8ed1ab_0
393,394c407,409
<   - xeus=1.0.1=h78d96c3_0
<   - xeus-python=0.11.0=py37h52ea871_0
---
>   - xeus=1.0.1=h7d0c39e_2
>   - xeus-python=0.12.3=py37h52ea871_0
>   - xhistogram=0.1.3=pyhd8ed1ab_0
396,398c411,413
<   - xorg-libice=1.0.10=h516909a_0
<   - xorg-libsm=1.2.3=h84519dc_1000
<   - xorg-libx11=1.6.12=h516909a_0
---
>   - xorg-libice=1.0.10=h7f98852_0
>   - xorg-libsm=1.2.3=hd9c2040_1000
>   - xorg-libx11=1.7.0=h7f98852_0
401,403c416,418
<   - xorg-libxext=1.3.4=h516909a_0
<   - xorg-libxrender=0.9.10=h516909a_1002
<   - xorg-renderproto=0.11.1=h14c3975_1002
---
>   - xorg-libxext=1.3.4=h7f98852_1
>   - xorg-libxrender=0.9.10=h7f98852_1003
>   - xorg-renderproto=0.11.1=h7f98852_1002
405a421,422
>   - xrft=0.3.0=pyhd8ed1ab_0
>   - xskillscore=0.0.19=pyhd8ed1ab_0
407a425
>   - yarl=1.6.3=py37h5e8e339_1
409c427
<   - zfp=0.5.5=h9c3ff4c_4
---
>   - zfp=0.5.5=h9c3ff4c_5
411c429
<   - zipp=3.4.0=py_0
---
>   - zipp=3.4.1=pyhd8ed1ab_0
413c431
<   - zstd=1.4.8=ha95c52a_1
---
>   - zstd=1.4.9=ha95c52a_0
419a438
>     - geojson==2.5.0
428d446
<     - ravenpy==0.2.3
```

Full new `conda env export`:
[210216-update210406-1-conda-env-export.yml.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/6279491/210216-update210406-1-conda-env-export.yml.txt)

[210216-update210408-conda-env-export.yml.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/6280426/210216-update210408-conda-env-export.yml.txt)

[210408-conda-env-export.yml.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/6281295/210408-conda-env-export.yml.txt)

```
name: birdy
channels:
  - zeitsperre
  - cdat
  - conda-forge
  - defaults
dependencies:
  - _libgcc_mutex=0.1=conda_forge
  - _openmp_mutex=4.5=1_gnu
  - affine=2.3.0=py_0
  - aiohttp=3.7.4=py37h5e8e339_0
  - alembic=1.5.8=pyhd8ed1ab_0
  - ansi2html=1.6.0=py37h89c1867_1
  - anyio=2.2.0=py37h89c1867_0
  - appdirs=1.4.4=pyh9f0ad1d_0
  - argon2-cffi=20.1.0=py37h5e8e339_2
  - async-timeout=3.0.1=py_1000
  - async_generator=1.10=py_0
  - attrs=20.3.0=pyhd3deb0d_0
  - backcall=0.2.0=pyh9f0ad1d_0
  - backports=1.0=py_2
  - backports.functools_lru_cache=1.6.3=pyhd8ed1ab_0
  - beautifulsoup4=4.9.3=pyhb0f4dca_0
  - bleach=3.3.0=pyh44b312d_0
  - blinker=1.4=py_1
  - blosc=1.21.0=h9c3ff4c_0
  - bokeh=2.3.1=py37h89c1867_0
  - boltons=20.2.1=pyh9f0ad1d_0
  - boost-cpp=1.74.0=hc6e9bd1_2
  - bottleneck=1.3.2=py37h902c9e0_3
  - branca=0.4.2=pyhd8ed1ab_0
  - brotli=1.0.9=h9c3ff4c_4
  - brotli-python=1.0.9=py37hcd2ae1e_4
  - brotlipy=0.7.0=py37h5e8e339_1001
  - brunsli=0.1=h9c3ff4c_0
  - bzip2=1.0.8=h7f98852_4
  - c-ares=1.17.1=h7f98852_1
  - ca-certificates=2020.12.5=ha878542_0
  - cached-property=1.5.2=hd8ed1ab_1
  - cached_property=1.5.2=pyha770c72_1
  - cairo=1.16.0=h6cf1ce9_1008
  - cartopy=0.18.0=py37h26456f9_13
  - cdat_info=8.2.1=pyh9f0ad1d_1
  - cdtime=3.1.4=py37h5ad02f4_2
  - cdutil=8.2.1=pyh9f0ad1d_0
  - certifi=2020.12.5=py37h89c1867_1
  - certipy=0.1.3=py_0
  - cf_xarray=0.5.1=pyh44b312d_0
  - cffi=1.14.5=py37hc58025e_0
  - cfgrib=0.9.8.5=pyhd8ed1ab_0
  - cfitsio=3.470=hb418390_7
  - cftime=1.4.1=py37h902c9e0_0
  - chardet=4.0.0=py37h89c1867_1
  - charls=2.2.0=h9c3ff4c_0
  - click=7.1.2=pyh9f0ad1d_0
  - click-plugins=1.1.1=py_0
  - cligj=0.7.1=pyhd8ed1ab_0
  - climpred=2.1.3=pyhd8ed1ab_0
  - clisops=0.6.3=pyh44b312d_0
  - cloudpickle=1.6.0=py_0
  - colorama=0.4.4=pyh9f0ad1d_0
  - colorcet=2.0.6=pyhd8ed1ab_0
  - configurable-http-proxy=4.3.1=node15_he6ea98c_0
  - coverage=5.5=py37h5e8e339_0
  - cryptography=3.4.7=py37h5d9358c_0
  - curl=7.76.0=h979ede3_0
  - cycler=0.10.0=py_2
  - cytoolz=0.11.0=py37h5e8e339_3
  - dash=1.19.0=pyhd8ed1ab_0
  - dash-core-components=1.15.0=pyhd8ed1ab_0
  - dash-html-components=1.1.2=pyh44b312d_0
  - dash-renderer=1.9.0=pyhd8ed1ab_0
  - dash-table=4.11.2=pyhd8ed1ab_0
  - dask=2021.2.0=pyhd8ed1ab_0
  - dask-core=2021.2.0=pyhd8ed1ab_0
  - datashader=0.12.1=pyh44b312d_0
  - datashape=0.5.4=py_1
  - dbus=1.13.6=h48d8840_2
  - debugpy=1.2.1=py37hcd2ae1e_1
  - decorator=5.0.6=pyhd8ed1ab_0
  - defusedxml=0.7.1=pyhd8ed1ab_0
  - descartes=1.1.0=py_4
  - distarray=2.12.2=py_1
  - distributed=2021.2.0=py37h89c1867_0
  - docopt=0.6.2=py_1
  - docrep=0.3.2=pyh44b312d_0
  - dv3d=8.2.1=pyh9f0ad1d_0
  - eccodes=2.21.0=ha0e6eb6_0
  - entrypoints=0.3=pyhd8ed1ab_1003
  - eofs=1.4.0=py_0
  - esgf-compute-api=2.3.9=0_h1234567_
  - esmf=8.1.0=nompi_hed08645_0
  - esmpy=8.1.0=nompi_py37hff16fce_0
  - expat=2.3.0=h9c3ff4c_0
  - ffmpeg=4.2.3=h167e202_0
  - fiona=1.8.18=py37h17d6ad9_1
  - flask=1.1.2=pyh9f0ad1d_0
  - flask-compress=1.9.0=pyhd8ed1ab_0
  - fontconfig=2.13.1=hba837de_1004
  - freetype=2.10.4=h0708190_1
  - freexl=1.0.6=h7f98852_0
  - fsspec=0.9.0=pyhd8ed1ab_0
  - future=0.18.2=py37h89c1867_3
  - g2clib=1.6.0=hf3f1b0b_9
  - gdal=3.2.1=py37hc5bc4e4_7
  - genutil=8.2.1=py37h161383b_1
  - geopandas=0.9.0=pyhd8ed1ab_0
  - geos=3.9.1=h9c3ff4c_2
  - geotiff=1.6.0=h2b14fbe_4
  - geoviews=1.9.1=pyhd8ed1ab_0
  - geoviews-core=1.9.1=pyha770c72_0
  - gettext=0.19.8.1=h0b5b191_1005
  - ghostscript=9.53.3=h58526e2_2
  - giflib=5.2.1=h36c2ea0_2
  - gitdb=4.0.7=pyhd8ed1ab_0
  - gitpython=3.1.14=pyhd8ed1ab_0
  - glib=2.68.0=h9c3ff4c_2
  - glib-tools=2.68.0=h9c3ff4c_2
  - gmp=6.2.1=h58526e2_0
  - gnutls=3.6.13=h85f3911_1
  - greenlet=1.0.0=py37hcd2ae1e_0
  - gst-plugins-base=1.18.4=h29181c9_0
  - gstreamer=1.18.4=h76c114f_0
  - h5netcdf=0.10.0=pyhd8ed1ab_0
  - h5py=3.1.0=nompi_py37h1e651dc_100
  - hdf4=4.2.13=h10796ff_1004
  - hdf5=1.10.6=nompi_h6a2412b_1114
  - heapdict=1.0.1=py_0
  - holoviews=1.14.3=pyhd8ed1ab_0
  - hvplot=0.7.1=pyh44b312d_0
  - icu=68.1=h58526e2_0
  - idna=2.10=pyh9f0ad1d_0
  - imagecodecs=2021.3.31=py37haf4b6ec_0
  - imageio=2.9.0=py_0
  - importlib-metadata=3.10.0=py37h89c1867_0
  - importlib_metadata=3.10.0=hd8ed1ab_0
  - importlib_resources=5.1.2=py37h89c1867_0
  - iniconfig=1.1.1=pyh9f0ad1d_0
  - ipykernel=5.5.3=py37h085eea5_0
  - ipyleaflet=0.13.6=pyhd8ed1ab_1
  - ipython=7.22.0=py37h085eea5_0
  - ipython_genutils=0.2.0=py_1
  - ipywidgets=7.6.3=pyhd3deb0d_0
  - itsdangerous=1.1.0=py_0
  - jasper=1.900.1=h07fcdf6_1006
  - jedi=0.18.0=py37h89c1867_2
  - jinja2=2.11.3=pyh44b312d_0
  - joblib=1.0.1=pyhd8ed1ab_0
  - jpeg=9d=h36c2ea0_0
  - json-c=0.15=h98cffda_0
  - json5=0.9.5=pyh9f0ad1d_0
  - jsonschema=3.2.0=pyhd8ed1ab_3
  - jupyter=1.0.0=py37h89c1867_6
  - jupyter-archive=2.2.0=pyhd8ed1ab_0
  - jupyter-dash=0.4.0=pyhd8ed1ab_0
  - jupyter_bokeh=2.0.4=pyhd8ed1ab_0
  - jupyter_client=6.1.12=pyhd8ed1ab_0
  - jupyter_conda=5.0.0=hd8ed1ab_0
  - jupyter_console=6.4.0=pyhd8ed1ab_0
  - jupyter_core=4.7.1=py37h89c1867_0
  - jupyter_server=1.6.0=py37h89c1867_0
  - jupyter_telemetry=0.1.0=pyhd8ed1ab_1
  - jupyterhub=1.3.0=py37h89c1867_1
  - jupyterhub-base=1.3.0=py37h89c1867_1
  - jupyterlab=2.2.9=pyhd8ed1ab_0
  - jupyterlab-git=0.24.0=pyhd8ed1ab_0
  - jupyterlab_pygments=0.1.2=pyh9f0ad1d_0
  - jupyterlab_server=1.2.0=py_0
  - jupyterlab_widgets=1.0.0=pyhd8ed1ab_1
  - jupytext=1.11.1=pyh44b312d_0
  - jxrlib=1.1=h7f98852_2
  - kealib=1.4.14=hcc255d8_2
  - kiwisolver=1.3.1=py37h2527ec5_1
  - krb5=1.17.2=h926e7f8_0
  - lame=3.100=h7f98852_1001
  - lazy-object-proxy=1.6.0=py37h5e8e339_0
  - lcms2=2.12=hddcbb42_0
  - ld_impl_linux-64=2.35.1=hea4e1c9_2
  - lerc=2.2.1=h9c3ff4c_0
  - libaec=1.0.4=h9c3ff4c_1
  - libblas=3.8.0=17_openblas
  - libcblas=3.8.0=17_openblas
  - libcdms=3.1.2=h981a4fd_113
  - libcf=1.0.3=py37heda41dd_109
  - libclang=11.1.0=default_ha53f305_0
  - libcurl=7.76.0=hc4aaa36_0
  - libdap4=3.20.6=hd7c4107_2
  - libdeflate=1.7=h7f98852_5
  - libdrs=3.1.2=h7918d09_113
  - libdrs_f=3.1.2=h5026c31_111
  - libedit=3.1.20191231=he28a2e2_2
  - libev=4.33=h516909a_1
  - libevent=2.1.10=hcdb4288_3
  - libffi=3.3=h58526e2_2
  - libgcc-ng=9.3.0=h2828fa1_18
  - libgdal=3.2.1=h38ff51b_7
  - libgfortran-ng=9.3.0=hff62375_18
  - libgfortran5=9.3.0=hff62375_18
  - libglib=2.68.0=h3e27bee_2
  - libgomp=9.3.0=h2828fa1_18
  - libiconv=1.16=h516909a_0
  - libidn2=2.3.0=h516909a_0
  - libkml=1.3.0=h238a007_1013
  - liblapack=3.8.0=17_openblas
  - libllvm10=10.0.1=he513fc3_3
  - libllvm11=11.1.0=hf817b99_2
  - libnetcdf=4.7.4=nompi_h56d31a8_107
  - libnghttp2=1.43.0=h812cca2_0
  - libopenblas=0.3.10=pthreads_h4812303_5
  - libpng=1.6.37=h21135ba_2
  - libpq=13.1=hfd2b0eb_2
  - libprotobuf=3.15.7=h780b84a_0
  - librttopo=1.1.0=h1185371_6
  - libsodium=1.0.18=h36c2ea0_1
  - libspatialindex=1.9.3=h9c3ff4c_3
  - libspatialite=5.0.1=he52d314_3
  - libssh2=1.9.0=ha56f1ee_6
  - libstdcxx-ng=9.3.0=h6de172a_18
  - libtiff=4.2.0=hdc55705_0
  - libunistring=0.9.10=h14c3975_0
  - libuuid=2.32.1=h7f98852_1000
  - libuv=1.41.0=h7f98852_0
  - libwebp-base=1.2.0=h7f98852_2
  - libxcb=1.13=h7f98852_1003
  - libxkbcommon=1.0.3=he3ba5ed_0
  - libxml2=2.9.10=h72842e0_3
  - libxslt=1.1.33=h15afd5d_2
  - libzopfli=1.0.3=h9c3ff4c_0
  - llvmlite=0.36.0=py37h9d7f4d0_0
  - locket=0.2.0=py_2
  - lxml=4.6.3=py37h77fd288_0
  - lz4-c=1.9.3=h9c3ff4c_0
  - mako=1.1.4=pyh44b312d_0
  - mamba_gator=5.0.0=pyhd8ed1ab_0
  - markdown=3.3.4=pyhd8ed1ab_0
  - markdown-it-py=0.6.2=pyhd8ed1ab_0
  - markupsafe=1.1.1=py37h5e8e339_3
  - matplotlib=3.4.1=py37h89c1867_0
  - matplotlib-base=3.4.1=py37hdd32ed1_0
  - mdit-py-plugins=0.2.6=pyhd8ed1ab_0
  - memory_profiler=0.58.0=py_0
  - mesalib=18.3.1=h590aaf7_0
  - mistune=0.8.4=py37h5e8e339_1003
  - more-itertools=8.7.0=pyhd8ed1ab_0
  - msgpack-python=1.0.2=py37h2527ec5_1
  - multidict=5.1.0=py37h5e8e339_1
  - multipledispatch=0.6.0=py_0
  - munch=2.5.0=py_0
  - mysql-common=8.0.23=ha770c72_1
  - mysql-libs=8.0.23=h935591d_1
  - nbclient=0.5.3=pyhd8ed1ab_0
  - nbdime=2.1.0=py_0
  - nbformat=5.1.3=pyhd8ed1ab_0
  - nbval=0.9.6=pyh9f0ad1d_0
  - nc-time-axis=1.2.0=py_1
  - ncurses=6.2=h58526e2_4
  - nest-asyncio=1.5.1=pyhd8ed1ab_0
  - netcdf-fortran=4.5.3=nompi_h996563d_103
  - netcdf4=1.5.6=nompi_py37hdbee05a_100
  - nettle=3.6=he412f7d_0
  - networkx=2.5=py_0
  - nodejs=15.14.0=h92b4a50_0
  - notebook=6.3.0=py37h89c1867_0
  - nspr=4.30=h9c3ff4c_0
  - nss=3.63=hb5efdd6_0
  - numba=0.53.1=py37h134767a_0
  - numpy=1.20.2=py37h038b26d_0
  - oauthlib=3.0.1=py_0
  - olefile=0.46=pyh9f0ad1d_1
  - openblas=0.3.10=pthreads_h04b7a96_5
  - openh264=2.1.1=h780b84a_0
  - openjpeg=2.4.0=hf7af979_0
  - openssl=1.1.1k=h7f98852_0
  - ostrich=0.1.2=h2bc3f7f_0
  - owslib=0.23.0=pyhd8ed1ab_0
  - oyaml=1.0=pyhd8ed1ab_0
  - packaging=20.9=pyh44b312d_0
  - pamela=1.0.0=py_0
  - pandas=1.2.3=py37hdc94413_0
  - pandoc=2.12=h7f98852_0
  - pandocfilters=1.4.2=py_1
  - panel=0.11.1=pyhd8ed1ab_0
  - param=1.10.1=pyhd3deb0d_0
  - parso=0.8.2=pyhd8ed1ab_0
  - partd=1.1.0=py_0
  - patsy=0.5.1=py_0
  - pcre=8.44=he1b5a44_0
  - pexpect=4.8.0=pyh9f0ad1d_2
  - pickleshare=0.7.5=py_1003
  - pillow=8.1.2=py37h4600e1f_1
  - pint=0.17=pyhd8ed1ab_0
  - pip=21.0.1=pyhd8ed1ab_0
  - pixman=0.40.0=h36c2ea0_0
  - plotly=4.14.3=pyh44b312d_0
  - pluggy=0.13.1=py37h89c1867_4
  - pooch=1.3.0=pyhd8ed1ab_0
  - poppler=0.89.0=h2de54a5_5
  - poppler-data=0.4.10=0
  - postgresql=13.1=h6303168_2
  - proj=7.2.0=h277dcde_2
  - prometheus_client=0.10.0=pyhd8ed1ab_0
  - prompt-toolkit=3.0.18=pyha770c72_0
  - prompt_toolkit=3.0.18=hd8ed1ab_0
  - properscoring=0.1=py_0
  - protobuf=3.15.7=py37hcd2ae1e_0
  - pscript=0.7.5=pyhd3deb0d_0
  - psutil=5.8.0=py37h5e8e339_1
  - pthread-stubs=0.4=h36c2ea0_1001
  - ptyprocess=0.7.0=pyhd3deb0d_0
  - py=1.10.0=pyhd3deb0d_0
  - pycparser=2.20=pyh9f0ad1d_2
  - pyct=0.4.6=py_0
  - pyct-core=0.4.6=py_0
  - pycurl=7.43.0.6=py37h88a64d2_1
  - pydap=3.2.2=pyh9f0ad1d_1001
  - pygments=2.8.1=pyhd8ed1ab_0
  - pyjwt=2.0.1=pyhd8ed1ab_1
  - pyopenssl=20.0.1=pyhd8ed1ab_0
  - pyparsing=2.4.7=pyh9f0ad1d_0
  - pyproj=3.0.1=py37h63c117d_0
  - pyqt=5.12.3=py37h89c1867_7
  - pyqt-impl=5.12.3=py37he336c9b_7
  - pyqt5-sip=4.19.18=py37hcd2ae1e_7
  - pyqtchart=5.12=py37he336c9b_7
  - pyqtwebengine=5.12.1=py37he336c9b_7
  - pyrsistent=0.17.3=py37h5e8e339_2
  - pyshp=2.1.3=pyh44b312d_0
  - pysocks=1.7.1=py37h89c1867_3
  - pytest=6.2.3=py37h89c1867_0
  - python=3.7.10=hffdb5ce_100_cpython
  - python-dateutil=2.8.1=py_0
  - python-editor=1.0.4=py_0
  - python-json-logger=2.0.1=pyh9f0ad1d_0
  - python_abi=3.7=1_cp37m
  - pytz=2021.1=pyhd8ed1ab_0
  - pyviz_comms=2.0.1=pyhd3deb0d_0
  - pywavelets=1.1.1=py37h902c9e0_3
  - pyyaml=5.4.1=py37h5e8e339_0
  - pyzmq=22.0.3=py37h336d617_1
  - qt=5.12.9=hda022c4_4
  - qtconsole=5.0.3=pyhd8ed1ab_0
  - qtpy=1.9.0=py_0
  - rasterio=1.2.2=py37hd5c4cce_0
  - raven=0.1.1=h2bc3f7f_0
  - ravenpy=0.3.1=py37_0
  - readline=8.0=he28a2e2_2
  - regionmask=0.6.2=pyhd8ed1ab_0
  - requests=2.25.1=pyhd3deb0d_0
  - retrying=1.3.3=py_2
  - rioxarray=0.3.1=pyhd8ed1ab_0
  - roocs-utils=0.3.0=pyh6c4a22f_0
  - rtree=0.9.7=py37h0b55af0_1
  - ruamel.yaml=0.16.12=py37h5e8e339_2
  - ruamel.yaml.clib=0.2.2=py37h5e8e339_2
  - scikit-image=0.18.1=py37hdc94413_0
  - scikit-learn=0.24.1=py37h69acf81_0
  - scipy=1.6.2=py37h29e03ee_0
  - send2trash=1.5.0=py_0
  - setuptools=49.6.0=py37h89c1867_3
  - shapely=1.7.1=py37hf7ed6d2_4
  - siphon=0.9=py37h89c1867_0
  - six=1.15.0=pyh9f0ad1d_0
  - smmap=3.0.5=pyh44b312d_0
  - snappy=1.1.8=he1b5a44_3
  - sniffio=1.2.0=py37h89c1867_1
  - snuggs=1.4.7=py_0
  - sortedcontainers=2.3.0=pyhd8ed1ab_0
  - soupsieve=2.0.1=py_1
  - sqlalchemy=1.4.6=py37h5e8e339_0
  - sqlite=3.35.4=h74cdb3f_0
  - statsmodels=0.12.2=py37h902c9e0_0
  - tblib=1.7.0=pyhd8ed1ab_0
  - terminado=0.9.4=py37h89c1867_0
  - testpath=0.4.4=py_0
  - threadpoolctl=2.1.0=pyh5ca1d4c_0
  - threddsclient=0.4.2=py_0
  - tifffile=2021.3.31=pyhd8ed1ab_0
  - tiledb=2.2.7=h91fcb0e_0
  - tk=8.6.10=h21135ba_1
  - toml=0.10.2=pyhd8ed1ab_0
  - toolz=0.11.1=py_0
  - tornado=6.1=py37h5e8e339_1
  - tqdm=4.60.0=pyhd8ed1ab_0
  - traitlets=5.0.5=py_0
  - traittypes=0.2.1=pyh9f0ad1d_2
  - typing-extensions=3.7.4.3=0
  - typing_extensions=3.7.4.3=py_0
  - tzcode=2021a=h7f98852_1
  - tzdata=2021a=he74cb21_0
  - udunits2=2.2.27.27=h975c496_1
  - urllib3=1.26.4=pyhd8ed1ab_0
  - vcs=8.2.1=pyh9f0ad1d_0
  - voila=0.2.7=pyhd8ed1ab_0
  - vtk-cdat=8.2.0.8.2=py37_mesalibhead77ed_0
  - wcwidth=0.2.5=pyh9f0ad1d_2
  - webencodings=0.5.1=py_1
  - webob=1.8.7=pyhd8ed1ab_0
  - werkzeug=1.0.1=pyh9f0ad1d_0
  - wget=1.20.1=h22169c7_0
  - wheel=0.36.2=pyhd3deb0d_0
  - widgetsnbextension=3.5.1=py37h89c1867_4
  - x264=1!152.20180806=h14c3975_0
  - xarray=0.17.0=pyhd8ed1ab_0
  - xclim=0.25.0=pyhd8ed1ab_0
  - xerces-c=3.2.3=h9d8b166_2
  - xesmf=0.5.2=pyhd8ed1ab_0
  - xeus=1.0.1=h7d0c39e_2
  - xeus-python=0.12.3=py37h52ea871_0
  - xhistogram=0.1.3=pyhd8ed1ab_0
  - xorg-kbproto=1.0.7=h7f98852_1002
  - xorg-libice=1.0.10=h7f98852_0
  - xorg-libsm=1.2.3=hd9c2040_1000
  - xorg-libx11=1.7.0=h7f98852_0
  - xorg-libxau=1.0.9=h7f98852_0
  - xorg-libxdmcp=1.1.3=h7f98852_0
  - xorg-libxext=1.3.4=h7f98852_1
  - xorg-libxrender=0.9.10=h7f98852_1003
  - xorg-renderproto=0.11.1=h7f98852_1002
  - xorg-xextproto=7.3.0=h7f98852_1002
  - xorg-xproto=7.0.31=h7f98852_1007
  - xrft=0.3.0=pyhd8ed1ab_0
  - xskillscore=0.0.19=pyhd8ed1ab_0
  - xz=5.2.5=h516909a_1
  - yaml=0.2.5=h516909a_0
  - yarl=1.6.3=py37h5e8e339_1
  - zeromq=4.3.4=h9c3ff4c_0
  - zfp=0.5.5=h9c3ff4c_5
  - zict=2.0.0=py_0
  - zipp=3.4.1=pyhd8ed1ab_0
  - zlib=1.2.11=h516909a_1010
  - zstd=1.4.9=ha95c52a_0
  - pip:
    - astunparse==1.6.3
    - birdhouse-birdy==0.7.0
    - cdms2==3.1.5
    - colour==0.1.5
    - funcsigs==1.0.2
    - geojson==2.5.0
    - handcalcs==1.3.0
    - innerscope==0.2.0
    - ipython-blocking==0.2.1
    - jupyternotify==0.1.15
    - nbconvert==5.6.1
    - nbresuse==0.4.0
    - pixiedust==1.1.19
    - pytest-tornasync==0.6.0.post2
    - regrid2==3.1.5
    - requests-magpie==0.1.1
    - wrapt==1.12.1
prefix: /opt/conda/envs/birdy
```
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.

None yet

3 participants