diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index 93e542d80f..c014383534 100644 --- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -1865,6 +1865,61 @@ in different situations. @end enumerate") (license license:expat))) +(define-public python-zxcvbn-rs-py + (package + (name "python-zxcvbn-rs-py") + (version "0.3.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fief-dev/zxcvbn-rs-py") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0pmc68x6ycsz4g7sr48nb7cv6v46rljc3wb1vc531lyc6hsh80qm")))) + (build-system pyproject-build-system) + (arguments + (list + #:imported-modules `(,@%cargo-build-system-modules + ,@%pyproject-build-system-modules) + #:modules '(((guix build cargo-build-system) #:prefix cargo:) + (guix build pyproject-build-system) + (guix build utils)) + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'prepare-cargo-build-system + (lambda args + (for-each + (lambda (phase) + (format #t "Running cargo phase: ~a~%" phase) + (apply (assoc-ref cargo:%standard-phases phase) + #:cargo-target #$(cargo-triplet) + args)) + '(unpack-rust-crates + configure + check-for-pregenerated-files + patch-cargo-checksums)))) + (add-before 'check 'prepare-for-tests + (lambda _ + (delete-file-recursively "zxcvbn_rs_py")))))) + (native-inputs + (list rust + `(,rust "cargo") + maturin + python-pytest + python-wheel)) + (inputs + (cargo-inputs 'python-zxcvbn-rs-py)) + (home-page "https://github.com/fief-dev/zxcvbn-rs-py") + (synopsis + "Python bindings for zxcvbn-rs, a password strength estimation library") + (description + "This package provides a library to estimate password strength. It is +implemented by python bindings for zxcvbn-rs and aims to be faster than +@code{python-zxcvbn} thanks to its Rust core.") + (license license:expat))) + ;; XXX: Not maintained since 2016. (define-public python-pydes (package diff --git a/gnu/packages/rust-crates.scm b/gnu/packages/rust-crates.scm index 0903c1de1a..b1e6408bf8 100644 --- a/gnu/packages/rust-crates.scm +++ b/gnu/packages/rust-crates.scm @@ -32968,6 +32968,10 @@ (crate-source "zvariant_utils" "3.3.0" "1sf5i71in36gc08jhak83pprnkam8gk936cqlq9hzx7q9sk26p7p")) +(define rust-zxcvbn-3.1.0 + (crate-source "zxcvbn" "3.1.0" + "0v3k3jmh8c5n0jg76m51lkvm3grwpv533i4hdf6nhlxd01dy6xmd")) + (define ssss-separator 'end-of-crates) @@ -65389,6 +65393,78 @@ rust-windows-x86-64-gnu-0.52.6 rust-windows-x86-64-gnullvm-0.52.6 rust-windows-x86-64-msvc-0.52.6)) + (python-zxcvbn-rs-py => + (list rust-aho-corasick-1.1.4 + rust-android-system-properties-0.1.5 + rust-autocfg-1.5.0 + rust-bit-set-0.5.3 + rust-bit-vec-0.6.3 + rust-bumpalo-3.20.2 + rust-cc-1.2.56 + rust-cfg-if-1.0.4 + rust-chrono-0.4.44 + rust-core-foundation-sys-0.8.7 + rust-darling-0.20.11 + rust-darling-core-0.20.11 + rust-darling-macro-0.20.11 + rust-deranged-0.5.8 + rust-derive-builder-0.20.2 + rust-derive-builder-core-0.20.2 + rust-derive-builder-macro-0.20.2 + rust-either-1.15.0 + rust-fancy-regex-0.13.0 + rust-find-msvc-tools-0.1.9 + rust-fnv-1.0.7 + rust-heck-0.5.0 + rust-iana-time-zone-0.1.65 + rust-iana-time-zone-haiku-0.1.2 + rust-ident-case-1.0.1 + rust-indoc-2.0.7 + rust-itertools-0.13.0 + rust-js-sys-0.3.91 + rust-lazy-static-1.5.0 + rust-libc-0.2.183 + rust-log-0.4.29 + rust-memchr-2.8.0 + rust-memoffset-0.9.1 + rust-num-conv-0.2.0 + rust-num-traits-0.2.19 + rust-once-cell-1.21.4 + rust-portable-atomic-1.13.1 + rust-powerfmt-0.2.0 + rust-proc-macro2-1.0.106 + rust-pyo3-0.27.2 + rust-pyo3-build-config-0.27.2 + rust-pyo3-ffi-0.27.2 + rust-pyo3-macros-0.27.2 + rust-pyo3-macros-backend-0.27.2 + rust-quote-1.0.45 + rust-regex-1.12.3 + rust-regex-automata-0.4.14 + rust-regex-syntax-0.8.10 + rust-rustversion-1.0.22 + rust-serde-core-1.0.228 + rust-serde-derive-1.0.228 + rust-shlex-1.3.0 + rust-strsim-0.11.1 + rust-syn-2.0.117 + rust-target-lexicon-0.13.5 + rust-time-0.3.47 + rust-time-core-0.1.8 + rust-unicode-ident-1.0.24 + rust-unindent-0.2.4 + rust-wasm-bindgen-0.2.114 + rust-wasm-bindgen-macro-0.2.114 + rust-wasm-bindgen-macro-support-0.2.114 + rust-wasm-bindgen-shared-0.2.114 + rust-web-sys-0.3.91 + rust-windows-core-0.62.2 + rust-windows-implement-0.60.2 + rust-windows-interface-0.59.3 + rust-windows-link-0.2.1 + rust-windows-result-0.4.1 + rust-windows-strings-0.5.1 + rust-zxcvbn-3.1.0)) (rabbitmqadmin => (list rust-addr2line-0.24.2 rust-adler2-2.0.1