Skip to content

Commit

Permalink
devel/py-orjson: Update to 3.9.10
Browse files Browse the repository at this point in the history
* Switch to PEP517 build framework and remove the now obsolete
  pre-PEP517 workarounds.  Building the port for non-default Python
  flavors should now be possible as well.

* Add test suite to make future QA easier.

Changelog since 3.8.0:

https://github.com/ijl/orjson/blob/3.9.10/CHANGELOG.md

PR:		275701
Approved by:	Ivan Rozhuk (maintainer)
  • Loading branch information
knobix committed Dec 12, 2023
1 parent 71c43de commit 57f3476
Show file tree
Hide file tree
Showing 2 changed files with 114 additions and 113 deletions.
113 changes: 47 additions & 66 deletions devel/py-orjson/Makefile
@@ -1,8 +1,6 @@
PORTNAME= orjson
PORTVERSION= 3.8.0
PORTREVISION= 12
PORTVERSION= 3.9.10
CATEGORIES= devel python
#MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}

MAINTAINER= rozhuk.im@gmail.com
Expand All @@ -14,87 +12,70 @@ LICENSE_COMB= dual
LICENSE_FILE_APACHE20= ${WRKSRC}/LICENSE-APACHE
LICENSE_FILE_MIT= ${WRKSRC}/LICENSE-MIT

BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}maturin>=0.8.3:devel/py-maturin@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pip>=20.2.3:devel/py-pip@${PY_FLAVOR}
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}maturin>=1<2:devel/py-maturin@${PY_FLAVOR}
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}dateutil>0:devel/py-dateutil@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}numpy>0,1:math/py-numpy@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pandas>0,1:math/py-pandas@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pendulum>0:devel/py-pendulum@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}psutil>0:sysutils/py-psutil@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}pytz>0,1:devel/py-pytz@${PY_FLAVOR} \
${PYTHON_PKGNAMEPREFIX}xxhash>0:devel/py-xxhash@${PY_FLAVOR}

USES= cargo python
USE_PYTHON= autoplist concurrent cython distutils
USE_GITHUB= yes
GH_ACCOUNT= ijl
USE_PYTHON= autoplist concurrent cython pep517 pytest

CARGO_CRATES= ahash-0.8.0 \
arrayvec-0.7.2 \
associative-cache-1.0.1 \
CARGO_CRATES= ahash-0.8.6 \
arrayvec-0.7.4 \
associative-cache-2.0.0 \
autocfg-1.1.0 \
beef-0.5.2 \
bytecount-0.6.3 \
bytecount-0.6.7 \
castaway-0.2.2 \
cc-1.0.73 \
cc-1.0.83 \
cfg-if-1.0.0 \
chrono-0.4.19 \
compact_str-0.6.1 \
encoding_rs-0.8.31 \
itoa-1.0.3 \
libc-0.2.132 \
libm-0.1.4 \
num-integer-0.1.45 \
num-traits-0.2.15 \
once_cell-1.13.1 \
packed_simd_2-0.3.8 \
pyo3-build-config-0.17.0 \
pyo3-ffi-0.17.0 \
rustversion-1.0.9 \
ryu-1.0.11 \
serde-1.0.144 \
chrono-0.4.31 \
compact_str-0.7.1 \
encoding_rs-0.8.33 \
itoa-1.0.9 \
itoap-1.0.1 \
libc-0.2.149 \
libm-0.2.8 \
no-panic-0.1.26 \
num-traits-0.2.17 \
once_cell-1.18.0 \
packed_simd-0.3.9 \
proc-macro2-1.0.69 \
pyo3-build-config-0.20.0 \
pyo3-ffi-0.20.0 \
quote-1.0.33 \
rustversion-1.0.14 \
ryu-1.0.15 \
serde-1.0.190 \
serde_derive-1.0.190 \
serde_json-1.0.107 \
simdutf8-0.1.4 \
smallvec-1.9.0 \
target-lexicon-0.12.4 \
version_check-0.9.4
smallvec-1.11.1 \
static_assertions-1.1.0 \
syn-2.0.38 \
target-lexicon-0.12.12 \
unicode-ident-1.0.12 \
version_check-0.9.4 \
zerocopy-0.7.15 \
zerocopy-derive-0.7.15

CARGO_BUILD= no
CARGO_INSTALL= no
CARGO_TEST= no
CARGO_TARGET_DIR=${WRKSRC}/target
MAKE_ENV= ${CARGO_ENV}
BINARY_ALIAS= python3=${PYTHON_CMD}

.include <bsd.port.options.mk>

# This is to prevent Mk/Uses/python.mk do-configure target from firing.
do-configure:
@${ECHO} 'No configure'

post-patch:
@${RM} ${WRKSRC}/pyproject.toml

do-build:
@(cd ${BUILD_WRKSRC} && ${SETENV} ${MAKE_ENV} maturin build \
--release \
${WITH_DEBUG:D:U--strip} \
--interpreter ${PYTHON_CMD})
MAKE_ENV= ${CARGO_ENV}
TEST_ENV= PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}

# Due to upstream not supplying a setup.py file or other way to install
# using pip command for now...
do-install:
.if ${ARCH:Mpowerpc64*}
@(cd ${INSTALL_WRKSRC}; \
${FIND} . -name "*whl" -exec sh -c 'mv {} `echo {} | sed -E -e "s/powerpc.*/powerpc.whl/"`' \;)
.endif
@${SETENV} ${MAKE_ENV} pip install \
--isolated \
--root=${STAGEDIR} \
--ignore-installed \
--no-deps ${INSTALL_WRKSRC}/target/wheels/*.whl
BINARY_ALIAS= python3=${PYTHON_CMD}

post-install:
@${RM} -r ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/${PORTNAME}/__pycache__
${INSTALL_LIB} ${CARGO_TARGET_DIR}/${CARGO_BUILD_TARGET}/*/liborjson.so ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/${PORTNAME}
${CHMOD} +x ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}/${PORTNAME}/liborjson.so
# Regenerate .PLIST.pymodtemp to get all installed files from
# ${STAGEDIR} because the file that is generated in the first place
# contains only the EGG files as a whole.
@${FIND} ${STAGEDIR} -type f -o -type l | \
${SORT} | ${SED} -e 's|${STAGEDIR}||' \
> ${WRKDIR}/.PLIST.pymodtmp
${FIND} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} +

.include <bsd.port.mk>
114 changes: 67 additions & 47 deletions devel/py-orjson/distinfo
@@ -1,59 +1,79 @@
TIMESTAMP = 1662258212
SHA256 (rust/crates/ahash-0.8.0.crate) = 57e6e951cfbb2db8de1828d49073a113a29fd7117b1596caa781a258c7e38d72
SIZE (rust/crates/ahash-0.8.0.crate) = 39776
SHA256 (rust/crates/arrayvec-0.7.2.crate) = 8da52d66c7071e2e3fa2a1e5c6d088fec47b593032b254f5e980de8ea54454d6
SIZE (rust/crates/arrayvec-0.7.2.crate) = 29341
SHA256 (rust/crates/associative-cache-1.0.1.crate) = 46016233fc1bb55c23b856fe556b7db6ccd05119a0a392e04f0b3b7c79058f16
SIZE (rust/crates/associative-cache-1.0.1.crate) = 14048
TIMESTAMP = 1702032628
SHA256 (rust/crates/ahash-0.8.6.crate) = 91429305e9f0a25f6205c5b8e0d2db09e0708a7a6df0f42212bb56c32c8ac97a
SIZE (rust/crates/ahash-0.8.6.crate) = 42780
SHA256 (rust/crates/arrayvec-0.7.4.crate) = 96d30a06541fbafbc7f82ed10c06164cfbd2c401138f6addd8404629c4b16711
SIZE (rust/crates/arrayvec-0.7.4.crate) = 29856
SHA256 (rust/crates/associative-cache-2.0.0.crate) = b993cd767a2bc7307dd87622311ca22c44329cc7a21366206bfa0896827b2bad
SIZE (rust/crates/associative-cache-2.0.0.crate) = 13960
SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa
SIZE (rust/crates/autocfg-1.1.0.crate) = 13272
SHA256 (rust/crates/beef-0.5.2.crate) = 3a8241f3ebb85c056b509d4327ad0358fbbba6ffb340bf388f26350aeda225b1
SIZE (rust/crates/beef-0.5.2.crate) = 15275
SHA256 (rust/crates/bytecount-0.6.3.crate) = 2c676a478f63e9fa2dd5368a42f28bba0d6c560b775f38583c8bbaa7fcd67c9c
SIZE (rust/crates/bytecount-0.6.3.crate) = 12416
SHA256 (rust/crates/bytecount-0.6.7.crate) = e1e5f035d16fc623ae5f74981db80a439803888314e3a555fd6f04acd51a3205
SIZE (rust/crates/bytecount-0.6.7.crate) = 14642
SHA256 (rust/crates/castaway-0.2.2.crate) = 8a17ed5635fc8536268e5d4de1e22e81ac34419e5f052d4d51f4e01dcc263fcc
SIZE (rust/crates/castaway-0.2.2.crate) = 11091
SHA256 (rust/crates/cc-1.0.73.crate) = 2fff2a6927b3bb87f9595d67196a70493f627687a71d87a0d692242c33f58c11
SIZE (rust/crates/cc-1.0.73.crate) = 57880
SHA256 (rust/crates/cc-1.0.83.crate) = f1174fb0b6ec23863f8b971027804a42614e347eafb0a95bf0b12cdae21fc4d0
SIZE (rust/crates/cc-1.0.83.crate) = 68343
SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
SHA256 (rust/crates/chrono-0.4.19.crate) = 670ad68c9088c2a963aaa298cb369688cf3f9465ce5e2d4ca10e6e0098a1ce73
SIZE (rust/crates/chrono-0.4.19.crate) = 155663
SHA256 (rust/crates/compact_str-0.6.1.crate) = 5138945395949e7dfba09646dc9e766b548ff48e23deb5246890e6b64ae9e1b9
SIZE (rust/crates/compact_str-0.6.1.crate) = 54555
SHA256 (rust/crates/encoding_rs-0.8.31.crate) = 9852635589dc9f9ea1b6fe9f05b50ef208c85c834a562f0c6abb1c475736ec2b
SIZE (rust/crates/encoding_rs-0.8.31.crate) = 1370113
SHA256 (rust/crates/itoa-1.0.3.crate) = 6c8af84674fe1f223a982c933a0ee1086ac4d4052aa0fb8060c12c6ad838e754
SIZE (rust/crates/itoa-1.0.3.crate) = 10481
SHA256 (rust/crates/libc-0.2.132.crate) = 8371e4e5341c3a96db127eb2465ac681ced4c433e01dd0e938adbef26ba93ba5
SIZE (rust/crates/libc-0.2.132.crate) = 595317
SHA256 (rust/crates/libm-0.1.4.crate) = 7fc7aa29613bd6a620df431842069224d8bc9011086b1db4c0e0cd47fa03ec9a
SIZE (rust/crates/libm-0.1.4.crate) = 110593
SHA256 (rust/crates/num-integer-0.1.45.crate) = 225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9
SIZE (rust/crates/num-integer-0.1.45.crate) = 22529
SHA256 (rust/crates/num-traits-0.2.15.crate) = 578ede34cf02f8924ab9447f50c28075b4d3e5b269972345e7e0372b38c6cdcd
SIZE (rust/crates/num-traits-0.2.15.crate) = 49262
SHA256 (rust/crates/once_cell-1.13.1.crate) = 074864da206b4973b84eb91683020dbefd6a8c3f0f38e054d93954e891935e4e
SIZE (rust/crates/once_cell-1.13.1.crate) = 31335
SHA256 (rust/crates/packed_simd_2-0.3.8.crate) = a1914cd452d8fccd6f9db48147b29fd4ae05bea9dc5d9ad578509f72415de282
SIZE (rust/crates/packed_simd_2-0.3.8.crate) = 97388
SHA256 (rust/crates/pyo3-build-config-0.17.0.crate) = 0a35ea0dde58f923bcd30f0f9a64e79033cd51e176c32bd50efccbbe7f289b25
SIZE (rust/crates/pyo3-build-config-0.17.0.crate) = 29231
SHA256 (rust/crates/pyo3-ffi-0.17.0.crate) = 79d0d60ae1b65b927c019352e16b94ff27cedee79916f017215dab3afe2a5cb3
SIZE (rust/crates/pyo3-ffi-0.17.0.crate) = 62848
SHA256 (rust/crates/rustversion-1.0.9.crate) = 97477e48b4cf8603ad5f7aaf897467cf42ab4218a38ef76fb14c2d6773a6d6a8
SIZE (rust/crates/rustversion-1.0.9.crate) = 17425
SHA256 (rust/crates/ryu-1.0.11.crate) = 4501abdff3ae82a1c1b477a17252eb69cee9e66eb915c1abaa4f44d873df9f09
SIZE (rust/crates/ryu-1.0.11.crate) = 47007
SHA256 (rust/crates/serde-1.0.144.crate) = 0f747710de3dcd43b88c9168773254e809d8ddbdf9653b84e2554ab219f17860
SIZE (rust/crates/serde-1.0.144.crate) = 76387
SHA256 (rust/crates/chrono-0.4.31.crate) = 7f2c685bad3eb3d45a01354cedb7d5faa66194d1d58ba6e267a8de788f79db38
SIZE (rust/crates/chrono-0.4.31.crate) = 214513
SHA256 (rust/crates/compact_str-0.7.1.crate) = f86b9c4c00838774a6d902ef931eff7470720c51d90c2e32cfe15dc304737b3f
SIZE (rust/crates/compact_str-0.7.1.crate) = 57246
SHA256 (rust/crates/encoding_rs-0.8.33.crate) = 7268b386296a025e474d5140678f75d6de9493ae55a5d709eeb9dd08149945e1
SIZE (rust/crates/encoding_rs-0.8.33.crate) = 1370071
SHA256 (rust/crates/itoa-1.0.9.crate) = af150ab688ff2122fcef229be89cb50dd66af9e01a4ff320cc137eecc9bacc38
SIZE (rust/crates/itoa-1.0.9.crate) = 10492
SHA256 (rust/crates/itoap-1.0.1.crate) = 9028f49264629065d057f340a86acb84867925865f73bbf8d47b4d149a7e88b8
SIZE (rust/crates/itoap-1.0.1.crate) = 83316
SHA256 (rust/crates/libc-0.2.149.crate) = a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b
SIZE (rust/crates/libc-0.2.149.crate) = 715592
SHA256 (rust/crates/libm-0.2.8.crate) = 4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058
SIZE (rust/crates/libm-0.2.8.crate) = 113450
SHA256 (rust/crates/no-panic-0.1.26.crate) = 71a6d126424f5ce0bb4587ff4561421d44aeede520541cc66f1bb912506ae46a
SIZE (rust/crates/no-panic-0.1.26.crate) = 11551
SHA256 (rust/crates/num-traits-0.2.17.crate) = 39e3200413f237f41ab11ad6d161bc7239c84dcb631773ccd7de3dfe4b5c267c
SIZE (rust/crates/num-traits-0.2.17.crate) = 50190
SHA256 (rust/crates/once_cell-1.18.0.crate) = dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d
SIZE (rust/crates/once_cell-1.18.0.crate) = 32969
SHA256 (rust/crates/packed_simd-0.3.9.crate) = 1f9f08af0c877571712e2e3e686ad79efad9657dbf0f7c3c8ba943ff6c38932d
SIZE (rust/crates/packed_simd-0.3.9.crate) = 98340
SHA256 (rust/crates/proc-macro2-1.0.69.crate) = 134c189feb4956b20f6f547d2cf727d4c0fe06722b20a0eec87ed445a97f92da
SIZE (rust/crates/proc-macro2-1.0.69.crate) = 44271
SHA256 (rust/crates/pyo3-build-config-0.20.0.crate) = a96fe70b176a89cff78f2fa7b3c930081e163d5379b4dcdf993e3ae29ca662e5
SIZE (rust/crates/pyo3-build-config-0.20.0.crate) = 29534
SHA256 (rust/crates/pyo3-ffi-0.20.0.crate) = 214929900fd25e6604661ed9cf349727c8920d47deff196c4e28165a6ef2a96b
SIZE (rust/crates/pyo3-ffi-0.20.0.crate) = 64220
SHA256 (rust/crates/quote-1.0.33.crate) = 5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae
SIZE (rust/crates/quote-1.0.33.crate) = 28090
SHA256 (rust/crates/rustversion-1.0.14.crate) = 7ffc183a10b4478d04cbbbfc96d0873219d962dd5accaff2ffbd4ceb7df837f4
SIZE (rust/crates/rustversion-1.0.14.crate) = 17261
SHA256 (rust/crates/ryu-1.0.15.crate) = 1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741
SIZE (rust/crates/ryu-1.0.15.crate) = 46906
SHA256 (rust/crates/serde-1.0.190.crate) = 91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7
SIZE (rust/crates/serde-1.0.190.crate) = 76455
SHA256 (rust/crates/serde_derive-1.0.190.crate) = 67c5609f394e5c2bd7fc51efda478004ea80ef42fee983d5c67a65e34f32c0e3
SIZE (rust/crates/serde_derive-1.0.190.crate) = 55676
SHA256 (rust/crates/serde_json-1.0.107.crate) = 6b420ce6e3d8bd882e9b243c6eed35dbc9a6110c9769e74b584e0d68d1f20c65
SIZE (rust/crates/serde_json-1.0.107.crate) = 146458
SHA256 (rust/crates/simdutf8-0.1.4.crate) = f27f6278552951f1f2b8cf9da965d10969b2efdea95a6ec47987ab46edfe263a
SIZE (rust/crates/simdutf8-0.1.4.crate) = 28621
SHA256 (rust/crates/smallvec-1.9.0.crate) = 2fd0db749597d91ff862fd1d55ea87f7855a744a8425a64695b6fca237d1dad1
SIZE (rust/crates/smallvec-1.9.0.crate) = 28396
SHA256 (rust/crates/target-lexicon-0.12.4.crate) = c02424087780c9b71cc96799eaeddff35af2bc513278cda5c99fc1f5d026d3c1
SIZE (rust/crates/target-lexicon-0.12.4.crate) = 23020
SHA256 (rust/crates/smallvec-1.11.1.crate) = 942b4a808e05215192e39f4ab80813e599068285906cc91aa64f923db842bd5a
SIZE (rust/crates/smallvec-1.11.1.crate) = 34831
SHA256 (rust/crates/static_assertions-1.1.0.crate) = a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f
SIZE (rust/crates/static_assertions-1.1.0.crate) = 18480
SHA256 (rust/crates/syn-2.0.38.crate) = e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b
SIZE (rust/crates/syn-2.0.38.crate) = 243284
SHA256 (rust/crates/target-lexicon-0.12.12.crate) = 14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a
SIZE (rust/crates/target-lexicon-0.12.12.crate) = 25156
SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b
SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168
SHA256 (rust/crates/version_check-0.9.4.crate) = 49874b5167b65d7193b8aba1567f5c7d93d001cafc34600cee003eda787e483f
SIZE (rust/crates/version_check-0.9.4.crate) = 14895
SHA256 (ijl-orjson-3.8.0_GH0.tar.gz) = 5fa7849eb8374b5c6809e3abe34c0134f37120b4598093daa49367e105a4659a
SIZE (ijl-orjson-3.8.0_GH0.tar.gz) = 747063
SHA256 (rust/crates/zerocopy-0.7.15.crate) = 81ba595b9f2772fbee2312de30eeb80ec773b4cb2f1e8098db024afadda6c06f
SIZE (rust/crates/zerocopy-0.7.15.crate) = 106053
SHA256 (rust/crates/zerocopy-derive-0.7.15.crate) = 772666c41fb6dceaf520b564b962d738a8e1a83b41bd48945f50837aed78bb1d
SIZE (rust/crates/zerocopy-derive-0.7.15.crate) = 527188
SHA256 (ijl-orjson-3.9.10_GH0.tar.gz) = 4ef00ee3759c807bc503359e19384877025e3a6e12229ee9a91e5bf7ac6668b4
SIZE (ijl-orjson-3.9.10_GH0.tar.gz) = 678102

0 comments on commit 57f3476

Please sign in to comment.