aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPo-Chuan Hsieh <sunpoet@FreeBSD.org>2023-07-09 10:10:28 +0000
committerPo-Chuan Hsieh <sunpoet@FreeBSD.org>2023-07-09 10:10:28 +0000
commite8cdd73a4c868d7eeb5be97f84b793fbcc2d1198 (patch)
treec04b75879e3f25019bd039e9b9aa43eb51959fc6
parentd40e9759a6fdd93d2aaaac603d6e6188de72c6ef (diff)
devel/py-rpds-py: Add py-rpds-py 0.7.1
Python bindings to the Rust rpds crate. What's here is quite minimal (in transparency, it was written initially to support replacing pyrsistent in the referencing library). If you see something missing (which is very likely), a PR is definitely welcome to add it. Methods in general are named similarly to their rpds counterparts (rather than pyrsistent's conventions, though probably a full drop-in pyrsistent-compatible wrapper module is a good addition at some point).
-rw-r--r--devel/Makefile1
-rw-r--r--devel/py-rpds-py/Makefile27
-rw-r--r--devel/py-rpds-py/Makefile.crates35
-rw-r--r--devel/py-rpds-py/distinfo73
-rw-r--r--devel/py-rpds-py/files/patch-pyproject.toml9
-rw-r--r--devel/py-rpds-py/pkg-descr9
6 files changed, 154 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 8b52d18b73a7..7911cf1ea290 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -5491,6 +5491,7 @@
SUBDIR += py-rope
SUBDIR += py-rose
SUBDIR += py-rpcq
+ SUBDIR += py-rpds-py
SUBDIR += py-rply
SUBDIR += py-rq
SUBDIR += py-rq-scheduler
diff --git a/devel/py-rpds-py/Makefile b/devel/py-rpds-py/Makefile
new file mode 100644
index 000000000000..fb0ee5affbb0
--- /dev/null
+++ b/devel/py-rpds-py/Makefile
@@ -0,0 +1,27 @@
+PORTNAME= rpds-py
+PORTVERSION= 0.7.1
+CATEGORIES= devel python
+MASTER_SITES= PYPI
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+DISTFILES= rpds_py-${PORTVERSION}${EXTRACT_SUFX}
+
+MAINTAINER= sunpoet@FreeBSD.org
+COMMENT= Python bindings to Rust persistent data structures (rpds)
+WWW= https://github.com/crate-py/rpds
+
+LICENSE= MIT
+LICENSE_FILE= ${WRKSRC}/LICENSE
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}maturin>=0.13:devel/py-maturin@${PY_FLAVOR}
+
+USES= cargo dos2unix python
+USE_PYTHON= autoplist concurrent pep517
+
+CARGO_BUILD= no
+CARGO_INSTALL= no
+WRKSRC= ${WRKDIR}/rpds_py-${PORTVERSION}
+
+post-install:
+ ${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} +
+
+.include <bsd.port.mk>
diff --git a/devel/py-rpds-py/Makefile.crates b/devel/py-rpds-py/Makefile.crates
new file mode 100644
index 000000000000..8a41e08f74a4
--- /dev/null
+++ b/devel/py-rpds-py/Makefile.crates
@@ -0,0 +1,35 @@
+CARGO_CRATES= archery-0.5.0 \
+ autocfg-1.1.0 \
+ bitflags-1.3.2 \
+ cfg-if-1.0.0 \
+ indoc-1.0.9 \
+ libc-0.2.147 \
+ lock_api-0.4.10 \
+ memoffset-0.8.0 \
+ once_cell-1.18.0 \
+ parking_lot-0.12.1 \
+ parking_lot_core-0.9.8 \
+ proc-macro2-1.0.63 \
+ pyo3-0.18.3 \
+ pyo3-build-config-0.18.3 \
+ pyo3-ffi-0.18.3 \
+ pyo3-macros-0.18.3 \
+ pyo3-macros-backend-0.18.3 \
+ quote-1.0.29 \
+ redox_syscall-0.3.5 \
+ rpds-0.13.0 \
+ scopeguard-1.1.0 \
+ smallvec-1.10.0 \
+ static_assertions-1.1.0 \
+ syn-1.0.109 \
+ target-lexicon-0.12.8 \
+ unicode-ident-1.0.9 \
+ unindent-0.1.11 \
+ windows-targets-0.48.1 \
+ windows_aarch64_gnullvm-0.48.0 \
+ windows_aarch64_msvc-0.48.0 \
+ windows_i686_gnu-0.48.0 \
+ windows_i686_msvc-0.48.0 \
+ windows_x86_64_gnu-0.48.0 \
+ windows_x86_64_gnullvm-0.48.0 \
+ windows_x86_64_msvc-0.48.0
diff --git a/devel/py-rpds-py/distinfo b/devel/py-rpds-py/distinfo
new file mode 100644
index 000000000000..b4ee3a24ca26
--- /dev/null
+++ b/devel/py-rpds-py/distinfo
@@ -0,0 +1,73 @@
+TIMESTAMP = 1688166022
+SHA256 (rpds_py-0.7.1.tar.gz) = d940b5644f14e49b1c6e7902b9ec8a0c7584109fbf380fa18115831a641927c8
+SIZE (rpds_py-0.7.1.tar.gz) = 15355
+SHA256 (rust/crates/archery-0.5.0.crate) = b6cd774058b1b415c4855d8b86436c04bf050c003156fe24bc326fb3fe75c343
+SIZE (rust/crates/archery-0.5.0.crate) = 21685
+SHA256 (rust/crates/autocfg-1.1.0.crate) = d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa
+SIZE (rust/crates/autocfg-1.1.0.crate) = 13272
+SHA256 (rust/crates/bitflags-1.3.2.crate) = bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a
+SIZE (rust/crates/bitflags-1.3.2.crate) = 23021
+SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd
+SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934
+SHA256 (rust/crates/indoc-1.0.9.crate) = bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306
+SIZE (rust/crates/indoc-1.0.9.crate) = 13475
+SHA256 (rust/crates/libc-0.2.147.crate) = b4668fb0ea861c1df094127ac5f1da3409a82116a4ba74fca2e58ef927159bb3
+SIZE (rust/crates/libc-0.2.147.crate) = 686772
+SHA256 (rust/crates/lock_api-0.4.10.crate) = c1cc9717a20b1bb222f333e6a92fd32f7d8a18ddc5a3191a11af45dcbf4dcd16
+SIZE (rust/crates/lock_api-0.4.10.crate) = 26713
+SHA256 (rust/crates/memoffset-0.8.0.crate) = d61c719bcfbcf5d62b3a09efa6088de8c54bc0bfcd3ea7ae39fcc186108b8de1
+SIZE (rust/crates/memoffset-0.8.0.crate) = 8912
+SHA256 (rust/crates/once_cell-1.18.0.crate) = dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d
+SIZE (rust/crates/once_cell-1.18.0.crate) = 32969
+SHA256 (rust/crates/parking_lot-0.12.1.crate) = 3742b2c103b9f06bc9fff0a37ff4912935851bee6d36f3c02bcc755bcfec228f
+SIZE (rust/crates/parking_lot-0.12.1.crate) = 40967
+SHA256 (rust/crates/parking_lot_core-0.9.8.crate) = 93f00c865fe7cabf650081affecd3871070f26767e7b2070a3ffae14c654b447
+SIZE (rust/crates/parking_lot_core-0.9.8.crate) = 32383
+SHA256 (rust/crates/proc-macro2-1.0.63.crate) = 7b368fba921b0dce7e60f5e04ec15e565b3303972b42bcfde1d0713b881959eb
+SIZE (rust/crates/proc-macro2-1.0.63.crate) = 44867
+SHA256 (rust/crates/pyo3-0.18.3.crate) = e3b1ac5b3731ba34fdaa9785f8d74d17448cd18f30cf19e0c7e7b1fdb5272109
+SIZE (rust/crates/pyo3-0.18.3.crate) = 420236
+SHA256 (rust/crates/pyo3-build-config-0.18.3.crate) = 9cb946f5ac61bb61a5014924910d936ebd2b23b705f7a4a3c40b05c720b079a3
+SIZE (rust/crates/pyo3-build-config-0.18.3.crate) = 29137
+SHA256 (rust/crates/pyo3-ffi-0.18.3.crate) = fd4d7c5337821916ea2a1d21d1092e8443cf34879e53a0ac653fbb98f44ff65c
+SIZE (rust/crates/pyo3-ffi-0.18.3.crate) = 64474
+SHA256 (rust/crates/pyo3-macros-0.18.3.crate) = a9d39c55dab3fc5a4b25bbd1ac10a2da452c4aca13bb450f22818a002e29648d
+SIZE (rust/crates/pyo3-macros-0.18.3.crate) = 7175
+SHA256 (rust/crates/pyo3-macros-backend-0.18.3.crate) = 97daff08a4c48320587b5224cc98d609e3c27b6d437315bd40b605c98eeb5918
+SIZE (rust/crates/pyo3-macros-backend-0.18.3.crate) = 48922
+SHA256 (rust/crates/quote-1.0.29.crate) = 573015e8ab27661678357f27dc26460738fd2b6c86e46f386fde94cb5d913105
+SIZE (rust/crates/quote-1.0.29.crate) = 28345
+SHA256 (rust/crates/redox_syscall-0.3.5.crate) = 567664f262709473930a4bf9e51bf2ebf3348f2e748ccc50dea20646858f8f29
+SIZE (rust/crates/redox_syscall-0.3.5.crate) = 23404
+SHA256 (rust/crates/rpds-0.13.0.crate) = 9bd6ce569b15c331b1e5fd8cf6adb0bf240678b5f0cdc4d0f41e11683f6feba9
+SIZE (rust/crates/rpds-0.13.0.crate) = 67994
+SHA256 (rust/crates/scopeguard-1.1.0.crate) = d29ab0c6d3fc0ee92fe66e2d99f700eab17a8d57d1c1d3b748380fb20baa78cd
+SIZE (rust/crates/scopeguard-1.1.0.crate) = 11470
+SHA256 (rust/crates/smallvec-1.10.0.crate) = a507befe795404456341dfab10cef66ead4c041f62b8b11bbb92bffe5d0953e0
+SIZE (rust/crates/smallvec-1.10.0.crate) = 31564
+SHA256 (rust/crates/static_assertions-1.1.0.crate) = a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f
+SIZE (rust/crates/static_assertions-1.1.0.crate) = 18480
+SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237
+SIZE (rust/crates/syn-1.0.109.crate) = 237611
+SHA256 (rust/crates/target-lexicon-0.12.8.crate) = 1b1c7f239eb94671427157bd93b3694320f3668d4e1eff08c7285366fd777fac
+SIZE (rust/crates/target-lexicon-0.12.8.crate) = 24518
+SHA256 (rust/crates/unicode-ident-1.0.9.crate) = b15811caf2415fb889178633e7724bad2509101cde276048e013b9def5e51fa0
+SIZE (rust/crates/unicode-ident-1.0.9.crate) = 41978
+SHA256 (rust/crates/unindent-0.1.11.crate) = e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c
+SIZE (rust/crates/unindent-0.1.11.crate) = 7700
+SHA256 (rust/crates/windows-targets-0.48.1.crate) = 05d4b17490f70499f20b9e791dcf6a299785ce8af4d709018206dc5b4953e95f
+SIZE (rust/crates/windows-targets-0.48.1.crate) = 6902
+SHA256 (rust/crates/windows_aarch64_gnullvm-0.48.0.crate) = 91ae572e1b79dba883e0d315474df7305d12f569b400fcf90581b06062f7e1bc
+SIZE (rust/crates/windows_aarch64_gnullvm-0.48.0.crate) = 366543
+SHA256 (rust/crates/windows_aarch64_msvc-0.48.0.crate) = b2ef27e0d7bdfcfc7b868b317c1d32c641a6fe4629c171b8928c7b08d98d7cf3
+SIZE (rust/crates/windows_aarch64_msvc-0.48.0.crate) = 671479
+SHA256 (rust/crates/windows_i686_gnu-0.48.0.crate) = 622a1962a7db830d6fd0a69683c80a18fda201879f0f447f065a3b7467daa241
+SIZE (rust/crates/windows_i686_gnu-0.48.0.crate) = 741490
+SHA256 (rust/crates/windows_i686_msvc-0.48.0.crate) = 4542c6e364ce21bf45d69fdd2a8e455fa38d316158cfd43b3ac1c5b1b19f8e00
+SIZE (rust/crates/windows_i686_msvc-0.48.0.crate) = 730056
+SHA256 (rust/crates/windows_x86_64_gnu-0.48.0.crate) = ca2b8a661f7628cbd23440e50b05d705db3686f894fc9580820623656af974b1
+SIZE (rust/crates/windows_x86_64_gnu-0.48.0.crate) = 703595
+SHA256 (rust/crates/windows_x86_64_gnullvm-0.48.0.crate) = 7896dbc1f41e08872e9d5e8f8baa8fdd2677f29468c4e156210174edc7f7b953
+SIZE (rust/crates/windows_x86_64_gnullvm-0.48.0.crate) = 366536
+SHA256 (rust/crates/windows_x86_64_msvc-0.48.0.crate) = 1a515f5799fe4961cb532f983ce2b23082366b898e52ffbce459c86f67c8378a
+SIZE (rust/crates/windows_x86_64_msvc-0.48.0.crate) = 671422
diff --git a/devel/py-rpds-py/files/patch-pyproject.toml b/devel/py-rpds-py/files/patch-pyproject.toml
new file mode 100644
index 000000000000..3c0681dbc89c
--- /dev/null
+++ b/devel/py-rpds-py/files/patch-pyproject.toml
@@ -0,0 +1,9 @@
+--- pyproject.toml.orig 2023-03-20 19:29:29 UTC
++++ pyproject.toml
+@@ -1,5 +1,5 @@
+ [build-system]
+-requires = ["maturin>=0.14,<0.15"]
++requires = ["maturin>=0.13"]
+ build-backend = "maturin"
+
+ [project]
diff --git a/devel/py-rpds-py/pkg-descr b/devel/py-rpds-py/pkg-descr
new file mode 100644
index 000000000000..528f9a78a3cb
--- /dev/null
+++ b/devel/py-rpds-py/pkg-descr
@@ -0,0 +1,9 @@
+Python bindings to the Rust rpds crate.
+
+What's here is quite minimal (in transparency, it was written initially to
+support replacing pyrsistent in the referencing library). If you see something
+missing (which is very likely), a PR is definitely welcome to add it.
+
+Methods in general are named similarly to their rpds counterparts (rather than
+pyrsistent's conventions, though probably a full drop-in pyrsistent-compatible
+wrapper module is a good addition at some point).