-
Notifications
You must be signed in to change notification settings - Fork 12
update notebook outputs - PAVICS image py311-250422 #562
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
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Check out this pull request on See visual diffs & provide feedback on Jupyter Notebooks. Powered by ReviewNB |
Merged
2 tasks
tlvu
approved these changes
Apr 23, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Should this be synchronized merge with Ouranosinc/PAVICS-e2e-workflow-tests#147 instead? |
Zeitsperre
added a commit
to Ouranosinc/PAVICS-e2e-workflow-tests
that referenced
this pull request
Apr 28, 2025
# Overview <!-- NOTE: Remember to tag 'release-py###-######' on the commit of this merge. --> ## Changes - Removes several obsolete `pip` and `conda` dependencies from the `environment.yml` and adds a lot more metadata to each entry. - The only remaining `PyPI`-provided libraries are now: - `figanos` → conda-forge/staged-recipes#29826 (comment) - `ipython-blocking` - `xncml` → plans to port to `conda-forge` - `Dockerfile` and `Dockerfile.testing`: Removed the `defaults` Anaconda channel and added `nodefaults` channel. - Relevant blog article: https://ubinfie.github.io/2024/10/15/anaconda-defaults.html - There is an issue with `miniforge`/`mambaforge` using a nonstandard location for setting `channels`. This makes it much harder to fully remove `defaults` in a docker-based environment. Setting `nodefaults` above `defaults` in the priority list is a workaround. Perhaps this will be fixed eventually. - Jupyter env changes: - Channels now includes `fortiers` for the `fstd2nc` library (previously installed via PyPI). - Relevant changes (alphabetical order): ```diff > - cf-units=3.3.0=py311h9f3472d_0 < - cf_xarray=0.10.0=pyhd8ed1ab_0 > - cf_xarray=0.10.5=pyhd8ed1ab_0 < - dash=2.18.1=pyhd8ed1ab_0 > - dash=3.0.3=pyhd8ed1ab_0 < - dask=2024.10.0=pyhd8ed1ab_0 < - dask-core=2024.10.0=pyhd8ed1ab_0 < - dask-expr=1.1.16=pyhd8ed1ab_0 > - dask=2025.4.0=pyhd8ed1ab_0 > - dask-core=2025.4.0=pyhd8ed1ab_0 < - distributed=2024.10.0=pyhd8ed1ab_0 > - distributed=2025.4.0=pyhd8ed1ab_0 # ECCC libraries < - fstd2nc==0.20240625.5=pypi < - fstd2nc-deps==0.20200304.6=pypi > - eccc_libburpc=1.17=0 > - eccc_libezinterpv=20.0.1.1=hdcf949b_2 > - eccc_librmn=20.0.3=0 > - eccc_libtdpack=1.6.3.1=0 > - eccc_libvgrid=6.9.3=0 > - eccc_rpnpy=2.2.0=py311h48b7412_1 > - eccc_support_libs=2023.12.0=0 < - eccodes=2.38.3=h8bb6dbc_1 > - eccodes=2.41.0=h8bb6dbc_0 < - esmf=8.6.1=nompi_h4441c20_3 < - esmpy=8.6.1=pyhc1e730c_0 > - esmf=8.8.1=mpi_mpich_h7cf99a1_100 > - esmpy=8.8.1=pyhecae5ae_0 < - figanos=0.3.0=pypi > - figanos=0.4.0=pypi < - fiona=1.9.5=py311hf8e0aa6_2 > - fiona=1.10.1=py311hf6089d3_3 < - flox=0.9.14=pyhd8ed1ab_0 > - flox=0.10.1=pyhd8ed1ab_0 < - gdal=3.8.5=py311hf92cf48_11 > - gdal=3.10.3=py311hef8459e_3 < - geoviews=1.13.0=hd8ed1ab_0 < - geoviews-core=1.13.0=pyha770c72_0 > - geoviews=1.14.0=hd8ed1ab_0 > - geoviews-core=1.14.0=pyha770c72_0 < - holoviews=1.20.0=pyhd8ed1ab_0 > - holoviews=1.20.2=pyhd8ed1ab_0 < - intake=0.7.0=pyhd8ed1ab_0 < - intake-esm=2024.2.6=pyhd8ed1ab_1 < - intake-geopandas=0.4.0=pyhd8ed1ab_0 < - intake-thredds=2024.3.1=pyhd8ed1ab_0 > - intake=2.0.8=pyhd8ed1ab_0 > - intake-esm=2025.2.3=pyhd8ed1ab_0 > - intake-geopandas=0.4.0=pyhd8ed1ab_1 > - intake-thredds=2025.2.18=pyhd8ed1ab_0 < - matplotlib=3.9.2=py311h38be061_2 < - matplotlib-base=3.9.2=py311h2b939e6_2 > - matplotlib=3.10.1=py311h38be061_0 > - matplotlib-base=3.10.1=py311h2b939e6_0 < - netcdf4=1.6.5=nompi_py311h74118c1_102 > - netcdf4=1.7.2=nompi_py311hae66bec_101 < - numba=0.60.0=py311h4bc866e_0 > - numba=0.61.2=py311h4e1c48f_0 # This is due to pinning in figanos for `numpy <2.0.0` < - numpy=1.26.4=py311h64a7726_0 > - numpy=1.26.4=pypi < - pint=0.23=pyhd8ed1ab_1 > - pint=0.24.4=pyhd8ed1ab_1 < - proj=9.4.0=hb784bbd_2 > - proj=9.6.0=h0054346_1 < - pyarrow=17.0.0=py311hbd00459_2 < - pyarrow-core=17.0.0=py311h4854187_2_cpu > - pyarrow=19.0.1=py311h38be061_0 > - pyarrow-core=19.0.1=py311h4854187_0_cpu < - pydantic==2.7.4=pypi < - pydantic-core==2.18.4=pypi > - pydantic=2.11.3=pyh3cfb1c2_0 > - pydantic-core=2.33.1=py311h687327b_0 < - pymetalink=6.5.2=pyhd8ed1ab_0 > - pymetalink=6.5.3=pyhd8ed1ab_0 < - pyogrio=0.7.2=py311hf8e0aa6_1 > - pyogrio=0.10.0=py311hf6089d3_1 < - pyproj=3.6.1=py311hc21b84f_7 > - pyproj=3.7.1=py311h0960b38_1 < - pytest-tornasync=0.6.0.post2=pypi > - pytest-tornasync=0.6.0.post2=pyhd8ed1ab_1 < - raven-hydro=0.3.2=py311h81cb690_1 > - raven-hydro=0.4.0=py311h81cb690_0 < - ravenpy=0.16.0=pyhd8ed1ab_0 > - ravenpy=0.18.1=pyhd8ed1ab_0 # Obsolete and archived < - roocs-utils=0.6.9=pyhd8ed1ab_0 < - s3fs=2024.10.0=pyhd8ed1ab_0 > - s3fs=2025.3.2=pyhd8ed1ab_0 < - scikit-image=0.24.0=py311h7db5c69_3 < - scikit-learn=1.5.2=py311h57cc02b_1 > - scikit-image=0.25.2=py311h7db5c69_0 > - scikit-learn=1.6.1=py311h57cc02b_0 < - scipy=1.14.1=py311he9a78e4_1 > - scipy=1.15.2=py311h8f841c2_0 < - shapely=2.0.4=py311h0bed3d6_1 > - shapely=2.1.0=py311h3dc67b8_0 # Downgrade < - streamlit=1.40.0=pyhd8ed1ab_0 > - streamlit=1.8.0=pyhd8ed1ab_0 < - xarray=2024.9.0=pyhd8ed1ab_1 > - xarray=2025.3.0=pyhd8ed1ab_0 < - xclim=0.53.2=pyhd8ed1ab_0 > - xclim=0.56.0=pyhd8ed1ab_0 < - xesmf=0.8.8=pyhd8ed1ab_0 > - xesmf=0.8.9=pyhd8ed1ab_0 < - xscen=0.10.1=pyhd8ed1ab_0 > - xscen=0.12.1=pyhd8ed1ab_0 < - xsdata=24.11=pypi > - xsdata=25.4=pyhd8ed1ab_0 # New requirement for xscen > - xsdba=0.4.0=pyhd8ed1ab_0 < - zarr=2.18.3=pyhd8ed1ab_0 > - zarr=2.18.7=pyhd8ed1ab_0 ``` ## Test - [x] Deployed as "gamma" image in p 8000 roduction for bokeh visualization performance regression testing. - [x] 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 (only known intermittent esgf-dap.ipynb) https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/blob/1ef212852e07fae3c1bc26de8501228df6f8e0e1/docker/saved_buildout/jenkins-buildlogs-default.txt - esgf-dap issue: Ouranosinc/pavics-sdi#353 ## Related Issue / Discussion - Matching notebook fixes: - Pavics-sdi: Ouranosinc/pavics-sdi#352 - Finch: N/A - PAVICS-landing: Ouranosinc/PAVICS-landing#107 - RavenPy: CSHS-CWRA/RavenPy#484 - Raven: Ouranosinc/raven#562 - Deployment to PAVICS: bird-house/birdhouse-deploy#526 - Other issues found while working on this one - `xesmf` 0.8.7 is incompatible with the latest versions of `xarray` (2025.3.0) and `numba` (61.0). `xesmf` 0.8.8 is broken and excluded via `xscen` dependency pins. - pangeo-data/xESMF#426 - The PyPI library for `fstd2nc` was replaced with the `conda` package (provided via `fortiers`). `fstd2nc==0.20250310.0_0` was found to be missing a necessary module. - neishm/fstd2nc#104 (comment) - Previous release: #137 ## Additional Information Full diff conda env export: release-py311-241111...1ef2128 Full new conda env export: https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/blob/1ef212852e07fae3c1bc26de8501228df6f8e0e1/docker/saved_buildout/conda-env-export.yml DockerHub build log https://github.com/Ouranosinc/PAVICS-e2e-workflow-tests/blob/1ef212852e07fae3c1bc26de8501228df6f8e0e1/docker/saved_buildout/docker-buildlogs.txt
Zeitsperre
added a commit
to bird-house/birdhouse-deploy
that referenced
this pull request
Apr 28, 2025
## Overview This PR updates the Jupyter env image with several new versions of dependencies. The Anaconda environment has been overhauled to rely more on native Anaconda packages and to remove many old/incompatible packages. ## Changes **The version in this PR has not yet been bumped** _Not adding things here under breaking/non-breaking, as I'm not certain what constitutes either type of change (though I would tend towards these being breaking changes for scientists)_ - Updates the Jupyter environment for PAVICS to py311-250423 - Anaconda channels now include `nodefaults` and `fortiers` (for `fstd2nc` library). - Many obsolete and incompatible plugins and dependencies have been removed, including many `PyPI`-provided packages. - The next major release will be built entirely (or almost entirely) from Anaconda packages. ## Related Issue / Discussion Ouranosinc/PAVICS-e2e-workflow-tests#147 ## Additional Information - Matching notebook fixes: - Pavics-sdi: Ouranosinc/pavics-sdi#352 - PAVICS-landing: Ouranosinc/PAVICS-landing#107 - RavenPy: CSHS-CWRA/RavenPy#484 - Raven: Ouranosinc/raven#562 ## CI Operations <!-- The test suite can be run using a different DACCS config with ``birdhouse_daccs_configs_branch: branch_name`` in the PR description. To globally skip the test suite regardless of the commit message use ``birdhouse_skip_ci`` set to ``true`` in the PR description. Using ``[<cmd>]`` (with the brackets) where ``<cmd> = skip ci`` in the commit message will override ``birdhouse_skip_ci`` from the PR description. Such commit command can be used to override the PR description behavior for a specific commit update. However, a commit message cannot 'force run' a PR which the description turns off the CI. To run the CI, the PR should instead be updated with a ``true`` value, and a running message can be posted in following PR comments to trigger tests once again. --> birdhouse_daccs_configs_branch: master birdhouse_skip_ci: false
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Overview
This PR fixes an issue with notebook outputs
Changes:
Related Issue / Discussion
This PR might not be needed, assuming that the latest fix removes this message.
Additional Information
Ouranosinc/PAVICS-e2e-workflow-tests#147