1
0
mirror of https://git.FreeBSD.org/ports.git synced 2025-01-31 10:46:16 +00:00

www/py-nh3: New port

This package offers Python bindings to the ammonia HTML sanitization
library (see https://github.com/rust-ammonia/ammonia) and it has many
options to customize the sanitization.
This commit is contained in:
Kai Knoblich 2024-01-20 10:34:06 +01:00
parent d42dbe928b
commit 042cb14c9e
5 changed files with 240 additions and 0 deletions

View File

@ -1738,6 +1738,7 @@
SUBDIR += py-multidict
SUBDIR += py-mwoauth
SUBDIR += py-nevow
SUBDIR += py-nh3
SUBDIR += py-notebook
SUBDIR += py-onetimepass
SUBDIR += py-openbrokerapi

29
www/py-nh3/Makefile Normal file
View File

@ -0,0 +1,29 @@
PORTNAME= nh3
DISTVERSIONPREFIX= v
DISTVERSION= 0.2.15
CATEGORIES= www python
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
MAINTAINER= kai@FreeBSD.org
COMMENT= Python Bindings to the ammonia HTML sanitization library
WWW= https://github.com/messense/nh3
LICENSE= MIT
LICENSE_FILE= ${WRKSRC}/LICENSE
BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}maturin>=1.0<2.0:devel/py-maturin@${PY_FLAVOR}
USES= cargo python
USE_GITHUB= yes
GH_ACCOUNT= messense
USE_PYTHON= autoplist pep517
CARGO_BUILD= no
CARGO_INSTALL= no
TEST_ENV= PYTHONPATH=${STAGEDIR}${PYTHONPREFIX_SITELIBDIR}
post-install:
${FIND} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} -name '*.so' -exec ${STRIP_CMD} {} +
.include <bsd.port.mk>

View File

@ -0,0 +1,68 @@
CARGO_CRATES= ammonia-3.3.0 \
autocfg-1.1.0 \
bitflags-1.3.2 \
cfg-if-1.0.0 \
form_urlencoded-1.2.1 \
futf-0.1.5 \
getrandom-0.2.11 \
heck-0.4.1 \
html5ever-0.26.0 \
idna-0.5.0 \
indoc-2.0.4 \
libc-0.2.150 \
lock_api-0.4.11 \
log-0.4.20 \
mac-0.1.1 \
maplit-1.0.2 \
markup5ever-0.11.0 \
memoffset-0.9.0 \
new_debug_unreachable-1.0.4 \
once_cell-1.19.0 \
parking_lot-0.12.1 \
parking_lot_core-0.9.9 \
percent-encoding-2.3.1 \
phf-0.10.1 \
phf_codegen-0.10.0 \
phf_generator-0.10.0 \
phf_shared-0.10.0 \
ppv-lite86-0.2.17 \
precomputed-hash-0.1.1 \
proc-macro2-1.0.70 \
pyo3-0.20.0 \
pyo3-build-config-0.20.0 \
pyo3-ffi-0.20.0 \
pyo3-macros-0.20.0 \
pyo3-macros-backend-0.20.0 \
quote-1.0.33 \
rand-0.8.5 \
rand_chacha-0.3.1 \
rand_core-0.6.4 \
redox_syscall-0.4.1 \
scopeguard-1.2.0 \
serde-1.0.193 \
serde_derive-1.0.193 \
siphasher-0.3.11 \
smallvec-1.11.2 \
string_cache-0.8.7 \
string_cache_codegen-0.5.2 \
syn-1.0.109 \
syn-2.0.39 \
target-lexicon-0.12.12 \
tendril-0.4.3 \
tinyvec-1.6.0 \
tinyvec_macros-0.1.1 \
unicode-bidi-0.3.14 \
unicode-ident-1.0.12 \
unicode-normalization-0.1.22 \
unindent-0.2.3 \
url-2.5.0 \
utf-8-0.7.6 \
wasi-0.11.0+wasi-snapshot-preview1 \
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

139
www/py-nh3/distinfo Normal file
View File

@ -0,0 +1,139 @@
TIMESTAMP = 1705686727
SHA256 (rust/crates/ammonia-3.3.0.crate) = 64e6d1c7838db705c9b756557ee27c384ce695a1c51a6fe528784cb1c6840170
SIZE (rust/crates/ammonia-3.3.0.crate) = 46061
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/form_urlencoded-1.2.1.crate) = e13624c2627564efccf4934284bdd98cbaa14e79b0b5a141218e507b3a823456
SIZE (rust/crates/form_urlencoded-1.2.1.crate) = 8969
SHA256 (rust/crates/futf-0.1.5.crate) = df420e2e84819663797d1ec6544b13c5be84629e7bb00dc960d6917db2987843
SIZE (rust/crates/futf-0.1.5.crate) = 11344
SHA256 (rust/crates/getrandom-0.2.11.crate) = fe9006bed769170c11f845cf00c7c1e9092aeb3f268e007c3e760ac68008070f
SIZE (rust/crates/getrandom-0.2.11.crate) = 35391
SHA256 (rust/crates/heck-0.4.1.crate) = 95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8
SIZE (rust/crates/heck-0.4.1.crate) = 11567
SHA256 (rust/crates/html5ever-0.26.0.crate) = bea68cab48b8459f17cf1c944c67ddc572d272d9f2b274140f223ecb1da4a3b7
SIZE (rust/crates/html5ever-0.26.0.crate) = 72921
SHA256 (rust/crates/idna-0.5.0.crate) = 634d9b1461af396cad843f47fdba5597a4f9e6ddd4bfb6ff5d85028c25cb12f6
SIZE (rust/crates/idna-0.5.0.crate) = 271940
SHA256 (rust/crates/indoc-2.0.4.crate) = 1e186cfbae8084e513daff4240b4797e342f988cecda4fb6c939150f96315fd8
SIZE (rust/crates/indoc-2.0.4.crate) = 14311
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/mac-0.1.1.crate) = c41e0c4fef86961ac6d6f8a82609f55f31b05e4fce149ac5710e439df7619ba4
SIZE (rust/crates/mac-0.1.1.crate) = 4838
SHA256 (rust/crates/maplit-1.0.2.crate) = 3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d
SIZE (rust/crates/maplit-1.0.2.crate) = 8871
SHA256 (rust/crates/markup5ever-0.11.0.crate) = 7a2629bb1404f3d34c2e921f21fd34ba00b206124c81f65c50b43b6aaefeb016
SIZE (rust/crates/markup5ever-0.11.0.crate) = 34667
SHA256 (rust/crates/memoffset-0.9.0.crate) = 5a634b1c61a95585bd15607c6ab0c4e5b226e695ff2800ba0cdccddf208c406c
SIZE (rust/crates/memoffset-0.9.0.crate) = 9033
SHA256 (rust/crates/new_debug_unreachable-1.0.4.crate) = e4a24736216ec316047a1fc4252e27dabb04218aa4a3f37c6e7ddbf1f9782b54
SIZE (rust/crates/new_debug_unreachable-1.0.4.crate) = 2561
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/percent-encoding-2.3.1.crate) = e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e
SIZE (rust/crates/percent-encoding-2.3.1.crate) = 10235
SHA256 (rust/crates/phf-0.10.1.crate) = fabbf1ead8a5bcbc20f5f8b939ee3f5b0f6f281b6ad3468b84656b658b455259
SIZE (rust/crates/phf-0.10.1.crate) = 5406
SHA256 (rust/crates/phf_codegen-0.10.0.crate) = 4fb1c3a8bc4dd4e5cfce29b44ffc14bedd2ee294559a294e2a4d4c9e9a6a13cd
SIZE (rust/crates/phf_codegen-0.10.0.crate) = 3402
SHA256 (rust/crates/phf_generator-0.10.0.crate) = 5d5285893bb5eb82e6aaf5d59ee909a06a16737a8970984dd7746ba9283498d6
SIZE (rust/crates/phf_generator-0.10.0.crate) = 7525
SHA256 (rust/crates/phf_shared-0.10.0.crate) = b6796ad771acdc0123d2a88dc428b5e38ef24456743ddb1744ed628f9815c096
SIZE (rust/crates/phf_shared-0.10.0.crate) = 4095
SHA256 (rust/crates/ppv-lite86-0.2.17.crate) = 5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de
SIZE (rust/crates/ppv-lite86-0.2.17.crate) = 22242
SHA256 (rust/crates/precomputed-hash-0.1.1.crate) = 925383efa346730478fb4838dbe9137d2a47675ad789c546d150a6e1dd4ab31c
SIZE (rust/crates/precomputed-hash-0.1.1.crate) = 1640
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.20.0.crate) = 04e8453b658fe480c3e70c8ed4e3d3ec33eb74988bd186561b0cc66b85c3bc4b
SIZE (rust/crates/pyo3-0.20.0.crate) = 431766
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/pyo3-macros-0.20.0.crate) = dac53072f717aa1bfa4db832b39de8c875b7c7af4f4a6fe93cdbf9264cf8383b
SIZE (rust/crates/pyo3-macros-0.20.0.crate) = 7678
SHA256 (rust/crates/pyo3-macros-backend-0.20.0.crate) = 7774b5a8282bd4f25f803b1f0d945120be959a36c72e08e7cd031c792fdfd424
SIZE (rust/crates/pyo3-macros-backend-0.20.0.crate) = 49383
SHA256 (rust/crates/quote-1.0.33.crate) = 5267fca4496028628a95160fc423a33e8b2e6af8a5302579e322e4b520293cae
SIZE (rust/crates/quote-1.0.33.crate) = 28090
SHA256 (rust/crates/rand-0.8.5.crate) = 34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404
SIZE (rust/crates/rand-0.8.5.crate) = 87113
SHA256 (rust/crates/rand_chacha-0.3.1.crate) = e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88
SIZE (rust/crates/rand_chacha-0.3.1.crate) = 15251
SHA256 (rust/crates/rand_core-0.6.4.crate) = ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c
SIZE (rust/crates/rand_core-0.6.4.crate) = 22666
SHA256 (rust/crates/redox_syscall-0.4.1.crate) = 4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa
SIZE (rust/crates/redox_syscall-0.4.1.crate) = 24858
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/siphasher-0.3.11.crate) = 38b58827f4464d87d377d175e90bf58eb00fd8716ff0a62f80356b5e61555d0d
SIZE (rust/crates/siphasher-0.3.11.crate) = 10442
SHA256 (rust/crates/smallvec-1.11.2.crate) = 4dccd0940a2dcdf68d092b8cbab7dc0ad8fa938bf95787e1b916b0e3d0e8e970
SIZE (rust/crates/smallvec-1.11.2.crate) = 34801
SHA256 (rust/crates/string_cache-0.8.7.crate) = f91138e76242f575eb1d3b38b4f1362f10d3a43f47d182a5b359af488a02293b
SIZE (rust/crates/string_cache-0.8.7.crate) = 16655
SHA256 (rust/crates/string_cache_codegen-0.5.2.crate) = 6bb30289b722be4ff74a408c3cc27edeaad656e06cb1fe8fa9231fa59c728988
SIZE (rust/crates/string_cache_codegen-0.5.2.crate) = 8156
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/tendril-0.4.3.crate) = d24a120c5fc464a3458240ee02c299ebcb9d67b5249c8848b09d639dca8d7bb0
SIZE (rust/crates/tendril-0.4.3.crate) = 37210
SHA256 (rust/crates/tinyvec-1.6.0.crate) = 87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50
SIZE (rust/crates/tinyvec-1.6.0.crate) = 45991
SHA256 (rust/crates/tinyvec_macros-0.1.1.crate) = 1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20
SIZE (rust/crates/tinyvec_macros-0.1.1.crate) = 5865
SHA256 (rust/crates/unicode-bidi-0.3.14.crate) = 6f2528f27a9eb2b21e69c95319b30bd0efd85d09c379741b0f78ea1d86be2416
SIZE (rust/crates/unicode-bidi-0.3.14.crate) = 56429
SHA256 (rust/crates/unicode-ident-1.0.12.crate) = 3354b9ac3fae1ff6755cb6db53683adb661634f67557942dea4facebec0fee4b
SIZE (rust/crates/unicode-ident-1.0.12.crate) = 42168
SHA256 (rust/crates/unicode-normalization-0.1.22.crate) = 5c5713f0fc4b5db668a2ac63cdb7bb4469d8c9fed047b1d0292cc7b0ce2ba921
SIZE (rust/crates/unicode-normalization-0.1.22.crate) = 122604
SHA256 (rust/crates/unindent-0.2.3.crate) = c7de7d73e1754487cb58364ee906a499937a0dfabd86bcb980fa99ec8c8fa2ce
SIZE (rust/crates/unindent-0.2.3.crate) = 7306
SHA256 (rust/crates/url-2.5.0.crate) = 31e6302e3bb753d46e83516cae55ae196fc0c309407cf11ab35cc51a4c2a4633
SIZE (rust/crates/url-2.5.0.crate) = 78605
SHA256 (rust/crates/utf-8-0.7.6.crate) = 09cc8ee72d2a9becf2f2febe0205bbed8fc6615b7cb429ad062dc7b7ddd036a9
SIZE (rust/crates/utf-8-0.7.6.crate) = 10422
SHA256 (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423
SIZE (rust/crates/wasi-0.11.0+wasi-snapshot-preview1.crate) = 28131
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 (messense-nh3-v0.2.15_GH0.tar.gz) = 48d5bd02a4e598d07b4e43f43652356c8670d37ec9742cc5fd0988492439a8d7
SIZE (messense-nh3-v0.2.15_GH0.tar.gz) = 13922

3
www/py-nh3/pkg-descr Normal file
View File

@ -0,0 +1,3 @@
This package offers Python bindings to the ammonia HTML sanitization library
(see https://github.com/rust-ammonia/ammonia) and it has many options to
customize the sanitization.