Skip to content
Snippets Groups Projects
Commit 9a92e6f9 authored by Ahmed Ilyas's avatar Ahmed Ilyas
Browse files

Merge branch 'py312' into 'develop'

Upgrade to Python 3.12

See merge request !2029
parents c94d5e91 4132472b
No related branches found
No related tags found
1 merge request!2029Upgrade to Python 3.12
Pipeline #223945 passed
......@@ -21,7 +21,7 @@
# https://docs.docker.com/engine/reference/builder/
FROM node:20 AS base_node
FROM python:3.11-slim AS base_python
FROM python:3.12-slim AS base_python
# Keeps Python from buffering stdout and stderr to avoid situations where
# the application crashes without emitting any logs due to buffering.
ENV PYTHONUNBUFFERED 1
......@@ -213,7 +213,7 @@ COPY --chown=nomad:1000 scripts/run-worker.sh .
COPY --chown=nomad:1000 nomad/jupyterhub_config.py ./nomad/jupyterhub_config.py
COPY --chown=nomad:1000 --from=dev_package /app/examples/data/uploads /app/examples/data/uploads
COPY --chown=nomad:1000 --from=builder /usr/local/lib/python3.11/site-packages /usr/local/lib/python3.11/site-packages
COPY --chown=nomad:1000 --from=builder /usr/local/lib/python3.12/site-packages /usr/local/lib/python3.12/site-packages
COPY --chown=nomad:1000 --from=builder /usr/local/share/jupyterhub /usr/local/share/jupyterhub
COPY --chown=nomad:1000 --from=builder /usr/local/share/jupyter /usr/local/share/jupyter
COPY --chown=nomad:1000 --from=builder /usr/local/bin/nomad /usr/local/bin/nomad
......@@ -221,7 +221,7 @@ COPY --chown=nomad:1000 --from=builder /usr/local/bin/jupyter* /usr/local/bin/
RUN mkdir -p /app/.volumes/fs \
&& chown -R nomad:1000 /app \
&& chown -R nomad:1000 /usr/local/lib/python3.11/site-packages/nomad
&& chown -R nomad:1000 /usr/local/lib/python3.12/site-packages/nomad
USER nomad
......
......@@ -50,21 +50,21 @@ This branch can be pushed to the repo, and then later may be merged to the relev
### Set up a Python environment
The NOMAD code currently requires Python 3.11. You should work in a Python virtual environment.
The NOMAD code currently requires Python 3.12. You should work in a Python virtual environment.
For developers using VSCode, in case you encounter any issues with breakpoints not [triggering](https://github.com/microsoft/debugpy/issues/1284), consider upgrading to py3.12.
#### Pyenv
If your host machine has an older version installed,
you can use [pyenv](https://github.com/pyenv/pyenv){:target="_blank"} to use Python 3.11 in parallel with your
you can use [pyenv](https://github.com/pyenv/pyenv){:target="_blank"} to use Python 3.12 in parallel with your
system's Python.
#### Virtualenv
Create a virtual environment. It allows you
to keep NOMAD and its dependencies separate from your system's Python installation.
Make sure that the virtual environment is based on Python 3.11.
Make sure that the virtual environment is based on Python 3.12.
Use either the built-in `venv` module (see example) or [virtualenv](https://pypi.org/project/virtualenv/){:target="_blank"}.
```shell
......@@ -78,7 +78,7 @@ If you are a conda user, there is an equivalent, but you have to install `pip` a
right Python version while creating the environment.
```shell
conda create --name nomad_env pip python=3.11
conda create --name nomad_env pip python=3.12
conda activate nomad_env
```
......
......@@ -169,10 +169,10 @@ and the "Allow GitHub Actions to create and approve pull requests" options and c
## Setting up the python environment
### Creating a virtual environment
Before we can start developing we recommend to create a virtual environment using Python 3.11
Before we can start developing we recommend to create a virtual environment using Python 3.12
```sh
python3.11 -m venv .pyenv
python3.12 -m venv .pyenv
source .pyenv/bin/activate
```
......
......@@ -75,7 +75,7 @@ infrastructure = [
'celery>=5.0',
'dockerspawner==13.0.0',
'elasticsearch>=7.0,<8',
'fastapi<0.100', # later versions pending pydantic v2 upgrade
'fastapi<0.100', # later versions pending pydantic v2 upgrade
'filelock==3.3.1',
'gitpython>=3.0',
'gunicorn>=21.2.0,<22.0.0',
......@@ -117,7 +117,7 @@ dev = [
'mkdocs-material>=9.0',
'mkdocs-redirects>=1.0',
'mkdocs>=1.0',
'mypy==1.0.1', # bug: incompatible with derived models of pydantic v1
'mypy==1.0.1', # bug: incompatible with derived models of pydantic v1
'names==0.3.0',
'uv>=0.2.35',
'pytest-asyncio>=0.23',
......@@ -130,6 +130,7 @@ dev = [
'rope==0.21.0',
'ruamel.yaml>=0.1',
'ruff>=0.6',
'setuptools>=70', # py3.12 doesn't bundle in setuptools, but this is required by mongomock lib
]
......@@ -146,15 +147,15 @@ indent-width = 4
[tool.ruff.lint]
select = [
"E", # pycodestyle
"W", # pycodestyle
"E", # pycodestyle
"W", # pycodestyle
"PL", # pylint
]
ignore = [
"E501", # Line too long ({width} > {limit} characters)
"E701", # Multiple statements on one line (colon)
"E731", # Do not assign a lambda expression, use a def
"E402", # Module level import not at top of file
"E501", # Line too long ({width} > {limit} characters)
"E701", # Multiple statements on one line (colon)
"E731", # Do not assign a lambda expression, use a def
"E402", # Module level import not at top of file
"PLR0911", # Too many return statements
"PLR0912", # Too many branches
"PLR0913", # Too many arguments in function definition
......@@ -181,9 +182,7 @@ skip-magic-trailing-comma = false
line-ending = "auto"
[tool.setuptools.packages.find]
where = [
".",
]
where = ["."]
exclude = ["tests*"]
namespaces = false
......@@ -198,4 +197,10 @@ disable_error_code = "import, annotation-unchecked"
[tool.setuptools_scm]
[tool.uv]
index-url = "https://gitlab.mpcdf.mpg.de/api/v4/projects/2187/packages/pypi/simple"
extra-index-url = [
"https://gitlab.mpcdf.mpg.de/api/v4/projects/2187/packages/pypi/simple",
]
constraint-dependencies = [ # can be removed once pynxtools removes kikuchipy restriction
"hyperspy>=1.7.6",
"pillow<10.1",
]
......@@ -5,7 +5,7 @@ alabaster==1.0.0 # via sphinx, -r requirements.txt
alembic==1.13.3 # via jupyterhub, -r requirements.txt
amqp==5.2.0 # via kombu, -r requirements.txt
aniso8601==9.0.1 # via -r requirements.txt, nomad-lab (pyproject.toml)
anyio==4.6.2 # via httpx, starlette, watchfiles, -r requirements.txt
anyio==4.6.2.post1 # via httpx, starlette, watchfiles, -r requirements.txt
arrow==1.3.0 # via isoduration, -r requirements.txt
ase==3.22.1 # via matid, -r requirements.txt, nomad-lab (pyproject.toml)
asgiref==3.8.1 # via -r requirements.txt, nomad-lab (pyproject.toml)
......@@ -19,7 +19,7 @@ bagit==1.8.1 # via -r requirements.txt, nomad-lab (pyproject.toml)
basicauth==0.4.1 # via -r requirements.txt, nomad-lab (pyproject.toml)
beautifulsoup4==4.12.3 # via -r requirements.txt, nomad-lab (pyproject.toml)
billiard==4.2.1 # via celery, -r requirements.txt
bitarray==2.9.3 # via -r requirements.txt, nomad-lab (pyproject.toml)
bitarray==3.0.0 # via -r requirements.txt, nomad-lab (pyproject.toml)
cachetools==5.5.0 # via -r requirements.txt, nomad-lab (pyproject.toml)
celery==5.4.0 # via -r requirements.txt, nomad-lab (pyproject.toml)
certifi==2024.8.30 # via elasticsearch, httpcore, httpx, netcdf4, requests, -r requirements.txt
......@@ -68,7 +68,7 @@ h5py==3.11.0 # via h5grove, -r requirements.txt, nomad-lab (pyproje
hjson==3.1.0 # via mkdocs-macros-plugin, super-collections, -r requirements.txt, nomad-lab (pyproject.toml)
html5lib==1.1 # via -r requirements.txt, nomad-lab (pyproject.toml)
httpcore==1.0.6 # via httpx, -r requirements.txt
httptools==0.6.1 # via uvicorn, -r requirements.txt
httptools==0.6.4 # via uvicorn, -r requirements.txt
httpx==0.27.2 # via python-keycloak, -r requirements.txt, nomad-lab (pyproject.toml)
idna==3.10 # via anyio, email-validator, httpx, jsonschema, requests, -r requirements.txt
imagesize==1.4.1 # via sphinx, -r requirements.txt
......@@ -107,8 +107,8 @@ mkdocs-click==0.8.1 # via nomad-lab (pyproject.toml)
mkdocs-get-deps==0.2.0 # via mkdocs
mkdocs-git-revision-date-localized-plugin==1.2.9 # via nomad-lab (pyproject.toml)
mkdocs-glightbox==0.4.0 # via nomad-lab (pyproject.toml)
mkdocs-macros-plugin==1.3.5 # via nomad-lab (pyproject.toml)
mkdocs-material==9.5.40 # via nomad-lab (pyproject.toml)
mkdocs-macros-plugin==1.3.6 # via nomad-lab (pyproject.toml)
mkdocs-material==9.5.41 # via nomad-lab (pyproject.toml)
mkdocs-material-extensions==1.3.1 # via mkdocs-material, nomad-lab (pyproject.toml)
mkdocs-redirects==1.2.1 # via nomad-lab (pyproject.toml)
mongoengine==0.29.1 # via -r requirements.txt, nomad-lab (pyproject.toml)
......@@ -137,14 +137,14 @@ pandas==2.2.3 # via nomad-openbis, panedr, pymatgen, xarray, -r requ
panedr==0.8.0 # via -r requirements.txt, nomad-lab (pyproject.toml)
parmed==4.2.2 # via -r requirements.txt, nomad-lab (pyproject.toml)
pathspec==0.12.1 # via mkdocs, mkdocs-macros-plugin
pillow==10.4.0 # via matplotlib, rdkit, -r requirements.txt
pillow==10.0.1 # via matplotlib, rdkit, -c (workspace), -r requirements.txt
pint==0.17 # via -r requirements.txt, nomad-lab (pyproject.toml)
platformdirs==4.3.6 # via mkdocs-get-deps
plotly==5.24.1 # via pymatgen, -r requirements.txt
pluggy==1.5.0 # via pytest
prometheus-client==0.21.0 # via jupyterhub, -r requirements.txt
prompt-toolkit==3.0.48 # via click-repl, -r requirements.txt
psutil==6.0.0 ; sys_platform == 'win32' # via jupyterhub, -r requirements.txt
psutil==6.1.0 ; sys_platform == 'win32' # via jupyterhub, -r requirements.txt
pyasn1==0.6.1 # via pyasn1-modules, rfc3161ng, -r requirements.txt
pyasn1-modules==0.4.1 # via rfc3161ng, -r requirements.txt
pybtex==0.24.0 # via pymatgen, -r requirements.txt
......@@ -161,7 +161,7 @@ pyrsistent==0.20.0 # via jsonschema, -r requirements.txt
pytest==7.4.4 # via pytest-asyncio, pytest-cov, pytest-split, pytest-timeout, pytest-xdist, nomad-lab (pyproject.toml)
pytest-asyncio==0.23.8 # via nomad-lab (pyproject.toml)
pytest-cov==5.0.0 # via nomad-lab (pyproject.toml)
pytest-split==0.9.0 # via nomad-lab (pyproject.toml)
pytest-split==0.10.0 # via nomad-lab (pyproject.toml)
pytest-timeout==2.3.1 # via nomad-lab (pyproject.toml)
pytest-xdist==3.6.1 # via nomad-lab (pyproject.toml)
python-dateutil==2.9.0.post0 # via arrow, celery, elasticsearch-dsl, ghp-import, jupyterhub, matplotlib, mkdocs-macros-plugin, nomad-openbis, pandas, rfc3161ng, -r requirements.txt
......@@ -189,11 +189,12 @@ rfc3987==1.3.8 # via jsonschema, -r requirements.txt
rope==0.21.0 # via nomad-lab (pyproject.toml)
ruamel-yaml==0.18.6 # via jupyter-telemetry, oauthenticator, pymatgen, -r requirements.txt, nomad-lab (pyproject.toml)
ruamel-yaml-clib==0.2.8 ; python_full_version < '3.13' and platform_python_implementation == 'CPython' # via ruamel-yaml, -r requirements.txt
ruff==0.6.9 # via nomad-lab (pyproject.toml)
ruff==0.7.0 # via nomad-lab (pyproject.toml)
runstats==2.0.0 # via -r requirements.txt, nomad-lab (pyproject.toml)
scikit-learn==1.5.2 # via matid, -r requirements.txt, nomad-lab (pyproject.toml)
scipy==1.14.1 # via ase, pymatgen, scikit-learn, -r requirements.txt, nomad-lab (pyproject.toml)
sentinels==1.0.0 # via mongomock, -r requirements.txt
setuptools==75.2.0 # via nomad-lab (pyproject.toml)
six==1.16.0 # via asttokens, basicauth, elasticsearch-dsl, html5lib, pybtex, python-dateutil, rdflib, rfc3339-validator, validators, -r requirements.txt
smmap==5.0.1 # via gitdb, -r requirements.txt
sniffio==1.3.1 # via anyio, httpx, -r requirements.txt
......@@ -207,7 +208,7 @@ sphinxcontrib-htmlhelp==2.1.0 # via sphinx, -r requirements.txt
sphinxcontrib-jsmath==1.0.1 # via sphinx, -r requirements.txt
sphinxcontrib-qthelp==2.0.0 # via sphinx, -r requirements.txt
sphinxcontrib-serializinghtml==2.0.0 # via sphinx, -r requirements.txt
sqlalchemy==2.0.35 # via alembic, jupyterhub, -r requirements.txt
sqlalchemy==2.0.36 # via alembic, jupyterhub, -r requirements.txt
starlette==0.27.0 # via fastapi, -r requirements.txt
structlog==24.4.0 # via -r requirements.txt, nomad-lab (pyproject.toml)
super-collections==0.5.3 # via mkdocs-macros-plugin
......@@ -231,9 +232,9 @@ uncertainties==3.2.2 # via pymatgen, -r requirements.txt
unidecode==1.3.2 # via -r requirements.txt, nomad-lab (pyproject.toml)
uri-template==1.3.0 # via jsonschema, -r requirements.txt
urllib3==1.26.20 # via docker, elasticsearch, nomad-openbis, requests, -r requirements.txt
uv==0.4.20 # via nomad-lab (pyproject.toml)
uvicorn==0.31.1 # via h5grove, -r requirements.txt, nomad-lab (pyproject.toml)
uvloop==0.20.0 ; platform_python_implementation != 'PyPy' and sys_platform != 'cygwin' and sys_platform != 'win32' # via uvicorn, -r requirements.txt
uv==0.4.24 # via nomad-lab (pyproject.toml)
uvicorn==0.32.0 # via h5grove, -r requirements.txt, nomad-lab (pyproject.toml)
uvloop==0.21.0 ; platform_python_implementation != 'PyPy' and sys_platform != 'cygwin' and sys_platform != 'win32' # via uvicorn, -r requirements.txt
validators==0.18.2 # via -r requirements.txt, nomad-lab (pyproject.toml)
vine==5.1.0 # via amqp, celery, kombu, -r requirements.txt
watchdog==5.0.3 # via mkdocs
......
# This file was autogenerated by uv via the following command:
# uv pip compile --universal -p 3.11 --annotation-style=line --output-file=requirements-plugins.txt --unsafe-package nomad-lab -c requirements-dev.txt default_plugins.txt
aniso8601==9.0.1 # via nomad-lab, -c requirements-dev.txt
anyio==4.6.2 # via httpx, jupyter-server, -c requirements-dev.txt
anyio==4.6.2.post1 # via httpx, jupyter-server, -c requirements-dev.txt
anytree==2.12.1 # via pynxtools
appnope==0.1.4 ; platform_system == 'Darwin' # via ipykernel
argon2-cffi==23.1.0 # via jupyter-server
......@@ -17,7 +17,7 @@ async-property==0.2.2 # via python-keycloak, -c requirements-dev.txt
attrs==24.2.0 # via jsonschema, -c requirements-dev.txt
babel==2.16.0 # via jupyterlab-server, -c requirements-dev.txt
beautifulsoup4==4.12.3 # via nbconvert, -c requirements-dev.txt
bitarray==2.9.3 # via nomad-lab, -c requirements-dev.txt
bitarray==3.0.0 # via nomad-lab, -c requirements-dev.txt
bleach==6.1.0 # via nbconvert
blinker==1.8.2 # via flask
blosc2==2.7.1 # via tables
......@@ -68,7 +68,7 @@ hdf5plugin==5.0.0 # via fabio
hjson==3.1.0 # via nomad-lab, -c requirements-dev.txt
httpcore==1.0.6 # via httpx, -c requirements-dev.txt
httpx==0.27.2 # via jupyterlab, nomad-lab, python-keycloak, -c requirements-dev.txt
hyperspy==1.7.5 # via kikuchipy, pyxem
hyperspy==1.7.6 # via kikuchipy, pyxem, -c (workspace)
idna==3.10 # via anyio, httpx, jsonschema, requests, -c requirements-dev.txt
ifes-apt-tc-data-modeling==0.2.2 # via pynxtools-apm
igor2==0.5.8 # via pynxtools-xps
......@@ -176,7 +176,7 @@ partd==1.4.2 # via dask
perovskite-solar-cell-database @ git+https://github.com/FAIRmat-NFDI/nomad-perovskite-solar-cells-database.git@f394d21abafeb659729af0c94e5f90949fce01c1 # via -r default_plugins.txt
pexpect==4.9.0 ; sys_platform != 'emscripten' and sys_platform != 'win32' # via ipython
phonopy==2.11.0 # via asr, nomad-parser-plugins-workflow
pillow==10.4.0 # via fabio, imageio, matplotlib, nionswift, rdkit, scikit-image, -c requirements-dev.txt
pillow==10.0.1 # via fabio, hyperspy, imageio, matplotlib, nionswift, rdkit, scikit-image, -c requirements-dev.txt, -c (workspace)
pint==0.17 # via fairmat-readers-xrd, hyperspy, nomad-lab, pynxtools-apm, pynxtools-em, pynxtools-xps, pynxtools-xrd, rosettasciio, -c requirements-dev.txt
platformdirs==4.3.6 # via jupyter-core, pooch, xraydb, -c requirements-dev.txt
plotly==5.24.1 # via asr, pymatgen, -c requirements-dev.txt
......@@ -185,7 +185,8 @@ pooch==1.8.2 # via kikuchipy, orix
prettytable==3.11.0 # via hyperspy
prometheus-client==0.21.0 # via jupyter-server, -c requirements-dev.txt
prompt-toolkit==3.0.48 # via ipython, jupyter-console, -c requirements-dev.txt
psutil==6.0.0 # via diffsims, ipykernel, ipyparallel, pyxem, -c requirements-dev.txt
psutil==6.0.0 ; sys_platform != 'win32' # via diffsims, ipykernel, ipyparallel, pyxem, -c requirements-dev.txt
psutil==6.1.0 ; sys_platform == 'win32' # via diffsims, ipykernel, ipyparallel, pyxem, -c requirements-dev.txt
ptyprocess==0.7.0 ; os_name != 'nt' or (sys_platform != 'emscripten' and sys_platform != 'win32') # via pexpect, terminado
pure-eval==0.2.3 # via stack-data
py-cpuinfo==9.0.0 # via blosc2, tables
......@@ -236,14 +237,14 @@ scikit-image==0.22.0 # via hyperspy, kikuchipy, pyxem
scikit-learn==1.5.2 # via kikuchipy, matid, nomad-lab, pyxem, -c requirements-dev.txt
scipy==1.14.1 # via ase, diffsims, findiff, griddataformats, hyperspy, kikuchipy, lmfit, mdanalysis, niondata, nionswift, nomad-lab, nomad-parser-plugins-atomistic, nomad-schema-plugin-simulation-workflow, orix, pyfai, pymatgen, pyxem, radioactivedecay, scikit-image, scikit-learn, sparse, xraydb, -c requirements-dev.txt
send2trash==1.8.3 # via jupyter-server
setuptools==75.1.0 # via radioactivedecay
setuptools==75.2.0 # via radioactivedecay, -c requirements-dev.txt
silx==2.1.1 # via pyfai
six==1.16.0 # via anytree, asttokens, bleach, elasticsearch-dsl, pybtex, python-dateutil, rfc3339-validator, -c requirements-dev.txt
sniffio==1.3.1 # via anyio, httpx, -c requirements-dev.txt
soupsieve==2.6 # via beautifulsoup4, -c requirements-dev.txt
sparse==0.15.4 # via hyperspy
spglib==2.5.0 # via asr, matid, phonopy, pymatgen, -c requirements-dev.txt
sqlalchemy==2.0.35 # via xraydb, -c requirements-dev.txt
sqlalchemy==2.0.36 # via xraydb, -c requirements-dev.txt
stack-data==0.6.3 # via ipython
sympy==1.13.3 # via findiff, hyperspy, pymatgen, radioactivedecay, -c requirements-dev.txt
tables==3.10.1 # via ifes-apt-tc-data-modeling
......
......@@ -4,7 +4,7 @@ alabaster==1.0.0 # via sphinx
alembic==1.13.3 # via jupyterhub
amqp==5.2.0 # via kombu
aniso8601==9.0.1 # via nomad-lab (pyproject.toml)
anyio==4.6.2 # via httpx, starlette, watchfiles
anyio==4.6.2.post1 # via httpx, starlette, watchfiles
arrow==1.3.0 # via isoduration
ase==3.22.1 # via matid, nomad-lab (pyproject.toml)
asgiref==3.8.1 # via nomad-lab (pyproject.toml)
......@@ -16,7 +16,7 @@ bagit==1.8.1 # via nomad-lab (pyproject.toml)
basicauth==0.4.1 # via nomad-lab (pyproject.toml)
beautifulsoup4==4.12.3 # via nomad-lab (pyproject.toml)
billiard==4.2.1 # via celery
bitarray==2.9.3 # via nomad-lab (pyproject.toml)
bitarray==3.0.0 # via nomad-lab (pyproject.toml)
cachetools==5.5.0 # via nomad-lab (pyproject.toml)
celery==5.4.0 # via nomad-lab (pyproject.toml)
certifi==2024.8.30 # via elasticsearch, httpcore, httpx, netcdf4, requests
......@@ -59,7 +59,7 @@ h5py==3.11.0 # via h5grove, nomad-lab (pyproject.toml)
hjson==3.1.0 # via nomad-lab (pyproject.toml)
html5lib==1.1 # via nomad-lab (pyproject.toml)
httpcore==1.0.6 # via httpx
httptools==0.6.1 # via uvicorn
httptools==0.6.4 # via uvicorn
httpx==0.27.2 # via python-keycloak, nomad-lab (pyproject.toml)
idna==3.10 # via anyio, email-validator, httpx, jsonschema, requests
imagesize==1.4.1 # via sphinx
......@@ -111,12 +111,12 @@ pamela==1.2.0 ; sys_platform != 'win32' # via jupyterhub
pandas==2.2.3 # via nomad-openbis, panedr, pymatgen, xarray, nomad-lab (pyproject.toml)
panedr==0.8.0 # via nomad-lab (pyproject.toml)
parmed==4.2.2 # via nomad-lab (pyproject.toml)
pillow==10.4.0 # via matplotlib, rdkit
pillow==10.0.1 # via matplotlib, rdkit, -c (workspace)
pint==0.17 # via nomad-lab (pyproject.toml)
plotly==5.24.1 # via pymatgen
prometheus-client==0.21.0 # via jupyterhub
prompt-toolkit==3.0.48 # via click-repl
psutil==6.0.0 ; sys_platform == 'win32' # via jupyterhub
psutil==6.1.0 ; sys_platform == 'win32' # via jupyterhub
pyasn1==0.6.1 # via pyasn1-modules, rfc3161ng
pyasn1-modules==0.4.1 # via rfc3161ng
pybtex==0.24.0 # via pymatgen
......@@ -167,7 +167,7 @@ sphinxcontrib-htmlhelp==2.1.0 # via sphinx
sphinxcontrib-jsmath==1.0.1 # via sphinx
sphinxcontrib-qthelp==2.0.0 # via sphinx
sphinxcontrib-serializinghtml==2.0.0 # via sphinx
sqlalchemy==2.0.35 # via alembic, jupyterhub
sqlalchemy==2.0.36 # via alembic, jupyterhub
starlette==0.27.0 # via fastapi
structlog==24.4.0 # via nomad-lab (pyproject.toml)
sympy==1.13.3 # via pymatgen
......@@ -188,8 +188,8 @@ uncertainties==3.2.2 # via pymatgen
unidecode==1.3.2 # via nomad-lab (pyproject.toml)
uri-template==1.3.0 # via jsonschema
urllib3==1.26.20 # via docker, elasticsearch, nomad-openbis, requests
uvicorn==0.31.1 # via h5grove, nomad-lab (pyproject.toml)
uvloop==0.20.0 ; platform_python_implementation != 'PyPy' and sys_platform != 'cygwin' and sys_platform != 'win32' # via uvicorn
uvicorn==0.32.0 # via h5grove, nomad-lab (pyproject.toml)
uvloop==0.21.0 ; platform_python_implementation != 'PyPy' and sys_platform != 'cygwin' and sys_platform != 'win32' # via uvicorn
validators==0.18.2 # via nomad-lab (pyproject.toml)
vine==5.1.0 # via amqp, celery, kombu
watchfiles==0.24.0 # via uvicorn
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment