Skip to content

Commit 3c8d4db

Browse files
authored
Merge branch 'develop' into mlpq
2 parents f21cb25 + e051b08 commit 3c8d4db

44 files changed

Lines changed: 1271 additions & 1572 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/testing.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,7 +75,7 @@ jobs:
7575
with:
7676
auto-update-conda: true
7777
python-version: ${{ matrix.python-version }}
78-
channels: anaconda, conda-forge
78+
channels: conda-forge
7979

8080
- name: Install Python dependencies
8181
shell: bash -l {0}

.github/workflows/upgrade-dependencies.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,10 @@ jobs:
3131
- name: Upgrade Python dependencies
3232
shell: bash
3333
run: |
34-
python${{ matrix.python-version }} -m pip install --upgrade pip pip-tools
34+
python${{ matrix.python-version }} -m pip install --upgrade "pip<25.3" pip-tools
3535
cd ${{ matrix.package }}
36-
python${{ matrix.python-version }} -m piptools compile -q --upgrade --resolver=backtracking -o requirements/${{ matrix.os }}_py${{ matrix.python-version }}.txt
37-
python${{ matrix.python-version }} -m piptools compile -q --upgrade --resolver=backtracking --all-extras -o requirements/${{ matrix.os }}_py${{ matrix.python-version }}_extras.txt
36+
python${{ matrix.python-version }} -m piptools compile -q --upgrade -o requirements/${{ matrix.os }}_py${{ matrix.python-version }}.txt
37+
python${{ matrix.python-version }} -m piptools compile -q --upgrade --all-extras -o requirements/${{ matrix.os }}_py${{ matrix.python-version }}_extras.txt
3838
- name: Detect changes
3939
id: changes
4040
shell: bash

emmet-api/Dockerfile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
FROM materialsproject/devops:python-3.1113.0 AS base
1+
FROM materialsproject/devops:python-3.1113.1 AS base
22
RUN apt-get update && apt-get install -y --no-install-recommends libopenblas-dev libjpeg62 curl && apt-get clean
33

44
FROM base AS builder
@@ -7,7 +7,7 @@ ENV PATH /root/.local/bin:$PATH
77
WORKDIR /emmet-api
88
ENV PIP_FLAGS "--user --no-cache-dir --compile"
99
COPY requirements/deployment.txt ./requirements.txt
10-
RUN pip install $PIP_FLAGS --upgrade pip pip-tools setuptools-scm && \
10+
RUN pip install $PIP_FLAGS --upgrade "pip<25.3" pip-tools setuptools-scm && \
1111
pip-sync requirements.txt --pip-args "$PIP_FLAGS"
1212

1313
COPY emmet emmet

emmet-api/emmet/api/core/api.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@
66
from emmet.api import __version__ as api_version
77
from emmet.api.core.settings import MAPISettings
88

9+
SETTINGS = MAPISettings()
10+
BATCH_IDS = (SETTINGS.ACCESS_CONTROLLED_BATCH_IDS or "").split(",")
11+
912

1013
class MAPI(API):
1114
"""
@@ -20,8 +23,9 @@ def __init__(
2023
debug=False,
2124
heartbeat_meta={
2225
"pymatgen": pmg_version,
23-
"db_version": MAPISettings().DB_VERSION,
24-
"suffix": MAPISettings().DB_NAME_SUFFIX,
26+
"db_version": SETTINGS.DB_VERSION,
27+
"suffix": SETTINGS.DB_NAME_SUFFIX,
28+
"access_controlled_batch_ids": BATCH_IDS,
2529
},
2630
description=None,
2731
tags_meta=None,

emmet-api/emmet/api/core/settings.py

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,6 +26,10 @@ class MAPISettings(BaseSettings):
2626
None, description="Database name suffix. Either blue or green."
2727
)
2828

29+
ACCESS_CONTROLLED_BATCH_IDS: str | None = Field(
30+
None, description="List of batch_ids with access control restrictions"
31+
)
32+
2933
SORT_FIELDS: list[str] = Field(
3034
[
3135
"nsites",

emmet-api/pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ authors = [
3030
license = { text = "Modified BSD" }
3131
dependencies = [
3232
"emmet-core>=0.85.1rc0",
33-
"fastapi!=0.119.0",
33+
"fastapi<0.119",
3434
"gunicorn",
3535
"boto3",
3636
"ddtrace",

emmet-api/requirements/deployment.txt

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ bibtexparser==1.4.3
1616
# via pymatgen
1717
blake3==1.0.8
1818
# via emmet-core
19-
boto3==1.40.55
19+
boto3==1.40.66
2020
# via emmet-api (emmet/emmet-api/pyproject.toml)
21-
botocore==1.40.55
21+
botocore==1.40.66
2222
# via
2323
# boto3
2424
# s3transfer
@@ -34,11 +34,11 @@ contourpy==1.3.3
3434
# via matplotlib
3535
cycler==0.12.1
3636
# via matplotlib
37-
ddtrace==3.16.1
37+
ddtrace==3.17.2
3838
# via emmet-api (emmet/emmet-api/pyproject.toml)
3939
dnspython==2.8.0
4040
# via pymongo
41-
emmet-core==0.86.0rc0
41+
emmet-core==0.86.0rc1
4242
# via emmet-api (emmet/emmet-api/pyproject.toml)
4343
envier==0.6.1
4444
# via ddtrace
@@ -54,7 +54,7 @@ idna==3.11
5454
# via
5555
# anyio
5656
# requests
57-
imageio==2.37.0
57+
imageio==2.37.2
5858
# via scikit-image
5959
importlib-metadata==8.7.0
6060
# via opentelemetry-api
@@ -82,7 +82,7 @@ mp-pyrho==0.5.1
8282
# via pymatgen-analysis-defects
8383
mpmath==1.3.0
8484
# via sympy
85-
narwhals==2.9.0
85+
narwhals==2.10.2
8686
# via plotly
8787
networkx==3.5
8888
# via
@@ -106,7 +106,7 @@ numpy==1.26.4
106106
# tifffile
107107
opentelemetry-api==1.38.0
108108
# via ddtrace
109-
orjson==3.11.3
109+
orjson==3.11.4
110110
# via pymatgen
111111
packaging==25.0
112112
# via
@@ -126,7 +126,7 @@ pillow==12.0.0
126126
# imageio
127127
# matplotlib
128128
# scikit-image
129-
plotly==6.3.1
129+
plotly==6.4.0
130130
# via pymatgen
131131
protobuf==6.33.0
132132
# via ddtrace
@@ -170,7 +170,7 @@ python-dateutil==2.9.0.post0
170170
# botocore
171171
# matplotlib
172172
# pandas
173-
python-dotenv==1.1.1
173+
python-dotenv==1.2.1
174174
# via pydantic-settings
175175
pytz==2025.2
176176
# via pandas
@@ -180,7 +180,7 @@ requests==2.32.5
180180
# via
181181
# pymatgen
182182
# pymatgen-io-validation
183-
ruamel-yaml==0.18.15
183+
ruamel-yaml==0.18.16
184184
# via
185185
# monty
186186
# pymatgen
@@ -190,7 +190,7 @@ s3transfer==0.14.0
190190
# via boto3
191191
scikit-image==0.25.2
192192
# via pymatgen-analysis-defects
193-
scipy==1.16.2
193+
scipy==1.16.3
194194
# via
195195
# -r python/requirements.txt
196196
# pymatgen

emmet-api/requirements/ubuntu-latest_py3.11.txt

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,9 @@ bibtexparser==1.4.3
1616
# via pymatgen
1717
blake3==1.0.8
1818
# via emmet-core
19-
boto3==1.40.55
19+
boto3==1.40.67
2020
# via emmet-api (pyproject.toml)
21-
botocore==1.40.55
21+
botocore==1.40.67
2222
# via
2323
# boto3
2424
# s3transfer
@@ -34,15 +34,15 @@ contourpy==1.3.3
3434
# via matplotlib
3535
cycler==0.12.1
3636
# via matplotlib
37-
ddtrace==3.16.1
37+
ddtrace==3.18.0
3838
# via emmet-api (pyproject.toml)
3939
dnspython==2.8.0
4040
# via pymongo
41-
emmet-core==0.86.0rc0
41+
emmet-core==0.86.0rc1
4242
# via emmet-api (pyproject.toml)
4343
envier==0.6.1
4444
# via ddtrace
45-
fastapi==0.119.1
45+
fastapi==0.118.3
4646
# via emmet-api (pyproject.toml)
4747
fonttools==4.60.1
4848
# via matplotlib
@@ -54,7 +54,7 @@ idna==3.11
5454
# via
5555
# anyio
5656
# requests
57-
imageio==2.37.0
57+
imageio==2.37.2
5858
# via scikit-image
5959
importlib-metadata==8.7.0
6060
# via opentelemetry-api
@@ -80,7 +80,7 @@ mp-pyrho==0.5.1
8080
# via pymatgen-analysis-defects
8181
mpmath==1.3.0
8282
# via sympy
83-
narwhals==2.9.0
83+
narwhals==2.10.2
8484
# via plotly
8585
networkx==3.5
8686
# via
@@ -103,7 +103,7 @@ numpy==2.3.4
103103
# tifffile
104104
opentelemetry-api==1.38.0
105105
# via ddtrace
106-
orjson==3.11.3
106+
orjson==3.11.4
107107
# via pymatgen
108108
packaging==25.0
109109
# via
@@ -121,19 +121,19 @@ pillow==12.0.0
121121
# imageio
122122
# matplotlib
123123
# scikit-image
124-
plotly==6.3.1
124+
plotly==6.4.0
125125
# via pymatgen
126126
protobuf==6.33.0
127127
# via ddtrace
128128
pybtex==0.25.1
129129
# via emmet-core
130-
pydantic==2.12.3
130+
pydantic==2.12.4
131131
# via
132132
# emmet-core
133133
# fastapi
134134
# pydantic-settings
135135
# pymatgen-io-validation
136-
pydantic-core==2.41.4
136+
pydantic-core==2.41.5
137137
# via pydantic
138138
pydantic-settings==2.11.0
139139
# via
@@ -165,7 +165,7 @@ python-dateutil==2.9.0.post0
165165
# botocore
166166
# matplotlib
167167
# pandas
168-
python-dotenv==1.1.1
168+
python-dotenv==1.2.1
169169
# via pydantic-settings
170170
pytz==2025.2
171171
# via pandas
@@ -175,7 +175,7 @@ requests==2.32.5
175175
# via
176176
# pymatgen
177177
# pymatgen-io-validation
178-
ruamel-yaml==0.18.15
178+
ruamel-yaml==0.18.16
179179
# via
180180
# monty
181181
# pymatgen
@@ -185,7 +185,7 @@ s3transfer==0.14.0
185185
# via boto3
186186
scikit-image==0.25.2
187187
# via pymatgen-analysis-defects
188-
scipy==1.16.2
188+
scipy==1.16.3
189189
# via
190190
# pymatgen
191191
# scikit-image

0 commit comments

Comments
 (0)