diff --git a/finance/py-ccxt/Makefile b/finance/py-ccxt/Makefile index 528428a310c2..0a96c1cf93cf 100644 --- a/finance/py-ccxt/Makefile +++ b/finance/py-ccxt/Makefile @@ -1,33 +1,41 @@ PORTNAME= ccxt -DISTVERSION= 4.4.30 -PORTREVISION= 1 +DISTVERSION= 4.5.70 CATEGORIES= finance python MASTER_SITES= PYPI PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} MAINTAINER= yuri@FreeBSD.org COMMENT= Cryptocurrency trading API with support for 100+ exchanges WWW= https://github.com/ccxt/ccxt LICENSE= MIT LICENSE_FILE= ${WRKSRC}/LICENSE.txt -RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}certifi>=2018.1.18:security/py-certifi@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}requests>=2.18.4:www/py-requests@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}typing-extensions>=4.4.0:devel/py-typing-extensions@${PY_FLAVOR} -RUN_DEPENDS+= ${PYTHON_PKGNAMEPREFIX}aiohttp>=3.8:www/py-aiohttp@${PY_FLAVOR} \ - ${PYTHON_PKGNAMEPREFIX}yarl>=1.7.2:www/py-yarl@${PY_FLAVOR} +BUILD_DEPENDS= ${PY_SETUPTOOLS} \ + ${PYTHON_PKGNAMEPREFIX}wheel>0:devel/py-wheel@${PY_FLAVOR} +RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}aiohttp>=3.14.1:www/py-aiohttp@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}certifi>=2026.6.17:security/py-certifi@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}requests>=2.34.2:www/py-requests@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}typing-extensions>=4.16.0:devel/py-typing-extensions@${PY_FLAVOR} \ + ${PYTHON_PKGNAMEPREFIX}yarl>=1.24.2:www/py-yarl@${PY_FLAVOR} TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest-asyncio>0:devel/py-pytest-asyncio@${PY_FLAVOR} USES= python -USE_PYTHON= distutils autoplist cryptography pytest # 3 errors during tests, see https://github.com/ccxt/ccxt/issues/16661 ; no tests found in 4.4.29 +USE_PYTHON= pep517 autoplist cryptography pytest # see https://github.com/ccxt/ccxt/issues/29383 NO_ARCH= yes TEST_ENV= ${MAKE_ENV} PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} -TEST_WRKSRC= ${WRKSRC}/ccxt/test +TEST_WRKSRC= ${WRKSRC}/python/ccxt/test +TEST_ARGS= -o asyncio_mode=auto \ + -p no:relaxed \ + -k 'not trio' \ + --ignore=exchange \ + --ignore=base/language_specific/test_throttler_performance.py post-extract: # workaround for https://github.com/ccxt/ccxt/issues/16220 @${TOUCH} ${WRKSRC}/README.md +# tests as of 4.5.70: 92 passed, 2 warnings in 25.39s + .include diff --git a/finance/py-ccxt/distinfo b/finance/py-ccxt/distinfo index 8b4b86d72be6..90730769b600 100644 --- a/finance/py-ccxt/distinfo +++ b/finance/py-ccxt/distinfo @@ -1,3 +1,3 @@ -TIMESTAMP = 1731472127 -SHA256 (ccxt-4.4.30.tar.gz) = 7bed5ab033fc35310f2d1c5b338fedd1539d5c9c4831f1f17220376170312239 -SIZE (ccxt-4.4.30.tar.gz) = 5110715 +TIMESTAMP = 1785507744 +SHA256 (ccxt-4.5.70.tar.gz) = ddc3ddf4ae65d27962976e036b0b9e7803947e453699d39fcbcb696b8a348776 +SIZE (ccxt-4.5.70.tar.gz) = 6011490 diff --git a/finance/py-ccxt/files/patch-pyproject.toml b/finance/py-ccxt/files/patch-pyproject.toml new file mode 100644 index 000000000000..cdaee0eca9fa --- /dev/null +++ b/finance/py-ccxt/files/patch-pyproject.toml @@ -0,0 +1,25 @@ +--- pyproject.toml.orig 2026-07-29 13:23:04 UTC ++++ pyproject.toml +@@ -1,5 +1,5 @@ + [build-system] +-requires = ["setuptools==83.0.0"] ++requires = ["setuptools"] + build-backend = "setuptools.build_meta" + + [project] +@@ -7,7 +7,6 @@ readme = "python/README.md" + version = "4.5.70" + description = "A cryptocurrency trading API with more than 100 exchanges in JavaScript / TypeScript / Python / C# / PHP / Go" + readme = "python/README.md" +-license = "MIT" + authors = [ + { name = "Igor Kroitor", email = "igor.kroitor@gmail.com" }, + ] +@@ -43,7 +42,6 @@ dependencies = [ + # all dependencies are pinned to exact versions to protect against + # malicious or vulnerable releases of downstream dependencies + dependencies = [ +- "setuptools==83.0.0", + "certifi==2026.6.17", + "requests==2.34.2", + "cryptography==49.0.0",