diff --git a/.copier-answers.yml b/.copier-answers.yml index 52b2c285..7c642441 100644 --- a/.copier-answers.yml +++ b/.copier-answers.yml @@ -1,5 +1,5 @@ # Changes here will be overwritten by Copier; NEVER EDIT MANUALLY -_commit: v0.4.1 +_commit: v0.5.0 _src_path: /Users/znicholls/Documents/repos/copier-core-python-repository email: zebedee.nicholls@climate-energy-college.org initial_setup: true diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md index 8cd98957..f297ebbd 100644 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ b/.github/ISSUE_TEMPLATE/feature_request.md @@ -2,8 +2,9 @@ name: Feature Request about: Request a feature or suggest an idea for this project title: '' -labels: feature-request +labels: feature assignees: '' + --- ## The motivation diff --git a/.github/actions/setup/action.yml b/.github/actions/setup/action.yml index 83303d53..e74e60ed 100644 --- a/.github/actions/setup/action.yml +++ b/.github/actions/setup/action.yml @@ -40,10 +40,10 @@ runs: shell: bash run: | # This line used to be needed, but seems to have been - # sorted with newer poetry versions. The check is whether - # the right version of python is shown below after running - # `poetry run which python` and whether the right version - # of python is used in the tests + # sorted with newer poetry versions. We can still check whether + # the right version of python is used by looking at the output of + # `poetry run which python` below and whether the right version + # of python is used in the tests (or whatever step is being done) # poetry env use "python${{ inputs.python-version }}" poetry config virtualenvs.create true poetry config virtualenvs.in-project true @@ -54,6 +54,7 @@ runs: poetry install --no-interaction --no-root ${{ inputs.poetry-dependency-install-flags }} # Now run same command but let the package install too - name: Install package + # To ensure that the package is always installed, this step is run even if the cache was hit if: ${{ inputs.run-poetry-install == 'true' }} shell: bash run: | diff --git a/.github/PULL_REQUEST_TEMPLATE/default.md b/.github/pull_request_template.md similarity index 100% rename from .github/PULL_REQUEST_TEMPLATE/default.md rename to .github/pull_request_template.md diff --git a/.github/workflows/bump.yaml b/.github/workflows/bump.yaml index 5e6f375d..d0f3af6d 100644 --- a/.github/workflows/bump.yaml +++ b/.github/workflows/bump.yaml @@ -47,14 +47,21 @@ jobs: - name: Create bump and changelog run: | - BASE_VERSION=`poetry version -s` - NEW_VERSION=`poetry version -s ${{ github.event.inputs.bump_rule }}` - poetry run towncrier build --yes --version v$NEW_VERSION - git config --global user.name "$GITHUB_ACTOR" git config --global user.email "$CI_COMMIT_EMAIL" + # Bump + BASE_VERSION=`poetry version -s` + NEW_VERSION=`poetry version -s ${{ github.event.inputs.bump_rule }}` + echo "Bumping version $BASE_VERSION > $NEW_VERSION" + poetry run towncrier build --yes --version v$NEW_VERSION git commit -a -m "bump: version $BASE_VERSION -> $NEW_VERSION" git tag v$NEW_VERSION + + # Bump to alpha (so that future commits do not have the same + # version as the tagged commit) + BASE_VERSION=`poetry version -s` + NEW_VERSION=`poetry version -s prerelease` + echo "Bumping version $BASE_VERSION > $NEW_VERSION" + git commit -a -m "bump(pre-release): version $BASE_VERSION > $NEW_VERSION" git push && git push --tags - echo "Bumped to version $NEW_VERSION" diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 208ea46e..180ff753 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -16,7 +16,7 @@ jobs: uses: actions/checkout@v3 - uses: ./.github/actions/setup with: - os: ubuntu-latest + os: "ubuntu-latest" python-version: "3.9" venv-id: "docs" poetry-dependency-install-flags: "--all-extras --only 'main,dev'" @@ -31,7 +31,7 @@ jobs: uses: actions/checkout@v3 - uses: ./.github/actions/setup with: - os: ubuntu-latest + os: "ubuntu-latest" python-version: "3.9" venv-id: "docs" poetry-dependency-install-flags: "--all-extras --only 'main,docs'" @@ -52,7 +52,10 @@ jobs: runs-on: "${{ matrix.os }}" defaults: run: - shell: bash # Need this for windows to not explode apparently + # This might be needed for Windows and doesn't seem to affect unix-based systems + # so we include it. If you have better proof of whether this is needed or not, + # feel free to update. + shell: bash steps: - name: Check out repository uses: actions/checkout@v3 diff --git a/.gitignore b/.gitignore index 14d02578..08b98861 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ +# ruff +.ruff_cache + # Notebooks *.ipynb diff --git a/Makefile b/Makefile index 9edc86c1..b8011be1 100644 --- a/Makefile +++ b/Makefile @@ -18,6 +18,7 @@ endef export PRINT_HELP_PYSCRIPT +.PHONY: help help: ## print short description of each target @python3 -c "$$PRINT_HELP_PYSCRIPT" < $(MAKEFILE_LIST) diff --git a/changelog/89.breaking.md b/changelog/89.breaking.md new file mode 100644 index 00000000..fb0f5c7f --- /dev/null +++ b/changelog/89.breaking.md @@ -0,0 +1,3 @@ +Updated to CICERO-SCM v1.1.1 + +This also removes the pin on Pandas when installing CICERO-SCM's python port diff --git a/changelog/91.trivial.md b/changelog/91.trivial.md new file mode 100644 index 00000000..cef9cc61 --- /dev/null +++ b/changelog/91.trivial.md @@ -0,0 +1,3 @@ +Updated to use v0.5.0 of the copier template + +This fixes up the docs theme and some other workflow bits and pieces. diff --git a/docs/source/conf.py b/docs/source/conf.py index e07d9cf7..0d50fa86 100644 --- a/docs/source/conf.py +++ b/docs/source/conf.py @@ -143,8 +143,16 @@ def _generate_module_rst_new(*args, **kwargs): # https://www.sphinx-doc.org/en/master/usage/configuration.html#options-for-html-output # Pick your theme for html output, we typically use the read the docs theme -html_theme = "sphinx_rtd_theme" +html_theme = "sphinx_book_theme" html_static_path = ["_static"] +html_theme_options = { + "repository_url": "https://github.com/openscm/openscm-runner", + "repository_branch": "main", + "path_to_docs": "docs/source", + "use_repository_button": True, + "use_issues_button": True, + "use_edit_page_button": True, +} # Ignore ipynb files when building (see https://github.com/executablebooks/MyST-NB/issues/363). diff --git a/docs/source/development.md b/docs/source/development.md index 8667d82d..5c865b6b 100644 --- a/docs/source/development.md +++ b/docs/source/development.md @@ -2,6 +2,34 @@ # Development Notes for developers. If you want to get involved, please do! +We welcome all kinds of contributions, for example: + +- docs fixes/clarifications +- bug reports +- bug fixes +- feature requests +- pull requests +- tutorials + +## Workflows + + + +We don't mind whether you use a branching or forking workflow. +However, please only push to your own branches, +pushing to other people's branches is often a recipe for disaster, +is never required in our experience +so is best avoided. + +Try and keep your merge requests as small as possible +(focus on one thing if you can). +This makes life much easier for reviewers +which allows contributions to be accepted at a faster rate. ## Language diff --git a/poetry.lock b/poetry.lock index d99c97e8..27532e80 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1,9 +1,25 @@ -# This file is automatically @generated by Poetry 1.7.1 and should not be changed by hand. +# This file is automatically @generated by Poetry 1.4.2 and should not be changed by hand. + +[[package]] +name = "accessible-pygments" +version = "0.0.4" +description = "A collection of accessible pygments styles" +category = "dev" +optional = false +python-versions = "*" +files = [ + {file = "accessible-pygments-0.0.4.tar.gz", hash = "sha256:e7b57a9b15958e9601c7e9eb07a440c813283545a20973f2574a5f453d0e953e"}, + {file = "accessible_pygments-0.0.4-py2.py3-none-any.whl", hash = "sha256:416c6d8c1ea1c5ad8701903a20fcedf953c6e720d64f33dc47bfb2d3f2fa4e8d"}, +] + +[package.dependencies] +pygments = ">=1.5" [[package]] name = "alabaster" version = "0.7.16" description = "A light, configurable Sphinx theme" +category = "dev" optional = false python-versions = ">=3.9" files = [ @@ -15,6 +31,7 @@ files = [ name = "anyio" version = "4.2.0" description = "High level compatibility layer for multiple asynchronous event loop implementations" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -37,6 +54,7 @@ trio = ["trio (>=0.23)"] name = "appnope" version = "0.1.3" description = "Disable App Nap on macOS >= 10.9" +category = "main" optional = false python-versions = "*" files = [ @@ -48,6 +66,7 @@ files = [ name = "argon2-cffi" version = "23.1.0" description = "Argon2 for Python" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -68,6 +87,7 @@ typing = ["mypy"] name = "argon2-cffi-bindings" version = "21.2.0" description = "Low-level CFFI bindings for Argon2" +category = "main" optional = true python-versions = ">=3.6" files = [ @@ -105,6 +125,7 @@ tests = ["pytest"] name = "arrow" version = "1.3.0" description = "Better dates & times for Python" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -118,12 +139,13 @@ types-python-dateutil = ">=2.8.10" [package.extras] doc = ["doc8", "sphinx (>=7.0.0)", "sphinx-autobuild", "sphinx-autodoc-typehints", "sphinx_rtd_theme (>=1.3.0)"] -test = ["dateparser (==1.*)", "pre-commit", "pytest", "pytest-cov", "pytest-mock", "pytz (==2021.1)", "simplejson (==3.*)"] +test = ["dateparser (>=1.0.0,<2.0.0)", "pre-commit", "pytest", "pytest-cov", "pytest-mock", "pytz (==2021.1)", "simplejson (>=3.0.0,<4.0.0)"] [[package]] name = "asttokens" version = "2.4.1" description = "Annotate AST trees with source code positions" +category = "main" optional = false python-versions = "*" files = [ @@ -142,6 +164,7 @@ test = ["astroid (>=1,<2)", "astroid (>=2,<4)", "pytest"] name = "async-lru" version = "2.0.4" description = "Simple LRU cache for asyncio" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -156,6 +179,7 @@ typing-extensions = {version = ">=4.0.0", markers = "python_version < \"3.11\""} name = "attrs" version = "23.2.0" description = "Classes Without Boilerplate" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -175,6 +199,7 @@ tests-no-zope = ["attrs[tests-mypy]", "cloudpickle", "hypothesis", "pympler", "p name = "babel" version = "2.14.0" description = "Internationalization utilities" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -189,7 +214,8 @@ dev = ["freezegun (>=1.0,<2.0)", "pytest (>=6.0)", "pytest-cov"] name = "beautifulsoup4" version = "4.12.3" description = "Screen-scraping library" -optional = true +category = "main" +optional = false python-versions = ">=3.6.0" files = [ {file = "beautifulsoup4-4.12.3-py3-none-any.whl", hash = "sha256:b80878c9f40111313e55da8ba20bdba06d8fa3969fc68304167741bbf9e082ed"}, @@ -210,6 +236,7 @@ lxml = ["lxml"] name = "bleach" version = "6.1.0" description = "An easy safelist-based HTML-sanitizing tool." +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -228,6 +255,7 @@ css = ["tinycss2 (>=1.1.0,<1.3)"] name = "certifi" version = "2023.11.17" description = "Python package for providing Mozilla's CA Bundle." +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -239,6 +267,7 @@ files = [ name = "cffi" version = "1.16.0" description = "Foreign Function Interface for Python calling C code." +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -303,6 +332,7 @@ pycparser = "*" name = "cfgv" version = "3.4.0" description = "Validate configuration and produce human readable error messages." +category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -314,6 +344,7 @@ files = [ name = "cftime" version = "1.6.3" description = "Time-handling functionality from netcdf4-python" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -350,6 +381,7 @@ numpy = [ name = "charset-normalizer" version = "3.3.2" description = "The Real First Universal Charset Detector. Open, modern and actively maintained alternative to Chardet." +category = "main" optional = false python-versions = ">=3.7.0" files = [ @@ -449,6 +481,7 @@ files = [ name = "ciceroscm" version = "1.1.1" description = "Python version of the CICERO-SCM simple climate model" +category = "main" optional = true python-versions = "*" files = [ @@ -477,6 +510,7 @@ tests = ["codecov", "coverage", "nbval", "pytest (>=4.0)", "pytest-cov", "xlrd"] name = "click" version = "8.1.7" description = "Composable command line interface toolkit" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -491,6 +525,7 @@ colorama = {version = "*", markers = "platform_system == \"Windows\""} name = "colorama" version = "0.4.6" description = "Cross-platform colored terminal text." +category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*,>=2.7" files = [ @@ -502,6 +537,7 @@ files = [ name = "comm" version = "0.2.1" description = "Jupyter Python Comm implementation, for usage in ipykernel, xeus-python etc." +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -519,6 +555,7 @@ test = ["pytest"] name = "contourpy" version = "1.2.0" description = "Python library for calculating contours of 2D quadrilateral grids" +category = "main" optional = true python-versions = ">=3.9" files = [ @@ -582,6 +619,7 @@ test-no-images = ["pytest", "pytest-cov", "pytest-xdist", "wurlitzer"] name = "coverage" version = "7.4.1" description = "Code coverage measurement for Python" +category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -649,6 +687,7 @@ toml = ["tomli"] name = "cycler" version = "0.12.1" description = "Composable style cycles" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -664,6 +703,7 @@ tests = ["pytest", "pytest-cov", "pytest-xdist"] name = "debugpy" version = "1.8.0" description = "An implementation of the Debug Adapter Protocol for Python" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -691,6 +731,7 @@ files = [ name = "decorator" version = "5.1.1" description = "Decorators for Humans" +category = "main" optional = false python-versions = ">=3.5" files = [ @@ -702,6 +743,7 @@ files = [ name = "defusedxml" version = "0.7.1" description = "XML bomb protection for Python stdlib modules" +category = "main" optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -713,6 +755,7 @@ files = [ name = "distlib" version = "0.3.8" description = "Distribution utilities" +category = "dev" optional = false python-versions = "*" files = [ @@ -722,19 +765,21 @@ files = [ [[package]] name = "docutils" -version = "0.18.1" +version = "0.19" description = "Docutils -- Python Documentation Utilities" +category = "dev" optional = false -python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" +python-versions = ">=3.7" files = [ - {file = "docutils-0.18.1-py2.py3-none-any.whl", hash = "sha256:23010f129180089fbcd3bc08cfefccb3b890b0050e1ca00c867036e9d161b98c"}, - {file = "docutils-0.18.1.tar.gz", hash = "sha256:679987caf361a7539d76e584cbeddc311e3aee937877c87346f31debc63e9d06"}, + {file = "docutils-0.19-py3-none-any.whl", hash = "sha256:5e1de4d849fee02c63b040a4a3fd567f4ab104defd8a5511fbbc24a8a017efbc"}, + {file = "docutils-0.19.tar.gz", hash = "sha256:33995a6753c30b7f577febfc2c50411fec6aac7f7ffeb7c4cfe5991072dcf9e6"}, ] [[package]] name = "et-xmlfile" version = "1.1.0" description = "An implementation of lxml.xmlfile for the standard library" +category = "main" optional = true python-versions = ">=3.6" files = [ @@ -746,6 +791,7 @@ files = [ name = "exceptiongroup" version = "1.2.0" description = "Backport of PEP 654 (exception groups)" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -760,6 +806,7 @@ test = ["pytest (>=6)"] name = "executing" version = "2.0.1" description = "Get the currently executing AST node of a frame, and other information" +category = "main" optional = false python-versions = ">=3.5" files = [ @@ -774,6 +821,7 @@ tests = ["asttokens (>=2.1.0)", "coverage", "coverage-enable-subprocess", "ipyth name = "f90nml" version = "1.4.4" description = "Fortran 90 namelist parser" +category = "main" optional = true python-versions = "*" files = [ @@ -788,6 +836,7 @@ yaml = ["PyYAML"] name = "fair" version = "1.6.4" description = "Python package to perform calculations with the FaIR simple climate model" +category = "main" optional = true python-versions = ">=3.6, <4" files = [ @@ -810,6 +859,7 @@ test = ["codecov", "nbval", "pytest (>=4.0)", "pytest-cov"] name = "fastjsonschema" version = "2.19.1" description = "Fastest Python implementation of JSON schema" +category = "main" optional = false python-versions = "*" files = [ @@ -824,6 +874,7 @@ devel = ["colorama", "json-spec", "jsonschema", "pylint", "pytest", "pytest-benc name = "filelock" version = "3.13.1" description = "A platform independent file lock." +category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -840,6 +891,7 @@ typing = ["typing-extensions (>=4.8)"] name = "fonttools" version = "4.47.2" description = "Tools to manipulate font files" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -905,6 +957,7 @@ woff = ["brotli (>=1.0.1)", "brotlicffi (>=0.8.0)", "zopfli (>=0.1.4)"] name = "fqdn" version = "1.5.1" description = "Validates fully-qualified domain names against RFC 1123, so that they are acceptable to modern bowsers" +category = "main" optional = true python-versions = ">=2.7, !=3.0, !=3.1, !=3.2, !=3.3, !=3.4, <4" files = [ @@ -916,6 +969,7 @@ files = [ name = "globalwarmingpotentials" version = "0.9.4" description = "Global warming potentials of greenhouse gases from various IPCC reports" +category = "main" optional = false python-versions = "*" files = [ @@ -927,6 +981,7 @@ files = [ name = "greenlet" version = "3.0.3" description = "Lightweight in-process concurrent programming" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -998,6 +1053,7 @@ test = ["objgraph", "psutil"] name = "iam-units" version = "2023.9.12" description = "Unit definitions for integrated-assessment research" +category = "main" optional = true python-versions = "*" files = [ @@ -1016,6 +1072,7 @@ update = ["globalwarmingpotentials"] name = "identify" version = "2.5.33" description = "File identification library for Python" +category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1030,6 +1087,7 @@ license = ["ukkonen"] name = "idna" version = "3.6" description = "Internationalized Domain Names in Applications (IDNA)" +category = "main" optional = false python-versions = ">=3.5" files = [ @@ -1041,6 +1099,7 @@ files = [ name = "imagesize" version = "1.4.1" description = "Getting image size from png/jpeg/jpeg2000/gif file" +category = "dev" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -1052,6 +1111,7 @@ files = [ name = "importlib-metadata" version = "7.0.1" description = "Read metadata from Python packages" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1071,6 +1131,7 @@ testing = ["flufl.flake8", "importlib-resources (>=1.3)", "packaging", "pyfakefs name = "importlib-resources" version = "6.1.1" description = "Read resources from Python packages" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1089,6 +1150,7 @@ testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", name = "incremental" version = "22.10.0" description = "\"A small library that versions your Python projects.\"" +category = "dev" optional = false python-versions = "*" files = [ @@ -1104,6 +1166,7 @@ scripts = ["click (>=6.0)", "twisted (>=16.4.0)"] name = "iniconfig" version = "2.0.0" description = "brain-dead simple config-ini parsing" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1115,6 +1178,7 @@ files = [ name = "ipykernel" version = "6.29.0" description = "IPython Kernel for Jupyter" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1128,7 +1192,7 @@ comm = ">=0.1.1" debugpy = ">=1.6.5" ipython = ">=7.23.1" jupyter-client = ">=6.1.12" -jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" matplotlib-inline = ">=0.1" nest-asyncio = "*" packaging = "*" @@ -1148,6 +1212,7 @@ test = ["flaky", "ipyparallel", "pre-commit", "pytest (>=7.0)", "pytest-asyncio name = "ipython" version = "8.18.1" description = "IPython: Productive Interactive Computing" +category = "main" optional = false python-versions = ">=3.9" files = [ @@ -1185,6 +1250,7 @@ test-extra = ["curio", "matplotlib (!=3.2.0)", "nbformat", "numpy (>=1.22)", "pa name = "ipywidgets" version = "8.1.1" description = "Jupyter interactive widgets" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -1206,6 +1272,7 @@ test = ["ipykernel", "jsonschema", "pytest (>=3.6.0)", "pytest-cov", "pytz"] name = "isoduration" version = "20.11.0" description = "Operations with ISO 8601 durations" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -1220,6 +1287,7 @@ arrow = ">=0.15.0" name = "jedi" version = "0.19.1" description = "An autocompletion tool for Python that can be used for text editors." +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -1239,6 +1307,7 @@ testing = ["Django", "attrs", "colorama", "docopt", "pytest (<7.0.0)"] name = "jinja2" version = "3.1.3" description = "A very fast and expressive template engine." +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1256,6 +1325,7 @@ i18n = ["Babel (>=2.7)"] name = "json5" version = "0.9.14" description = "A Python implementation of the JSON5 data format." +category = "main" optional = true python-versions = "*" files = [ @@ -1270,17 +1340,18 @@ dev = ["hypothesis"] name = "jsonpointer" version = "2.4" description = "Identify specific nodes in a JSON document (RFC 6901)" +category = "main" optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*, !=3.6.*" files = [ {file = "jsonpointer-2.4-py2.py3-none-any.whl", hash = "sha256:15d51bba20eea3165644553647711d150376234112651b4f1811022aecad7d7a"}, - {file = "jsonpointer-2.4.tar.gz", hash = "sha256:585cee82b70211fa9e6043b7bb89db6e1aa49524340dde8ad6b63206ea689d88"}, ] [[package]] name = "jsonschema" version = "4.21.1" description = "An implementation of JSON Schema validation for Python" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1310,6 +1381,7 @@ format-nongpl = ["fqdn", "idna", "isoduration", "jsonpointer (>1.13)", "rfc3339- name = "jsonschema-specifications" version = "2023.12.1" description = "The JSON Schema meta-schemas and vocabularies, exposed as a Registry" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1324,6 +1396,7 @@ referencing = ">=0.31.0" name = "jupyter-cache" version = "0.6.1" description = "A defined interface for working with a cache of jupyter notebooks." +category = "dev" optional = false python-versions = "~=3.8" files = [ @@ -1351,6 +1424,7 @@ testing = ["coverage", "ipykernel", "jupytext", "matplotlib", "nbdime", "nbforma name = "jupyter-client" version = "8.6.0" description = "Jupyter protocol implementation and client libraries" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1360,7 +1434,7 @@ files = [ [package.dependencies] importlib-metadata = {version = ">=4.8.3", markers = "python_version < \"3.10\""} -jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" python-dateutil = ">=2.8.2" pyzmq = ">=23.0" tornado = ">=6.2" @@ -1374,6 +1448,7 @@ test = ["coverage", "ipykernel (>=6.14)", "mypy", "paramiko", "pre-commit", "pyt name = "jupyter-core" version = "5.7.1" description = "Jupyter core package. A base package on which Jupyter projects rely." +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -1394,6 +1469,7 @@ test = ["ipykernel", "pre-commit", "pytest", "pytest-cov", "pytest-timeout"] name = "jupyter-events" version = "0.9.0" description = "Jupyter Event System library" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -1419,6 +1495,7 @@ test = ["click", "pre-commit", "pytest (>=7.0)", "pytest-asyncio (>=0.19.0)", "p name = "jupyter-lsp" version = "2.2.2" description = "Multi-Language Server WebSocket proxy for Jupyter Notebook/Lab server" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -1434,6 +1511,7 @@ jupyter-server = ">=1.1.2" name = "jupyter-server" version = "2.12.5" description = "The backend—i.e. core services, APIs, and REST endpoints—to Jupyter web applications." +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -1446,7 +1524,7 @@ anyio = ">=3.1.0" argon2-cffi = "*" jinja2 = "*" jupyter-client = ">=7.4.4" -jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" jupyter-events = ">=0.9.0" jupyter-server-terminals = "*" nbconvert = ">=6.4.4" @@ -1470,6 +1548,7 @@ test = ["flaky", "ipykernel", "pre-commit", "pytest (>=7.0)", "pytest-console-sc name = "jupyter-server-terminals" version = "0.5.2" description = "A Jupyter Server Extension Providing Terminals." +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -1489,6 +1568,7 @@ test = ["jupyter-server (>=2.0.0)", "pytest (>=7.0)", "pytest-jupyter[server] (> name = "jupyterlab" version = "4.0.11" description = "JupyterLab computational environment" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -1521,6 +1601,7 @@ test = ["coverage", "pytest (>=7.0)", "pytest-check-links (>=0.7)", "pytest-cons name = "jupyterlab-pygments" version = "0.3.0" description = "Pygments theme using JupyterLab CSS variables" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -1532,6 +1613,7 @@ files = [ name = "jupyterlab-server" version = "2.25.2" description = "A set of server components for JupyterLab and JupyterLab like applications." +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -1558,6 +1640,7 @@ test = ["hatch", "ipykernel", "openapi-core (>=0.18.0,<0.19.0)", "openapi-spec-v name = "jupyterlab-widgets" version = "3.0.9" description = "Jupyter interactive widgets for JupyterLab" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -1569,6 +1652,7 @@ files = [ name = "jupytext" version = "1.16.1" description = "Jupyter notebooks as Markdown documents, Julia, Python or R scripts" +category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1598,6 +1682,7 @@ test-ui = ["calysto-bash"] name = "kiwisolver" version = "1.4.5" description = "A fast implementation of the Cassowary constraint solver" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -1711,6 +1796,7 @@ files = [ name = "liccheck" version = "0.9.2" description = "Check python packages from requirement.txt and report issues" +category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -1726,6 +1812,7 @@ toml = "*" name = "markdown-it-py" version = "2.2.0" description = "Python port of markdown-it. Markdown parsing, done right!" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1750,6 +1837,7 @@ testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] name = "markupsafe" version = "2.1.4" description = "Safely add untrusted strings to HTML/XML markup." +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -1819,6 +1907,7 @@ files = [ name = "matplotlib" version = "3.8.2" description = "Python plotting package" +category = "main" optional = true python-versions = ">=3.9" files = [ @@ -1868,6 +1957,7 @@ python-dateutil = ">=2.7" name = "matplotlib-inline" version = "0.1.6" description = "Inline Matplotlib backend for Jupyter" +category = "main" optional = false python-versions = ">=3.5" files = [ @@ -1882,6 +1972,7 @@ traitlets = "*" name = "mdit-py-plugins" version = "0.3.5" description = "Collection of plugins for markdown-it-py" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1901,6 +1992,7 @@ testing = ["coverage", "pytest", "pytest-cov", "pytest-regressions"] name = "mdurl" version = "0.1.2" description = "Markdown URL utilities" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -1912,6 +2004,7 @@ files = [ name = "mistune" version = "3.0.2" description = "A sane and fast Markdown parser with useful plugins and renderers" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -1923,6 +2016,7 @@ files = [ name = "mypy" version = "1.8.0" description = "Optional static typing for Python" +category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -1970,6 +2064,7 @@ reports = ["lxml"] name = "mypy-extensions" version = "1.0.0" description = "Type system extensions for programs checked with the mypy type checker." +category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -1981,6 +2076,7 @@ files = [ name = "myst-nb" version = "0.17.2" description = "A Jupyter Notebook Sphinx reader built on top of the MyST markdown parser." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2009,6 +2105,7 @@ testing = ["beautifulsoup4", "coverage (>=6.4,<8.0)", "ipykernel (>=5.5,<6.0)", name = "myst-parser" version = "0.18.1" description = "An extended commonmark compliant parser, with bridges to docutils & sphinx." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2035,6 +2132,7 @@ testing = ["beautifulsoup4", "coverage[toml]", "pytest (>=6,<7)", "pytest-cov", name = "nbclient" version = "0.7.4" description = "A client library for executing notebooks. Formerly nbconvert's ExecutePreprocessor." +category = "main" optional = false python-versions = ">=3.7.0" files = [ @@ -2044,7 +2142,7 @@ files = [ [package.dependencies] jupyter-client = ">=6.1.12" -jupyter-core = ">=4.12,<5.0.dev0 || >=5.1.dev0" +jupyter-core = ">=4.12,<5.0.0 || >=5.1.0" nbformat = ">=5.1" traitlets = ">=5.3" @@ -2057,6 +2155,7 @@ test = ["flaky", "ipykernel", "ipython", "ipywidgets", "nbconvert (>=7.0.0)", "p name = "nbconvert" version = "7.14.2" description = "Converting Jupyter Notebooks" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -2095,6 +2194,7 @@ webpdf = ["playwright"] name = "nbformat" version = "5.9.2" description = "The Jupyter Notebook format" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2116,6 +2216,7 @@ test = ["pep440", "pre-commit", "pytest", "testpath"] name = "nest-asyncio" version = "1.6.0" description = "Patch asyncio to allow nested event loops" +category = "main" optional = false python-versions = ">=3.5" files = [ @@ -2127,6 +2228,7 @@ files = [ name = "nodeenv" version = "1.8.0" description = "Node.js virtual environment builder" +category = "dev" optional = false python-versions = ">=2.7,!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,!=3.6.*" files = [ @@ -2141,6 +2243,7 @@ setuptools = "*" name = "notebook" version = "7.0.7" description = "Jupyter Notebook - A web-based notebook environment for interactive computing" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -2164,6 +2267,7 @@ test = ["importlib-resources (>=5.0)", "ipykernel", "jupyter-server[test] (>=2.4 name = "notebook-shim" version = "0.2.3" description = "A shim layer for notebook traits and config" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -2181,6 +2285,7 @@ test = ["pytest", "pytest-console-scripts", "pytest-jupyter", "pytest-tornasync" name = "numpy" version = "1.26.3" description = "Fundamental package for array computing in Python" +category = "main" optional = false python-versions = ">=3.9" files = [ @@ -2226,6 +2331,7 @@ files = [ name = "openpyxl" version = "3.1.2" description = "A Python library to read/write Excel 2010 xlsx/xlsm files" +category = "main" optional = true python-versions = ">=3.6" files = [ @@ -2240,6 +2346,7 @@ et-xmlfile = "*" name = "openscm-units" version = "0.5.4" description = "Handling of units related to simple climate modelling." +category = "main" optional = false python-versions = ">=3.9,<4.0" files = [ @@ -2259,6 +2366,7 @@ notebooks = ["notebook (>=7.0.0,<8.0.0)", "seaborn (>=0.13.0,<0.14.0)"] name = "overrides" version = "7.7.0" description = "A decorator to automatically detect mismatch when overriding a method." +category = "main" optional = true python-versions = ">=3.6" files = [ @@ -2270,6 +2378,7 @@ files = [ name = "packaging" version = "23.2" description = "Core utilities for Python packages" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2281,6 +2390,7 @@ files = [ name = "pandas" version = "2.2.0" description = "Powerful data structures for data analysis, time series, and statistics" +category = "main" optional = false python-versions = ">=3.9" files = [ @@ -2353,6 +2463,7 @@ xml = ["lxml (>=4.9.2)"] name = "pandas-datapackage-reader" version = "0.18.0" description = "Pandas Data Package Reader" +category = "main" optional = true python-versions = "*" files = [ @@ -2371,6 +2482,7 @@ tests = ["geopandas", "pytest (>=4.1)"] name = "pandocfilters" version = "1.5.1" description = "Utilities for writing pandoc filters in python" +category = "main" optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -2382,6 +2494,7 @@ files = [ name = "parso" version = "0.8.3" description = "A Python Parser" +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -2397,6 +2510,7 @@ testing = ["docopt", "pytest (<6.0.0)"] name = "pexpect" version = "4.9.0" description = "Pexpect allows easy control of interactive console applications." +category = "main" optional = false python-versions = "*" files = [ @@ -2411,6 +2525,7 @@ ptyprocess = ">=0.5" name = "pillow" version = "10.2.0" description = "Python Imaging Library (Fork)" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -2496,6 +2611,7 @@ xmp = ["defusedxml"] name = "pint" version = "0.23" description = "Physical quantities module" +category = "main" optional = false python-versions = ">=3.9" files = [ @@ -2522,6 +2638,7 @@ xarray = ["xarray"] name = "pint-pandas" version = "0.5" description = "Extend Pandas Dataframe with Physical quantities module" +category = "main" optional = false python-versions = ">=3.9" files = [ @@ -2540,6 +2657,7 @@ test = ["codecov", "coveralls", "nbval", "pyarrow", "pytest", "pytest-cov", "pyt name = "platformdirs" version = "4.1.0" description = "A small Python package for determining appropriate platform-specific dirs, e.g. a \"user data dir\"." +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2555,6 +2673,7 @@ test = ["appdirs (==1.4.4)", "covdefaults (>=2.3)", "pytest (>=7.4)", "pytest-co name = "pluggy" version = "1.4.0" description = "plugin and hook calling mechanisms for python" +category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2570,6 +2689,7 @@ testing = ["pytest", "pytest-benchmark"] name = "pre-commit" version = "3.6.0" description = "A framework for managing and maintaining multi-language pre-commit hooks." +category = "dev" optional = false python-versions = ">=3.9" files = [ @@ -2588,6 +2708,7 @@ virtualenv = ">=20.10.0" name = "prometheus-client" version = "0.19.0" description = "Python client for the Prometheus monitoring system." +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -2602,6 +2723,7 @@ twisted = ["twisted"] name = "prompt-toolkit" version = "3.0.43" description = "Library for building powerful interactive command lines in Python" +category = "main" optional = false python-versions = ">=3.7.0" files = [ @@ -2616,6 +2738,7 @@ wcwidth = "*" name = "psutil" version = "5.9.8" description = "Cross-platform lib for process and system monitoring in Python." +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" files = [ @@ -2644,6 +2767,7 @@ test = ["enum34", "ipaddress", "mock", "pywin32", "wmi"] name = "ptyprocess" version = "0.7.0" description = "Run a subprocess in a pseudo terminal" +category = "main" optional = false python-versions = "*" files = [ @@ -2655,6 +2779,7 @@ files = [ name = "pure-eval" version = "0.2.2" description = "Safely evaluate AST nodes without side effects" +category = "main" optional = false python-versions = "*" files = [ @@ -2669,6 +2794,7 @@ tests = ["pytest"] name = "pyam-iamc" version = "1.2.0" description = "Analysis & visualization of integrated-assessment scenarios" +category = "main" optional = true python-versions = "*" files = [ @@ -2704,6 +2830,7 @@ tutorials = ["ipykernel", "jupyter-client", "nbconvert", "nbformat", "pypandoc"] name = "pycparser" version = "2.21" description = "C parser in Python" +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*" files = [ @@ -2711,10 +2838,39 @@ files = [ {file = "pycparser-2.21.tar.gz", hash = "sha256:e644fdec12f7872f86c58ff790da456218b10f863970249516d60a5eaca77206"}, ] +[[package]] +name = "pydata-sphinx-theme" +version = "0.15.2" +description = "Bootstrap-based Sphinx theme from the PyData community" +category = "dev" +optional = false +python-versions = ">=3.9" +files = [ + {file = "pydata_sphinx_theme-0.15.2-py3-none-any.whl", hash = "sha256:0c5fa1fa98a9b26dae590666ff576f27e26c7ba708fee754ecb9e07359ed4588"}, + {file = "pydata_sphinx_theme-0.15.2.tar.gz", hash = "sha256:4243fee85b3afcfae9df64f83210a04e7182e53bc3db8841ffff6d21d95ae320"}, +] + +[package.dependencies] +accessible-pygments = "*" +Babel = "*" +beautifulsoup4 = "*" +docutils = "!=0.17.0" +packaging = "*" +pygments = ">=2.7" +sphinx = ">=5.0" +typing-extensions = "*" + +[package.extras] +a11y = ["pytest-playwright"] +dev = ["nox", "pre-commit", "pydata-sphinx-theme[doc,test]", "pyyaml"] +doc = ["ablog (>=0.11.0rc2)", "colorama", "ipykernel", "ipyleaflet", "jupyter_sphinx", "jupyterlite-sphinx", "linkify-it-py", "matplotlib", "myst-parser", "nbsphinx", "numpy", "numpydoc", "pandas", "plotly", "rich", "sphinx-autoapi (>=3.0.0)", "sphinx-copybutton", "sphinx-design", "sphinx-favicon (>=1.0.1)", "sphinx-sitemap", "sphinx-togglebutton", "sphinxcontrib-youtube (<1.4)", "sphinxext-rediraffe", "xarray"] +test = ["pytest", "pytest-cov", "pytest-regressions"] + [[package]] name = "pygments" version = "2.17.2" description = "Pygments is a syntax highlighting package written in Python." +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -2730,6 +2886,7 @@ windows-terminal = ["colorama (>=0.4.6)"] name = "pymagicc" version = "2.1.4" description = "Python wrapper for the simple climate model MAGICC" +category = "main" optional = true python-versions = "*" files = [ @@ -2756,6 +2913,7 @@ tests = ["codecov", "goodtables", "nbval", "pytest (>=7)", "pytest-benchmark", " name = "pyparsing" version = "3.1.1" description = "pyparsing module - Classes and methods to define and execute parsing grammars" +category = "main" optional = true python-versions = ">=3.6.8" files = [ @@ -2770,6 +2928,7 @@ diagrams = ["jinja2", "railroad-diagrams"] name = "pytest" version = "7.4.4" description = "pytest: simple powerful testing with Python" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2792,6 +2951,7 @@ testing = ["argcomplete", "attrs (>=19.2.0)", "hypothesis (>=3.56)", "mock", "no name = "pytest-cov" version = "4.1.0" description = "Pytest plugin for measuring coverage." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -2810,6 +2970,7 @@ testing = ["fields", "hunter", "process-tests", "pytest-xdist", "six", "virtuale name = "pytest-datadir" version = "1.5.0" description = "pytest plugin for test data directories and files" +category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2824,6 +2985,7 @@ pytest = ">=5.0" name = "pytest-regressions" version = "2.5.0" description = "Easy to use fixtures to write regression tests." +category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -2846,6 +3008,7 @@ num = ["numpy", "pandas"] name = "python-dateutil" version = "2.8.2" description = "Extensions to the standard Python datetime module" +category = "main" optional = false python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,>=2.7" files = [ @@ -2860,6 +3023,7 @@ six = ">=1.5" name = "python-dotenv" version = "1.0.1" description = "Read key-value pairs from a .env file and set them as environment variables" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -2874,6 +3038,7 @@ cli = ["click (>=5.0)"] name = "python-json-logger" version = "2.0.7" description = "A python library adding a json log formatter" +category = "main" optional = true python-versions = ">=3.6" files = [ @@ -2885,6 +3050,7 @@ files = [ name = "pytz" version = "2023.4" description = "World timezone definitions, modern and historical" +category = "main" optional = false python-versions = "*" files = [ @@ -2896,6 +3062,7 @@ files = [ name = "pywin32" version = "306" description = "Python for Window Extensions" +category = "main" optional = false python-versions = "*" files = [ @@ -2919,6 +3086,7 @@ files = [ name = "pywinpty" version = "2.0.12" description = "Pseudo terminal support for Windows from Python." +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -2934,6 +3102,7 @@ files = [ name = "pyyaml" version = "6.0.1" description = "YAML parser and emitter for Python" +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -2942,7 +3111,6 @@ files = [ {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, - {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, @@ -2950,16 +3118,8 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, - {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, - {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, - {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, - {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a08c6f0fe150303c1c6b71ebcd7213c2858041a7e01975da3a99aed1e7a378ef"}, - {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, - {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, - {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, - {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, @@ -2976,7 +3136,6 @@ files = [ {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, - {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, @@ -2984,7 +3143,6 @@ files = [ {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, - {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, @@ -2994,6 +3152,7 @@ files = [ name = "pyzmq" version = "25.1.2" description = "Python bindings for 0MQ" +category = "main" optional = false python-versions = ">=3.6" files = [ @@ -3099,6 +3258,7 @@ cffi = {version = "*", markers = "implementation_name == \"pypy\""} name = "referencing" version = "0.33.0" description = "JSON Referencing + Python" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3114,6 +3274,7 @@ rpds-py = ">=0.7.0" name = "requests" version = "2.31.0" description = "Python HTTP for Humans." +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3135,6 +3296,7 @@ use-chardet-on-py3 = ["chardet (>=3.0.2,<6)"] name = "rfc3339-validator" version = "0.1.4" description = "A pure python RFC3339 validator" +category = "main" optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -3149,6 +3311,7 @@ six = "*" name = "rfc3986-validator" version = "0.1.1" description = "Pure python rfc3986 validator" +category = "main" optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*" files = [ @@ -3160,6 +3323,7 @@ files = [ name = "rpds-py" version = "0.17.1" description = "Python bindings to Rust's persistent data structures (rpds)" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3268,6 +3432,7 @@ files = [ name = "ruff" version = "0.1.15" description = "An extremely fast Python linter and code formatter, written in Rust." +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3294,6 +3459,7 @@ files = [ name = "scipy" version = "1.12.0" description = "Fundamental algorithms for scientific computing in Python" +category = "main" optional = true python-versions = ">=3.9" files = [ @@ -3336,6 +3502,7 @@ test = ["asv", "gmpy2", "hypothesis", "mpmath", "pooch", "pytest", "pytest-cov", name = "scmdata" version = "0.17.0" description = "scmdata provides some useful data handling routines for dealing with data related to simple climate models (SCMs aka reduced complexity climate models, RCMs)" +category = "main" optional = false python-versions = ">=3.9,<4.0" files = [ @@ -3366,6 +3533,7 @@ plots = ["matplotlib (>=3.7.1,<4.0.0)", "nc-time-axis (>=1.2.0)", "seaborn (>=0. name = "seaborn" version = "0.13.2" description = "Statistical data visualization" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -3387,6 +3555,7 @@ stats = ["scipy (>=1.7)", "statsmodels (>=0.12)"] name = "semantic-version" version = "2.10.0" description = "A library implementing the 'SemVer' scheme." +category = "dev" optional = false python-versions = ">=2.7" files = [ @@ -3402,6 +3571,7 @@ doc = ["Sphinx", "sphinx-rtd-theme"] name = "send2trash" version = "1.8.2" description = "Send file to trash natively under Mac OS X, Windows and Linux" +category = "main" optional = true python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,>=2.7" files = [ @@ -3418,6 +3588,7 @@ win32 = ["pywin32"] name = "setuptools" version = "69.0.3" description = "Easily download, build, install, upgrade, and uninstall Python packages" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3434,6 +3605,7 @@ testing-integration = ["build[virtualenv] (>=1.0.3)", "filelock (>=3.4.0)", "jar name = "setuptools-scm" version = "8.0.4" description = "the blessed package to manage your versions by scm tags" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -3456,6 +3628,7 @@ test = ["build", "pytest", "rich", "wheel"] name = "six" version = "1.16.0" description = "Python 2 and 3 compatibility utilities" +category = "main" optional = false python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -3467,6 +3640,7 @@ files = [ name = "sniffio" version = "1.3.0" description = "Sniff out which async library your code is running under" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -3478,6 +3652,7 @@ files = [ name = "snowballstemmer" version = "2.2.0" description = "This package provides 29 stemmers for 28 languages generated from Snowball algorithms." +category = "dev" optional = false python-versions = "*" files = [ @@ -3489,7 +3664,8 @@ files = [ name = "soupsieve" version = "2.5" description = "A modern CSS selector implementation for Beautiful Soup." -optional = true +category = "main" +optional = false python-versions = ">=3.8" files = [ {file = "soupsieve-2.5-py3-none-any.whl", hash = "sha256:eaa337ff55a1579b6549dc679565eac1e3d000563bcb1c8ab0d0fefbc0c2cdc7"}, @@ -3500,6 +3676,7 @@ files = [ name = "sphinx" version = "5.3.0" description = "Python documentation generator" +category = "dev" optional = false python-versions = ">=3.6" files = [ @@ -3535,6 +3712,7 @@ test = ["cython", "html5lib", "pytest (>=4.6)", "typed_ast"] name = "sphinx-autodoc-typehints" version = "1.23.0" description = "Type hints (PEP 484) support for the Sphinx autodoc extension" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3554,6 +3732,7 @@ type-comment = ["typed-ast (>=1.5.4)"] name = "sphinx-autodocgen" version = "1.3" description = "Sphinx AutoDocGen extension" +category = "dev" optional = false python-versions = ">=3.6, <4" files = [ @@ -3564,46 +3743,50 @@ files = [ sphinx = "*" [[package]] -name = "sphinx-copybutton" -version = "0.5.2" -description = "Add a copy button to each of your code cells." +name = "sphinx-book-theme" +version = "1.1.0" +description = "A clean book theme for scientific explanations and documentation with Sphinx" +category = "dev" optional = false -python-versions = ">=3.7" +python-versions = ">=3.9" files = [ - {file = "sphinx-copybutton-0.5.2.tar.gz", hash = "sha256:4cf17c82fb9646d1bc9ca92ac280813a3b605d8c421225fd9913154103ee1fbd"}, - {file = "sphinx_copybutton-0.5.2-py3-none-any.whl", hash = "sha256:fb543fd386d917746c9a2c50360c7905b605726b9355cd26e9974857afeae06e"}, + {file = "sphinx_book_theme-1.1.0-py3-none-any.whl", hash = "sha256:088bc69d65fab8446adb8691ed61687f71bf7504c9740af68bc78cf936a26112"}, + {file = "sphinx_book_theme-1.1.0.tar.gz", hash = "sha256:ad4f92998e53e24751ecd0978d3eb79fdaa59692f005b1b286ecdd6146ebc9c1"}, ] [package.dependencies] -sphinx = ">=1.8" +pydata-sphinx-theme = ">=0.14" +sphinx = ">=5" [package.extras] -code-style = ["pre-commit (==2.12.1)"] -rtd = ["ipython", "myst-nb", "sphinx", "sphinx-book-theme", "sphinx-examples"] +code-style = ["pre-commit"] +doc = ["ablog", "folium", "ipywidgets", "matplotlib", "myst-nb", "nbclient", "numpy", "numpydoc", "pandas", "plotly", "sphinx-copybutton", "sphinx-design", "sphinx-examples", "sphinx-tabs", "sphinx-thebe", "sphinx-togglebutton", "sphinxcontrib-bibtex", "sphinxcontrib-youtube", "sphinxext-opengraph"] +test = ["beautifulsoup4", "coverage", "myst-nb", "pytest", "pytest-cov", "pytest-regressions", "sphinx_thebe"] [[package]] -name = "sphinx-rtd-theme" -version = "1.3.0" -description = "Read the Docs theme for Sphinx" +name = "sphinx-copybutton" +version = "0.5.2" +description = "Add a copy button to each of your code cells." +category = "dev" optional = false -python-versions = "!=3.0.*,!=3.1.*,!=3.2.*,!=3.3.*,!=3.4.*,!=3.5.*,>=2.7" +python-versions = ">=3.7" files = [ - {file = "sphinx_rtd_theme-1.3.0-py2.py3-none-any.whl", hash = "sha256:46ddef89cc2416a81ecfbeaceab1881948c014b1b6e4450b815311a89fb977b0"}, - {file = "sphinx_rtd_theme-1.3.0.tar.gz", hash = "sha256:590b030c7abb9cf038ec053b95e5380b5c70d61591eb0b552063fbe7c41f0931"}, + {file = "sphinx-copybutton-0.5.2.tar.gz", hash = "sha256:4cf17c82fb9646d1bc9ca92ac280813a3b605d8c421225fd9913154103ee1fbd"}, + {file = "sphinx_copybutton-0.5.2-py3-none-any.whl", hash = "sha256:fb543fd386d917746c9a2c50360c7905b605726b9355cd26e9974857afeae06e"}, ] [package.dependencies] -docutils = "<0.19" -sphinx = ">=1.6,<8" -sphinxcontrib-jquery = ">=4,<5" +sphinx = ">=1.8" [package.extras] -dev = ["bump2version", "sphinxcontrib-httpdomain", "transifex-client", "wheel"] +code-style = ["pre-commit (==2.12.1)"] +rtd = ["ipython", "myst-nb", "sphinx", "sphinx-book-theme", "sphinx-examples"] [[package]] name = "sphinxcontrib-applehelp" version = "1.0.8" description = "sphinxcontrib-applehelp is a Sphinx extension which outputs Apple help books" +category = "dev" optional = false python-versions = ">=3.9" files = [ @@ -3620,6 +3803,7 @@ test = ["pytest"] name = "sphinxcontrib-devhelp" version = "1.0.6" description = "sphinxcontrib-devhelp is a sphinx extension which outputs Devhelp documents" +category = "dev" optional = false python-versions = ">=3.9" files = [ @@ -3636,6 +3820,7 @@ test = ["pytest"] name = "sphinxcontrib-htmlhelp" version = "2.0.5" description = "sphinxcontrib-htmlhelp is a sphinx extension which renders HTML help files" +category = "dev" optional = false python-versions = ">=3.9" files = [ @@ -3648,24 +3833,11 @@ lint = ["docutils-stubs", "flake8", "mypy"] standalone = ["Sphinx (>=5)"] test = ["html5lib", "pytest"] -[[package]] -name = "sphinxcontrib-jquery" -version = "4.1" -description = "Extension to include jQuery on newer Sphinx releases" -optional = false -python-versions = ">=2.7" -files = [ - {file = "sphinxcontrib-jquery-4.1.tar.gz", hash = "sha256:1620739f04e36a2c779f1a131a2dfd49b2fd07351bf1968ced074365933abc7a"}, - {file = "sphinxcontrib_jquery-4.1-py2.py3-none-any.whl", hash = "sha256:f936030d7d0147dd026a4f2b5a57343d233f1fc7b363f68b3d4f1cb0993878ae"}, -] - -[package.dependencies] -Sphinx = ">=1.8" - [[package]] name = "sphinxcontrib-jsmath" version = "1.0.1" description = "A sphinx extension which renders display math in HTML via JavaScript" +category = "dev" optional = false python-versions = ">=3.5" files = [ @@ -3680,6 +3852,7 @@ test = ["flake8", "mypy", "pytest"] name = "sphinxcontrib-qthelp" version = "1.0.7" description = "sphinxcontrib-qthelp is a sphinx extension which outputs QtHelp documents" +category = "dev" optional = false python-versions = ">=3.9" files = [ @@ -3696,6 +3869,7 @@ test = ["pytest"] name = "sphinxcontrib-serializinghtml" version = "1.1.10" description = "sphinxcontrib-serializinghtml is a sphinx extension which outputs \"serialized\" HTML files (json and pickle)" +category = "dev" optional = false python-versions = ">=3.9" files = [ @@ -3712,6 +3886,7 @@ test = ["pytest"] name = "sqlalchemy" version = "2.0.25" description = "Database Abstraction Library" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3799,6 +3974,7 @@ sqlcipher = ["sqlcipher3_binary"] name = "stack-data" version = "0.6.3" description = "Extract data from python stack frames and tracebacks for informative displays" +category = "main" optional = false python-versions = "*" files = [ @@ -3818,6 +3994,7 @@ tests = ["cython", "littleutils", "pygments", "pytest", "typeguard"] name = "tabulate" version = "0.9.0" description = "Pretty-print tabular data" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -3832,6 +4009,7 @@ widechars = ["wcwidth"] name = "terminado" version = "0.18.0" description = "Tornado websocket backend for the Xterm.js Javascript terminal emulator library." +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -3853,6 +4031,7 @@ typing = ["mypy (>=1.6,<2.0)", "traitlets (>=5.11.1)"] name = "tinycss2" version = "1.2.1" description = "A tiny CSS parser" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -3871,6 +4050,7 @@ test = ["flake8", "isort", "pytest"] name = "toml" version = "0.10.2" description = "Python Library for Tom's Obvious, Minimal Language" +category = "dev" optional = false python-versions = ">=2.6, !=3.0.*, !=3.1.*, !=3.2.*" files = [ @@ -3882,6 +4062,7 @@ files = [ name = "tomli" version = "2.0.1" description = "A lil' TOML parser" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3893,6 +4074,7 @@ files = [ name = "tornado" version = "6.4" description = "Tornado is a Python web framework and asynchronous networking library, originally developed at FriendFeed." +category = "main" optional = false python-versions = ">= 3.8" files = [ @@ -3913,6 +4095,7 @@ files = [ name = "towncrier" version = "23.11.0" description = "Building newsfiles for your project." +category = "dev" optional = false python-versions = ">=3.8" files = [ @@ -3934,6 +4117,7 @@ dev = ["furo", "packaging", "sphinx (>=5)", "twisted"] name = "tqdm" version = "4.66.1" description = "Fast, Extensible Progress Meter" +category = "main" optional = false python-versions = ">=3.7" files = [ @@ -3954,6 +4138,7 @@ telegram = ["requests"] name = "traitlets" version = "5.14.1" description = "Traitlets Python configuration system" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3969,6 +4154,7 @@ test = ["argcomplete (>=3.0.3)", "mypy (>=1.7.0)", "pre-commit", "pytest (>=7.0, name = "types-python-dateutil" version = "2.8.19.20240106" description = "Typing stubs for python-dateutil" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -3980,6 +4166,7 @@ files = [ name = "typing-extensions" version = "4.9.0" description = "Backported and Experimental Type Hints for Python 3.8+" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -3991,6 +4178,7 @@ files = [ name = "tzdata" version = "2023.4" description = "Provider of IANA time zone data" +category = "main" optional = false python-versions = ">=2" files = [ @@ -4002,6 +4190,7 @@ files = [ name = "uri-template" version = "1.3.0" description = "RFC 6570 URI Template Processor" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -4016,6 +4205,7 @@ dev = ["flake8", "flake8-annotations", "flake8-bandit", "flake8-bugbear", "flake name = "urllib3" version = "2.1.0" description = "HTTP library with thread-safe connection pooling, file post, and more." +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -4032,6 +4222,7 @@ zstd = ["zstandard (>=0.18.0)"] name = "versioneer" version = "0.29" description = "Easy VCS-based management of project version strings" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -4046,6 +4237,7 @@ toml = ["tomli"] name = "virtualenv" version = "20.25.0" description = "Virtual Python Environment builder" +category = "dev" optional = false python-versions = ">=3.7" files = [ @@ -4066,6 +4258,7 @@ test = ["covdefaults (>=2.3)", "coverage (>=7.2.7)", "coverage-enable-subprocess name = "wcwidth" version = "0.2.13" description = "Measures the displayed width of unicode strings in a terminal" +category = "main" optional = false python-versions = "*" files = [ @@ -4077,6 +4270,7 @@ files = [ name = "webcolors" version = "1.13" description = "A library for working with the color formats defined by HTML and CSS." +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -4092,6 +4286,7 @@ tests = ["pytest", "pytest-cov"] name = "webencodings" version = "0.5.1" description = "Character encoding aliases for legacy web content" +category = "main" optional = true python-versions = "*" files = [ @@ -4103,6 +4298,7 @@ files = [ name = "websocket-client" version = "1.7.0" description = "WebSocket client for Python with low level API options" +category = "main" optional = true python-versions = ">=3.8" files = [ @@ -4119,6 +4315,7 @@ test = ["websockets"] name = "widgetsnbextension" version = "4.0.9" description = "Jupyter interactive widgets for Jupyter Notebook" +category = "main" optional = true python-versions = ">=3.7" files = [ @@ -4130,6 +4327,7 @@ files = [ name = "xarray" version = "2024.1.1" description = "N-D labeled arrays and datasets in Python" +category = "main" optional = false python-versions = ">=3.9" files = [ @@ -4153,6 +4351,7 @@ viz = ["matplotlib", "nc-time-axis", "seaborn"] name = "xlrd" version = "2.0.1" description = "Library for developers to extract data from Microsoft Excel (tm) .xls spreadsheet files" +category = "main" optional = true python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" files = [ @@ -4169,6 +4368,7 @@ test = ["pytest", "pytest-cov"] name = "zipp" version = "3.17.0" description = "Backport of pathlib-compatible object wrapper for zip files" +category = "main" optional = false python-versions = ">=3.8" files = [ @@ -4190,4 +4390,4 @@ notebooks = ["ipywidgets", "notebook", "seaborn"] [metadata] lock-version = "2.0" python-versions = "^3.9" -content-hash = "344bb25c3ee7cbe765cf4e9b22bc0e56074011a94f5944df31416c9bd65cb08e" +content-hash = "ea8b8867ceae1ffc72f9c6f91e911b331c25c919a3e8718a240c0af7cf2b0370" diff --git a/pyproject.toml b/pyproject.toml index 818a0d66..20a02536 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -68,7 +68,7 @@ pytest-regressions = "^2.5.0" [tool.poetry.group.docs.dependencies] myst-nb = "^0.17.0" -sphinx-rtd-theme = "^1.2.0" +sphinx-book-theme = "^1.1.0" sphinx-autodoc-typehints = "^1.23.0" sphinx-autodocgen = "^1.3" jupytext = "^1.14.5" diff --git a/src/openscm_runner/__init__.py b/src/openscm_runner/__init__.py index b8d373b1..5363139e 100644 --- a/src/openscm_runner/__init__.py +++ b/src/openscm_runner/__init__.py @@ -3,4 +3,4 @@ """ import importlib.metadata -__version__ = importlib.metadata.version("openscm_runner") +__version__ = importlib.metadata.version(__package__)