diff options
author | Po-Chuan Hsieh <sunpoet@FreeBSD.org> | 2023-12-14 20:41:47 +0000 |
---|---|---|
committer | Po-Chuan Hsieh <sunpoet@FreeBSD.org> | 2023-12-14 20:41:47 +0000 |
commit | 3df1ab5ea198a58c97ddf4fcabdc013502d9a6ca (patch) | |
tree | 8bcec8c2045d7daef075c2c3918479b9d9d90a7d | |
parent | b4364cc5701027eb8c5b257aa3c4bdfa4f3bfe58 (diff) | |
download | ports-3df1ab5ea198a58c97ddf4fcabdc013502d9a6ca.tar.gz ports-3df1ab5ea198a58c97ddf4fcabdc013502d9a6ca.zip |
devel/py-pycrdt: Add py-pycrdt 0.7.1
Pycrdt is a Python CRDT library that provides bindings for Yrs, the Rust port of
the Yjs framework.
Conflict-free Replicated Data Types (CRDTs) allow creating shared documents that
can automatically merge changes made concurrently on different "copies" of the
data. When the data lives on different machines, they make it possible to build
distributed systems that work with local data, leaving the synchronization and
conflict resolution with remote data to the CRDT algorithm, which ensures that
all data replicas eventually converge to the same state.
-rw-r--r-- | devel/Makefile | 1 | ||||
-rw-r--r-- | devel/py-pycrdt/Makefile | 27 | ||||
-rw-r--r-- | devel/py-pycrdt/Makefile.crates | 58 | ||||
-rw-r--r-- | devel/py-pycrdt/distinfo | 119 | ||||
-rw-r--r-- | devel/py-pycrdt/pkg-descr | 9 |
5 files changed, 214 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile index 53c0f40c089b..6bdfb8d9d9c2 100644 --- a/devel/Makefile +++ b/devel/Makefile @@ -5283,6 +5283,7 @@ SUBDIR += py-pycompilation SUBDIR += py-pycomplete SUBDIR += py-pycparser + SUBDIR += py-pycrdt SUBDIR += py-pydantic SUBDIR += py-pydantic-core SUBDIR += py-pydantic-extra-types diff --git a/devel/py-pycrdt/Makefile b/devel/py-pycrdt/Makefile new file mode 100644 index 000000000000..9fe0f603c194 --- /dev/null +++ b/devel/py-pycrdt/Makefile @@ -0,0 +1,27 @@ +PORTNAME= pycrdt +PORTVERSION= 0.7.1 +CATEGORIES= devel python +MASTER_SITES= PYPI +PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX} +DISTFILES= pycrdt-${PORTVERSION}${EXTRACT_SUFX} + +MAINTAINER= sunpoet@FreeBSD.org +COMMENT= Python bindings for Yrs +WWW= https://jupyter-server.github.io/pycrdt/ \ + https://github.com/jupyter-server/pycrdt + +LICENSE= MIT +LICENSE_FILE= ${WRKSRC}/LICENSE + +BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}maturin>=1.2.3<2:devel/py-maturin@${PY_FLAVOR} + +USES= cargo python +USE_PYTHON= autoplist concurrent pep517 + +CARGO_BUILD= no +CARGO_INSTALL= no + +post-install: + ${FIND} ${STAGEDIR}${PYTHON_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} + + +.include <bsd.port.mk> diff --git a/devel/py-pycrdt/Makefile.crates b/devel/py-pycrdt/Makefile.crates new file mode 100644 index 000000000000..4af7e846d0a2 --- /dev/null +++ b/devel/py-pycrdt/Makefile.crates @@ -0,0 +1,58 @@ +CARGO_CRATES= atomic_refcell-0.1.13 \ + autocfg-1.1.0 \ + bitflags-1.3.2 \ + bumpalo-3.14.0 \ + cfg-if-1.0.0 \ + getrandom-0.1.16 \ + indoc-1.0.9 \ + itoa-1.0.10 \ + js-sys-0.3.66 \ + libc-0.2.150 \ + lock_api-0.4.11 \ + log-0.4.20 \ + memoffset-0.9.0 \ + once_cell-1.19.0 \ + parking_lot-0.12.1 \ + parking_lot_core-0.9.9 \ + ppv-lite86-0.2.17 \ + proc-macro2-1.0.70 \ + pyo3-0.19.2 \ + pyo3-build-config-0.19.2 \ + pyo3-ffi-0.19.2 \ + pyo3-macros-0.19.2 \ + pyo3-macros-backend-0.19.2 \ + quote-1.0.33 \ + rand-0.7.3 \ + rand_chacha-0.2.2 \ + rand_core-0.5.1 \ + rand_hc-0.2.0 \ + redox_syscall-0.4.1 \ + ryu-1.0.15 \ + scopeguard-1.2.0 \ + serde-1.0.193 \ + serde_derive-1.0.193 \ + serde_json-1.0.108 \ + smallstr-0.3.0 \ + smallvec-1.11.2 \ + syn-1.0.109 \ + syn-2.0.39 \ + target-lexicon-0.12.12 \ + thiserror-1.0.50 \ + thiserror-impl-1.0.50 \ + unicode-ident-1.0.12 \ + unindent-0.1.11 \ + wasi-0.9.0+wasi-snapshot-preview1 \ + wasm-bindgen-0.2.89 \ + wasm-bindgen-backend-0.2.89 \ + wasm-bindgen-macro-0.2.89 \ + wasm-bindgen-macro-support-0.2.89 \ + wasm-bindgen-shared-0.2.89 \ + windows-targets-0.48.5 \ + windows_aarch64_gnullvm-0.48.5 \ + windows_aarch64_msvc-0.48.5 \ + windows_i686_gnu-0.48.5 \ + windows_i686_msvc-0.48.5 \ + windows_x86_64_gnu-0.48.5 \ + windows_x86_64_gnullvm-0.48.5 \ + windows_x86_64_msvc-0.48.5 \ + yrs-0.17.2 diff --git a/devel/py-pycrdt/distinfo b/devel/py-pycrdt/distinfo new file mode 100644 index 000000000000..398a737f615d --- /dev/null +++ b/devel/py-pycrdt/distinfo @@ -0,0 +1,119 @@ +TIMESTAMP = 1702543600 +SHA256 (pycrdt-0.7.1.tar.gz) = 65ff21d4b5262683cd544129383bcfaf4f0bc6f735523e7a35f81f6943d589fd +SIZE (pycrdt-0.7.1.tar.gz) = 26192 +SHA256 (rust/crates/atomic_refcell-0.1.13.crate) = 41e67cd8309bbd06cd603a9e693a784ac2e5d1e955f11286e355089fcab3047c +SIZE (rust/crates/atomic_refcell-0.1.13.crate) = 11760 +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/bumpalo-3.14.0.crate) = 7f30e7476521f6f8af1a1c4c0b8cc94f0bee37d91763d0ca2665f299b6cd8aec +SIZE (rust/crates/bumpalo-3.14.0.crate) = 82400 +SHA256 (rust/crates/cfg-if-1.0.0.crate) = baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd +SIZE (rust/crates/cfg-if-1.0.0.crate) = 7934 +SHA256 (rust/crates/getrandom-0.1.16.crate) = 8fc3cb4d91f53b50155bdcfd23f6a4c39ae1969c2ae85982b135750cccaf5fce +SIZE (rust/crates/getrandom-0.1.16.crate) = 25077 +SHA256 (rust/crates/indoc-1.0.9.crate) = bfa799dd5ed20a7e349f3b4639aa80d74549c81716d9ec4f994c9b5815598306 +SIZE (rust/crates/indoc-1.0.9.crate) = 13475 +SHA256 (rust/crates/itoa-1.0.10.crate) = b1a46d1a171d865aa5f83f92695765caa047a9b4cbae2cbf37dbd613a793fd4c +SIZE (rust/crates/itoa-1.0.10.crate) = 10534 +SHA256 (rust/crates/js-sys-0.3.66.crate) = cee9c64da59eae3b50095c18d3e74f8b73c0b86d2792824ff01bbce68ba229ca +SIZE (rust/crates/js-sys-0.3.66.crate) = 80765 +SHA256 (rust/crates/libc-0.2.150.crate) = 89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c +SIZE (rust/crates/libc-0.2.150.crate) = 719359 +SHA256 (rust/crates/lock_api-0.4.11.crate) = 3c168f8615b12bc01f9c17e2eb0cc07dcae1940121185446edc3744920e8ef45 +SIZE (rust/crates/lock_api-0.4.11.crate) = 27487 +SHA256 (rust/crates/log-0.4.20.crate) = b5e6163cb8c49088c2c36f57875e58ccd8c87c7427f7fbd50ea6710b2f3f2e8f +SIZE (rust/crates/log-0.4.20.crate) = 38307 +SHA256 (rust/crates/memoffset-0.9.0.crate) = 5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c +SIZE (rust/crates/memoffset-0.9.0.crate) = 9033 +SHA256 (rust/crates/once_cell-1.19.0.crate) = 3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92 +SIZE (rust/crates/once_cell-1.19.0.crate) = 33046 +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.9.crate) = 4c42a9226546d68acdd9c0a280d17ce19bfe27a46bf68784e4066115788d008e +SIZE (rust/crates/parking_lot_core-0.9.9.crate) = 32445 +SHA256 (rust/crates/ppv-lite86-0.2.17.crate) = 5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de +SIZE (rust/crates/ppv-lite86-0.2.17.crate) = 22242 +SHA256 (rust/crates/proc-macro2-1.0.70.crate) = 39278fbbf5fb4f646ce651690877f89d1c5811a3d4acb27700c1cb3cdb78fd3b +SIZE (rust/crates/proc-macro2-1.0.70.crate) = 44343 +SHA256 (rust/crates/pyo3-0.19.2.crate) = e681a6cfdc4adcc93b4d3cf993749a4552018ee0a9b65fc0ccfad74352c72a38 +SIZE (rust/crates/pyo3-0.19.2.crate) = 418228 +SHA256 (rust/crates/pyo3-build-config-0.19.2.crate) = 076c73d0bc438f7a4ef6fdd0c3bb4732149136abd952b110ac93e4edb13a6ba5 +SIZE (rust/crates/pyo3-build-config-0.19.2.crate) = 29206 +SHA256 (rust/crates/pyo3-ffi-0.19.2.crate) = e53cee42e77ebe256066ba8aa77eff722b3bb91f3419177cf4cd0f304d3284d9 +SIZE (rust/crates/pyo3-ffi-0.19.2.crate) = 66500 +SHA256 (rust/crates/pyo3-macros-0.19.2.crate) = dfeb4c99597e136528c6dd7d5e3de5434d1ceaf487436a3f03b2d56b6fc9efd1 +SIZE (rust/crates/pyo3-macros-0.19.2.crate) = 7173 +SHA256 (rust/crates/pyo3-macros-backend-0.19.2.crate) = 947dc12175c254889edc0c02e399476c2f652b4b9ebd123aa655c224de259536 +SIZE (rust/crates/pyo3-macros-backend-0.19.2.crate) = 49962 +SHA256 (rust/crates/quote-1.0.33.crate) = 5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae +SIZE (rust/crates/quote-1.0.33.crate) = 28090 +SHA256 (rust/crates/rand-0.7.3.crate) = 6a6b1679d49b24bbfe0c803429aa1874472f50d9b363131f0e89fc356b544d03 +SIZE (rust/crates/rand-0.7.3.crate) = 112246 +SHA256 (rust/crates/rand_chacha-0.2.2.crate) = f4c8ed856279c9737206bf725bf36935d8666ead7aa69b52be55af369d193402 +SIZE (rust/crates/rand_chacha-0.2.2.crate) = 13267 +SHA256 (rust/crates/rand_core-0.5.1.crate) = 90bde5296fc891b0cef12a6d03ddccc162ce7b2aff54160af9338f8d40df6d19 +SIZE (rust/crates/rand_core-0.5.1.crate) = 21116 +SHA256 (rust/crates/rand_hc-0.2.0.crate) = ca3129af7b92a17112d59ad498c6f81eaf463253766b90396d39ea7a39d6613c +SIZE (rust/crates/rand_hc-0.2.0.crate) = 11670 +SHA256 (rust/crates/redox_syscall-0.4.1.crate) = 4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa +SIZE (rust/crates/redox_syscall-0.4.1.crate) = 24858 +SHA256 (rust/crates/ryu-1.0.15.crate) = 1ad4cc8da4ef723ed60bced201181d83791ad433213d8c24efffda1eec85d741 +SIZE (rust/crates/ryu-1.0.15.crate) = 46906 +SHA256 (rust/crates/scopeguard-1.2.0.crate) = 94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49 +SIZE (rust/crates/scopeguard-1.2.0.crate) = 11619 +SHA256 (rust/crates/serde-1.0.193.crate) = 25dd9975e68d0cb5aa1120c288333fc98731bd1dd12f561e468ea4728c042b89 +SIZE (rust/crates/serde-1.0.193.crate) = 76863 +SHA256 (rust/crates/serde_derive-1.0.193.crate) = 43576ca501357b9b071ac53cdc7da8ef0cbd9493d8df094cd821777ea6e894d3 +SIZE (rust/crates/serde_derive-1.0.193.crate) = 55692 +SHA256 (rust/crates/serde_json-1.0.108.crate) = 3d1c7e3eac408d115102c4c24ad393e0821bb3a5df4d506a80f85f7a742a526b +SIZE (rust/crates/serde_json-1.0.108.crate) = 146476 +SHA256 (rust/crates/smallstr-0.3.0.crate) = 63b1aefdf380735ff8ded0b15f31aab05daf1f70216c01c02a12926badd1df9d +SIZE (rust/crates/smallstr-0.3.0.crate) = 12221 +SHA256 (rust/crates/smallvec-1.11.2.crate) = 4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970 +SIZE (rust/crates/smallvec-1.11.2.crate) = 34801 +SHA256 (rust/crates/syn-1.0.109.crate) = 72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237 +SIZE (rust/crates/syn-1.0.109.crate) = 237611 +SHA256 (rust/crates/syn-2.0.39.crate) = 23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a +SIZE (rust/crates/syn-2.0.39.crate) = 244129 +SHA256 (rust/crates/target-lexicon-0.12.12.crate) = 14c39fd04924ca3a864207c66fc2cd7d22d7c016007f9ce846cbb9326331930a +SIZE (rust/crates/target-lexicon-0.12.12.crate) = 25156 +SHA256 (rust/crates/thiserror-1.0.50.crate) = f9a7210f5c9a7156bb50aa36aed4c95afb51df0df00713949448cf9e97d382d2 +SIZE (rust/crates/thiserror-1.0.50.crate) = 19414 +SHA256 (rust/crates/thiserror-impl-1.0.50.crate) = 266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8 +SIZE (rust/crates/thiserror-impl-1.0.50.crate) = 15357 +SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b +SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168 +SHA256 (rust/crates/unindent-0.1.11.crate) = e1766d682d402817b5ac4490b3c3002d91dfa0d22812f341609f97b08757359c +SIZE (rust/crates/unindent-0.1.11.crate) = 7700 +SHA256 (rust/crates/wasi-0.9.0+wasi-snapshot-preview1.crate) = cccddf32554fecc6acb585f82a32a72e28b48f8c4c1883ddfeeeaa96f7d8e519 +SIZE (rust/crates/wasi-0.9.0+wasi-snapshot-preview1.crate) = 31521 +SHA256 (rust/crates/wasm-bindgen-0.2.89.crate) = 0ed0d4f68a3015cc185aff4db9506a015f4b96f95303897bfa23f846db54064e +SIZE (rust/crates/wasm-bindgen-0.2.89.crate) = 181935 +SHA256 (rust/crates/wasm-bindgen-backend-0.2.89.crate) = 1b56f625e64f3a1084ded111c4d5f477df9f8c92df113852fa5a374dbda78826 +SIZE (rust/crates/wasm-bindgen-backend-0.2.89.crate) = 28205 +SHA256 (rust/crates/wasm-bindgen-macro-0.2.89.crate) = 0162dbf37223cd2afce98f3d0785506dcb8d266223983e4b5b525859e6e182b2 +SIZE (rust/crates/wasm-bindgen-macro-0.2.89.crate) = 13906 +SHA256 (rust/crates/wasm-bindgen-macro-support-0.2.89.crate) = f0eb82fcb7930ae6219a7ecfd55b217f5f0893484b7a13022ebb2b2bf20b5283 +SIZE (rust/crates/wasm-bindgen-macro-support-0.2.89.crate) = 20008 +SHA256 (rust/crates/wasm-bindgen-shared-0.2.89.crate) = 7ab9b36309365056cd639da3134bf87fa8f3d86008abf99e612384a6eecd459f +SIZE (rust/crates/wasm-bindgen-shared-0.2.89.crate) = 7265 +SHA256 (rust/crates/windows-targets-0.48.5.crate) = 9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c +SIZE (rust/crates/windows-targets-0.48.5.crate) = 6904 +SHA256 (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8 +SIZE (rust/crates/windows_aarch64_gnullvm-0.48.5.crate) = 418492 +SHA256 (rust/crates/windows_aarch64_msvc-0.48.5.crate) = dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc +SIZE (rust/crates/windows_aarch64_msvc-0.48.5.crate) = 798483 +SHA256 (rust/crates/windows_i686_gnu-0.48.5.crate) = a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e +SIZE (rust/crates/windows_i686_gnu-0.48.5.crate) = 844891 +SHA256 (rust/crates/windows_i686_msvc-0.48.5.crate) = 8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406 +SIZE (rust/crates/windows_i686_msvc-0.48.5.crate) = 864300 +SHA256 (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e +SIZE (rust/crates/windows_x86_64_gnu-0.48.5.crate) = 801619 +SHA256 (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc +SIZE (rust/crates/windows_x86_64_gnullvm-0.48.5.crate) = 418486 +SHA256 (rust/crates/windows_x86_64_msvc-0.48.5.crate) = ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538 +SIZE (rust/crates/windows_x86_64_msvc-0.48.5.crate) = 798412 +SHA256 (rust/crates/yrs-0.17.2.crate) = 68aea14c6c33f2edd8a5ff9415360cfa5b98d90cce30c5ee3be59a8419fb15a9 +SIZE (rust/crates/yrs-0.17.2.crate) = 212825 diff --git a/devel/py-pycrdt/pkg-descr b/devel/py-pycrdt/pkg-descr new file mode 100644 index 000000000000..0ba337acbc34 --- /dev/null +++ b/devel/py-pycrdt/pkg-descr @@ -0,0 +1,9 @@ +Pycrdt is a Python CRDT library that provides bindings for Yrs, the Rust port of +the Yjs framework. + +Conflict-free Replicated Data Types (CRDTs) allow creating shared documents that +can automatically merge changes made concurrently on different "copies" of the +data. When the data lives on different machines, they make it possible to build +distributed systems that work with local data, leaving the synchronization and +conflict resolution with remote data to the CRDT algorithm, which ensures that +all data replicas eventually converge to the same state. |