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

docker: new build for new XClim and to get Dask dashboard and Panel server app to work #105

Merged
merged 38 commits into from May 5, 2022

Conversation

tlvu
Copy link
Contributor

@tlvu tlvu commented Apr 13, 2022

Overview

Still have to pin dask for performance and shapely for notebook error.

Dask dashboard and Panel server app work both by manually mapping http://localhost:<PORT> to https://pavics.ouranos.ca/jupyter/user/<USER>/proxy/<PORT> as seen in screenshots below:

Screenshot from 2022-04-12 15-20-58

Screenshot from 2022-04-12 16-29-06

The "Render with Panel" green button also works and avoid having to deal with manual URL rewrite:
Screenshot from 2022-05-04 15-18-03

Relevant Changes

# new
>   - dask-labextension=5.2.0=pyhd8ed1ab_0
>   - jupyter-panel-proxy=0.2.0a2=py_0
>   - jupyter-server-proxy=3.2.1=pyhd8ed1ab_0

# removed, interfere with panel
<     - handcalcs==1.4.1

<   - xclim=0.34.0=pyhd8ed1ab_0
>   - xclim=0.36.0=pyhd8ed1ab_0

<   - cf_xarray=0.6.3=pyhd8ed1ab_0
>   - cf_xarray=0.7.2=pyhd8ed1ab_0

<   - clisops=0.8.0=pyh6c4a22f_0
>   - clisops=0.9.0=pyh6c4a22f_0

# downgrade by clisops
<   - pandas=1.4.1=py38h43a58ef_0
>   - pandas=1.3.5=py38h43a58ef_0

<   - rioxarray=0.10.3=pyhd8ed1ab_0
>   - rioxarray=0.11.1=pyhd8ed1ab_0

<   - nc-time-axis=1.4.0=pyhd8ed1ab_0
>   - nc-time-axis=1.4.1=pyhd8ed1ab_0

<   - roocs-utils=0.5.0=pyh6c4a22f_0
>   - roocs-utils=0.6.1=pyh6c4a22f_0

<   - panel=0.12.7=pyhd8ed1ab_0
>   - panel=0.13.1a2=py_0

<   - plotly=5.6.0=pyhd8ed1ab_0
>   - plotly=5.7.0=pyhd8ed1ab_0

Related Issue / Discussion

Test

Additional Information

tlvu added 4 commits April 7, 2022 09:20
Add `jupyter-server-proxy`, `dask-labextension` and enable
`panel.io.jupyter_server_extension`.

The `jupyter-server-proxy` allows to proxy URL like
"http://127.0.0.1:8787/status" (dask dashboard URL sample) to
"https://pavics.ouranos.ca/jupyter/user-redirect/proxy/8787/status"
which the `dask-labextension` will accept.

http://127.0.0.1:8787/status
is mapped to
https://pavics.ouranos.ca/jupyter/user-redirect/proxy/8787/status

For "panel serve", we can do it this way:

`! panel serve --allow-websocket-origin=pavics.ouranos.ca --port 5007 /notebook_dir/writable-workspace/tmp-test/test-panel.ipynb`

2022-04-08 01:33:50,268 Starting Bokeh server version 2.4.2 (running on Tornado 6.1)
2022-04-08 01:33:50,270 User authentication hooks NOT provided (default user enabled)
2022-04-08 01:33:50,272 Bokeh app running at: http://localhost:5007/test-panel
2022-04-08 01:33:50,272 Starting Bokeh server with process id: 2155
2022-04-08 01:34:06,179 WebSocket connection opened
2022-04-08 01:34:06,179 ServerConnection created

Then open a new browser tab to https://pavics.ouranos.ca/jupyter, login
again if it asks, and to go this URL:
https://pavics.ouranos.ca/jupyter/user-redirect/proxy/5007/test-panel

http://localhost:5007/test-panel
is mapped to
https://pavics.ouranos.ca/jupyter/user-redirect/proxy/5007/test-panel
@tlvu
Copy link
Contributor Author

tlvu commented Apr 13, 2022

@tlogan2000 @aulemahal This is a newer "beta" build than the one you tried last week to pull latest changes of all packages. You'll have to stop and restart your Jupyter server.

@tlogan2000 Please perform any extra manual Bokeh performance test. I've manually tested the homepage notebook 5 and no apparent performance regression observed.

tlvu added 14 commits April 22, 2022 15:22
```
! conda install -c pyviz/label/dev jupyter-panel-proxy

Collecting package metadata (current_repodata.json): failed

NotWritableError: The current user does not have write permissions to a
required path.
  path: /opt/conda/pkgs/cache/37adb69c.json
  uid: 1000
  gid: 1000

If you feel that permissions on this path are set incorrectly, you can
manually
change them by executing

  $ sudo chown 1000:1000 /opt/conda/pkgs/cache/37adb69c.json

In general, it's not advisable to use 'sudo conda'.
```
Fix for this error:
```
! conda install -c pyviz/label/dev jupyter-panel-proxy

Collecting package metadata (current_repodata.json): failed

NotWritableError: The current user does not have write permissions to a
required path.
  path: /opt/conda/pkgs/cache/37adb69c.json
  uid: 1000
  gid: 1000

If you feel that permissions on this path are set incorrectly, you can
manually
change them by executing

  $ sudo chown 1000:1000 /opt/conda/pkgs/cache/37adb69c.json

In general, it's not advisable to use 'sudo conda'.
```
The conda install step did not work, error below:

```
Step 10/13 : RUN conda install -c pyviz/label/dev jupyter-panel-proxy
 ---> Running in 3bf123abf1a8
Collecting package metadata (current_repodata.json): ...working... done
Solving environment: ...working... failed with initial frozen solve.
Retrying with flexible solve.
Solving environment: ...working... failed with repodata from
current_repodata.json, will retry with next repodata source.
Collecting package metadata (repodata.json): ...working... done
Solving environment: ...working... failed with initial frozen solve.
Retrying with flexible solve.
Examining @/linux-64::__linux==5.4.170=0:  17%|█▋        | 1/6
[00:00<00:00, 3591.01it/Examining @/linux-64::__glibc==2.31=0:  33%|███▎
| 2/6 [00:00<00:00, 4232.40it/s] Examining
@/linux-64::__archspec==1=x86_64:  83%|████████▎ | 5/6 [00:00<00:00,
38.59it/
Examining conflict for jupyter-panel-proxy python:  17%|█▋        | 1/6
[00:00<00:00, 9
Found conflicts! Looking for incompatible packages.
```
…blem

See comment holoviz/panel#3440 (comment)

To hopefully fix this error:
```
ServerApp - ERROR - Uncaught exception GET
/panel-preview/render/workdir/PAVICS-e2e-workflow-tests/binder/test-notebooks/TEST-panel-servable.ipynb
(10.10.10.7)
HTTPServerRequest(protocol='http', host='lvu.ouranos.ca:8890',
method='GET',
uri='/panel-preview/render/workdir/PAVICS-e2e-workflow-tests/binder/test-notebooks/TEST-panel-servable.ipynb',
version='HTTP/1.1', remote_ip='10.10.10.7')
Traceback (most recent call last):
  File
"/opt/conda/envs/birdy/lib/python3.8/site-packages/tornado/web.py", line
1704, in _execute
    result = await result
  File
"/opt/conda/envs/birdy/lib/python3.8/site-packages/panel/io/jupyter_server_extension.py",
line 116, in get
    page = server_html_page_for_session(
  File
"/opt/conda/envs/birdy/lib/python3.8/site-packages/bokeh/embed/server.py",
line 255, in server_html_page_for_session
    bundle = bundle_for_objs_and_resources(None, resources)
  File
"/opt/conda/envs/birdy/lib/python3.8/site-packages/bokeh/embed/bundle.py",
line 211, in bundle_for_objs_and_resources
    js_files.extend(js_resources.js_files)
  File
"/opt/conda/envs/birdy/lib/python3.8/site-packages/panel/io/resources.py",
line 299, in js_files
    dist_dir = self.dist_dir
  File
"/opt/conda/envs/birdy/lib/python3.8/site-packages/panel/io/resources.py",
line 259, in dist_dir
    if self.absolute:
AttributeError: 'Resources' object has no attribute 'absolute'
```
@Zeitsperre
Copy link
Collaborator

Not sure if it matters, but pandas in clisops is pinned below v1.4 right now. I'm not sure if that might cause environment inconsistencies. https://github.com/roocs/clisops/blame/d7a339addf436af0c57a4f2b3e305077ce07fa11/requirements.txt#L3

@tlvu
Copy link
Contributor Author

tlvu commented Apr 27, 2022

Not sure if it matters, but pandas in clisops is pinned below v1.4 right now. I'm not sure if that might cause environment inconsistencies. https://github.com/roocs/clisops/blame/d7a339addf436af0c57a4f2b3e305077ce07fa11/requirements.txt#L3

This is weird, we did not explicitly specify pandas (

# - pandas # from xclim and ravenpy
) so that version should have been "negotiated" between all the indirect dependencies.

@tlvu
Copy link
Contributor Author

tlvu commented Apr 27, 2022

Not sure if it matters, but pandas in clisops is pinned below v1.4 right now. I'm not sure if that might cause environment inconsistencies. https://github.com/roocs/clisops/blame/d7a339addf436af0c57a4f2b3e305077ce07fa11/requirements.txt#L3

This is weird, we did not explicitly specify pandas (

# - pandas # from xclim and ravenpy

) so that version should have been "negotiated" between all the indirect dependencies.

Found it.

Clisops introduced pandas pin since 0.9.0 only, we have 0.8.0 https://github.com/conda-forge/clisops-feedstock/blob/2bdbb0ef9c1297d8dbb3483dcc4664dbe84ec204/recipe/meta.yaml#L26

I guess I have to force clisops >= 0.9.0 to get it. Somehow the build resolves to an older clisops. mamba is faster than conda but sometimes it is not precise :(

Thanks for the catch.

tlvu added 10 commits April 27, 2022 19:22
Previous docker build error:
```
Encountered problems while solving:
- package clisops-0.9.0-pyh6c4a22f_0 requires cf_xarray >=0.7.0, but none of the providers can be installed
```

cf_xarray was previously pinned because of climex.ipynb (not
WPS_example.ipynb, my mistake reading the Jenkins output) performance
but it was already happening before the pin so cf_xarray might not be
the real culprit.

See issue about cf_xarray pinning here
#100
Remove this patch once a Panel release contain this PR
holoviz/panel#3469
@review-notebook-app
Copy link

Check out this pull request on  ReviewNB

See visual diffs & provide feedback on Jupyter Notebooks.


Powered by ReviewNB

@tlvu tlvu merged commit f8e5141 into master May 5, 2022
@tlvu tlvu deleted the new-docker-build branch May 5, 2022 23:46
tlvu added a commit to bird-house/birdhouse-deploy that referenced this pull request May 5, 2022
jupyter env: new build for new XClim and to get Dask dashboard and Panel server app to work

  Deploy new Jupyter env from PR Ouranosinc/PAVICS-e2e-workflow-tests#105 on PAVICS.

  Detailed changes can be found at Ouranosinc/PAVICS-e2e-workflow-tests#105.

  Dask dashboard no manual URL mangling required:

![Screenshot from 2022-04-13 22-37-49](https://user-images.githubusercontent.com/11966697/163303916-f781ac23-d10a-4cd6-807c-b10c8703afc3.png)

"Render with Panel" button works:
![Screenshot from 2022-05-04 15-18-03](https://user-images.githubusercontent.com/11966697/166810160-f6989da4-6e8f-4407-8fd5-4ef71770e1f2.png)

  Relevant changes:

```diff
# new
>   - dask-labextension=5.2.0=pyhd8ed1ab_0
>   - jupyter-panel-proxy=0.2.0a2=py_0
>   - jupyter-server-proxy=3.2.1=pyhd8ed1ab_0

# removed, interfere with panel
<     - handcalcs==1.4.1

<   - xclim=0.34.0=pyhd8ed1ab_0
>   - xclim=0.36.0=pyhd8ed1ab_0

<   - cf_xarray=0.6.3=pyhd8ed1ab_0
>   - cf_xarray=0.7.2=pyhd8ed1ab_0

<   - clisops=0.8.0=pyh6c4a22f_0
>   - clisops=0.9.0=pyh6c4a22f_0

# downgrade by clisops
<   - pandas=1.4.1=py38h43a58ef_0
>   - pandas=1.3.5=py38h43a58ef_0

<   - rioxarray=0.10.3=pyhd8ed1ab_0
>   - rioxarray=0.11.1=pyhd8ed1ab_0

<   - nc-time-axis=1.4.0=pyhd8ed1ab_0
>   - nc-time-axis=1.4.1=pyhd8ed1ab_0

<   - roocs-utils=0.5.0=pyh6c4a22f_0
>   - roocs-utils=0.6.1=pyh6c4a22f_0

<   - panel=0.12.7=pyhd8ed1ab_0
>   - panel=0.13.1a2=py_0

<   - plotly=5.6.0=pyhd8ed1ab_0
>   - plotly=5.7.0=pyhd8ed1ab_0
```
tlvu added a commit that referenced this pull request Nov 29, 2022
…ing else (#106)

# Overview

Full rebuild to get latest of everything, since the previous rebuild
https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/pull/105.

## Changes

- Unpin Shapely (fixes
https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/issues/99)
- Unpin Dask (fixes
https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/issues/100)
- Pin `intake-esm` since newer version activated validation of optional
fields and broke our notebooks
(https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/issues/109)
- Mamba is fully usable alongside Conda. Previously the installation
used Mamba but then Mamba is uninstalled because it breaks the jupyter
conda plugin
- New packages: 
  - performance optimization: flox,  pyston
  - new feature: geopy, streamlit, python-pptx
- jupyter plugin: jupyterlab-tabular-data-editor to easily edit `.csv`
files
 - Removed package: 
   - jupyter-panel-proxy, interfere with `panel serve` commands
- Relevant changes (alphabetical order):
```diff
<   - bokeh=2.4.2=py38h578d9bd_1
>   - bokeh=2.4.3=pyhd8ed1ab_3

<   - cartopy=0.20.1=py38hf9a4893_1
>   - cartopy=0.21.0=py38hf6c3373_3

<   - cf_xarray=0.7.2=pyhd8ed1ab_0
>   - cf_xarray=0.7.5=pyhd8ed1ab_0

<   - cftime=1.6.0=py38h71d37f0_1
>   - cftime=1.6.2=py38h26c90d9_1

<   - clisops=0.9.0=pyh6c4a22f_0
>   - clisops=0.9.3=pyh1a96a4e_0

# unpin
<   - dask=2022.1.0=pyhd8ed1ab_0
>   - dask=2022.11.0=pyhd8ed1ab_0

# new
>   - flox=0.6.3=pyhd8ed1ab_0

<   - fiona=1.8.20=py38hbb147eb_2
>   - fiona=1.8.22=py38hc72d8cd_2

<   - gdal=3.3.3=py38hcf2042a_0
>   - gdal=3.5.3=py38h1f15b03_3

<   - geopandas=0.10.2=pyhd8ed1ab_1
>   - geopandas=0.12.1=pyhd8ed1ab_1

# new
>   - geopy=2.3.0=pyhd8ed1ab_0
>   - pyston_lite=2.3.4=py38h0a891b7_1
>   - python-pptx=0.6.21=pyhd8ed1ab_0

<   - ravenpy=0.7.8=pyh8a188c0_0
>   - ravenpy=0.9.0=pyha21a80b_0

# pip to conda
<     - requests-magpie==0.1.1 
>   - requests-magpie=0.2.0=pyhd8ed1ab_0

<   - rioxarray=0.11.1=pyhd8ed1ab_0
>   - rioxarray=0.13.1=pyhd8ed1ab_0

<   - roocs-utils=0.6.1=pyh6c4a22f_0
>   - roocs-utils=0.6.3=pyh1a96a4e_0

# unpin
<   - shapely=1.7.1=py38hb7fe4a8_5
>   - shapely=1.8.5=py38hafd38ec_2

# new
>   - streamlit=1.15.0=pyhd8ed1ab_0

<   - xarray=2022.3.0=pyhd8ed1ab_0
>   - xarray=2022.10.0=pyhd8ed1ab_0

<   - xclim=0.36.0=pyhd8ed1ab_0
>   - xclim=0.39.0=pyhd8ed1ab_0

<   - xesmf=0.6.2=pyhd8ed1ab_0
>   - xesmf=0.6.3=pyhd8ed1ab_1

# new
>     - jupyterlab-tabular-data-editor==1.0.0
```

## Test

- Deployed as "alpha" image in production for bokeh visualization
performance regression testing.
- Manual test notebook
https://github.com/Ouranosinc/PAVICS-landing/blob/master/content/notebooks/climate_indicators/PAVICStutorial_ClimateDataAnalysis-5Visualization.ipynb
for bokeh visualization performance and it looks fine.
- Jenkins build: all passed, except known esgf-dap.ipynb failure:

[job-PAVICS-e2e-workflow-tests-new-docker-build-116-consoleText.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/10117811/job-PAVICS-e2e-workflow-tests-new-docker-build-116-consoleText.txt)



## Related Issue / Discussion

- Matching notebook fixes
  - Pavics-sdi https://github.com/Ouranosinc/pavics-sdi/pull/259
  - Finch https://github.com/bird-house/finch/pull/266
  - Pavics-landing https://github.com/Ouranosinc/PAVICS-landing/pull/52

- Deployment to PAVICS:
https://github.com/bird-house/birdhouse-deploy/pull/269

## Additional Information

- Full diff `conda env export`:

[220502-221118.1-conda-env-export.diff.txt](https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/files/10117922/220502-221118.1-conda-env-export.diff.txt)

```
3d2
<   - pyviz/label/dev
11,18c10,18
<   - aiobotocore=2.2.0=pyhd8ed1ab_0
<   - aiohttp=3.8.1=py38h0a891b7_1
<   - aioitertools=0.10.0=pyhd8ed1ab_0
<   - aiosignal=1.2.0=pyhd8ed1ab_0
<   - alembic=1.7.7=pyhd8ed1ab_0
<   - alsa-lib=1.2.3.2=h166bdaf_0
<   - ansi2html=1.7.0=py38h578d9bd_1
<   - anyio=3.5.0=py38h578d9bd_0
---
>   - aiobotocore=2.4.0=pyhd8ed1ab_0
>   - aiohttp=3.8.3=py38h0a891b7_1
>   - aioitertools=0.11.0=pyhd8ed1ab_0
>   - aiosignal=1.3.1=pyhd8ed1ab_0
>   - alembic=1.8.1=pyhd8ed1ab_0
>   - alsa-lib=1.2.8=h166bdaf_0
>   - altair=4.2.0=pyhd8ed1ab_1
>   - ansi2html=1.8.0=py38h578d9bd_1
>   - anyio=3.6.1=pyhd8ed1ab_1
21c21,22
<   - argon2-cffi-bindings=21.2.0=py38h0a891b7_2
---
>   - argon2-cffi-bindings=21.2.0=py38h0a891b7_3
>   - arrow-cpp=9.0.0=py38he270906_2_cpu
23c24
<   - asttokens=2.0.5=pyhd8ed1ab_0
---
>   - asttokens=2.1.0=pyhd8ed1ab_0
26,27c27,35
<   - attrs=21.4.0=pyhd8ed1ab_0
<   - babel=2.9.1=pyh44b312d_0
---
>   - attr=2.5.1=h166bdaf_1
>   - attrs=22.1.0=pyh71513ae_1
>   - aws-c-cal=0.5.11=h95a6274_0
>   - aws-c-common=0.6.2=h7f98852_0
>   - aws-c-event-stream=0.2.7=h3541f99_13
>   - aws-c-io=0.10.5=hfb6a706_0
>   - aws-checksums=0.1.11=ha31a3da_7
>   - aws-sdk-cpp=1.8.186=hecaee15_4
>   - babel=2.11.0=pyhd8ed1ab_0
31c39,40
<   - bcrypt=3.2.2=py38h0a891b7_0
---
>   - backports.zoneinfo=0.2.1=py38h0a891b7_7
>   - bcrypt=3.2.2=py38h0a891b7_1
35,38c44,47
<   - bleach=5.0.0=pyhd8ed1ab_0
<   - blinker=1.4=py_1
<   - blosc=1.21.1=hd32f23e_0
<   - bokeh=2.4.2=py38h578d9bd_1
---
>   - bleach=5.0.1=pyhd8ed1ab_0
>   - blinker=1.5=pyhd8ed1ab_0
>   - blosc=1.21.1=h83bc5f7_3
>   - bokeh=2.4.3=pyhd8ed1ab_3
40,47c49,56
<   - boost-cpp=1.74.0=h312852a_4
<   - botocore=1.24.21=pyhd8ed1ab_1
<   - bottleneck=1.3.4=py38h71d37f0_1
<   - branca=0.4.2=pyhd8ed1ab_0
<   - brotli=1.0.9=h166bdaf_7
<   - brotli-bin=1.0.9=h166bdaf_7
<   - brotli-python=1.0.9=py38hfa26641_7
<   - brotlipy=0.7.0=py38h0a891b7_1004
---
>   - boost-cpp=1.78.0=h75c5d50_1
>   - botocore=1.27.59=pyhd8ed1ab_0
>   - bottleneck=1.3.5=py38h26c90d9_1
>   - branca=0.6.0=pyhd8ed1ab_0
>   - brotli=1.0.9=h166bdaf_8
>   - brotli-bin=1.0.9=h166bdaf_8
>   - brotli-python=1.0.9=py38hfa26641_8
>   - brotlipy=0.7.0=py38h0a891b7_1005
50c59
<   - ca-certificates=2021.10.8=ha878542_0
---
>   - ca-certificates=2022.9.24=ha878542_0
53,55c62,64
<   - cachetools=5.0.0=pyhd8ed1ab_0
<   - cairo=1.16.0=h6cf1ce9_1008
<   - cartopy=0.20.1=py38hf9a4893_1
---
>   - cachetools=5.2.0=pyhd8ed1ab_0
>   - cairo=1.16.0=ha61ee94_1014
>   - cartopy=0.21.0=py38hf6c3373_3
59c68
<   - certifi=2021.10.8=py38h578d9bd_2
---
>   - certifi=2022.9.24=pyhd8ed1ab_0
61,63c70,72
<   - cf_xarray=0.7.2=pyhd8ed1ab_0
<   - cffi=1.15.0=py38h3931269_0
<   - cfgrib=0.9.10.1=pyhd8ed1ab_0
---
>   - cf_xarray=0.7.5=pyhd8ed1ab_0
>   - cffi=1.15.1=py38h4a40e3a_2
>   - cfgrib=0.9.10.2=pyhd8ed1ab_0
65,68c74,77
<   - cfitsio=3.470=hb418390_7
<   - cftime=1.6.0=py38h71d37f0_1
<   - charset-normalizer=2.0.12=pyhd8ed1ab_0
<   - click=8.1.3=py38h578d9bd_0
---
>   - cfitsio=4.2.0=hd9d235c_0
>   - cftime=1.6.2=py38h26c90d9_1
>   - charset-normalizer=2.1.1=pyhd8ed1ab_0
>   - click=8.1.3=unix_pyhd8ed1ab_2
72,79c81,90
<   - clisops=0.9.0=pyh6c4a22f_0
<   - cloudpickle=2.0.0=pyhd8ed1ab_0
<   - colorama=0.4.4=pyh9f0ad1d_0
<   - colorcet=3.0.0=pyhd8ed1ab_0
<   - configurable-http-proxy=4.5.0=node16_h3b247e2_2
<   - coverage=6.3.2=py38h0a891b7_2
<   - cryptography=36.0.2=py38h2b5fc30_1
<   - curl=7.83.0=h7bff187_0
---
>   - clisops=0.9.3=pyh1a96a4e_0
>   - cloudpickle=2.2.0=pyhd8ed1ab_0
>   - colorama=0.4.6=pyhd8ed1ab_0
>   - colorcet=3.0.1=pyhd8ed1ab_0
>   - commonmark=0.9.1=py_0
>   - configurable-http-proxy=4.5.3=he2f69ee_3
>   - contourpy=1.0.6=py38h43d8883_0
>   - coverage=6.5.0=py38h0a891b7_1
>   - cryptography=38.0.3=py38h2b5fc30_0
>   - curl=7.86.0=h7bff187_1
81,86c92,98
<   - cytoolz=0.11.2=py38h0a891b7_2
<   - dash=2.3.1=pyhd8ed1ab_0
<   - dask=2022.1.0=pyhd8ed1ab_0
<   - dask-core=2022.1.0=pyhd8ed1ab_0
<   - dask-labextension=5.2.0=pyhd8ed1ab_0
<   - datashader=0.14.0=pyh6c4a22f_0
---
>   - cytoolz=0.12.0=py38h0a891b7_1
>   - dash=2.7.0=pyhd8ed1ab_0
>   - dask=2022.11.0=pyhd8ed1ab_0
>   - dask-core=2022.11.0=pyhd8ed1ab_0
>   - dask-labextension=6.0.0=pyhd8ed1ab_0
>   - dataclasses=0.8=pyhc8e2a94_3
>   - datashader=0.14.3=pyh1a96a4e_0
89c101
<   - debugpy=1.6.0=py38hfa26641_0
---
>   - debugpy=1.6.3=py38hfa26641_1
92a105
>   - dill=0.3.6=pyhd8ed1ab_1
94,95c107,108
<   - distlib=0.3.4=pyhd8ed1ab_0
<   - distributed=2022.1.0=py38h578d9bd_0
---
>   - distlib=0.3.6=pyhd8ed1ab_0
>   - distributed=2022.11.0=pyhd8ed1ab_0
98c111
<   - eccodes=2.25.0=hc08acdf_0
---
>   - eccodes=2.27.0=h164a9dd_0
103c116
<   - esmf=8.2.0=mpi_mpich_h4975321_100
---
>   - esmf=8.2.0=mpi_mpich_h5a1934d_102
105,106c118,120
<   - executing=0.8.3=pyhd8ed1ab_0
<   - expat=2.4.8=h27087fc_0
---
>   - exceptiongroup=1.0.4=pyhd8ed1ab_0
>   - executing=1.2.0=pyhd8ed1ab_0
>   - expat=2.5.0=h27087fc_0
108,109c122,124
<   - fastprogress=1.0.2=pyhd8ed1ab_0
<   - filelock=3.6.0=pyhd8ed1ab_0
---
>   - fastprogress=1.0.3=pyhd8ed1ab_0
>   - fftw=3.3.10=nompi_hf0379b8_105
>   - filelock=3.8.0=pyhd8ed1ab_0
111,115c126,131
<   - fiona=1.8.20=py38hbb147eb_2
<   - flask=2.1.2=pyhd8ed1ab_0
<   - flask-compress=1.12=pyhd8ed1ab_0
<   - flit-core=3.7.1=pyhd8ed1ab_0
<   - folium=0.12.1.post1=pyhd8ed1ab_1
---
>   - fiona=1.8.22=py38hc72d8cd_2
>   - flask=2.2.2=pyhd8ed1ab_0
>   - flask-compress=1.13=pyhd8ed1ab_0
>   - flit-core=3.8.0=pyhd8ed1ab_0
>   - flox=0.6.3=pyhd8ed1ab_0
>   - folium=0.13.0=pyhd8ed1ab_0
120c136
<   - fontconfig=2.14.0=h8e229c2_0
---
>   - fontconfig=2.14.1=hc2a2eb6_0
123c139
<   - fonttools=4.33.3=py38h0a891b7_0
---
>   - fonttools=4.38.0=py38h0a891b7_1
125,128c141,144
<   - freetype=2.10.4=h0708190_1
<   - freexl=1.0.6=h7f98852_0
<   - frozenlist=1.3.0=py38h0a891b7_1
<   - fsspec=2022.3.0=pyhd8ed1ab_0
---
>   - freetype=2.12.1=hca18f0e_0
>   - freexl=1.0.6=h166bdaf_1
>   - frozenlist=1.3.3=py38h0a891b7_0
>   - fsspec=2022.11.0=pyhd8ed1ab_0
130c146
<   - future=0.18.2=py38h578d9bd_5
---
>   - future=0.18.2=pyhd8ed1ab_6
132,138c148,156
<   - gcsfs=2022.3.0=pyhd8ed1ab_0
<   - gdal=3.3.3=py38hcf2042a_0
<   - geckodriver=0.30.0=h3146498_0
<   - geopandas=0.10.2=pyhd8ed1ab_1
<   - geopandas-base=0.10.2=pyha770c72_1
<   - geos=3.9.1=h9c3ff4c_2
<   - geotiff=1.7.0=hcfb7246_3
---
>   - gcsfs=2022.11.0=pyhd8ed1ab_0
>   - gdal=3.5.3=py38h1f15b03_3
>   - geckodriver=0.32.0=h4b87306_0
>   - geographiclib=1.52=pyhd8ed1ab_0
>   - geopandas=0.12.1=pyhd8ed1ab_1
>   - geopandas-base=0.12.1=pyha770c72_1
>   - geopy=2.3.0=pyhd8ed1ab_0
>   - geos=3.11.1=h27087fc_0
>   - geotiff=1.7.1=ha76d385_4
141c159,160
<   - gettext=0.19.8.1=h73d1719_1008
---
>   - gettext=0.21.1=h27087fc_0
>   - gflags=2.2.2=he1b5a44_1004
144,163c163,186
<   - gitpython=3.1.27=pyhd8ed1ab_0
<   - gnutls=3.6.13=h85f3911_1
<   - google-api-core=2.5.0=pyhd8ed1ab_0
<   - google-auth=2.6.6=pyh6c4a22f_0
<   - google-auth-oauthlib=0.5.1=pyhd8ed1ab_0
<   - google-cloud-core=2.2.2=pyh6c4a22f_0
<   - google-cloud-storage=2.1.0=pyh6c4a22f_0
<   - google-crc32c=1.1.2=py38h57c428a_3
<   - google-resumable-media=2.1.0=pyh6c4a22f_0
<   - googleapis-common-protos=1.56.0=py38h578d9bd_0
<   - greenlet=1.1.2=py38hfa26641_2
<   - grpcio=1.45.0=py38ha0cdfde_0
<   - gst-plugins-base=1.18.5=hf529b03_3
<   - gstreamer=1.18.5=h9f60fe5_3
<   - h11=0.13.0=pyhd8ed1ab_0
<   - h5netcdf=1.0.0=pyhd8ed1ab_0
<   - h5py=3.6.0=nompi_py38hfbb2109_100
<   - haversine=2.5.1=pyhd8ed1ab_0
<   - hdf4=4.2.15=h10796ff_3
<   - hdf5=1.12.1=mpi_mpich_h08b82f9_4
---
>   - gitpython=3.1.29=pyhd8ed1ab_0
>   - glib=2.74.1=h6239696_1
>   - glib-tools=2.74.1=h6239696_1
>   - glog=0.6.0=h6f12383_0
>   - gnutls=3.7.8=hf3e180e_0
>   - google-api-core=2.10.2=pyhd8ed1ab_0
>   - google-auth=2.14.1=pyh1a96a4e_0
>   - google-auth-oauthlib=0.7.1=pyhd8ed1ab_0
>   - google-cloud-core=2.3.2=pyhd8ed1ab_0
>   - google-cloud-storage=2.6.0=pyh1a96a4e_0
>   - google-crc32c=1.1.2=py38h57c428a_4
>   - google-resumable-media=2.4.0=pyhd8ed1ab_0
>   - googleapis-common-protos=1.57.0=py38h578d9bd_0
>   - greenlet=2.0.1=py38hfa26641_0
>   - grpc-cpp=1.47.1=hbad87ad_6
>   - grpcio=1.47.1=py38h5b6373e_6
>   - gst-plugins-base=1.21.1=h3e40eee_1
>   - gstreamer=1.21.1=hd4edc92_1
>   - h11=0.14.0=pyhd8ed1ab_0
>   - h5netcdf=1.0.2=pyhd8ed1ab_0
>   - h5py=3.7.0=nompi_py38h7927eab_102
>   - haversine=2.7.0=pyhd8ed1ab_0
>   - hdf4=4.2.15=h9772cbc_5
>   - hdf5=1.12.2=mpi_mpich_h08b82f9_0
165,174c188,197
<   - holoviews=1.14.8=pyhd8ed1ab_0
<   - hvplot=0.7.3=pyh6c4a22f_0
<   - icu=68.2=h9c3ff4c_0
<   - identify=2.5.0=pyhd8ed1ab_0
<   - idna=3.3=pyhd8ed1ab_0
<   - imagecodecs-lite=2019.12.3=py38h71d37f0_5
<   - imageio=2.18.0=pyhcf75d05_0
<   - importlib-metadata=4.11.3=py38h578d9bd_1
<   - importlib_metadata=4.11.3=hd8ed1ab_1
<   - importlib_resources=5.7.1=pyhd8ed1ab_0
---
>   - holoviews=1.15.2=pyhd8ed1ab_0
>   - hvplot=0.8.1=pyhd8ed1ab_0
>   - icu=70.1=h27087fc_0
>   - identify=2.5.9=pyhd8ed1ab_0
>   - idna=3.4=pyhd8ed1ab_0
>   - imagecodecs-lite=2019.12.3=py38h26c90d9_6
>   - imageio=2.22.0=pyhfa7a67d_0
>   - importlib-metadata=5.0.0=pyha770c72_1
>   - importlib_metadata=5.0.0=hd8ed1ab_1
>   - importlib_resources=5.10.0=pyhd8ed1ab_0
176c199
<   - intake=0.6.5=pyhd8ed1ab_0
---
>   - intake=0.6.6=pyhd8ed1ab_0
179,183c202,206
<   - intake-thredds=2021.6.16=pyhd8ed1ab_0
<   - intake-xarray=0.6.0=pyhd8ed1ab_0
<   - ipykernel=6.13.0=py38h7f3c49e_0
<   - ipyleaflet=0.16.0=pyhd8ed1ab_3
<   - ipython=8.3.0=py38h578d9bd_0
---
>   - intake-thredds=2022.8.19=pyhd8ed1ab_0
>   - intake-xarray=0.6.1=pyhd8ed1ab_0
>   - ipykernel=6.17.1=pyh210e3f2_0
>   - ipyleaflet=0.17.2=pyhd8ed1ab_0
>   - ipython=8.6.0=pyh41d4057_1
185c208
<   - ipywidgets=7.7.0=pyhd8ed1ab_0
---
>   - ipywidgets=8.0.2=pyhd8ed1ab_1
186a210
>   - jack=1.9.21=he978b8e_1
188,194c212,217
<   - jbig=2.1=h7f98852_2003
<   - jedi=0.18.1=py38h578d9bd_1
<   - jinja2=3.1.1=pyhd8ed1ab_0
<   - jmespath=1.0.0=pyhd8ed1ab_0
<   - joblib=1.1.0=pyhd8ed1ab_0
<   - jpeg=9e=h166bdaf_1
<   - json-c=0.15=h98cffda_0
---
>   - jedi=0.18.1=pyhd8ed1ab_2
>   - jinja2=3.1.2=pyhd8ed1ab_1
>   - jmespath=1.0.1=pyhd8ed1ab_0
>   - joblib=1.2.0=pyhd8ed1ab_0
>   - jpeg=9e=h166bdaf_2
>   - json-c=0.16=hc379101_0
196,197c219,220
<   - jsonpickle=2.1.0=pyhd8ed1ab_0
<   - jsonschema=4.4.0=pyhd8ed1ab_0
---
>   - jsonpickle=2.2.0=pyhd8ed1ab_0
>   - jsonschema=4.17.0=pyhd8ed1ab_0
199c222
<   - jupyter-archive=3.3.1=pyhd8ed1ab_0
---
>   - jupyter-archive=3.3.2=pyhd8ed1ab_0
201,209c224,231
<   - jupyter-panel-proxy=0.2.0a2=py_0
<   - jupyter-resource-usage=0.5.1=pyhd8ed1ab_0
<   - jupyter-server-mathjax=0.2.5=pyhc268e32_0
<   - jupyter-server-proxy=3.2.1=pyhd8ed1ab_0
<   - jupyter_bokeh=3.0.4=pyhd8ed1ab_0
<   - jupyter_client=7.3.0=pyhd8ed1ab_0
<   - jupyter_console=6.4.3=pyhd8ed1ab_0
<   - jupyter_core=4.9.2=py38h578d9bd_0
<   - jupyter_server=1.17.0=pyhd8ed1ab_0
---
>   - jupyter-resource-usage=0.6.4=pyhd8ed1ab_0
>   - jupyter-server-mathjax=0.2.6=pyhc268e32_0
>   - jupyter-server-proxy=3.2.2=pyhd8ed1ab_0
>   - jupyter_bokeh=3.0.5=pyhd8ed1ab_0
>   - jupyter_client=7.3.4=pyhd8ed1ab_0
>   - jupyter_console=6.4.4=pyhd8ed1ab_0
>   - jupyter_core=5.0.0=py38h578d9bd_0
>   - jupyter_server=1.23.2=pyhd8ed1ab_0
211,215c233,237
<   - jupyterhub=2.2.2=pyhd8ed1ab_1
<   - jupyterhub-base=2.2.2=pyhd8ed1ab_1
<   - jupyterlab=3.3.4=pyhd8ed1ab_0
<   - jupyterlab-git=0.37.1=pyhd8ed1ab_0
<   - jupyterlab-system-monitor=0.8.0=pyhd8ed1ab_1
---
>   - jupyterhub=3.0.0=pyh2a2186d_1
>   - jupyterhub-base=3.0.0=pyh2a2186d_1
>   - jupyterlab=3.5.0=pyhd8ed1ab_0
>   - jupyterlab-git=0.39.3=pyhd8ed1ab_0
>   - jupyterlab-system-monitor=0.8.0=pyhd8ed1ab_2
218,221c240,243
<   - jupyterlab_server=2.13.0=pyhd8ed1ab_1
<   - jupyterlab_widgets=1.1.0=pyhd8ed1ab_0
<   - jupytext=1.13.8=pyh4b9bcc7_0
<   - kealib=1.4.14=h87e4c3c_3
---
>   - jupyterlab_server=2.16.3=pyhd8ed1ab_0
>   - jupyterlab_widgets=3.0.3=pyhd8ed1ab_0
>   - jupytext=1.14.0=pyheef035f_0
>   - kealib=1.4.15=ha7026e8_1
223c245
<   - kiwisolver=1.4.2=py38h43d8883_1
---
>   - kiwisolver=1.4.4=py38h43d8883_1
225,228c247,252
<   - lazy-object-proxy=1.7.1=py38h0a891b7_1
<   - lcms2=2.12=hddcbb42_0
<   - ld_impl_linux-64=2.36.1=hea4e1c9_2
<   - lerc=3.0=h9c3ff4c_0
---
>   - lame=3.100=h166bdaf_1003
>   - lazy-object-proxy=1.8.0=py38h0a891b7_0
>   - lcms2=2.14=h6ed2654_0
>   - ld_impl_linux-64=2.39=hc81fddc_0
>   - lerc=4.0.0=h27087fc_0
>   - libabseil=20220623.0=cxx17_h48a1fff_5
230,238c254,264
<   - libarchive=3.5.2=hccf745f_1
<   - libblas=3.9.0=14_linux64_openblas
<   - libbrotlicommon=1.0.9=h166bdaf_7
<   - libbrotlidec=1.0.9=h166bdaf_7
<   - libbrotlienc=1.0.9=h166bdaf_7
<   - libcblas=3.9.0=14_linux64_openblas
<   - libcdms=3.1.2=h3bdf4ba_117
<   - libcf=1.0.3=py38h0c3d773_114
<   - libclang=11.1.0=default_ha53f305_1
---
>   - libarchive=3.5.2=hb890918_3
>   - libblas=3.9.0=16_linux64_openblas
>   - libbrotlicommon=1.0.9=h166bdaf_8
>   - libbrotlidec=1.0.9=h166bdaf_8
>   - libbrotlienc=1.0.9=h166bdaf_8
>   - libcap=2.66=ha37c62d_0
>   - libcblas=3.9.0=16_linux64_openblas
>   - libcdms=3.1.2=h2973bc7_118
>   - libcf=1.0.3=py38h0c3d773_115
>   - libclang=15.0.5=default_h2e3cab8_0
>   - libclang13=15.0.5=default_h3a83d3e_0
240c266,267
<   - libcurl=7.83.0=h7bff187_0
---
>   - libcups=2.3.3=h3e49a29_2
>   - libcurl=7.86.0=h7bff187_1
242,243c269,271
<   - libdeflate=1.10=h7f98852_0
<   - libdrm=2.4.109=h7f98852_0
---
>   - libdb=6.2.32=h9c3ff4c_0
>   - libdeflate=1.14=h166bdaf_0
>   - libdrm=2.4.114=h166bdaf_0
250,254c278,283
<   - libgcc-ng=11.2.0=h1d223b6_16
<   - libgdal=3.3.3=h356f897_0
<   - libgfortran-ng=11.2.0=h69a702a_16
<   - libgfortran5=11.2.0=h5c6108e_16
<   - libglib=2.70.2=h174f98d_4
---
>   - libflac=1.4.2=h27087fc_0
>   - libgcc-ng=12.2.0=h65d4601_19
>   - libgdal=3.5.3=hcb70f40_3
>   - libgfortran-ng=12.2.0=h69a702a_19
>   - libgfortran5=12.2.0=h337968e_19
>   - libglib=2.74.1=h606061b_1
256,264c285,295
<   - libgomp=11.2.0=h1d223b6_16
<   - libiconv=1.16=h516909a_0
<   - libidn2=2.3.2=h7f98852_0
<   - libkml=1.3.0=h238a007_1014
<   - liblapack=3.9.0=14_linux64_openblas
<   - libllvm11=11.1.0=hf817b99_3
<   - libmicrohttpd=0.9.75=h7f98852_0
<   - libnetcdf=4.8.1=mpi_mpich_hcdf9059_2
<   - libnghttp2=1.47.0=h727a467_0
---
>   - libgomp=12.2.0=h65d4601_19
>   - libgoogle-cloud=2.1.0=h9ebe8e8_2
>   - libiconv=1.17=h166bdaf_0
>   - libidn2=2.3.4=h166bdaf_0
>   - libkml=1.3.0=h37653c0_1015
>   - liblapack=3.9.0=16_linux64_openblas
>   - libllvm11=11.1.0=he0ac6c6_5
>   - libllvm15=15.0.5=h63197d8_0
>   - libmicrohttpd=0.9.75=h2603550_1
>   - libnetcdf=4.8.1=mpi_mpich_hcd871d9_6
>   - libnghttp2=1.47.0=hdcd2b5c_1
267c298
<   - libopenblas=0.3.20=pthreads_h78a6416_0
---
>   - libopenblas=0.3.21=pthreads_h78a6416_3
269,273c300,305
<   - libpciaccess=0.16=h516909a_0
<   - libpng=1.6.37=h21135ba_2
<   - libpq=13.5=hd57d9b9_1
<   - libprotobuf=3.20.0=h6239696_0
<   - librttopo=1.1.0=h1185371_6
---
>   - libpciaccess=0.17=h166bdaf_0
>   - libpng=1.6.38=h753d276_0
>   - libpq=14.5=hd77ab85_1
>   - libprotobuf=3.20.2=h6239696_0
>   - librttopo=1.1.0=ha49c73b_12
>   - libsndfile=1.1.0=h27087fc_0
276,279c308,316
<   - libspatialite=5.0.1=h8796b1e_9
<   - libssh2=1.10.0=ha56f1ee_2
<   - libstdcxx-ng=11.2.0=he4da1e4_16
<   - libtiff=4.3.0=h542a066_3
---
>   - libspatialite=5.0.1=h7c8129e_22
>   - libsqlite=3.40.0=h753d276_0
>   - libssh2=1.10.0=haa6b8db_3
>   - libstdcxx-ng=12.2.0=h46fd767_19
>   - libtasn1=4.19.0=h166bdaf_0
>   - libthrift=0.16.0=h491838f_2
>   - libtiff=4.4.0=h55922b4_4
>   - libtool=2.4.6=h9c3ff4c_1008
>   - libudev1=252=h166bdaf_0
280a318
>   - libutf8proc=2.8.0=h166bdaf_0
282c320
<   - libuv=1.40.0=h7f98852_0
---
>   - libuv=1.44.2=h166bdaf_0
284,285c322
<   - libwebp=1.2.2=h3452ae3_0
<   - libwebp-base=1.2.2=h7f98852_1
---
>   - libwebp-base=1.2.4=h166bdaf_0
288,292c325,329
<   - libxml2=2.9.12=h72842e0_0
<   - libxslt=1.1.33=h15afd5d_2
<   - libzip=1.8.0=h4de3113_1
<   - libzlib=1.2.11=h166bdaf_1014
<   - llvmlite=0.38.0=py38h38d86a4_1
---
>   - libxml2=2.10.3=h7463322_0
>   - libxslt=1.1.37=h873f0b0_0
>   - libzip=1.9.2=hc869a4a_1
>   - libzlib=1.2.13=h166bdaf_4
>   - llvmlite=0.39.1=py38h38d86a4_1
294,296c331,333
<   - loguru=0.6.0=py38h578d9bd_1
<   - lxml=4.8.0=py38h0a891b7_2
<   - lz4=4.0.0=py38h1bf946c_1
---
>   - loguru=0.6.0=py38h578d9bd_2
>   - lxml=4.9.1=py38ha9ef780_1
>   - lz4=4.0.2=py38h1bf946c_0
299,300c336,337
<   - mako=1.2.0=pyhd8ed1ab_1
<   - mamba_gator=5.1.2=pyhd8ed1ab_0
---
>   - mako=1.2.4=pyhd8ed1ab_0
>   - mamba_gator=5.2.0=pyhd8ed1ab_0
302c339
<   - markdown=3.3.6=pyhd8ed1ab_0
---
>   - markdown=3.4.1=pyhd8ed1ab_0
304,308c341,345
<   - markupsafe=2.1.1=py38h0a891b7_1
<   - matplotlib=3.5.1=py38h578d9bd_0
<   - matplotlib-base=3.5.1=py38hf4fb855_0
<   - matplotlib-inline=0.1.3=pyhd8ed1ab_0
<   - mdit-py-plugins=0.3.0=pyhd8ed1ab_0
---
>   - markupsafe=2.1.1=py38h0a891b7_2
>   - matplotlib=3.6.2=py38h578d9bd_0
>   - matplotlib-base=3.6.2=py38hb021067_0
>   - matplotlib-inline=0.1.6=pyhd8ed1ab_0
>   - mdit-py-plugins=0.3.1=pyhd8ed1ab_0
310c347
<   - memory_profiler=0.60.0=pyhd8ed1ab_0
---
>   - memory_profiler=0.61.0=pyhd8ed1ab_0
312c349,350
<   - mistune=0.8.4=py38h497a2fe_1005
---
>   - mistune=2.0.4=pyhd8ed1ab_0
>   - mpg123=1.30.2=h27087fc_1
314,317c352,355
<   - mpi4py=3.1.3=py38h97ac3a3_1
<   - mpich=4.0.2=h846660c_100
<   - msgpack-python=1.0.3=py38h43d8883_1
<   - multidict=6.0.2=py38h0a891b7_1
---
>   - mpi4py=3.1.4=py38h97ac3a3_0
>   - mpich=4.0.3=h846660c_100
>   - msgpack-python=1.0.4=py38h43d8883_1
>   - multidict=6.0.2=py38h0a891b7_2
318a357
>   - multiprocess=0.70.14=py38h0a891b7_3
321,327c360,366
<   - mysql-common=8.0.29=haf5c9bc_0
<   - mysql-libs=8.0.29=h28c427c_0
<   - nbclassic=0.3.7=pyhd8ed1ab_0
<   - nbclient=0.5.13=pyhd8ed1ab_0
<   - nbconvert=6.5.0=pyhd8ed1ab_0
<   - nbconvert-core=6.5.0=pyhd8ed1ab_0
<   - nbconvert-pandoc=6.5.0=pyhd8ed1ab_0
---
>   - mysql-common=8.0.31=haf5c9bc_0
>   - mysql-libs=8.0.31=h28c427c_0
>   - nbclassic=0.4.8=pyhd8ed1ab_0
>   - nbclient=0.7.0=pyhd8ed1ab_0
>   - nbconvert=7.2.5=pyhd8ed1ab_0
>   - nbconvert-core=7.2.5=pyhd8ed1ab_0
>   - nbconvert-pandoc=7.2.5=pyhd8ed1ab_0
329c368
<   - nbformat=5.3.0=pyhd8ed1ab_0
---
>   - nbformat=5.7.0=pyhd8ed1ab_0
334c373
<   - nest-asyncio=1.5.5=pyhd8ed1ab_0
---
>   - nest-asyncio=1.5.6=pyhd8ed1ab_0
336,343c375,382
<   - netcdf-fortran=4.5.4=mpi_mpich_h1364a43_0
<   - netcdf4=1.5.8=nompi_py38h2823cc8_101
<   - nettle=3.6=he412f7d_0
<   - networkx=2.8=pyhd8ed1ab_0
<   - nodeenv=1.6.0=pyhd8ed1ab_0
<   - nodejs=16.13.1=hb931c9a_0
<   - notebook=6.4.11=pyha770c72_0
<   - notebook-shim=0.1.0=pyhd8ed1ab_0
---
>   - netcdf-fortran=4.6.0=mpi_mpich_hd09bd1e_1
>   - netcdf4=1.6.2=nompi_py38h2250339_100
>   - nettle=3.8.1=hc379101_1
>   - networkx=2.8.8=pyhd8ed1ab_0
>   - nodeenv=1.7.0=pyhd8ed1ab_0
>   - nodejs=18.12.1=h96d913c_0
>   - notebook=6.5.2=pyha770c72_1
>   - notebook-shim=0.2.2=pyhd8ed1ab_0
345,352c384,393
<   - nss=3.77=h2350873_0
<   - numba=0.55.1=py38h4bf6c61_0
<   - numcodecs=0.9.1=py38h709712a_2
<   - numpy=1.21.6=py38h1d589f8_0
<   - oauthlib=3.2.0=pyhd8ed1ab_0
<   - openblas=0.3.20=pthreads_h320a7e8_0
<   - openjpeg=2.4.0=hb52868f_1
<   - openssl=1.1.1n=h166bdaf_0
---
>   - nss=3.78=h2350873_0
>   - numba=0.56.3=py38h9a4aae9_0
>   - numcodecs=0.10.2=py38hfa26641_0
>   - numpy=1.23.4=py38h7042d01_1
>   - numpy_groupies=0.9.20=pyhd8ed1ab_0
>   - oauthlib=3.2.2=pyhd8ed1ab_0
>   - openblas=0.3.21=pthreads_h320a7e8_3
>   - openjpeg=2.5.0=h7d73246_1
>   - openssl=1.1.1s=h166bdaf_0
>   - orc=1.7.6=h6c59b99_0
354,355c395,397
<   - outcome=1.1.0=pyhd8ed1ab_0
<   - owslib=0.25.0=pyhd8ed1ab_0
---
>   - outcome=1.2.0=pyhd8ed1ab_0
>   - owslib=0.27.2=pyhd8ed1ab_1
>   - p11-kit=0.24.1=hc5aa10d_0
359c401
<   - pandoc=2.18=ha770c72_0
---
>   - pandoc=2.19.2=h32600fe_1
361,363c403,406
<   - panel=0.13.1a2=py_0
<   - param=1.12.1=pyh6c4a22f_0
<   - paramiko=2.10.4=pyhd8ed1ab_0
---
>   - panel=0.14.1=pyhd8ed1ab_0
>   - param=1.12.2=pyh6c4a22f_0
>   - paramiko=2.12.0=pyhd8ed1ab_0
>   - parquet-cpp=1.5.1=2
365,366c408,410
<   - partd=1.2.0=pyhd8ed1ab_0
<   - patsy=0.5.2=pyhd8ed1ab_0
---
>   - partd=1.3.0=pyhd8ed1ab_0
>   - pathos=0.3.0=pyhd8ed1ab_0
>   - patsy=0.5.3=pyhd8ed1ab_0
368,372c412,417
<   - pexpect=4.8.0=py38h32f6830_1
<   - pickleshare=0.7.5=py38h32f6830_1002
<   - pillow=9.1.0=py38h0ee0e06_2
<   - pint=0.19.2=pyhd8ed1ab_0
<   - pip=22.0.4=pyhd8ed1ab_0
---
>   - pcre2=10.40=hc3806b6_0
>   - pexpect=4.8.0=pyh1a96a4e_2
>   - pickleshare=0.7.5=py_1003
>   - pillow=9.2.0=py38h9eb91d8_3
>   - pint=0.20.1=pyhd8ed1ab_0
>   - pip=22.3.1=pyhd8ed1ab_0
374,376c419,423
<   - platformdirs=2.5.1=pyhd8ed1ab_0
<   - plotly=5.7.0=pyhd8ed1ab_0
<   - pluggy=1.0.0=py38h578d9bd_3
---
>   - pkgutil-resolve-name=1.3.10=pyhd8ed1ab_0
>   - platformdirs=2.5.2=pyhd8ed1ab_1
>   - plotly=5.11.0=pyhd8ed1ab_0
>   - pluggy=1.0.0=pyhd8ed1ab_5
>   - ply=3.11=py_1
378c425
<   - poppler=21.09.0=ha39eefc_3
---
>   - poppler=22.11.0=h92391eb_0
380,385c427,434
<   - postgresql=13.5=h2510834_1
<   - pre-commit=2.18.1=py38h578d9bd_1
<   - proj=8.1.1=h277dcde_2
<   - prometheus_client=0.14.1=pyhd8ed1ab_0
<   - prompt-toolkit=3.0.29=pyha770c72_0
<   - prompt_toolkit=3.0.29=hd8ed1ab_0
---
>   - postgresql=14.5=hdeef612_1
>   - pox=0.3.2=pyhd8ed1ab_0
>   - ppft=1.7.6.6=pyhd8ed1ab_0
>   - pre-commit=2.20.0=py38h578d9bd_1
>   - proj=9.1.0=h93bde94_0
>   - prometheus_client=0.15.0=pyhd8ed1ab_0
>   - prompt-toolkit=3.0.32=pyha770c72_0
>   - prompt_toolkit=3.0.32=hd8ed1ab_0
387,389c436,438
<   - protobuf=3.20.0=py38hfa26641_4
<   - pscript=0.7.5=pyhd3deb0d_0
<   - psutil=5.9.0=py38h0a891b7_1
---
>   - protobuf=3.20.2=py38hfa26641_0
>   - pscript=0.7.7=pyhd8ed1ab_0
>   - psutil=5.9.4=py38h0a891b7_0
391a441
>   - pulseaudio=14.0=h0d2025b_11
393c443
<   - py=1.11.0=pyh6c4a22f_0
---
>   - pyarrow=9.0.0=py38h097c49a_2_cpu
399,400c449,450
<   - pycurl=7.45.1=py38h61f0cdf_1
<   - pydantic=1.9.0=py38h0a891b7_1
---
>   - pycurl=7.45.1=py38h61f0cdf_3
>   - pydantic=1.10.2=py38h0a891b7_1
402,417c452,469
<   - pygeos=0.10.2=py38hb7fe4a8_0
<   - pygments=2.12.0=pyhd8ed1ab_0
<   - pyjwt=2.3.0=pyhd8ed1ab_1
<   - pynacl=1.5.0=py38h0a891b7_1
<   - pyopenssl=22.0.0=pyhd8ed1ab_0
<   - pyparsing=3.0.8=pyhd8ed1ab_0
<   - pyproj=3.2.1=py38h80797bf_2
<   - pyqt=5.12.3=py38h578d9bd_8
<   - pyqt-impl=5.12.3=py38h0ffb2e6_8
<   - pyqt5-sip=4.19.18=py38h709712a_8
<   - pyqtchart=5.12=py38h7400c14_8
<   - pyqtwebengine=5.12.1=py38h7400c14_8
<   - pyrsistent=0.18.1=py38h0a891b7_1
<   - pyshp=2.3.0=pyhd8ed1ab_0
<   - pysocks=1.7.1=py38h578d9bd_5
<   - pytest=7.1.2=py38h578d9bd_0
---
>   - pydeck=0.8.0=pyhd8ed1ab_0
>   - pygeos=0.13=py38hafd38ec_2
>   - pygments=2.13.0=pyhd8ed1ab_0
>   - pyjwt=2.6.0=pyhd8ed1ab_0
>   - pymetalink=6.4=pyhd8ed1ab_0
>   - pympler=1.0.1=pyhd8ed1ab_0
>   - pynacl=1.5.0=py38h0a891b7_2
>   - pyopenssl=22.1.0=pyhd8ed1ab_0
>   - pyparsing=3.0.9=pyhd8ed1ab_0
>   - pyproj=3.4.0=py38hce0a2d1_2
>   - pyqt=5.15.7=py38h7492b6b_2
>   - pyqt5-sip=12.11.0=py38hfa26641_2
>   - pyrsistent=0.19.2=py38h0a891b7_0
>   - pyshp=2.3.1=pyhd8ed1ab_0
>   - pysocks=1.7.1=pyha2e5f31_6
>   - pyston_lite=2.3.4=py38h0a891b7_1
>   - pyston_lite_autoload=2.3.4=pyh44b312d_1
>   - pytest=7.2.0=pyhd8ed1ab_2
420,421c472,473
<   - python-eccodes=1.4.0=py38h71d37f0_1
<   - python-fastjsonschema=2.15.3=pyhd8ed1ab_0
---
>   - python-eccodes=1.4.2=py38h26c90d9_1
>   - python-fastjsonschema=2.16.2=pyhd8ed1ab_0
422a475,476
>   - python-pptx=0.6.21=pyhd8ed1ab_0
>   - python-tzdata=2022.6=pyhd8ed1ab_0
424c478,479
<   - pytz=2022.1=pyhd8ed1ab_0
---
>   - pytz=2022.6=pyhd8ed1ab_0
>   - pytz-deprecation-shim=0.1.0.post0=py38h578d9bd_3
426,434c481,489
<   - pyviz_comms=2.2.0=pyhd8ed1ab_0
<   - pywavelets=1.3.0=py38h71d37f0_1
<   - pyyaml=6.0=py38h0a891b7_4
<   - pyzmq=22.3.0=py38hfc09fa9_2
<   - qt=5.12.9=hda022c4_4
<   - qtconsole=5.3.0=pyhd8ed1ab_0
<   - qtconsole-base=5.3.0=pyhd8ed1ab_0
<   - qtpy=2.1.0=pyhd8ed1ab_0
<   - rasterio=1.2.10=py38hfd64e68_0
---
>   - pyviz_comms=2.2.1=pyhd8ed1ab_1
>   - pywavelets=1.3.0=py38h26c90d9_2
>   - pyyaml=6.0=py38h0a891b7_5
>   - pyzmq=24.0.1=py38hfc09fa9_1
>   - qt-main=5.15.6=hd477bba_1
>   - qtconsole=5.4.0=pyhd8ed1ab_0
>   - qtconsole-base=5.4.0=pyha770c72_0
>   - qtpy=2.3.0=pyhd8ed1ab_0
>   - rasterio=1.3.3=py38hb7ee17c_3
436,437c491,493
<   - ravenpy=0.7.8=pyh8a188c0_0
<   - readline=8.1=h46c0cb4_0
---
>   - ravenpy=0.9.0=pyha21a80b_0
>   - re2=2022.06.01=h27087fc_0
>   - readline=8.1.2=h0f457ee_0
439c495,496
<   - requests=2.27.1=pyhd8ed1ab_0
---
>   - requests=2.28.1=pyhd8ed1ab_1
>   - requests-magpie=0.2.0=pyhd8ed1ab_0
442,451c499,510
<   - rioxarray=0.11.1=pyhd8ed1ab_0
<   - roocs-utils=0.6.1=pyh6c4a22f_0
<   - rsa=4.8=pyhd8ed1ab_0
<   - rtree=1.0.0=py38h02d302b_1
<   - ruamel.yaml=0.17.21=py38h0a891b7_1
<   - ruamel.yaml.clib=0.2.6=py38h0a891b7_1
<   - s3fs=2022.3.0=pyhd8ed1ab_0
<   - scikit-image=0.19.2=py38h43a58ef_0
<   - scikit-learn=1.0.2=py38h1561384_0
<   - scipy=1.8.0=py38h56a6a73_1
---
>   - rich=12.6.0=pyhd8ed1ab_0
>   - rioxarray=0.13.1=pyhd8ed1ab_0
>   - roocs-utils=0.6.3=pyh1a96a4e_0
>   - rsa=4.9=pyhd8ed1ab_0
>   - rtree=1.0.1=py38h02d302b_1
>   - ruamel.yaml=0.17.21=py38h0a891b7_2
>   - ruamel.yaml.clib=0.2.7=py38h0a891b7_0
>   - s2n=1.0.10=h9b69904_0
>   - s3fs=2022.11.0=pyhd8ed1ab_0
>   - scikit-image=0.19.3=py38h8f669ce_2
>   - scikit-learn=1.1.3=py38h4c4ba11_1
>   - scipy=1.8.1=py38h8ce737c_3
453c512,513
<   - selenium=4.1.0=pyhd8ed1ab_0
---
>   - selenium=4.6.0=pyhd8ed1ab_0
>   - semver=2.13.0=pyh9f0ad1d_0
456c516
<   - shapely=1.7.1=py38hb7fe4a8_5
---
>   - shapely=1.8.5=py38hafd38ec_2
458c518,519
<   - siphon=0.9=py38h578d9bd_1
---
>   - sip=6.7.4=py38hfa26641_0
>   - siphon=0.9=pyhd8ed1ab_2
461,462c522,523
<   - snappy=1.1.8=he1b5a44_3
<   - sniffio=1.2.0=py38h578d9bd_3
---
>   - snappy=1.1.9=hbd366e4_2
>   - sniffio=1.3.0=pyhd8ed1ab_0
465c526
<   - soupsieve=2.3.1=pyhd8ed1ab_0
---
>   - soupsieve=2.3.2.post1=pyhd8ed1ab_0
467,470c528,533
<   - sqlalchemy=1.4.36=py38h0a891b7_0
<   - sqlite=3.38.3=h4ff8645_0
<   - stack_data=0.2.0=pyhd8ed1ab_0
<   - statsmodels=0.13.2=py38h6c62de6_0
---
>   - spotpy=1.6.1=pyhd8ed1ab_0
>   - sqlalchemy=1.4.44=py38h0a891b7_0
>   - sqlite=3.40.0=h4ff8645_0
>   - stack_data=0.6.1=pyhd8ed1ab_0
>   - statsmodels=0.13.5=py38h26c90d9_2
>   - streamlit=1.15.0=pyhd8ed1ab_0
472,473c535,536
<   - tenacity=8.0.1=pyhd8ed1ab_0
<   - terminado=0.13.3=py38h578d9bd_1
---
>   - tenacity=8.1.0=pyhd8ed1ab_0
>   - terminado=0.17.0=pyh41d4057_0
477,478c540,541
<   - tiledb=2.3.4=he87e0bf_0
<   - tinycss2=1.1.1=pyhd8ed1ab_0
---
>   - tiledb=2.11.3=h1e4a385_1
>   - tinycss2=1.2.1=pyhd8ed1ab_0
482c545
<   - toolz=0.11.2=pyhd8ed1ab_0
---
>   - toolz=0.12.0=pyhd8ed1ab_0
484,485c547,548
<   - tqdm=4.64.0=pyhd8ed1ab_0
<   - traitlets=5.1.1=pyhd8ed1ab_0
---
>   - tqdm=4.64.1=pyhd8ed1ab_0
>   - traitlets=5.5.0=pyhd8ed1ab_0
487c550
<   - trio=0.20.0=py38h578d9bd_1
---
>   - trio=0.22.0=py38h578d9bd_1
489,497c552,563
<   - typing-extensions=4.2.0=hd8ed1ab_1
<   - typing_extensions=4.2.0=pyha770c72_1
<   - tzcode=2022a=h166bdaf_0
<   - tzdata=2022a=h191b570_0
<   - ukkonen=1.0.1=py38h43d8883_2
<   - unicodedata2=14.0.0=py38h0a891b7_1
<   - urllib3=1.26.9=pyhd8ed1ab_0
<   - virtualenv=20.14.1=py38h578d9bd_0
<   - voila=0.3.5=pyhd8ed1ab_0
---
>   - typing-extensions=4.4.0=hd8ed1ab_0
>   - typing_extensions=4.4.0=pyha770c72_0
>   - tzcode=2022f=h166bdaf_0
>   - tzdata=2022f=h191b570_0
>   - tzlocal=4.2=py38h578d9bd_2
>   - ukkonen=1.0.1=py38h43d8883_3
>   - unicodedata2=15.0.0=py38h0a891b7_0
>   - urllib3=1.26.11=pyhd8ed1ab_0
>   - validators=0.18.2=pyhd3deb0d_0
>   - virtualenv=20.16.7=py38h578d9bd_0
>   - voila=0.4.0=pyhd8ed1ab_0
>   - watchdog=2.1.9=py38h578d9bd_1
501,503c567,569
<   - websocket-client=1.3.2=pyhd8ed1ab_0
<   - websockets=10.3=py38h0a891b7_0
<   - werkzeug=2.1.2=pyhd8ed1ab_0
---
>   - websocket-client=1.4.2=pyhd8ed1ab_0
>   - websockets=10.4=py38h0a891b7_1
>   - werkzeug=2.2.2=pyhd8ed1ab_0
505,512c571,583
<   - wheel=0.37.1=pyhd8ed1ab_0
<   - widgetsnbextension=3.6.0=py38h578d9bd_0
<   - wrapt=1.14.1=py38h0a891b7_0
<   - wsproto=1.1.0=py38h578d9bd_0
<   - xarray=2022.3.0=pyhd8ed1ab_0
<   - xclim=0.36.0=pyhd8ed1ab_0
<   - xerces-c=3.2.3=h9d8b166_3
<   - xesmf=0.6.2=pyhd8ed1ab_0
---
>   - wheel=0.38.4=pyhd8ed1ab_0
>   - widgetsnbextension=4.0.3=pyhd8ed1ab_0
>   - wrapt=1.14.1=py38h0a891b7_1
>   - wsproto=1.2.0=pyhd8ed1ab_0
>   - xarray=2022.10.0=pyhd8ed1ab_0
>   - xcb-util=0.4.0=h516909a_0
>   - xcb-util-image=0.4.0=h166bdaf_0
>   - xcb-util-keysyms=0.4.0=h516909a_0
>   - xcb-util-renderutil=0.3.9=h166bdaf_0
>   - xcb-util-wm=0.4.1=h516909a_0
>   - xclim=0.39.0=pyhd8ed1ab_0
>   - xerces-c=3.2.4=h55805fa_1
>   - xesmf=0.6.3=pyhd8ed1ab_1
514,516c585,588
<   - xeus-python=0.13.7=py38h9f61dbb_0
<   - xeus-python-shell=0.2.0=pyhd8ed1ab_0
<   - xhistogram=0.3.1=pyhd8ed1ab_0
---
>   - xeus-python=0.14.3=py38h9f61dbb_1
>   - xeus-python-shell=0.5.0=pyhd8ed1ab_0
>   - xeus-python-shell-raw=0.5.0=pyhd8ed1ab_0
>   - xhistogram=0.3.2=pyhd8ed1ab_0
517a590
>   - xlsxwriter=3.0.3=pyhd8ed1ab_0
540c613
<   - xrft=0.4.1=pyhd8ed1ab_0
---
>   - xrft=1.0.0=pyhd8ed1ab_0
542,543c615,616
<   - xyzservices=2022.4.0=pyhd8ed1ab_0
<   - xz=5.2.5=h516909a_1
---
>   - xyzservices=2022.9.0=pyhd8ed1ab_0
>   - xz=5.2.6=h166bdaf_0
545,546c618,619
<   - yarl=1.7.2=py38h0a891b7_2
<   - zarr=2.11.3=pyhd8ed1ab_0
---
>   - yarl=1.8.1=py38h0a891b7_0
>   - zarr=2.13.3=pyhd8ed1ab_0
549,551c622,624
<   - zipp=3.8.0=pyhd8ed1ab_0
<   - zlib=1.2.11=h166bdaf_1014
<   - zstd=1.5.2=ha95c52a_0
---
>   - zipp=3.10.0=pyhd8ed1ab_0
>   - zlib=1.2.13=h166bdaf_4
>   - zstd=1.5.2=h6239696_4
557a631
>     - jupyterlab-tabular-data-editor==1.0.0
560d633
<     - pymetalink==6.4
562d634
<     - requests-magpie==0.1.1
```

- Full new `conda env export`:

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

```
name: birdy
channels:
  - cdat
  - conda-forge
  - defaults
dependencies:
  - _libgcc_mutex=0.1=conda_forge
  - _openmp_mutex=4.5=2_gnu
  - affine=2.3.1=pyhd8ed1ab_0
  - aiobotocore=2.4.0=pyhd8ed1ab_0
  - aiohttp=3.8.3=py38h0a891b7_1
  - aioitertools=0.11.0=pyhd8ed1ab_0
  - aiosignal=1.3.1=pyhd8ed1ab_0
  - alembic=1.8.1=pyhd8ed1ab_0
  - alsa-lib=1.2.8=h166bdaf_0
  - altair=4.2.0=pyhd8ed1ab_1
  - ansi2html=1.8.0=py38h578d9bd_1
  - anyio=3.6.1=pyhd8ed1ab_1
  - appdirs=1.4.4=pyh9f0ad1d_0
  - argon2-cffi=21.3.0=pyhd8ed1ab_0
  - argon2-cffi-bindings=21.2.0=py38h0a891b7_3
  - arrow-cpp=9.0.0=py38he270906_2_cpu
  - asciitree=0.3.3=py_2
  - asttokens=2.1.0=pyhd8ed1ab_0
  - async-timeout=4.0.2=pyhd8ed1ab_0
  - async_generator=1.10=py_0
  - attr=2.5.1=h166bdaf_1
  - attrs=22.1.0=pyh71513ae_1
  - aws-c-cal=0.5.11=h95a6274_0
  - aws-c-common=0.6.2=h7f98852_0
  - aws-c-event-stream=0.2.7=h3541f99_13
  - aws-c-io=0.10.5=hfb6a706_0
  - aws-checksums=0.1.11=ha31a3da_7
  - aws-sdk-cpp=1.8.186=hecaee15_4
  - babel=2.11.0=pyhd8ed1ab_0
  - backcall=0.2.0=pyh9f0ad1d_0
  - backports=1.0=py_2
  - backports.functools_lru_cache=1.6.4=pyhd8ed1ab_0
  - backports.zoneinfo=0.2.1=py38h0a891b7_7
  - bcrypt=3.2.2=py38h0a891b7_1
  - beautifulsoup4=4.11.1=pyha770c72_0
  - bias_correction=0.4=pyhd8ed1ab_0
  - birdy=0.8.1=pyh6c4a22f_1
  - bleach=5.0.1=pyhd8ed1ab_0
  - blinker=1.5=pyhd8ed1ab_0
  - blosc=1.21.1=h83bc5f7_3
  - bokeh=2.4.3=pyhd8ed1ab_3
  - boltons=21.0.0=pyhd8ed1ab_0
  - boost-cpp=1.78.0=h75c5d50_1
  - botocore=1.27.59=pyhd8ed1ab_0
  - bottleneck=1.3.5=py38h26c90d9_1
  - branca=0.6.0=pyhd8ed1ab_0
  - brotli=1.0.9=h166bdaf_8
  - brotli-bin=1.0.9=h166bdaf_8
  - brotli-python=1.0.9=py38hfa26641_8
  - brotlipy=0.7.0=py38h0a891b7_1005
  - bzip2=1.0.8=h7f98852_4
  - c-ares=1.18.1=h7f98852_0
  - ca-certificates=2022.9.24=ha878542_0
  - cached-property=1.5.2=hd8ed1ab_1
  - cached_property=1.5.2=pyha770c72_1
  - cachetools=5.2.0=pyhd8ed1ab_0
  - cairo=1.16.0=ha61ee94_1014
  - cartopy=0.21.0=py38hf6c3373_3
  - cdat_info=8.2.1=pyhd8ed1ab_2
  - cdms2=3.1.5=py38hc1ef740_14
  - cdtime=3.1.4=py38hc54c017_7
  - certifi=2022.9.24=pyhd8ed1ab_0
  - certipy=0.1.3=py_0
  - cf_xarray=0.7.5=pyhd8ed1ab_0
  - cffi=1.15.1=py38h4a40e3a_2
  - cfgrib=0.9.10.2=pyhd8ed1ab_0
  - cfgv=3.3.1=pyhd8ed1ab_0
  - cfitsio=4.2.0=hd9d235c_0
  - cftime=1.6.2=py38h26c90d9_1
  - charset-normalizer=2.1.1=pyhd8ed1ab_0
  - click=8.1.3=unix_pyhd8ed1ab_2
  - click-plugins=1.1.1=py_0
  - cligj=0.7.2=pyhd8ed1ab_1
  - climpred=2.2.0=pyhd8ed1ab_0
  - clisops=0.9.3=pyh1a96a4e_0
  - cloudpickle=2.2.0=pyhd8ed1ab_0
  - colorama=0.4.6=pyhd8ed1ab_0
  - colorcet=3.0.1=pyhd8ed1ab_0
  - commonmark=0.9.1=py_0
  - configurable-http-proxy=4.5.3=he2f69ee_3
  - contourpy=1.0.6=py38h43d8883_0
  - coverage=6.5.0=py38h0a891b7_1
  - cryptography=38.0.3=py38h2b5fc30_0
  - curl=7.86.0=h7bff187_1
  - cycler=0.11.0=pyhd8ed1ab_0
  - cytoolz=0.12.0=py38h0a891b7_1
  - dash=2.7.0=pyhd8ed1ab_0
  - dask=2022.11.0=pyhd8ed1ab_0
  - dask-core=2022.11.0=pyhd8ed1ab_0
  - dask-labextension=6.0.0=pyhd8ed1ab_0
  - dataclasses=0.8=pyhc8e2a94_3
  - datashader=0.14.3=pyh1a96a4e_0
  - datashape=0.5.4=py_1
  - dbus=1.13.6=h5008d03_3
  - debugpy=1.6.3=py38hfa26641_1
  - decorator=5.1.1=pyhd8ed1ab_0
  - defusedxml=0.7.1=pyhd8ed1ab_0
  - descartes=1.1.0=py_4
  - dill=0.3.6=pyhd8ed1ab_1
  - distarray=2.12.2=pyhd8ed1ab_2
  - distlib=0.3.6=pyhd8ed1ab_0
  - distributed=2022.11.0=pyhd8ed1ab_0
  - docopt=0.6.2=py_1
  - docrep=0.3.2=pyh44b312d_0
  - eccodes=2.27.0=h164a9dd_0
  - elfutils=0.186=he364ef2_0
  - entrypoints=0.4=pyhd8ed1ab_0
  - eofs=1.4.0=py_0
  - esgf-compute-api=2.3.9=0_h1234567_
  - esmf=8.2.0=mpi_mpich_h5a1934d_102
  - esmpy=8.2.0=mpi_mpich_py38h9147699_101
  - exceptiongroup=1.0.4=pyhd8ed1ab_0
  - executing=1.2.0=pyhd8ed1ab_0
  - expat=2.5.0=h27087fc_0
  - fasteners=0.17.3=pyhd8ed1ab_0
  - fastprogress=1.0.3=pyhd8ed1ab_0
  - fftw=3.3.10=nompi_hf0379b8_105
  - filelock=3.8.0=pyhd8ed1ab_0
  - findlibs=0.0.2=pyhd8ed1ab_0
  - fiona=1.8.22=py38hc72d8cd_2
  - flask=2.2.2=pyhd8ed1ab_0
  - flask-compress=1.13=pyhd8ed1ab_0
  - flit-core=3.8.0=pyhd8ed1ab_0
  - flox=0.6.3=pyhd8ed1ab_0
  - folium=0.13.0=pyhd8ed1ab_0
  - font-ttf-dejavu-sans-mono=2.37=hab24e00_0
  - font-ttf-inconsolata=3.000=h77eed37_0
  - font-ttf-source-code-pro=2.038=h77eed37_0
  - font-ttf-ubuntu=0.83=hab24e00_0
  - fontconfig=2.14.1=hc2a2eb6_0
  - fonts-conda-ecosystem=1=0
  - fonts-conda-forge=1=0
  - fonttools=4.38.0=py38h0a891b7_1
  - freeglut=3.2.2=h9c3ff4c_1
  - freetype=2.12.1=hca18f0e_0
  - freexl=1.0.6=h166bdaf_1
  - frozenlist=1.3.3=py38h0a891b7_0
  - fsspec=2022.11.0=pyhd8ed1ab_0
  - funcsigs=1.0.2=py_3
  - future=0.18.2=pyhd8ed1ab_6
  - g2clib=1.6.3=heb9ad7a_1
  - gcsfs=2022.11.0=pyhd8ed1ab_0
  - gdal=3.5.3=py38h1f15b03_3
  - geckodriver=0.32.0=h4b87306_0
  - geographiclib=1.52=pyhd8ed1ab_0
  - geopandas=0.12.1=pyhd8ed1ab_1
  - geopandas-base=0.12.1=pyha770c72_1
  - geopy=2.3.0=pyhd8ed1ab_0
  - geos=3.11.1=h27087fc_0
  - geotiff=1.7.1=ha76d385_4
  - geoviews=1.9.5=pyhd8ed1ab_0
  - geoviews-core=1.9.5=pyha770c72_0
  - gettext=0.21.1=h27087fc_0
  - gflags=2.2.2=he1b5a44_1004
  - giflib=5.2.1=h36c2ea0_2
  - gitdb=4.0.9=pyhd8ed1ab_0
  - gitpython=3.1.29=pyhd8ed1ab_0
  - glib=2.74.1=h6239696_1
  - glib-tools=2.74.1=h6239696_1
  - glog=0.6.0=h6f12383_0
  - gnutls=3.7.8=hf3e180e_0
  - google-api-core=2.10.2=pyhd8ed1ab_0
  - google-auth=2.14.1=pyh1a96a4e_0
  - google-auth-oauthlib=0.7.1=pyhd8ed1ab_0
  - google-cloud-core=2.3.2=pyhd8ed1ab_0
  - google-cloud-storage=2.6.0=pyh1a96a4e_0
  - google-crc32c=1.1.2=py38h57c428a_4
  - google-resumable-media=2.4.0=pyhd8ed1ab_0
  - googleapis-common-protos=1.57.0=py38h578d9bd_0
  - greenlet=2.0.1=py38hfa26641_0
  - grpc-cpp=1.47.1=hbad87ad_6
  - grpcio=1.47.1=py38h5b6373e_6
  - gst-plugins-base=1.21.1=h3e40eee_1
  - gstreamer=1.21.1=hd4edc92_1
  - h11=0.14.0=pyhd8ed1ab_0
  - h5netcdf=1.0.2=pyhd8ed1ab_0
  - h5py=3.7.0=nompi_py38h7927eab_102
  - haversine=2.7.0=pyhd8ed1ab_0
  - hdf4=4.2.15=h9772cbc_5
  - hdf5=1.12.2=mpi_mpich_h08b82f9_0
  - heapdict=1.0.1=py_0
  - holoviews=1.15.2=pyhd8ed1ab_0
  - hvplot=0.8.1=pyhd8ed1ab_0
  - icu=70.1=h27087fc_0
  - identify=2.5.9=pyhd8ed1ab_0
  - idna=3.4=pyhd8ed1ab_0
  - imagecodecs-lite=2019.12.3=py38h26c90d9_6
  - imageio=2.22.0=pyhfa7a67d_0
  - importlib-metadata=5.0.0=pyha770c72_1
  - importlib_metadata=5.0.0=hd8ed1ab_1
  - importlib_resources=5.10.0=pyhd8ed1ab_0
  - iniconfig=1.1.1=pyh9f0ad1d_0
  - intake=0.6.6=pyhd8ed1ab_0
  - intake-esm=2021.8.17=pyhd8ed1ab_0
  - intake-geopandas=0.4.0=pyhd8ed1ab_0
  - intake-thredds=2022.8.19=pyhd8ed1ab_0
  - intake-xarray=0.6.1=pyhd8ed1ab_0
  - ipykernel=6.17.1=pyh210e3f2_0
  - ipyleaflet=0.17.2=pyhd8ed1ab_0
  - ipython=8.6.0=pyh41d4057_1
  - ipython_genutils=0.2.0=py_1
  - ipywidgets=8.0.2=pyhd8ed1ab_1
  - itsdangerous=2.1.2=pyhd8ed1ab_0
  - jack=1.9.21=he978b8e_1
  - jasper=2.0.33=ha77e612_0
  - jedi=0.18.1=pyhd8ed1ab_2
  - jinja2=3.1.2=pyhd8ed1ab_1
  - jmespath=1.0.1=pyhd8ed1ab_0
  - joblib=1.2.0=pyhd8ed1ab_0
  - jpeg=9e=h166bdaf_2
  - json-c=0.16=hc379101_0
  - json5=0.9.5=pyh9f0ad1d_0
  - jsonpickle=2.2.0=pyhd8ed1ab_0
  - jsonschema=4.17.0=pyhd8ed1ab_0
  - jupyter=1.0.0=py38h578d9bd_7
  - jupyter-archive=3.3.2=pyhd8ed1ab_0
  - jupyter-dash=0.4.2=pyhd8ed1ab_1
  - jupyter-resource-usage=0.6.4=pyhd8ed1ab_0
  - jupyter-server-mathjax=0.2.6=pyhc268e32_0
  - jupyter-server-proxy=3.2.2=pyhd8ed1ab_0
  - jupyter_bokeh=3.0.5=pyhd8ed1ab_0
  - jupyter_client=7.3.4=pyhd8ed1ab_0
  - jupyter_console=6.4.4=pyhd8ed1ab_0
  - jupyter_core=5.0.0=py38h578d9bd_0
  - jupyter_server=1.23.2=pyhd8ed1ab_0
  - jupyter_telemetry=0.1.0=pyhd8ed1ab_1
  - jupyterhub=3.0.0=pyh2a2186d_1
  - jupyterhub-base=3.0.0=pyh2a2186d_1
  - jupyterlab=3.5.0=pyhd8ed1ab_0
  - jupyterlab-git=0.39.3=pyhd8ed1ab_0
  - jupyterlab-system-monitor=0.8.0=pyhd8ed1ab_2
  - jupyterlab-topbar=0.6.1=pyhd8ed1ab_2
  - jupyterlab_pygments=0.2.2=pyhd8ed1ab_0
  - jupyterlab_server=2.16.3=pyhd8ed1ab_0
  - jupyterlab_widgets=3.0.3=pyhd8ed1ab_0
  - jupytext=1.14.0=pyheef035f_0
  - kealib=1.4.15=ha7026e8_1
  - keyutils=1.6.1=h166bdaf_0
  - kiwisolver=1.4.4=py38h43d8883_1
  - krb5=1.19.3=h3790be6_0
  - lame=3.100=h166bdaf_1003
  - lazy-object-proxy=1.8.0=py38h0a891b7_0
  - lcms2=2.14=h6ed2654_0
  - ld_impl_linux-64=2.39=hc81fddc_0
  - lerc=4.0.0=h27087fc_0
  - libabseil=20220623.0=cxx17_h48a1fff_5
  - libaec=1.0.6=h9c3ff4c_0
  - libarchive=3.5.2=hb890918_3
  - libblas=3.9.0=16_linux64_openblas
  - libbrotlicommon=1.0.9=h166bdaf_8
  - libbrotlidec=1.0.9=h166bdaf_8
  - libbrotlienc=1.0.9=h166bdaf_8
  - libcap=2.66=ha37c62d_0
  - libcblas=3.9.0=16_linux64_openblas
  - libcdms=3.1.2=h2973bc7_118
  - libcf=1.0.3=py38h0c3d773_115
  - libclang=15.0.5=default_h2e3cab8_0
  - libclang13=15.0.5=default_h3a83d3e_0
  - libcrc32c=1.1.2=h9c3ff4c_0
  - libcups=2.3.3=h3e49a29_2
  - libcurl=7.86.0=h7bff187_1
  - libdap4=3.20.6=hd7c4107_2
  - libdb=6.2.32=h9c3ff4c_0
  - libdeflate=1.14=h166bdaf_0
  - libdrm=2.4.114=h166bdaf_0
  - libdrs=3.1.2=hf593df3_118
  - libdrs_f=3.1.2=h7e76ec7_114
  - libedit=3.1.20191231=he28a2e2_2
  - libev=4.33=h516909a_1
  - libevent=2.1.10=h9b69904_4
  - libffi=3.4.2=h7f98852_5
  - libflac=1.4.2=h27087fc_0
  - libgcc-ng=12.2.0=h65d4601_19
  - libgdal=3.5.3=hcb70f40_3
  - libgfortran-ng=12.2.0=h69a702a_19
  - libgfortran5=12.2.0=h337968e_19
  - libglib=2.74.1=h606061b_1
  - libglu=9.0.0=he1b5a44_1001
  - libgomp=12.2.0=h65d4601_19
  - libgoogle-cloud=2.1.0=h9ebe8e8_2
  - libiconv=1.17=h166bdaf_0
  - libidn2=2.3.4=h166bdaf_0
  - libkml=1.3.0=h37653c0_1015
  - liblapack=3.9.0=16_linux64_openblas
  - libllvm11=11.1.0=he0ac6c6_5
  - libllvm15=15.0.5=h63197d8_0
  - libmicrohttpd=0.9.75=h2603550_1
  - libnetcdf=4.8.1=mpi_mpich_hcd871d9_6
  - libnghttp2=1.47.0=hdcd2b5c_1
  - libnsl=2.0.0=h7f98852_0
  - libogg=1.3.4=h7f98852_1
  - libopenblas=0.3.21=pthreads_h78a6416_3
  - libopus=1.3.1=h7f98852_1
  - libpciaccess=0.17=h166bdaf_0
  - libpng=1.6.38=h753d276_0
  - libpq=14.5=hd77ab85_1
  - libprotobuf=3.20.2=h6239696_0
  - librttopo=1.1.0=ha49c73b_12
  - libsndfile=1.1.0=h27087fc_0
  - libsodium=1.0.18=h36c2ea0_1
  - libspatialindex=1.9.3=h9c3ff4c_4
  - libspatialite=5.0.1=h7c8129e_22
  - libsqlite=3.40.0=h753d276_0
  - libssh2=1.10.0=haa6b8db_3
  - libstdcxx-ng=12.2.0=h46fd767_19
  - libtasn1=4.19.0=h166bdaf_0
  - libthrift=0.16.0=h491838f_2
  - libtiff=4.4.0=h55922b4_4
  - libtool=2.4.6=h9c3ff4c_1008
  - libudev1=252=h166bdaf_0
  - libunistring=0.9.10=h7f98852_0
  - libutf8proc=2.8.0=h166bdaf_0
  - libuuid=2.32.1=h7f98852_1000
  - libuv=1.44.2=h166bdaf_0
  - libvorbis=1.3.7=h9c3ff4c_0
  - libwebp-base=1.2.4=h166bdaf_0
  - libxcb=1.13=h7f98852_1004
  - libxkbcommon=1.0.3=he3ba5ed_0
  - libxml2=2.10.3=h7463322_0
  - libxslt=1.1.37=h873f0b0_0
  - libzip=1.9.2=hc869a4a_1
  - libzlib=1.2.13=h166bdaf_4
  - llvmlite=0.39.1=py38h38d86a4_1
  - locket=1.0.0=pyhd8ed1ab_0
  - loguru=0.6.0=py38h578d9bd_2
  - lxml=4.9.1=py38ha9ef780_1
  - lz4=4.0.2=py38h1bf946c_0
  - lz4-c=1.9.3=h9c3ff4c_1
  - lzo=2.10=h516909a_1000
  - mako=1.2.4=pyhd8ed1ab_0
  - mamba_gator=5.2.0=pyhd8ed1ab_0
  - mapclassify=2.4.3=pyhd8ed1ab_0
  - markdown=3.4.1=pyhd8ed1ab_0
  - markdown-it-py=2.1.0=pyhd8ed1ab_0
  - markupsafe=2.1.1=py38h0a891b7_2
  - matplotlib=3.6.2=py38h578d9bd_0
  - matplotlib-base=3.6.2=py38hb021067_0
  - matplotlib-inline=0.1.6=pyhd8ed1ab_0
  - mdit-py-plugins=0.3.1=pyhd8ed1ab_0
  - mdurl=0.1.0=pyhd8ed1ab_0
  - memory_profiler=0.61.0=pyhd8ed1ab_0
  - mesalib=21.2.5=h0e4506f_3
  - mistune=2.0.4=pyhd8ed1ab_0
  - mpg123=1.30.2=h27087fc_1
  - mpi=1.0=mpich
  - mpi4py=3.1.4=py38h97ac3a3_0
  - mpich=4.0.3=h846660c_100
  - msgpack-python=1.0.4=py38h43d8883_1
  - multidict=6.0.2=py38h0a891b7_2
  - multipledispatch=0.6.0=py_0
  - multiprocess=0.70.14=py38h0a891b7_3
  - munch=2.5.0=py_0
  - munkres=1.1.4=pyh9f0ad1d_0
  - mysql-common=8.0.31=haf5c9bc_0
  - mysql-libs=8.0.31=h28c427c_0
  - nbclassic=0.4.8=pyhd8ed1ab_0
  - nbclient=0.7.0=pyhd8ed1ab_0
  - nbconvert=7.2.5=pyhd8ed1ab_0
  - nbconvert-core=7.2.5=pyhd8ed1ab_0
  - nbconvert-pandoc=7.2.5=pyhd8ed1ab_0
  - nbdime=3.1.1=pyhd8ed1ab_0
  - nbformat=5.7.0=pyhd8ed1ab_0
  - nbresuse=0.4.0=pyhd8ed1ab_0
  - nbval=0.9.6=pyh9f0ad1d_0
  - nc-time-axis=1.4.1=pyhd8ed1ab_0
  - ncurses=6.3=h27087fc_1
  - nest-asyncio=1.5.6=pyhd8ed1ab_0
  - nested_dict=1.61=pyhd3deb0d_0
  - netcdf-fortran=4.6.0=mpi_mpich_hd09bd1e_1
  - netcdf4=1.6.2=nompi_py38h2250339_100
  - nettle=3.8.1=hc379101_1
  - networkx=2.8.8=pyhd8ed1ab_0
  - nodeenv=1.7.0=pyhd8ed1ab_0
  - nodejs=18.12.1=h96d913c_0
  - notebook=6.5.2=pyha770c72_1
  - notebook-shim=0.2.2=pyhd8ed1ab_0
  - nspr=4.32=h9c3ff4c_1
  - nss=3.78=h2350873_0
  - numba=0.56.3=py38h9a4aae9_0
  - numcodecs=0.10.2=py38hfa26641_0
  - numpy=1.23.4=py38h7042d01_1
  - numpy_groupies=0.9.20=pyhd8ed1ab_0
  - oauthlib=3.2.2=pyhd8ed1ab_0
  - openblas=0.3.21=pthreads_h320a7e8_3
  - openjpeg=2.5.0=h7d73246_1
  - openssl=1.1.1s=h166bdaf_0
  - orc=1.7.6=h6c59b99_0
  - ostrich=21.03.16=h4bd325d_1
  - outcome=1.2.0=pyhd8ed1ab_0
  - owslib=0.27.2=pyhd8ed1ab_1
  - p11-kit=0.24.1=hc5aa10d_0
  - packaging=21.3=pyhd8ed1ab_0
  - pamela=1.0.0=py_0
  - pandas=1.3.5=py38h43a58ef_0
  - pandoc=2.19.2=h32600fe_1
  - pandocfilters=1.5.0=pyhd8ed1ab_0
  - panel=0.14.1=pyhd8ed1ab_0
  - param=1.12.2=pyh6c4a22f_0
  - paramiko=2.12.0=pyhd8ed1ab_0
  - parquet-cpp=1.5.1=2
  - parso=0.8.3=pyhd8ed1ab_0
  - partd=1.3.0=pyhd8ed1ab_0
  - pathos=0.3.0=pyhd8ed1ab_0
  - patsy=0.5.3=pyhd8ed1ab_0
  - pcre=8.45=h9c3ff4c_0
  - pcre2=10.40=hc3806b6_0
  - pexpect=4.8.0=pyh1a96a4e_2
  - pickleshare=0.7.5=py_1003
  - pillow=9.2.0=py38h9eb91d8_3
  - pint=0.20.1=pyhd8ed1ab_0
  - pip=22.3.1=pyhd8ed1ab_0
  - pixman=0.40.0=h36c2ea0_0
  - pkgutil-resolve-name=1.3.10=pyhd8ed1ab_0
  - platformdirs=2.5.2=pyhd8ed1ab_1
  - plotly=5.11.0=pyhd8ed1ab_0
  - pluggy=1.0.0=pyhd8ed1ab_5
  - ply=3.11=py_1
  - pooch=1.6.0=pyhd8ed1ab_0
  - poppler=22.11.0=h92391eb_0
  - poppler-data=0.4.11=hd8ed1ab_0
  - postgresql=14.5=hdeef612_1
  - pox=0.3.2=pyhd8ed1ab_0
  - ppft=1.7.6.6=pyhd8ed1ab_0
  - pre-commit=2.20.0=py38h578d9bd_1
  - proj=9.1.0=h93bde94_0
  - prometheus_client=0.15.0=pyhd8ed1ab_0
  - prompt-toolkit=3.0.32=pyha770c72_0
  - prompt_toolkit=3.0.32=hd8ed1ab_0
  - properscoring=0.1=py_0
  - protobuf=3.20.2=py38hfa26641_0
  - pscript=0.7.7=pyhd8ed1ab_0
  - psutil=5.9.4=py38h0a891b7_0
  - pthread-stubs=0.4=h36c2ea0_1001
  - ptyprocess=0.7.0=pyhd3deb0d_0
  - pulseaudio=14.0=h0d2025b_11
  - pure_eval=0.2.2=pyhd8ed1ab_0
  - pyarrow=9.0.0=py38h097c49a_2_cpu
  - pyasn1=0.4.8=py_0
  - pyasn1-modules=0.2.7=py_0
  - pycparser=2.21=pyhd8ed1ab_0
  - pyct=0.4.6=py_0
  - pyct-core=0.4.6=py_0
  - pycurl=7.45.1=py38h61f0cdf_3
  - pydantic=1.10.2=py38h0a891b7_1
  - pydap=3.3.0=pyhd8ed1ab_0
  - pydeck=0.8.0=pyhd8ed1ab_0
  - pygeos=0.13=py38hafd38ec_2
  - pygments=2.13.0=pyhd8ed1ab_0
  - pyjwt=2.6.0=pyhd8ed1ab_0
  - pymetalink=6.4=pyhd8ed1ab_0
  - pympler=1.0.1=pyhd8ed1ab_0
  - pynacl=1.5.0=py38h0a891b7_2
  - pyopenssl=22.1.0=pyhd8ed1ab_0
  - pyparsing=3.0.9=pyhd8ed1ab_0
  - pyproj=3.4.0=py38hce0a2d1_2
  - pyqt=5.15.7=py38h7492b6b_2
  - pyqt5-sip=12.11.0=py38hfa26641_2
  - pyrsistent=0.19.2=py38h0a891b7_0
  - pyshp=2.3.1=pyhd8ed1ab_0
  - pysocks=1.7.1=pyha2e5f31_6
  - pyston_lite=2.3.4=py38h0a891b7_1
  - pyston_lite_autoload=2.3.4=pyh44b312d_1
  - pytest=7.2.0=pyhd8ed1ab_2
  - python=3.8.13=h582c2e5_0_cpython
  - python-dateutil=2.8.2=pyhd8ed1ab_0
  - python-eccodes=1.4.2=py38h26c90d9_1
  - python-fastjsonschema=2.16.2=pyhd8ed1ab_0
  - python-json-logger=2.0.1=pyh9f0ad1d_0
  - python-pptx=0.6.21=pyhd8ed1ab_0
  - python-tzdata=2022.6=pyhd8ed1ab_0
  - python_abi=3.8=2_cp38
  - pytz=2022.6=pyhd8ed1ab_0
  - pytz-deprecation-shim=0.1.0.post0=py38h578d9bd_3
  - pyu2f=0.1.5=pyhd8ed1ab_0
  - pyviz_comms=2.2.1=pyhd8ed1ab_1
  - pywavelets=1.3.0=py38h26c90d9_2
  - pyyaml=6.0=py38h0a891b7_5
  - pyzmq=24.0.1=py38hfc09fa9_1
  - qt-main=5.15.6=hd477bba_1
  - qtconsole=5.4.0=pyhd8ed1ab_0
  - qtconsole-base=5.4.0=pyha770c72_0
  - qtpy=2.3.0=pyhd8ed1ab_0
  - rasterio=1.3.3=py38hb7ee17c_3
  - raven-hydro=3.0.4.322=ha46ed4c_2
  - ravenpy=0.9.0=pyha21a80b_0
  - re2=2022.06.01=h27087fc_0
  - readline=8.1.2=h0f457ee_0
  - regionmask=0.9.0=pyhd8ed1ab_0
  - requests=2.28.1=pyhd8ed1ab_1
  - requests-magpie=0.2.0=pyhd8ed1ab_0
  - requests-oauthlib=1.3.1=pyhd8ed1ab_0
  - retrying=1.3.3=py_2
  - rich=12.6.0=pyhd8ed1ab_0
  - rioxarray=0.13.1=pyhd8ed1ab_0
  - roocs-utils=0.6.3=pyh1a96a4e_0
  - rsa=4.9=pyhd8ed1ab_0
  - rtree=1.0.1=py38h02d302b_1
  - ruamel.yaml=0.17.21=py38h0a891b7_2
  - ruamel.yaml.clib=0.2.7=py38h0a891b7_0
  - s2n=1.0.10=h9b69904_0
  - s3fs=2022.11.0=pyhd8ed1ab_0
  - scikit-image=0.19.3=py38h8f669ce_2
  - scikit-learn=1.1.3=py38h4c4ba11_1
  - scipy=1.8.1=py38h8ce737c_3
  - scp=0.14.4=pyhd8ed1ab_0
  - selenium=4.6.0=pyhd8ed1ab_0
  - semver=2.13.0=pyh9f0ad1d_0
  - send2trash=1.8.0=pyhd8ed1ab_0
  - setuptools=59.8.0=py38h578d9bd_1
  - shapely=1.8.5=py38hafd38ec_2
  - simpervisor=0.4=pyhd8ed1ab_0
  - sip=6.7.4=py38hfa26641_0
  - siphon=0.9=pyhd8ed1ab_2
  - six=1.16.0=pyh6c4a22f_0
  - smmap=3.0.5=pyh44b312d_0
  - snappy=1.1.9=hbd366e4_2
  - sniffio=1.3.0=pyhd8ed1ab_0
  - snuggs=1.4.7=py_0
  - sortedcontainers=2.4.0=pyhd8ed1ab_0
  - soupsieve=2.3.2.post1=pyhd8ed1ab_0
  - sparse=0.13.0=pyhd8ed1ab_0
  - spotpy=1.6.1=pyhd8ed1ab_0
  - sqlalchemy=1.4.44=py38h0a891b7_0
  - sqlite=3.40.0=h4ff8645_0
  - stack_data=0.6.1=pyhd8ed1ab_0
  - statsmodels=0.13.5=py38h26c90d9_2
  - streamlit=1.15.0=pyhd8ed1ab_0
  - tblib=1.7.0=pyhd8ed1ab_0
  - tenacity=8.1.0=pyhd8ed1ab_0
  - terminado=0.17.0=pyh41d4057_0
  - threadpoolctl=3.1.0=pyh8a188c0_0
  - threddsclient=0.4.2=py_0
  - tifffile=2020.6.3=py_0
  - tiledb=2.11.3=h1e4a385_1
  - tinycss2=1.2.1=pyhd8ed1ab_0
  - tk=8.6.12=h27826a3_0
  - toml=0.10.2=pyhd8ed1ab_0
  - tomli=2.0.1=pyhd8ed1ab_0
  - toolz=0.12.0=pyhd8ed1ab_0
  - tornado=6.1=py38h0a891b7_3
  - tqdm=4.64.1=pyhd8ed1ab_0
  - traitlets=5.5.0=pyhd8ed1ab_0
  - traittypes=0.2.1=pyh9f0ad1d_2
  - trio=0.22.0=py38h578d9bd_1
  - trio-websocket=0.9.2=pyhd8ed1ab_0
  - typing-extensions=4.4.0=hd8ed1ab_0
  - typing_extensions=4.4.0=pyha770c72_0
  - tzcode=2022f=h166bdaf_0
  - tzdata=2022f=h191b570_0
  - tzlocal=4.2=py38h578d9bd_2
  - ukkonen=1.0.1=py38h43d8883_3
  - unicodedata2=15.0.0=py38h0a891b7_0
  - urllib3=1.26.11=pyhd8ed1ab_0
  - validators=0.18.2=pyhd3deb0d_0
  - virtualenv=20.16.7=py38h578d9bd_0
  - voila=0.4.0=pyhd8ed1ab_0
  - watchdog=2.1.9=py38h578d9bd_1
  - wcwidth=0.2.5=pyh9f0ad1d_2
  - webencodings=0.5.1=py_1
  - webob=1.8.7=pyhd8ed1ab_0
  - websocket-client=1.4.2=pyhd8ed1ab_0
  - websockets=10.4=py38h0a891b7_1
  - werkzeug=2.2.2=pyhd8ed1ab_0
  - wget=1.20.3=ha56f1ee_1
  - wheel=0.38.4=pyhd8ed1ab_0
  - widgetsnbextension=4.0.3=pyhd8ed1ab_0
  - wrapt=1.14.1=py38h0a891b7_1
  - wsproto=1.2.0=pyhd8ed1ab_0
  - xarray=2022.10.0=pyhd8ed1ab_0
  - xcb-util=0.4.0=h516909a_0
  - xcb-util-image=0.4.0=h166bdaf_0
  - xcb-util-keysyms=0.4.0=h516909a_0
  - xcb-util-renderutil=0.3.9=h166bdaf_0
  - xcb-util-wm=0.4.1=h516909a_0
  - xclim=0.39.0=pyhd8ed1ab_0
  - xerces-c=3.2.4=h55805fa_1
  - xesmf=0.6.3=pyhd8ed1ab_1
  - xeus=2.4.1=h70bab47_0
  - xeus-python=0.14.3=py38h9f61dbb_1
  - xeus-python-shell=0.5.0=pyhd8ed1ab_0
  - xeus-python-shell-raw=0.5.0=pyhd8ed1ab_0
  - xhistogram=0.3.2=pyhd8ed1ab_0
  - xlrd=2.0.1=pyhd8ed1ab_3
  - xlsxwriter=3.0.3=pyhd8ed1ab_0
  - xorg-damageproto=1.2.1=h7f98852_1002
  - xorg-fixesproto=5.0=h7f98852_1002
  - xorg-glproto=1.4.17=h7f98852_1002
  - xorg-inputproto=2.3.2=h7f98852_1002
  - 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-libxdamage=1.1.5=h7f98852_1
  - xorg-libxdmcp=1.1.3=h7f98852_0
  - xorg-libxext=1.3.4=h7f98852_1
  - xorg-libxfixes=5.0.3=h7f98852_1004
  - xorg-libxi=1.7.10=h7f98852_0
  - xorg-libxrandr=1.5.2=h7f98852_1
  - xorg-libxrender=0.9.10=h7f98852_1003
  - xorg-randrproto=1.5.0=h7f98852_1001
  - xorg-renderproto=0.11.1=h7f98852_1002
  - xorg-util-macros=1.19.3=h7f98852_0
  - xorg-xextproto=7.3.0=h7f98852_1002
  - xorg-xf86vidmodeproto=2.3.1=h7f98852_1002
  - xorg-xproto=7.0.31=h7f98852_1007
  - xrft=1.0.0=pyhd8ed1ab_0
  - xskillscore=0.0.24=pyhd8ed1ab_0
  - xyzservices=2022.9.0=pyhd8ed1ab_0
  - xz=5.2.6=h166bdaf_0
  - yaml=0.2.5=h7f98852_2
  - yarl=1.8.1=py38h0a891b7_0
  - zarr=2.13.3=pyhd8ed1ab_0
  - zeromq=4.3.4=h9c3ff4c_1
  - zict=2.2.0=pyhd8ed1ab_0
  - zipp=3.10.0=pyhd8ed1ab_0
  - zlib=1.2.13=h166bdaf_4
  - zstd=1.5.2=h6239696_4
  - pip:
    - astunparse==1.6.3
    - colour==0.1.5
    - geojson==2.5.0
    - ipython-blocking==0.3.1
    - jupyterlab-logout==0.5.0
    - jupyterlab-tabular-data-editor==1.0.0
    - jupyternotify==0.1.15
    - pixiedust==1.1.19
    - pytest-tornasync==0.6.0.post2
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

4 participants