diff --git a/science/py-mp-api/Makefile b/science/py-mp-api/Makefile index cda39e1cd11d..0080da56d2bc 100644 --- a/science/py-mp-api/Makefile +++ b/science/py-mp-api/Makefile @@ -1,35 +1,49 @@ PORTNAME= mp-api -DISTVERSION= 0.34.0 -PORTREVISION= 2 +DISTVERSION= 0.46.4 CATEGORIES= science python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTNAME= mp_api-${DISTVERSION} MAINTAINER= yuri@FreeBSD.org COMMENT= API for server for the Materials Project WWW= https://materialsproject.github.io/api/ LICENSE= BSD3CLAUSE LICENSE_FILE= ${WRKSRC}/LICENSE -BUILD_DEPENDS= ${PY_SETUPTOOLS} \ +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.0:devel/py-setuptools@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}setuptools-scm>0:devel/py-setuptools-scm@${PY_FLAVOR} \ ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}boto3>0:www/py-boto3@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}custodian>0:devel/py-custodian@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}emmet-core>=0.39.8:science/py-emmet-core@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}monty>=2022.3.12:devel/py-monty@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}mpcontribs-client>=5.0.10:science/py-mpcontribs-client@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}msgpack>0:devel/py-msgpack@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pydantic2>=1.8.2:devel/py-pydantic2@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pymatgen-analysis-alloys>=0.0.3:science/py-pymatgen-analysis-alloys@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}pymatgen>=2022.3.7:science/py-pymatgen@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}requests>=2.27.1:www/py-requests@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}typing-extensions>=4.1.1:devel/py-typing-extensions@${PY_FLAVOR} - -USES= python + ${PYTHON_PKGNAMEPREFIX}deltalake>0:databases/py-deltalake@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}emmet-core>=0.87.1:science/py-emmet-core@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}monty>=2024.12.10:devel/py-monty@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}orjson>=3.10:devel/py-orjson@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pyarrow>=20.0.0:databases/py-pyarrow@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pymatgen>2024.2.20:science/py-pymatgen@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}requests>=2.23.0:www/py-requests@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}typing-extensions>=3.7.4.1:devel/py-typing-extensions@${PY_FLAVOR} +TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest-asyncio>0:devel/py-pytest-asyncio@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pytest-cov>0:devel/py-pytest-cov@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pytest-mock>0:devel/py-pytest-mock@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}pytest-xdist>0:devel/py-pytest-xdist@${PY_FLAVOR} + +USES= python:3.11+ USE_PYTHON= pep517 autoplist pytest NO_ARCH= yes +# tests as of 0.46.4: disable tests that require network access to the Materials +# Project API or an API key (test_core_fetch_tools, test_core_search_tools, +# test_blessed_entry, test_regression_batching) and the client-initialization +# test (test_mix_in) that fails without an API key in the clean environment. +PYTEST_BROKEN_TESTS= test_core_fetch_tools \ + test_core_search_tools \ + test_mix_in \ + test_blessed_entry \ + test_regression_batching + +# tests as of 0.46.4: 22 passed 131 skipped + .include diff --git a/science/py-mp-api/distinfo b/science/py-mp-api/distinfo index 0a72b491d952..aaad6a1ccf9b 100644 --- a/science/py-mp-api/distinfo +++ b/science/py-mp-api/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1692075749 -SHA256 (mp-api-0.34.0.tar.gz) = 64cb8cadb83352715cfba83a89e228111a5cff8257021aa25529c4e90dd9d945 -SIZE (mp-api-0.34.0.tar.gz) = 702100 +TIMESTAMP = 1785554297 +SHA256 (mp_api-0.46.4.tar.gz) = c934d0e6c95acd88a7d6e22a7c718520fbb65cb070923db34c3b90821b924c89 +SIZE (mp_api-0.46.4.tar.gz) = 162993 diff --git a/science/py-mp-api/files/patch-pyproject.toml b/science/py-mp-api/files/patch-pyproject.toml new file mode 100644 index 000000000000..83d6ddd85842 --- /dev/null +++ b/science/py-mp-api/files/patch-pyproject.toml @@ -0,0 +1,13 @@ +-- Fix invalid PEP 621 license declaration. +-- Upstream uses license = "BSD-3-Clause-LBNL" which newer setuptools rejects. +--- pyproject.toml.orig ++++ pyproject.toml +@@ -10,7 +10,7 @@ + description = "API Client for the Materials Project" + readme = "README.md" + requires-python = ">=3.11" +-license = "BSD-3-Clause-LBNL" ++license = {text = "BSD-3-Clause-LBNL"} + classifiers = [ + "Programming Language :: Python :: 3", + "Development Status :: 4 - Beta",