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

Release v0.19? #5588

Closed
3 of 8 tasks
TomNicholas opened this issue Jul 8, 2021 · 15 comments · Fixed by #5632
Closed
3 of 8 tasks

Release v0.19? #5588

TomNicholas opened this issue Jul 8, 2021 · 15 comments · Fixed by #5632
Labels
Release Planning and tracking progress of releases

Comments

@TomNicholas
Copy link
Member

TomNicholas commented Jul 8, 2021

@keewis
Copy link
Collaborator

keewis commented Jul 8, 2021

is there a way to tag only the core dev team?

as long as you're a member you can use @pydata/xarray

@dcherian
Copy link
Contributor

dcherian commented Jul 8, 2021

There's a breaking change so it should be 0.19.0: https://xarray.pydata.org/en/latest/whats-new.html

@keewis
Copy link
Collaborator

keewis commented Jul 8, 2021

we were also wondering whether a renamed kwarg went through a deprecation cycle, but I can't find that PR. Has it been merged, yet?

@dcherian
Copy link
Contributor

dcherian commented Jul 8, 2021

@keewis See #4696 . that whats-new note is in the wrong place which is why I couldn't find it yesterday

@TomNicholas TomNicholas added the Release Planning and tracking progress of releases label Jul 9, 2021
@keewis
Copy link
Collaborator

keewis commented Jul 9, 2021

there are also a few deprecations scheduled for removal in 0.19

@TomNicholas
Copy link
Member Author

TomNicholas commented Jul 16, 2021

I know I volunteered to do this release, but some of the PRs I wanted to include have taken longer than I thought they would (particularly #5571), and now I'm going to be away from a computer from tomorrow until near the end of next week.

Should we do the release soon anyway?

@dcherian
Copy link
Contributor

Should we do the release soon anyway?

Yes!

@max-sixty
Copy link
Collaborator

I basically think we should never wait for PRs, or spend time "rounding them up" before doing a release. Stuff is going to go in at some point, and exactly when doesn't matter as much as reducing the burden of doing releases. Indeed — even if we're only attempting to reduce the time between code merging and being released — we'd arguably reduce that more by forgoing this rounding up effort, making releases easier and more frequent.

The only argument I can see is that it's some "call to action" that helps motivate people to push something over the edge.

(but not super confident and realize I am maybe contra-consensus, so weigh appropriately)

@TomNicholas
Copy link
Member Author

TomNicholas commented Jul 16, 2021 via email

@shoyer
Copy link
Member

shoyer commented Jul 17, 2021

I'd like to consider rolling back the addition of typing-extensions as a required dependency before issuing the release: #5495

@TomNicholas
Copy link
Member Author

Is this just blocking on #5495? What did we decide to do there?

@tlvu
Copy link

tlvu commented Jul 22, 2021

Is it possible to make quick release of xarray? Without a release containing PR #5359, we are forced to pin pandas below 1.3.0. Thanks !

@dcherian
Copy link
Contributor

Just merged the blocker. @TomNicholas we should be good to release.

@TomNicholas
Copy link
Member Author

Good news everyone! The release is done.

@shoyer
Copy link
Member

shoyer commented Jul 23, 2021 via email

tlvu added a commit to Ouranosinc/PAVICS-e2e-workflow-tests that referenced this issue Jul 26, 2021
New docker full build to get latest RavenPy-0.6.0, Xclim-0.28.0 and latest of everything else

# Overview

Relevant changes:
```diff
<   - ravenpy=0.5.2=pyh7f9bfb9_0
>   - ravenpy=0.6.0=pyh1bb2064_2

<   - xclim=0.27.0=pyhd8ed1ab_0
>   - xclim=0.28.0=pyhd8ed1ab_0

# birdy rebuild
<   - birdy=v0.8.0=pyh6c4a22f_0
>   - birdy=v0.8.0=pyh6c4a22f_1

<   - cf_xarray=0.5.2=pyh6c4a22f_0
>   - cf_xarray=0.6.0=pyh6c4a22f_0

<   - cftime=1.4.1=py37h902c9e0_0
>   - cftime=1.5.0=py37h6f94858_0

<   - dask=2021.6.0=pyhd8ed1ab_0
>   - dask=2021.7.0=pyhd8ed1ab_0

<   - nc-time-axis=1.2.0=py_1
>   - nc-time-axis=1.3.1=pyhd8ed1ab_2

<   - rioxarray=0.4.1.post0=pyhd8ed1ab_0
>   - rioxarray=0.5.0=pyhd8ed1ab_0

<   - numpy=1.20.3=py37h038b26d_1
>   - numpy=1.21.1=py37h038b26d_0

<   - pandas=1.2.4=py37h219a48f_0
>   - pandas=1.2.5=py37h219a48f_0

<   - plotly=4.14.3=pyh44b312d_0
>   - plotly=5.1.0=pyhd8ed1ab_1

<     - nbconvert==5.6.1
>   - nbconvert=6.1.0=py37h89c1867_0
```

## Changes

- unpin `cftime`, since SciTools/nc-time-axis/issues/58 resolved
- add `patch` to pull unreleased fixes if needed
- pin pandas due to xarray (pydata/xarray#5588 (comment))

## Additional Information

Jenkins build, only known intermittent error (ESGF login, stress-test.ipynb) http://jenkins.ouranos.ca/job/PAVICS-e2e-workflow-tests/job/new-docker-full-build/3/console

Jenkins build against Raven notebooks: http://jenkins.ouranos.ca/job/PAVICS-e2e-workflow-tests/job/new-docker-full-build/6/console

Matching PR to deploy this Jupyter env on PAVICS bird-house/birdhouse-deploy#183

Full `conda env export` diff:
[210527.1-update20210618-210723-conda-env-export.diff.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/6870972/210527.1-update20210618-210723-conda-env-export.diff.txt)
```diff
10c10
<   - aiohttp=3.7.4=py37h5e8e339_0
---
>   - aiohttp=3.7.4.post0=py37h5e8e339_0
14c14
<   - anyio=3.1.0=py37h89c1867_0
---
>   - anyio=3.3.0=py37h89c1867_0
25,26c25,26
<   - birdy=v0.8.0=pyh6c4a22f_0
<   - bleach=3.3.0=pyh44b312d_0
---
>   - birdy=v0.8.0=pyh6c4a22f_1
>   - bleach=3.3.1=pyhd8ed1ab_0
29c29
<   - bokeh=2.3.2=py37h89c1867_0
---
>   - bokeh=2.3.3=py37h89c1867_0
34,35c34,36
<   - brotli=1.0.9=h9c3ff4c_4
<   - brotli-python=1.0.9=py37hcd2ae1e_4
---
>   - brotli=1.0.9=h7f98852_5
>   - brotli-bin=1.0.9=h7f98852_5
>   - brotli-python=1.0.9=py37hcd2ae1e_5
51,52c52,53
<   - cf_xarray=0.5.2=pyh6c4a22f_0
<   - cffi=1.14.5=py37hc58025e_0
---
>   - cf_xarray=0.6.0=pyh6c4a22f_0
>   - cffi=1.14.6=py37hc58025e_0
55c56
<   - cftime=1.4.1=py37h902c9e0_0
---
>   - cftime=1.5.0=py37h6f94858_0
57a59
>   - charset-normalizer=2.0.0=pyhd8ed1ab_0
61c63
<   - climpred=2.1.2=pyhd8ed1ab_0
---
>   - climpred=2.1.4=pyhd8ed1ab_0
66c68
<   - configurable-http-proxy=4.4.0=node15_he6ea98c_0
---
>   - configurable-http-proxy=4.5.0=node15_he6ea98c_0
77,78c79,80
<   - dask=2021.6.0=pyhd8ed1ab_0
<   - dask-core=2021.6.0=pyhd8ed1ab_0
---
>   - dask=2021.7.0=pyhd8ed1ab_0
>   - dask-core=2021.7.0=pyhd8ed1ab_0
83,84c85,86
<   - debugpy=1.3.0=py37hcd2ae1e_0
<   - decorator=4.4.2=py_0
---
>   - debugpy=1.4.0=py37hcd2ae1e_0
>   - decorator=5.0.9=pyhd8ed1ab_0
87,88c89,90
<   - distarray=2.12.2=py_1
<   - distributed=2021.6.0=py37h89c1867_0
---
>   - distarray=2.12.2=pyhd8ed1ab_2
>   - distributed=2021.7.0=py37h89c1867_0
98d99
<   - esmtools=1.1.3=py_0
105c106
<   - flask-compress=1.10.0=pyhd8ed1ab_0
---
>   - flask-compress=1.10.1=pyhd8ed1ab_0
109c110
<   - fsspec=2021.6.0=pyhd8ed1ab_0
---
>   - fsspec=2021.7.0=pyhd8ed1ab_0
112,113c113,114
<   - g2clib=1.6.0=hf3f1b0b_9
<   - gcsfs=2021.6.0=pyhd8ed1ab_0
---
>   - g2clib=1.6.3=hdfa6d74_0
>   - gcsfs=2021.7.0=pyhd8ed1ab_0
116c117,118
<   - geopandas=0.9.0=pyhd8ed1ab_0
---
>   - geopandas=0.9.0=pyhd8ed1ab_1
>   - geopandas-base=0.9.0=pyhd8ed1ab_1
125c127
<   - gitpython=3.1.17=pyhd8ed1ab_0
---
>   - gitpython=3.1.19=pyhd8ed1ab_0
130c132
<   - google-auth=1.30.0=pyh44b312d_0
---
>   - google-auth=1.33.1=pyh6c4a22f_0
136c138
<   - h5py=3.2.1=nompi_py37ha3df211_100
---
>   - h5py=3.3.0=nompi_py37ha3df211_100
140,141c142,143
<   - holoviews=1.14.4=pyhd8ed1ab_0
<   - hvplot=0.7.2=pyh6c4a22f_0
---
>   - holoviews=1.14.5=pyhd8ed1ab_0
>   - hvplot=0.7.3=pyh6c4a22f_0
143c145
<   - idna=2.10=pyh9f0ad1d_0
---
>   - idna=3.1=pyhd3deb0d_0
146,148c148,150
<   - importlib-metadata=4.5.0=py37h89c1867_0
<   - importlib_metadata=4.5.0=hd8ed1ab_0
<   - importlib_resources=5.1.4=pyhd8ed1ab_0
---
>   - importlib-metadata=4.6.1=py37h89c1867_0
>   - importlib_metadata=4.6.1=hd8ed1ab_0
>   - importlib_resources=5.2.0=pyhd8ed1ab_0
156,157c158,159
<   - ipyleaflet=0.13.6=pyhd8ed1ab_1
<   - ipython=7.24.1=py37h085eea5_0
---
>   - ipyleaflet=0.14.0=pyhd8ed1ab_1
>   - ipython=7.25.0=py37h085eea5_1
178c180
<   - jupyter_server=1.8.0=pyhd8ed1ab_0
---
>   - jupyter_server=1.10.1=pyhd8ed1ab_0
180,181c182,183
<   - jupyterhub=1.4.1=py37h89c1867_0
<   - jupyterhub-base=1.4.1=py37h89c1867_0
---
>   - jupyterhub=1.4.2=py37h89c1867_0
>   - jupyterhub-base=1.4.2=py37h89c1867_0
187c189
<   - jupytext=1.11.2=pyh6c4a22f_0
---
>   - jupytext=1.11.4=pyhd0ecf6b_0
195c197
<   - ld_impl_linux-64=2.35.1=hea4e1c9_2
---
>   - ld_impl_linux-64=2.36.1=hea4e1c9_1
197c199
<   - libaec=1.0.4=h9c3ff4c_1
---
>   - libaec=1.0.5=h9c3ff4c_0
198a201,203
>   - libbrotlicommon=1.0.9=h7f98852_5
>   - libbrotlidec=1.0.9=h7f98852_5
>   - libbrotlienc=1.0.9=h7f98852_5
212c217
<   - libgcc-ng=9.3.0=h2828fa1_19
---
>   - libgcc-ng=11.1.0=hc902ee8_0
214,215c219,220
<   - libgfortran-ng=9.3.0=hff62375_19
<   - libgfortran5=9.3.0=hff62375_19
---
>   - libgfortran-ng=11.1.0=h69a702a_0
>   - libgfortran5=11.1.0=h6c583b3_0
217c222
<   - libgomp=9.3.0=h2828fa1_19
---
>   - libgomp=11.1.0=hc902ee8_0
219,220c224,225
<   - libidn2=2.3.1=h7f98852_0
<   - libkml=1.3.0=h238a007_1013
---
>   - libidn2=2.3.2=h7f98852_0
>   - libkml=1.3.0=h238a007_1014
231c236
<   - libprotobuf=3.17.2=h780b84a_0
---
>   - libprotobuf=3.17.2=h780b84a_1
234c239
<   - libspatialindex=1.9.3=h9c3ff4c_3
---
>   - libspatialindex=1.9.3=h9c3ff4c_4
237c242
<   - libstdcxx-ng=9.3.0=h6de172a_19
---
>   - libstdcxx-ng=11.1.0=h56837e0_0
239c244
<   - libunistring=0.9.10=h14c3975_0
---
>   - libunistring=0.9.10=h7f98852_0
241c246
<   - libuv=1.41.0=h7f98852_0
---
>   - libuv=1.41.1=h7f98852_0
254a260
>   - mapclassify=2.4.2=pyhd8ed1ab_0
260a267
>   - mdit-py-plugins=0.2.8=pyhd8ed1ab_0
263c270
<   - mistune=0.8.4=py37h5e8e339_1003
---
>   - mistune=0.8.4=py37h5e8e339_1004
272a280
>   - nbconvert=6.1.0=py37h89c1867_0
276c284
<   - nc-time-axis=1.2.0=py_1
---
>   - nc-time-axis=1.3.1=pyhd8ed1ab_2
282c290
<   - networkx=2.5.1=pyhd8ed1ab_0
---
>   - networkx=2.5=py_0
288,289c296,297
<   - numcodecs=0.7.3=py37hcd2ae1e_0
<   - numpy=1.20.3=py37h038b26d_1
---
>   - numcodecs=0.8.0=py37hcd2ae1e_0
>   - numpy=1.21.1=py37h038b26d_0
298c306
<   - packaging=20.9=pyh44b312d_0
---
>   - packaging=21.0=pyhd8ed1ab_0
300,301c308,309
<   - pandas=1.2.4=py37h219a48f_0
<   - pandoc=2.14.0.2=h7f98852_0
---
>   - pandas=1.2.5=py37h219a48f_0
>   - pandoc=2.14.1=h7f98852_0
303,304c311,312
<   - panel=0.11.3=pyhd8ed1ab_0
<   - param=1.10.1=pyhd3deb0d_0
---
>   - panel=0.12.0=pyhd8ed1ab_0
>   - param=1.11.1=pyh6c4a22f_0
308c316
<   - pcre=8.44=he1b5a44_0
---
>   - pcre=8.45=h9c3ff4c_0
313c321
<   - pip=21.1.2=pyhd8ed1ab_0
---
>   - pip=21.1.3=pyhd8ed1ab_0
315c323
<   - plotly=4.14.3=pyh44b312d_0
---
>   - plotly=5.1.0=pyhd8ed1ab_1
323,324c331,332
<   - prompt-toolkit=3.0.18=pyha770c72_0
<   - prompt_toolkit=3.0.18=hd8ed1ab_0
---
>   - prompt-toolkit=3.0.19=pyha770c72_0
>   - prompt_toolkit=3.0.19=hd8ed1ab_0
340c348
<   - pygeos=0.10=py37h2d1e849_0
---
>   - pygeos=0.10.1=py37h2d1e849_0
345c353
<   - pyproj=3.0.1=py37h63c117d_0
---
>   - pyproj=3.1.0=py37h20b8899_3
356c364
<   - python-dateutil=2.8.1=py_0
---
>   - python-dateutil=2.8.2=pyhd8ed1ab_0
360c368
<   - python_abi=3.7=1_cp37m
---
>   - python_abi=3.7=2_cp37m
362c370,371
<   - pyviz_comms=2.0.2=pyhd8ed1ab_0
---
>   - pyu2f=0.1.5=pyhd8ed1ab_0
>   - pyviz_comms=2.1.0=pyhd8ed1ab_0
367c376
<   - qtconsole=5.1.0=pyhd8ed1ab_0
---
>   - qtconsole=5.1.1=pyhd8ed1ab_0
371c380
<   - ravenpy=0.5.2=pyh7f9bfb9_0
---
>   - ravenpy=0.6.0=pyh1bb2064_2
374c383
<   - requests=2.25.1=pyhd3deb0d_0
---
>   - requests=2.26.0=pyhd8ed1ab_0
375a385
>   - requests-unixsocket=0.2.0=py_0
377c387
<   - rioxarray=0.4.1.post0=pyhd8ed1ab_0
---
>   - rioxarray=0.5.0=pyhd8ed1ab_0
380,381c390,391
<   - rtree=0.9.7=py37h0b55af0_1
<   - ruamel.yaml=0.17.9=py37h5e8e339_0
---
>   - rtree=0.9.7=py37h0b55af0_2
>   - ruamel.yaml=0.17.10=py37h5e8e339_0
383c393
<   - scikit-image=0.18.1=py37hdc94413_0
---
>   - scikit-image=0.18.2=py37h219a48f_0
385,386c395,396
<   - scipy=1.6.3=py37h29e03ee_0
<   - send2trash=1.5.0=py_0
---
>   - scipy=1.7.0=py37h29e03ee_1
>   - send2trash=1.7.1=pyhd8ed1ab_0
397,398c407,408
<   - sqlalchemy=1.4.18=py37h5e8e339_0
<   - sqlite=3.35.5=h74cdb3f_0
---
>   - sqlalchemy=1.4.22=py37h5e8e339_0
>   - sqlite=3.36.0=h9cd32fc_0
400a411
>   - tenacity=8.0.1=pyhd8ed1ab_0
403c414
<   - threadpoolctl=2.1.0=pyh5ca1d4c_0
---
>   - threadpoolctl=2.2.0=pyh8a188c0_0
411c422
<   - tqdm=4.61.1=pyhd8ed1ab_0
---
>   - tqdm=4.61.2=pyhd8ed1ab_1
416,417c427,428
<   - tzcode=2021a=h7f98852_1
<   - tzdata=2021a=he74cb21_0
---
>   - tzcode=2021a=h7f98852_2
>   - tzdata=2021a=he74cb21_1
419c430
<   - urllib3=1.26.5=pyhd8ed1ab_0
---
>   - urllib3=1.26.6=pyhd8ed1ab_0
428c439
<   - wget=1.20.1=h22169c7_0
---
>   - wget=1.20.3=ha56f1ee_0
434c445
<   - xclim=0.27.0=pyhd8ed1ab_0
---
>   - xclim=0.28.0=pyhd8ed1ab_0
436,439c447,450
<   - xesmf=0.5.3=pyhd8ed1ab_0
<   - xeus=1.0.3=h7d0c39e_1
<   - xeus-python=0.12.4=py37h52ea871_0
<   - xhistogram=0.2.0=pyhd8ed1ab_0
---
>   - xesmf=0.6.0=pyhd8ed1ab_0
>   - xeus=1.0.4=h7d0c39e_0
>   - xeus-python=0.12.5=py37h4b46df4_2
>   - xhistogram=0.3.0=pyhd8ed1ab_0
452c463
<   - xskillscore=0.0.18=py_1
---
>   - xskillscore=0.0.22=pyhd8ed1ab_0
455c466
<   - yarl=1.6.3=py37h5e8e339_1
---
>   - yarl=1.6.3=py37h5e8e339_2
460c471
<   - zipp=3.4.1=pyhd8ed1ab_0
---
>   - zipp=3.5.0=pyhd8ed1ab_0
468,469c479,480
<     - handcalcs==1.3.0
<     - innerscope==0.2.0
---
>     - handcalcs==1.4.1
>     - innerscope==0.5.0
472d482
<     - nbconvert==5.6.1
```

Full new `conda env export`:
[210723-conda-env-export.yml.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/6870973/210723-conda-env-export.yml.txt)
```
name: birdy
channels:
  - 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.post0=py37h5e8e339_0
  - alembic=1.6.5=pyhd8ed1ab_0
  - alsa-lib=1.2.3=h516909a_0
  - ansi2html=1.6.0=py37h89c1867_1
  - anyio=3.3.0=py37h89c1867_0
  - appdirs=1.4.4=pyh9f0ad1d_0
  - argon2-cffi=20.1.0=py37h5e8e339_2
  - asciitree=0.3.3=py_2
  - async-timeout=3.0.1=py_1000
  - async_generator=1.10=py_0
  - attrs=21.2.0=pyhd8ed1ab_0
  - backcall=0.2.0=pyh9f0ad1d_0
  - backports=1.0=py_2
  - backports.functools_lru_cache=1.6.4=pyhd8ed1ab_0
  - beautifulsoup4=4.9.3=pyhb0f4dca_0
  - birdy=v0.8.0=pyh6c4a22f_1
  - bleach=3.3.1=pyhd8ed1ab_0
  - blinker=1.4=py_1
  - blosc=1.21.0=h9c3ff4c_0
  - bokeh=2.3.3=py37h89c1867_0
  - boltons=21.0.0=pyhd8ed1ab_0
  - boost-cpp=1.74.0=hc6e9bd1_3
  - bottleneck=1.3.2=py37h902c9e0_3
  - branca=0.4.2=pyhd8ed1ab_0
  - brotli=1.0.9=h7f98852_5
  - brotli-bin=1.0.9=h7f98852_5
  - brotli-python=1.0.9=py37hcd2ae1e_5
  - 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=2021.5.30=ha878542_0
  - cached-property=1.5.2=hd8ed1ab_1
  - cached_property=1.5.2=pyha770c72_1
  - cachetools=4.2.2=pyhd8ed1ab_0
  - cairo=1.16.0=h6cf1ce9_1008
  - cartopy=0.19.0.post1=py37h0c48da3_0
  - cdat_info=8.2.1=pyh9f0ad1d_1
  - cdtime=3.1.4=py37h5ad02f4_2
  - cdutil=8.2.1=pyh9f0ad1d_0
  - certifi=2021.5.30=py37h89c1867_0
  - certipy=0.1.3=py_0
  - cf_xarray=0.6.0=pyh6c4a22f_0
  - cffi=1.14.6=py37hc58025e_0
  - cfgrib=0.9.9.0=pyhd8ed1ab_1
  - cfitsio=3.470=hb418390_7
  - cftime=1.5.0=py37h6f94858_0
  - chardet=4.0.0=py37h89c1867_1
  - charls=2.2.0=h9c3ff4c_0
  - charset-normalizer=2.0.0=pyhd8ed1ab_0
  - click=7.1.2=pyh9f0ad1d_0
  - click-plugins=1.1.1=py_0
  - cligj=0.7.2=pyhd8ed1ab_0
  - climpred=2.1.4=pyhd8ed1ab_0
  - clisops=0.6.5=pyh6c4a22f_0
  - cloudpickle=1.6.0=py_0
  - colorama=0.4.4=pyh9f0ad1d_0
  - colorcet=2.0.6=pyhd8ed1ab_0
  - configurable-http-proxy=4.5.0=node15_he6ea98c_0
  - coverage=5.5=py37h5e8e339_0
  - cryptography=3.4.7=py37h5d9358c_0
  - curl=7.77.0=hea6ffbf_0
  - cycler=0.10.0=py_2
  - cytoolz=0.11.0=py37h5e8e339_3
  - dash=1.20.0=pyhd8ed1ab_0
  - dash-core-components=1.16.0=pyhd8ed1ab_0
  - dash-html-components=1.1.3=pyhd8ed1ab_0
  - dash-renderer=1.9.1=pyhd8ed1ab_0
  - dash-table=4.11.3=pyhd8ed1ab_0
  - dask=2021.7.0=pyhd8ed1ab_0
  - dask-core=2021.7.0=pyhd8ed1ab_0
  - dataclasses=0.8=pyhc8e2a94_1
  - datashader=0.13.0=pyh6c4a22f_0
  - datashape=0.5.4=py_1
  - dbus=1.13.6=h48d8840_2
  - debugpy=1.4.0=py37hcd2ae1e_0
  - decorator=5.0.9=pyhd8ed1ab_0
  - defusedxml=0.7.1=pyhd8ed1ab_0
  - descartes=1.1.0=py_4
  - distarray=2.12.2=pyhd8ed1ab_2
  - distributed=2021.7.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.4.1=h9c3ff4c_0
  - fasteners=0.16=pyhd8ed1ab_0
  - fastprogress=1.0.0=py_0
  - ffmpeg=4.2.3=h167e202_0
  - fiona=1.8.18=py37h527b4ca_0
  - flask=2.0.1=pyhd8ed1ab_0
  - flask-compress=1.10.1=pyhd8ed1ab_0
  - fontconfig=2.13.1=hba837de_1005
  - freetype=2.10.4=h0708190_1
  - freexl=1.0.6=h7f98852_0
  - fsspec=2021.7.0=pyhd8ed1ab_0
  - funcsigs=1.0.2=py_3
  - future=0.18.2=py37h89c1867_3
  - g2clib=1.6.3=hdfa6d74_0
  - gcsfs=2021.7.0=pyhd8ed1ab_0
  - gdal=3.1.4=py37h2ec2946_8
  - genutil=8.2.1=py37h161383b_1
  - geopandas=0.9.0=pyhd8ed1ab_1
  - geopandas-base=0.9.0=pyhd8ed1ab_1
  - 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.54.0=h9c3ff4c_1
  - giflib=5.2.1=h36c2ea0_2
  - gitdb=4.0.7=pyhd8ed1ab_0
  - gitpython=3.1.19=pyhd8ed1ab_0
  - glib=2.68.3=h9c3ff4c_0
  - glib-tools=2.68.3=h9c3ff4c_0
  - gmp=6.2.1=h58526e2_0
  - gnutls=3.6.13=h85f3911_1
  - google-auth=1.33.1=pyh6c4a22f_0
  - google-auth-oauthlib=0.4.4=pyhd8ed1ab_0
  - greenlet=1.1.0=py37hcd2ae1e_0
  - gst-plugins-base=1.18.4=hf529b03_2
  - gstreamer=1.18.4=h76c114f_2
  - h5netcdf=0.11.0=pyhd8ed1ab_0
  - h5py=3.3.0=nompi_py37ha3df211_100
  - hdf4=4.2.15=h10796ff_3
  - hdf5=1.10.6=nompi_h6a2412b_1114
  - heapdict=1.0.1=py_0
  - holoviews=1.14.5=pyhd8ed1ab_0
  - hvplot=0.7.3=pyh6c4a22f_0
  - icu=68.1=h58526e2_0
  - idna=3.1=pyhd3deb0d_0
  - imagecodecs=2021.3.31=py37haf4b6ec_0
  - imageio=2.9.0=py_0
  - importlib-metadata=4.6.1=py37h89c1867_0
  - importlib_metadata=4.6.1=hd8ed1ab_0
  - importlib_resources=5.2.0=pyhd8ed1ab_0
  - iniconfig=1.1.1=pyh9f0ad1d_0
  - intake=0.6.2=pyhd8ed1ab_0
  - intake-esm=2021.1.15=pyhd8ed1ab_0
  - intake-geopandas=0.2.4=pyhd8ed1ab_0
  - intake-thredds=2021.6.16=pyhd8ed1ab_0
  - intake-xarray=0.5.0=pyhd8ed1ab_0
  - ipykernel=5.5.5=py37h085eea5_0
  - ipyleaflet=0.14.0=pyhd8ed1ab_1
  - ipython=7.25.0=py37h085eea5_1
  - ipython_genutils=0.2.0=py_1
  - ipywidgets=7.6.3=pyhd3deb0d_0
  - itsdangerous=2.0.1=pyhd8ed1ab_0
  - jasper=1.900.1=h07fcdf6_1006
  - jedi=0.18.0=py37h89c1867_2
  - jinja2=3.0.1=pyhd8ed1ab_0
  - joblib=1.0.1=pyhd8ed1ab_0
  - jpeg=9d=h36c2ea0_0
  - json-c=0.15=h98cffda_0
  - json5=0.9.5=pyh9f0ad1d_0
  - jsonpickle=2.0.0=pyhd8ed1ab_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.1.1=hd8ed1ab_0
  - jupyter_console=6.4.0=pyhd8ed1ab_0
  - jupyter_core=4.7.1=py37h89c1867_0
  - jupyter_server=1.10.1=pyhd8ed1ab_0
  - jupyter_telemetry=0.1.0=pyhd8ed1ab_1
  - jupyterhub=1.4.2=py37h89c1867_0
  - jupyterhub-base=1.4.2=py37h89c1867_0
  - 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.4=pyhd0ecf6b_0
  - jxrlib=1.1=h7f98852_2
  - kealib=1.4.14=hcc255d8_2
  - kiwisolver=1.3.1=py37h2527ec5_1
  - krb5=1.19.1=hcc1bbae_0
  - lame=3.100=h7f98852_1001
  - lazy-object-proxy=1.6.0=py37h5e8e339_0
  - lcms2=2.12=hddcbb42_0
  - ld_impl_linux-64=2.36.1=hea4e1c9_1
  - lerc=2.2.1=h9c3ff4c_0
  - libaec=1.0.5=h9c3ff4c_0
  - libblas=3.8.0=17_openblas
  - libbrotlicommon=1.0.9=h7f98852_5
  - libbrotlidec=1.0.9=h7f98852_5
  - libbrotlienc=1.0.9=h7f98852_5
  - libcblas=3.8.0=17_openblas
  - libcdms=3.1.2=h981a4fd_113
  - libcf=1.0.3=py37heda41dd_109
  - libclang=11.1.0=default_ha53f305_1
  - libcurl=7.77.0=h2574ce0_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=11.1.0=hc902ee8_0
  - libgdal=3.1.4=h38ff51b_8
  - libgfortran-ng=11.1.0=h69a702a_0
  - libgfortran5=11.1.0=h6c583b3_0
  - libglib=2.68.3=h3e27bee_0
  - libgomp=11.1.0=hc902ee8_0
  - libiconv=1.16=h516909a_0
  - libidn2=2.3.2=h7f98852_0
  - libkml=1.3.0=h238a007_1014
  - 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
  - libogg=1.3.4=h7f98852_1
  - libopenblas=0.3.10=pthreads_h4812303_5
  - libopus=1.3.1=h7f98852_1
  - libpng=1.6.37=h21135ba_2
  - libpq=13.3=hd57d9b9_0
  - libprotobuf=3.17.2=h780b84a_1
  - librttopo=1.1.0=h1185371_6
  - libsodium=1.0.18=h36c2ea0_1
  - libspatialindex=1.9.3=h9c3ff4c_4
  - libspatialite=5.0.1=he52d314_3
  - libssh2=1.9.0=ha56f1ee_6
  - libstdcxx-ng=11.1.0=h56837e0_0
  - libtiff=4.2.0=hbd63e13_2
  - libunistring=0.9.10=h7f98852_0
  - libuuid=2.32.1=h7f98852_1000
  - libuv=1.41.1=h7f98852_0
  - libvorbis=1.3.7=h9c3ff4c_0
  - libwebp-base=1.2.0=h7f98852_2
  - libxcb=1.13=h7f98852_1003
  - libxkbcommon=1.0.3=he3ba5ed_0
  - libxml2=2.9.12=h72842e0_0
  - 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.1.1=pyhd8ed1ab_0
  - mapclassify=2.4.2=pyhd8ed1ab_0
  - markdown=3.3.4=pyhd8ed1ab_0
  - markdown-it-py=1.1.0=pyhd8ed1ab_0
  - markupsafe=2.0.1=py37h5e8e339_0
  - matplotlib=3.4.2=py37h89c1867_0
  - matplotlib-base=3.4.2=py37hdd32ed1_0
  - matplotlib-inline=0.1.2=pyhd8ed1ab_2
  - mdit-py-plugins=0.2.8=pyhd8ed1ab_0
  - memory_profiler=0.58.0=py_0
  - mesalib=18.3.1=h590aaf7_0
  - mistune=0.8.4=py37h5e8e339_1004
  - monotonic=1.5=py_0
  - more-itertools=8.8.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.25=ha770c72_0
  - mysql-libs=8.0.25=h935591d_0
  - nbclient=0.5.3=pyhd8ed1ab_0
  - nbconvert=6.1.0=py37h89c1867_0
  - nbdime=2.1.0=py_0
  - nbformat=5.1.3=pyhd8ed1ab_0
  - nbval=0.9.6=pyh9f0ad1d_0
  - nc-time-axis=1.3.1=pyhd8ed1ab_2
  - 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_py37hf7b6e46_102
  - nettle=3.6=he412f7d_0
  - networkx=2.5=py_0
  - nodejs=15.14.0=h92b4a50_0
  - notebook=6.4.0=pyha770c72_0
  - nspr=4.30=h9c3ff4c_0
  - nss=3.67=hb5efdd6_0
  - numba=0.53.1=py37hb11d6e1_1
  - numcodecs=0.8.0=py37hcd2ae1e_0
  - numpy=1.21.1=py37h038b26d_0
  - oauthlib=3.1.1=pyhd8ed1ab_0
  - olefile=0.46=pyh9f0ad1d_1
  - openblas=0.3.10=pthreads_h04b7a96_5
  - openh264=2.1.1=h780b84a_0
  - openjpeg=2.4.0=hb52868f_1
  - openssl=1.1.1k=h7f98852_0
  - ostrich=21.03.16=h4bd325d_1
  - owslib=0.24.1=pyhd8ed1ab_0
  - packaging=21.0=pyhd8ed1ab_0
  - pamela=1.0.0=py_0
  - pandas=1.2.5=py37h219a48f_0
  - pandoc=2.14.1=h7f98852_0
  - pandocfilters=1.4.2=py_1
  - panel=0.12.0=pyhd8ed1ab_0
  - param=1.11.1=pyh6c4a22f_0
  - parso=0.8.2=pyhd8ed1ab_0
  - partd=1.2.0=pyhd8ed1ab_0
  - patsy=0.5.1=py_0
  - pcre=8.45=h9c3ff4c_0
  - pexpect=4.8.0=pyh9f0ad1d_2
  - pickleshare=0.7.5=py_1003
  - pillow=8.2.0=py37h4600e1f_1
  - pint=0.17=pyhd8ed1ab_0
  - pip=21.1.3=pyhd8ed1ab_0
  - pixman=0.40.0=h36c2ea0_0
  - plotly=5.1.0=pyhd8ed1ab_1
  - pluggy=0.13.1=py37h89c1867_4
  - pooch=1.4.0=pyhd8ed1ab_0
  - poppler=0.89.0=h2de54a5_5
  - poppler-data=0.4.10=0
  - postgresql=13.3=h2510834_0
  - proj=7.2.0=h277dcde_2
  - prometheus_client=0.11.0=pyhd8ed1ab_0
  - prompt-toolkit=3.0.19=pyha770c72_0
  - prompt_toolkit=3.0.19=hd8ed1ab_0
  - properscoring=0.1=py_0
  - protobuf=3.17.2=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
  - pyasn1=0.4.8=py_0
  - pyasn1-modules=0.2.7=py_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
  - pydantic=1.8.2=py37h5e8e339_0
  - pydap=3.2.2=pyh9f0ad1d_1001
  - pygeos=0.10.1=py37h2d1e849_0
  - pygments=2.9.0=pyhd8ed1ab_0
  - pyjwt=2.1.0=pyhd8ed1ab_0
  - pyopenssl=20.0.1=pyhd8ed1ab_0
  - pyparsing=2.4.7=pyh9f0ad1d_0
  - pyproj=3.1.0=py37h20b8899_3
  - 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.4=py37h89c1867_0
  - python=3.7.10=hffdb5ce_100_cpython
  - python-dateutil=2.8.2=pyhd8ed1ab_0
  - python-eccodes=2021.03.0=py37h6f94858_1
  - python-editor=1.0.4=py_0
  - python-json-logger=2.0.1=pyh9f0ad1d_0
  - python_abi=3.7=2_cp37m
  - pytz=2021.1=pyhd8ed1ab_0
  - pyu2f=0.1.5=pyhd8ed1ab_0
  - pyviz_comms=2.1.0=pyhd8ed1ab_0
  - pywavelets=1.1.1=py37h902c9e0_3
  - pyyaml=5.4.1=py37h5e8e339_0
  - pyzmq=22.1.0=py37h336d617_0
  - qt=5.12.9=hda022c4_4
  - qtconsole=5.1.1=pyhd8ed1ab_0
  - qtpy=1.9.0=py_0
  - rasterio=1.2.1=py37ha549118_0
  - raven-hydro=3.0.4.322=h516393e_0
  - ravenpy=0.6.0=pyh1bb2064_2
  - readline=8.1=h46c0cb4_0
  - regionmask=0.6.2=pyhd8ed1ab_0
  - requests=2.26.0=pyhd8ed1ab_0
  - requests-oauthlib=1.3.0=pyh9f0ad1d_0
  - requests-unixsocket=0.2.0=py_0
  - retrying=1.3.3=py_2
  - rioxarray=0.5.0=pyhd8ed1ab_0
  - roocs-utils=0.4.2=pyh6c4a22f_0
  - rsa=4.7.2=pyh44b312d_0
  - rtree=0.9.7=py37h0b55af0_2
  - ruamel.yaml=0.17.10=py37h5e8e339_0
  - ruamel.yaml.clib=0.2.2=py37h5e8e339_2
  - scikit-image=0.18.2=py37h219a48f_0
  - scikit-learn=0.24.2=py37h18a542f_0
  - scipy=1.7.0=py37h29e03ee_1
  - send2trash=1.7.1=pyhd8ed1ab_0
  - setuptools=49.6.0=py37h89c1867_3
  - shapely=1.7.1=py37h2d1e849_5
  - siphon=0.9=py37h89c1867_0
  - six=1.16.0=pyh6c4a22f_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.4.0=pyhd8ed1ab_0
  - soupsieve=2.0.1=py_1
  - sqlalchemy=1.4.22=py37h5e8e339_0
  - sqlite=3.36.0=h9cd32fc_0
  - statsmodels=0.12.2=py37h902c9e0_0
  - tblib=1.7.0=pyhd8ed1ab_0
  - tenacity=8.0.1=pyhd8ed1ab_0
  - terminado=0.10.1=py37h89c1867_0
  - testpath=0.5.0=pyhd8ed1ab_0
  - threadpoolctl=2.2.0=pyh8a188c0_0
  - threddsclient=0.4.2=py_0
  - tifffile=2021.4.8=pyhd8ed1ab_0
  - tiledb=2.2.9=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.61.2=pyhd8ed1ab_1
  - traitlets=5.0.5=py_0
  - traittypes=0.2.1=pyh9f0ad1d_2
  - typing-extensions=3.10.0.0=hd8ed1ab_0
  - typing_extensions=3.10.0.0=pyha770c72_0
  - tzcode=2021a=h7f98852_2
  - tzdata=2021a=he74cb21_1
  - udunits2=2.2.27.27=h975c496_1
  - urllib3=1.26.6=pyhd8ed1ab_0
  - vcs=8.2.1=pyh9f0ad1d_0
  - voila=0.2.10=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
  - websocket-client=0.57.0=py37h89c1867_4
  - werkzeug=2.0.1=pyhd8ed1ab_0
  - wget=1.20.3=ha56f1ee_0
  - wheel=0.36.2=pyhd3deb0d_0
  - widgetsnbextension=3.5.1=py37h89c1867_4
  - wrapt=1.12.1=py37h5e8e339_3
  - x264=1!152.20180806=h14c3975_0
  - xarray=0.18.2=pyhd8ed1ab_0
  - xclim=0.28.0=pyhd8ed1ab_0
  - xerces-c=3.2.3=h9d8b166_2
  - xesmf=0.6.0=pyhd8ed1ab_0
  - xeus=1.0.4=h7d0c39e_0
  - xeus-python=0.12.5=py37h4b46df4_2
  - xhistogram=0.3.0=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.2=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.22=pyhd8ed1ab_0
  - xz=5.2.5=h516909a_1
  - yaml=0.2.5=h516909a_0
  - yarl=1.6.3=py37h5e8e339_2
  - zarr=2.8.3=pyhd8ed1ab_0
  - zeromq=4.3.4=h9c3ff4c_0
  - zfp=0.5.5=h9c3ff4c_5
  - zict=2.0.0=py_0
  - zipp=3.5.0=pyhd8ed1ab_0
  - zlib=1.2.11=h516909a_1010
  - zstd=1.4.9=ha95c52a_0
  - pip:
    - astunparse==1.6.3
    - cdms2==3.1.5
    - colour==0.1.5
    - geojson==2.5.0
    - handcalcs==1.4.1
    - innerscope==0.5.0
    - ipython-blocking==0.2.1
    - jupyternotify==0.1.15
    - nbresuse==0.4.0
    - pixiedust==1.1.19
    - pymetalink==6.2
    - pytest-tornasync==0.6.0.post2
    - regrid2==3.1.5
    - requests-magpie==0.1.1
prefix: /opt/conda/envs/birdy
```
tlvu added a commit to Ouranosinc/PAVICS-e2e-workflow-tests that referenced this issue Jul 26, 2021
tlvu added a commit to Ouranosinc/PAVICS-e2e-workflow-tests that referenced this issue Jul 29, 2021
docker: update to JupyterLab v3 and fix broken jupyterlab-system-monitor plugin

# Overview

JupyterLab v3 was available since January 2021 but we had to pin to v2 since many of the plugins we use were broken at the time for v3.

Fast forward 7 months later, only the Google Drive plugin still do not support JupyterLab v3 so we decided to drop it since it was only used by one single user (`ls -larth  /data/jupyterhub_user_data/*/.home/.jupyter/lab/user-settings/@jupyterlab/google-drive /dev/null` shows who uses it).  We have not enabled the system-wide Google Drive config due to security concern so each user had to configure it themselves separately.

Staying on JupyterLab v2 caused us the reverse problem, some plugins stopped working with v2, example the jupyterlab-system-monitor one.  That one is becoming more crucial as we have more and more users and we would like users to be aware of their resource consumptions on the system.

This PR fixes #83, the jupyterlab-system-monitor problem.

## Changes

- Update to JupyterLab v3
- Update install steps for all plugins to be compatible with JupyterLab v3
- Drop Google Drive plugin since not compatible with v3
- Fix jupyterlab-system-monitor plugin, was broken with v2
- Unpin pandas as xarray issue pydata/xarray/issues/5588 fixed
- Picked up latest RavenPy 0.7.0
- Relevant packages changes:
```diff
<   - jupyterlab=2.2.9=pyhd8ed1ab_0
>   - jupyterlab=3.1.0=pyhd8ed1ab_0

<   - jupyterlab_server=1.2.0=py_0
>   - jupyterlab_server=2.6.1=pyhd8ed1ab_0

<   - jupyter-archive=2.2.0=pyhd8ed1ab_0
>   - jupyter-archive=3.0.1=pyhd8ed1ab_0

<   - jupyter_bokeh=2.0.4=pyhd8ed1ab_0
>   - jupyter_bokeh=3.0.2=pyhd8ed1ab_0

<   - jupyterlab-git=0.24.0=pyhd8ed1ab_0
>   - jupyterlab-git=0.31.0=pyhd8ed1ab_0

<   - nbdime=2.1.0=py_0
>   - nbdime=3.1.0=pyhd8ed1ab_0

# Pip to Conda package
<     - nbresuse==0.4.0  
>   - nbresuse=0.4.0=pyhd8ed1ab_0

>   - nbclassic=0.3.1=pyhd8ed1ab_1

>   - jupyterlab-system-monitor=0.8.0=pyhd8ed1ab_1
>   - jupyter-resource-usage=0.5.1=pyhd8ed1ab_0
>   - jupyterlab-topbar=0.6.1=pyhd8ed1ab_2 
>     - jupyterlab-logout=0.5.0

<   - jupyter_conda=5.1.1=hd8ed1ab_0

<   - ravenpy=0.6.0=pyh1bb2064_2
>   - ravenpy=0.7.0=pyh1bb2064_0 

<   - pandas=1.2.5=py37h219a48f_0
>   - pandas=1.3.1=py37h219a48f_0

<   - xarray=0.18.2=pyhd8ed1ab_0
>   - xarray=0.19.0=pyhd8ed1ab_1

<   - dask=2021.7.0=pyhd8ed1ab_0
>   - dask=2021.7.1=pyhd8ed1ab_0

<   - regionmask=0.6.2=pyhd8ed1ab_0
>   - regionmask=0.7.0=pyhd8ed1ab_0
```

## Additional Information

Screenshot showing differences between v2 vs v3 and the working jupyterlab-system-monitor plugin.

![Screenshot from 2021-07-28 14-10-33](https://user-images.githubusercontent.com/11966697/127380391-7f3a6ad4-25c6-4a8b-ac01-8c8d9633d09c.png)

Bokeh and pyviz testing by running `ClimateDataAnalysis-5Visualization.ipynb` on the old and new Jupyter env and manually comparing the graphics generated.  They look similar.

Jenkins build all passed https://daccs-jenkins.crim.ca/job/PAVICS-e2e-workflow-tests/job/update-to-jupyterlab-v3/7/console (CRIM Jenkins)
Notebooks fixes required for the above passing Jenkins build:
* Ouranosinc/pavics-sdi#224
* bird-house/finch#196
* Ouranosinc/PAVICS-landing#30

Jenkins build for Raven nb, all passed: http://jenkins.ouranos.ca/job/PAVICS-e2e-workflow-tests/job/update-to-jupyterlab-v3/5/console

Matching PR to deploy this new Jupyter env to PAVICS: bird-house/birdhouse-deploy#185

Full diff of `conda env export`:
[210723-210728-conda-env-export.diff.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/6896271/210723-210728-conda-env-export.diff.txt)
```diff
20a21
>   - babel=2.9.1=pyh44b312d_0
71c72
<   - curl=7.77.0=hea6ffbf_0
---
>   - curl=7.78.0=hea6ffbf_0
74,76c75,77
<   - dash=1.20.0=pyhd8ed1ab_0
<   - dash-core-components=1.16.0=pyhd8ed1ab_0
<   - dash-html-components=1.1.3=pyhd8ed1ab_0
---
>   - dash=1.21.0=pyhd8ed1ab_0
>   - dash-core-components=1.17.1=pyhd8ed1ab_0
>   - dash-html-components=1.1.4=pyhd8ed1ab_0
78,80c79,81
<   - dash-table=4.11.3=pyhd8ed1ab_0
<   - dask=2021.7.0=pyhd8ed1ab_0
<   - dask-core=2021.7.0=pyhd8ed1ab_0
---
>   - dash-table=4.12.0=pyhd8ed1ab_0
>   - dask=2021.7.1=pyhd8ed1ab_0
>   - dask-core=2021.7.1=pyhd8ed1ab_0
85c86
<   - debugpy=1.4.0=py37hcd2ae1e_0
---
>   - debugpy=1.4.1=py37hcd2ae1e_0
90c91
<   - distributed=2021.7.0=py37h89c1867_0
---
>   - distributed=2021.7.1=py37h89c1867_0
127c128
<   - gitpython=3.1.19=pyhd8ed1ab_0
---
>   - gitpython=3.1.20=pyhd8ed1ab_0
138a140
>   - haversine=2.3.1=pyhd8ed1ab_0
173c175
<   - jupyter-archive=2.2.0=pyhd8ed1ab_0
---
>   - jupyter-archive=3.0.1=pyhd8ed1ab_0
175c177,179
<   - jupyter_bokeh=2.0.4=pyhd8ed1ab_0
---
>   - jupyter-resource-usage=0.5.1=pyhd8ed1ab_0
>   - jupyter-server-mathjax=0.2.3=pyhd8ed1ab_0
>   - jupyter_bokeh=3.0.2=pyhd8ed1ab_0
177d180
<   - jupyter_conda=5.1.1=hd8ed1ab_0
184,185c187,190
<   - jupyterlab=2.2.9=pyhd8ed1ab_0
<   - jupyterlab-git=0.24.0=pyhd8ed1ab_0
---
>   - jupyterlab=3.1.0=pyhd8ed1ab_0
>   - jupyterlab-git=0.31.0=pyhd8ed1ab_0
>   - jupyterlab-system-monitor=0.8.0=pyhd8ed1ab_1
>   - jupyterlab-topbar=0.6.1=pyhd8ed1ab_2
187c192
<   - jupyterlab_server=1.2.0=py_0
---
>   - jupyterlab_server=2.6.1=pyhd8ed1ab_0
193c198
<   - krb5=1.19.1=hcc1bbae_0
---
>   - krb5=1.19.2=hcc1bbae_0
197c202
<   - ld_impl_linux-64=2.36.1=hea4e1c9_1
---
>   - ld_impl_linux-64=2.36.1=hea4e1c9_2
208c213
<   - libcurl=7.77.0=h2574ce0_0
---
>   - libcurl=7.78.0=h2574ce0_0
217c222
<   - libgcc-ng=11.1.0=hc902ee8_0
---
>   - libgcc-ng=11.1.0=hc902ee8_2
222c227
<   - libgomp=11.1.0=hc902ee8_0
---
>   - libgomp=11.1.0=hc902ee8_2
242c247
<   - libstdcxx-ng=11.1.0=h56837e0_0
---
>   - libstdcxx-ng=11.1.0=h56837e0_2
260c265
<   - mapclassify=2.4.2=pyhd8ed1ab_0
---
>   - mapclassify=2.4.3=pyhd8ed1ab_0
278a284
>   - nbclassic=0.3.1=pyhd8ed1ab_1
281c287
<   - nbdime=2.1.0=py_0
---
>   - nbdime=3.1.0=pyhd8ed1ab_0
282a289
>   - nbresuse=0.4.0=pyhd8ed1ab_0
308c315
<   - pandas=1.2.5=py37h219a48f_0
---
>   - pandas=1.3.1=py37h219a48f_0
321c328
<   - pip=21.1.3=pyhd8ed1ab_0
---
>   - pip=21.2.1=pyhd8ed1ab_0
380c387
<   - ravenpy=0.6.0=pyh1bb2064_2
---
>   - ravenpy=0.7.0=pyh1bb2064_0
382c389
<   - regionmask=0.6.2=pyhd8ed1ab_0
---
>   - regionmask=0.7.0=pyhd8ed1ab_0
444c451
<   - xarray=0.18.2=pyhd8ed1ab_0
---
>   - xarray=0.19.0=pyhd8ed1ab_1
481a489
>     - jupyterlab-logout==0.5.0
483d490
<     - nbresuse==0.4.0
```

Full new `conda env export`:
[210728-conda-env-export.yml.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/6896274/210728-conda-env-export.yml.txt)
```
name: birdy
channels:
  - 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.post0=py37h5e8e339_0
  - alembic=1.6.5=pyhd8ed1ab_0
  - alsa-lib=1.2.3=h516909a_0
  - ansi2html=1.6.0=py37h89c1867_1
  - anyio=3.3.0=py37h89c1867_0
  - appdirs=1.4.4=pyh9f0ad1d_0
  - argon2-cffi=20.1.0=py37h5e8e339_2
  - asciitree=0.3.3=py_2
  - async-timeout=3.0.1=py_1000
  - async_generator=1.10=py_0
  - attrs=21.2.0=pyhd8ed1ab_0
  - babel=2.9.1=pyh44b312d_0
  - backcall=0.2.0=pyh9f0ad1d_0
  - backports=1.0=py_2
  - backports.functools_lru_cache=1.6.4=pyhd8ed1ab_0
  - beautifulsoup4=4.9.3=pyhb0f4dca_0
  - birdy=v0.8.0=pyh6c4a22f_1
  - bleach=3.3.1=pyhd8ed1ab_0
  - blinker=1.4=py_1
  - blosc=1.21.0=h9c3ff4c_0
  - bokeh=2.3.3=py37h89c1867_0
  - boltons=21.0.0=pyhd8ed1ab_0
  - boost-cpp=1.74.0=hc6e9bd1_3
  - bottleneck=1.3.2=py37h902c9e0_3
  - branca=0.4.2=pyhd8ed1ab_0
  - brotli=1.0.9=h7f98852_5
  - brotli-bin=1.0.9=h7f98852_5
  - brotli-python=1.0.9=py37hcd2ae1e_5
  - 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=2021.5.30=ha878542_0
  - cached-property=1.5.2=hd8ed1ab_1
  - cached_property=1.5.2=pyha770c72_1
  - cachetools=4.2.2=pyhd8ed1ab_0
  - cairo=1.16.0=h6cf1ce9_1008
  - cartopy=0.19.0.post1=py37h0c48da3_0
  - cdat_info=8.2.1=pyh9f0ad1d_1
  - cdtime=3.1.4=py37h5ad02f4_2
  - cdutil=8.2.1=pyh9f0ad1d_0
  - certifi=2021.5.30=py37h89c1867_0
  - certipy=0.1.3=py_0
  - cf_xarray=0.6.0=pyh6c4a22f_0
  - cffi=1.14.6=py37hc58025e_0
  - cfgrib=0.9.9.0=pyhd8ed1ab_1
  - cfitsio=3.470=hb418390_7
  - cftime=1.5.0=py37h6f94858_0
  - chardet=4.0.0=py37h89c1867_1
  - charls=2.2.0=h9c3ff4c_0
  - charset-normalizer=2.0.0=pyhd8ed1ab_0
  - click=7.1.2=pyh9f0ad1d_0
  - click-plugins=1.1.1=py_0
  - cligj=0.7.2=pyhd8ed1ab_0
  - climpred=2.1.4=pyhd8ed1ab_0
  - clisops=0.6.5=pyh6c4a22f_0
  - cloudpickle=1.6.0=py_0
  - colorama=0.4.4=pyh9f0ad1d_0
  - colorcet=2.0.6=pyhd8ed1ab_0
  - configurable-http-proxy=4.5.0=node15_he6ea98c_0
  - coverage=5.5=py37h5e8e339_0
  - cryptography=3.4.7=py37h5d9358c_0
  - curl=7.78.0=hea6ffbf_0
  - cycler=0.10.0=py_2
  - cytoolz=0.11.0=py37h5e8e339_3
  - dash=1.21.0=pyhd8ed1ab_0
  - dash-core-components=1.17.1=pyhd8ed1ab_0
  - dash-html-components=1.1.4=pyhd8ed1ab_0
  - dash-renderer=1.9.1=pyhd8ed1ab_0
  - dash-table=4.12.0=pyhd8ed1ab_0
  - dask=2021.7.1=pyhd8ed1ab_0
  - dask-core=2021.7.1=pyhd8ed1ab_0
  - dataclasses=0.8=pyhc8e2a94_1
  - datashader=0.13.0=pyh6c4a22f_0
  - datashape=0.5.4=py_1
  - dbus=1.13.6=h48d8840_2
  - debugpy=1.4.1=py37hcd2ae1e_0
  - decorator=5.0.9=pyhd8ed1ab_0
  - defusedxml=0.7.1=pyhd8ed1ab_0
  - descartes=1.1.0=py_4
  - distarray=2.12.2=pyhd8ed1ab_2
  - distributed=2021.7.1=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.4.1=h9c3ff4c_0
  - fasteners=0.16=pyhd8ed1ab_0
  - fastprogress=1.0.0=py_0
  - ffmpeg=4.2.3=h167e202_0
  - fiona=1.8.18=py37h527b4ca_0
  - flask=2.0.1=pyhd8ed1ab_0
  - flask-compress=1.10.1=pyhd8ed1ab_0
  - fontconfig=2.13.1=hba837de_1005
  - freetype=2.10.4=h0708190_1
  - freexl=1.0.6=h7f98852_0
  - fsspec=2021.7.0=pyhd8ed1ab_0
  - funcsigs=1.0.2=py_3
  - future=0.18.2=py37h89c1867_3
  - g2clib=1.6.3=hdfa6d74_0
  - gcsfs=2021.7.0=pyhd8ed1ab_0
  - gdal=3.1.4=py37h2ec2946_8
  - genutil=8.2.1=py37h161383b_1
  - geopandas=0.9.0=pyhd8ed1ab_1
  - geopandas-base=0.9.0=pyhd8ed1ab_1
  - 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.54.0=h9c3ff4c_1
  - giflib=5.2.1=h36c2ea0_2
  - gitdb=4.0.7=pyhd8ed1ab_0
  - gitpython=3.1.20=pyhd8ed1ab_0
  - glib=2.68.3=h9c3ff4c_0
  - glib-tools=2.68.3=h9c3ff4c_0
  - gmp=6.2.1=h58526e2_0
  - gnutls=3.6.13=h85f3911_1
  - google-auth=1.33.1=pyh6c4a22f_0
  - google-auth-oauthlib=0.4.4=pyhd8ed1ab_0
  - greenlet=1.1.0=py37hcd2ae1e_0
  - gst-plugins-base=1.18.4=hf529b03_2
  - gstreamer=1.18.4=h76c114f_2
  - h5netcdf=0.11.0=pyhd8ed1ab_0
  - h5py=3.3.0=nompi_py37ha3df211_100
  - haversine=2.3.1=pyhd8ed1ab_0
  - hdf4=4.2.15=h10796ff_3
  - hdf5=1.10.6=nompi_h6a2412b_1114
  - heapdict=1.0.1=py_0
  - holoviews=1.14.5=pyhd8ed1ab_0
  - hvplot=0.7.3=pyh6c4a22f_0
  - icu=68.1=h58526e2_0
  - idna=3.1=pyhd3deb0d_0
  - imagecodecs=2021.3.31=py37haf4b6ec_0
  - imageio=2.9.0=py_0
  - importlib-metadata=4.6.1=py37h89c1867_0
  - importlib_metadata=4.6.1=hd8ed1ab_0
  - importlib_resources=5.2.0=pyhd8ed1ab_0
  - iniconfig=1.1.1=pyh9f0ad1d_0
  - intake=0.6.2=pyhd8ed1ab_0
  - intake-esm=2021.1.15=pyhd8ed1ab_0
  - intake-geopandas=0.2.4=pyhd8ed1ab_0
  - intake-thredds=2021.6.16=pyhd8ed1ab_0
  - intake-xarray=0.5.0=pyhd8ed1ab_0
  - ipykernel=5.5.5=py37h085eea5_0
  - ipyleaflet=0.14.0=pyhd8ed1ab_1
  - ipython=7.25.0=py37h085eea5_1
  - ipython_genutils=0.2.0=py_1
  - ipywidgets=7.6.3=pyhd3deb0d_0
  - itsdangerous=2.0.1=pyhd8ed1ab_0
  - jasper=1.900.1=h07fcdf6_1006
  - jedi=0.18.0=py37h89c1867_2
  - jinja2=3.0.1=pyhd8ed1ab_0
  - joblib=1.0.1=pyhd8ed1ab_0
  - jpeg=9d=h36c2ea0_0
  - json-c=0.15=h98cffda_0
  - json5=0.9.5=pyh9f0ad1d_0
  - jsonpickle=2.0.0=pyhd8ed1ab_0
  - jsonschema=3.2.0=pyhd8ed1ab_3
  - jupyter=1.0.0=py37h89c1867_6
  - jupyter-archive=3.0.1=pyhd8ed1ab_0
  - jupyter-dash=0.4.0=pyhd8ed1ab_0
  - jupyter-resource-usage=0.5.1=pyhd8ed1ab_0
  - jupyter-server-mathjax=0.2.3=pyhd8ed1ab_0
  - jupyter_bokeh=3.0.2=pyhd8ed1ab_0
  - jupyter_client=6.1.12=pyhd8ed1ab_0
  - jupyter_console=6.4.0=pyhd8ed1ab_0
  - jupyter_core=4.7.1=py37h89c1867_0
  - jupyter_server=1.10.1=pyhd8ed1ab_0
  - jupyter_telemetry=0.1.0=pyhd8ed1ab_1
  - jupyterhub=1.4.2=py37h89c1867_0
  - jupyterhub-base=1.4.2=py37h89c1867_0
  - jupyterlab=3.1.0=pyhd8ed1ab_0
  - jupyterlab-git=0.31.0=pyhd8ed1ab_0
  - jupyterlab-system-monitor=0.8.0=pyhd8ed1ab_1
  - jupyterlab-topbar=0.6.1=pyhd8ed1ab_2
  - jupyterlab_pygments=0.1.2=pyh9f0ad1d_0
  - jupyterlab_server=2.6.1=pyhd8ed1ab_0
  - jupyterlab_widgets=1.0.0=pyhd8ed1ab_1
  - jupytext=1.11.4=pyhd0ecf6b_0
  - jxrlib=1.1=h7f98852_2
  - kealib=1.4.14=hcc255d8_2
  - kiwisolver=1.3.1=py37h2527ec5_1
  - krb5=1.19.2=hcc1bbae_0
  - lame=3.100=h7f98852_1001
  - lazy-object-proxy=1.6.0=py37h5e8e339_0
  - lcms2=2.12=hddcbb42_0
  - ld_impl_linux-64=2.36.1=hea4e1c9_2
  - lerc=2.2.1=h9c3ff4c_0
  - libaec=1.0.5=h9c3ff4c_0
  - libblas=3.8.0=17_openblas
  - libbrotlicommon=1.0.9=h7f98852_5
  - libbrotlidec=1.0.9=h7f98852_5
  - libbrotlienc=1.0.9=h7f98852_5
  - libcblas=3.8.0=17_openblas
  - libcdms=3.1.2=h981a4fd_113
  - libcf=1.0.3=py37heda41dd_109
  - libclang=11.1.0=default_ha53f305_1
  - libcurl=7.78.0=h2574ce0_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=11.1.0=hc902ee8_2
  - libgdal=3.1.4=h38ff51b_8
  - libgfortran-ng=11.1.0=h69a702a_0
  - libgfortran5=11.1.0=h6c583b3_0
  - libglib=2.68.3=h3e27bee_0
  - libgomp=11.1.0=hc902ee8_2
  - libiconv=1.16=h516909a_0
  - libidn2=2.3.2=h7f98852_0
  - libkml=1.3.0=h238a007_1014
  - 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
  - libogg=1.3.4=h7f98852_1
  - libopenblas=0.3.10=pthreads_h4812303_5
  - libopus=1.3.1=h7f98852_1
  - libpng=1.6.37=h21135ba_2
  - libpq=13.3=hd57d9b9_0
  - libprotobuf=3.17.2=h780b84a_1
  - librttopo=1.1.0=h1185371_6
  - libsodium=1.0.18=h36c2ea0_1
  - libspatialindex=1.9.3=h9c3ff4c_4
  - libspatialite=5.0.1=he52d314_3
  - libssh2=1.9.0=ha56f1ee_6
  - libstdcxx-ng=11.1.0=h56837e0_2
  - libtiff=4.2.0=hbd63e13_2
  - libunistring=0.9.10=h7f98852_0
  - libuuid=2.32.1=h7f98852_1000
  - libuv=1.41.1=h7f98852_0
  - libvorbis=1.3.7=h9c3ff4c_0
  - libwebp-base=1.2.0=h7f98852_2
  - libxcb=1.13=h7f98852_1003
  - libxkbcommon=1.0.3=he3ba5ed_0
  - libxml2=2.9.12=h72842e0_0
  - 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.1.1=pyhd8ed1ab_0
  - mapclassify=2.4.3=pyhd8ed1ab_0
  - markdown=3.3.4=pyhd8ed1ab_0
  - markdown-it-py=1.1.0=pyhd8ed1ab_0
  - markupsafe=2.0.1=py37h5e8e339_0
  - matplotlib=3.4.2=py37h89c1867_0
  - matplotlib-base=3.4.2=py37hdd32ed1_0
  - matplotlib-inline=0.1.2=pyhd8ed1ab_2
  - mdit-py-plugins=0.2.8=pyhd8ed1ab_0
  - memory_profiler=0.58.0=py_0
  - mesalib=18.3.1=h590aaf7_0
  - mistune=0.8.4=py37h5e8e339_1004
  - monotonic=1.5=py_0
  - more-itertools=8.8.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.25=ha770c72_0
  - mysql-libs=8.0.25=h935591d_0
  - nbclassic=0.3.1=pyhd8ed1ab_1
  - nbclient=0.5.3=pyhd8ed1ab_0
  - nbconvert=6.1.0=py37h89c1867_0
  - nbdime=3.1.0=pyhd8ed1ab_0
  - nbformat=5.1.3=pyhd8ed1ab_0
  - nbresuse=0.4.0=pyhd8ed1ab_0
  - nbval=0.9.6=pyh9f0ad1d_0
  - nc-time-axis=1.3.1=pyhd8ed1ab_2
  - 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_py37hf7b6e46_102
  - nettle=3.6=he412f7d_0
  - networkx=2.5=py_0
  - nodejs=15.14.0=h92b4a50_0
  - notebook=6.4.0=pyha770c72_0
  - nspr=4.30=h9c3ff4c_0
  - nss=3.67=hb5efdd6_0
  - numba=0.53.1=py37hb11d6e1_1
  - numcodecs=0.8.0=py37hcd2ae1e_0
  - numpy=1.21.1=py37h038b26d_0
  - oauthlib=3.1.1=pyhd8ed1ab_0
  - olefile=0.46=pyh9f0ad1d_1
  - openblas=0.3.10=pthreads_h04b7a96_5
  - openh264=2.1.1=h780b84a_0
  - openjpeg=2.4.0=hb52868f_1
  - openssl=1.1.1k=h7f98852_0
  - ostrich=21.03.16=h4bd325d_1
  - owslib=0.24.1=pyhd8ed1ab_0
  - packaging=21.0=pyhd8ed1ab_0
  - pamela=1.0.0=py_0
  - pandas=1.3.1=py37h219a48f_0
  - pandoc=2.14.1=h7f98852_0
  - pandocfilters=1.4.2=py_1
  - panel=0.12.0=pyhd8ed1ab_0
  - param=1.11.1=pyh6c4a22f_0
  - parso=0.8.2=pyhd8ed1ab_0
  - partd=1.2.0=pyhd8ed1ab_0
  - patsy=0.5.1=py_0
  - pcre=8.45=h9c3ff4c_0
  - pexpect=4.8.0=pyh9f0ad1d_2
  - pickleshare=0.7.5=py_1003
  - pillow=8.2.0=py37h4600e1f_1
  - pint=0.17=pyhd8ed1ab_0
  - pip=21.2.1=pyhd8ed1ab_0
  - pixman=0.40.0=h36c2ea0_0
  - plotly=5.1.0=pyhd8ed1ab_1
  - pluggy=0.13.1=py37h89c1867_4
  - pooch=1.4.0=pyhd8ed1ab_0
  - poppler=0.89.0=h2de54a5_5
  - poppler-data=0.4.10=0
  - postgresql=13.3=h2510834_0
  - proj=7.2.0=h277dcde_2
  - prometheus_client=0.11.0=pyhd8ed1ab_0
  - prompt-toolkit=3.0.19=pyha770c72_0
  - prompt_toolkit=3.0.19=hd8ed1ab_0
  - properscoring=0.1=py_0
  - protobuf=3.17.2=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
  - pyasn1=0.4.8=py_0
  - pyasn1-modules=0.2.7=py_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
  - pydantic=1.8.2=py37h5e8e339_0
  - pydap=3.2.2=pyh9f0ad1d_1001
  - pygeos=0.10.1=py37h2d1e849_0
  - pygments=2.9.0=pyhd8ed1ab_0
  - pyjwt=2.1.0=pyhd8ed1ab_0
  - pyopenssl=20.0.1=pyhd8ed1ab_0
  - pyparsing=2.4.7=pyh9f0ad1d_0
  - pyproj=3.1.0=py37h20b8899_3
  - 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.4=py37h89c1867_0
  - python=3.7.10=hffdb5ce_100_cpython
  - python-dateutil=2.8.2=pyhd8ed1ab_0
  - python-eccodes=2021.03.0=py37h6f94858_1
  - python-editor=1.0.4=py_0
  - python-json-logger=2.0.1=pyh9f0ad1d_0
  - python_abi=3.7=2_cp37m
  - pytz=2021.1=pyhd8ed1ab_0
  - pyu2f=0.1.5=pyhd8ed1ab_0
  - pyviz_comms=2.1.0=pyhd8ed1ab_0
  - pywavelets=1.1.1=py37h902c9e0_3
  - pyyaml=5.4.1=py37h5e8e339_0
  - pyzmq=22.1.0=py37h336d617_0
  - qt=5.12.9=hda022c4_4
  - qtconsole=5.1.1=pyhd8ed1ab_0
  - qtpy=1.9.0=py_0
  - rasterio=1.2.1=py37ha549118_0
  - raven-hydro=3.0.4.322=h516393e_0
  - ravenpy=0.7.0=pyh1bb2064_0
  - readline=8.1=h46c0cb4_0
  - regionmask=0.7.0=pyhd8ed1ab_0
  - requests=2.26.0=pyhd8ed1ab_0
  - requests-oauthlib=1.3.0=pyh9f0ad1d_0
  - requests-unixsocket=0.2.0=py_0
  - retrying=1.3.3=py_2
  - rioxarray=0.5.0=pyhd8ed1ab_0
  - roocs-utils=0.4.2=pyh6c4a22f_0
  - rsa=4.7.2=pyh44b312d_0
  - rtree=0.9.7=py37h0b55af0_2
  - ruamel.yaml=0.17.10=py37h5e8e339_0
  - ruamel.yaml.clib=0.2.2=py37h5e8e339_2
  - scikit-image=0.18.2=py37h219a48f_0
  - scikit-learn=0.24.2=py37h18a542f_0
  - scipy=1.7.0=py37h29e03ee_1
  - send2trash=1.7.1=pyhd8ed1ab_0
  - setuptools=49.6.0=py37h89c1867_3
  - shapely=1.7.1=py37h2d1e849_5
  - siphon=0.9=py37h89c1867_0
  - six=1.16.0=pyh6c4a22f_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.4.0=pyhd8ed1ab_0
  - soupsieve=2.0.1=py_1
  - sqlalchemy=1.4.22=py37h5e8e339_0
  - sqlite=3.36.0=h9cd32fc_0
  - statsmodels=0.12.2=py37h902c9e0_0
  - tblib=1.7.0=pyhd8ed1ab_0
  - tenacity=8.0.1=pyhd8ed1ab_0
  - terminado=0.10.1=py37h89c1867_0
  - testpath=0.5.0=pyhd8ed1ab_0
  - threadpoolctl=2.2.0=pyh8a188c0_0
  - threddsclient=0.4.2=py_0
  - tifffile=2021.4.8=pyhd8ed1ab_0
  - tiledb=2.2.9=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.61.2=pyhd8ed1ab_1
  - traitlets=5.0.5=py_0
  - traittypes=0.2.1=pyh9f0ad1d_2
  - typing-extensions=3.10.0.0=hd8ed1ab_0
  - typing_extensions=3.10.0.0=pyha770c72_0
  - tzcode=2021a=h7f98852_2
  - tzdata=2021a=he74cb21_1
  - udunits2=2.2.27.27=h975c496_1
  - urllib3=1.26.6=pyhd8ed1ab_0
  - vcs=8.2.1=pyh9f0ad1d_0
  - voila=0.2.10=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
  - websocket-client=0.57.0=py37h89c1867_4
  - werkzeug=2.0.1=pyhd8ed1ab_0
  - wget=1.20.3=ha56f1ee_0
  - wheel=0.36.2=pyhd3deb0d_0
  - widgetsnbextension=3.5.1=py37h89c1867_4
  - wrapt=1.12.1=py37h5e8e339_3
  - x264=1!152.20180806=h14c3975_0
  - xarray=0.19.0=pyhd8ed1ab_1
  - xclim=0.28.0=pyhd8ed1ab_0
  - xerces-c=3.2.3=h9d8b166_2
  - xesmf=0.6.0=pyhd8ed1ab_0
  - xeus=1.0.4=h7d0c39e_0
  - xeus-python=0.12.5=py37h4b46df4_2
  - xhistogram=0.3.0=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.2=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.22=pyhd8ed1ab_0
  - xz=5.2.5=h516909a_1
  - yaml=0.2.5=h516909a_0
  - yarl=1.6.3=py37h5e8e339_2
  - zarr=2.8.3=pyhd8ed1ab_0
  - zeromq=4.3.4=h9c3ff4c_0
  - zfp=0.5.5=h9c3ff4c_5
  - zict=2.0.0=py_0
  - zipp=3.5.0=pyhd8ed1ab_0
  - zlib=1.2.11=h516909a_1010
  - zstd=1.4.9=ha95c52a_0
  - pip:
    - astunparse==1.6.3
    - cdms2==3.1.5
    - colour==0.1.5
    - geojson==2.5.0
    - handcalcs==1.4.1
    - innerscope==0.5.0
    - ipython-blocking==0.2.1
    - jupyterlab-logout==0.5.0
    - jupyternotify==0.1.15
    - pixiedust==1.1.19
    - pymetalink==6.2
    - pytest-tornasync==0.6.0.post2
    - regrid2==3.1.5
    - requests-magpie==0.1.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
Release Planning and tracking progress of releases
Projects
None yet
Development

Successfully merging a pull request may close this issue.

6 participants