Toggle diff (479 lines)
diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
index 0a0d8e59ed..395fb72ecf 100644
--- a/gnu/packages/crates-io.scm
+++ b/gnu/packages/crates-io.scm
@@ -57806,6 +57806,285 @@ (define-public rust-pwd-1
(description "This package provides a safe interface to @code{pwd.h}.")
(license license:public-domain)))
+(define-public rust-pyo3-0.20
+ (package
+ (name "rust-pyo3")
+ (version "0.20.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pyo3" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1q3g7ppg2qskigbgqg3w9280klkil5is9hhyps1ykl2hb1xdr2cs"))))
+ (build-system cargo-build-system)
+ (arguments
+ `(#:cargo-inputs (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-cfg-if" ,rust-cfg-if-1)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-either" ,rust-either-1)
+ ("rust-eyre" ,rust-eyre-0.6)
+ ("rust-hashbrown" ,rust-hashbrown-0.14)
+ ("rust-indexmap" ,rust-indexmap-2)
+ ("rust-indoc" ,rust-indoc-2)
+ ("rust-inventory" ,rust-inventory-0.3)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-memoffset" ,rust-memoffset-0.9)
+ ("rust-num-bigint" ,rust-num-bigint-0.4)
+ ("rust-num-complex" ,rust-num-complex-0.4)
+ ("rust-parking-lot" ,rust-parking-lot-0.12)
+ ("rust-pyo3-build-config" ,rust-pyo3-build-config-0.20)
+ ("rust-pyo3-ffi" ,rust-pyo3-ffi-0.20)
+ ("rust-pyo3-macros" ,rust-pyo3-macros-0.20)
+ ("rust-rust-decimal" ,rust-rust-decimal-1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-smallvec" ,rust-smallvec-1)
+ ("rust-unindent" ,rust-unindent-0.2))
+ #:cargo-development-inputs (("rust-assert-approx-eq" ,rust-assert-approx-eq-1)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-proptest" ,rust-proptest-1)
+ ("rust-rayon" ,rust-rayon-1)
+ ("rust-send-wrapper" ,rust-send-wrapper-0.6)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1)
+ ("rust-widestring" ,rust-widestring-0.5))))
+ (inputs (list python))
+ (home-page "https://github.com/pyo3/pyo3")
+ (synopsis "Rust bindings for the Python interpreter")
+ (description
+ "This package provides Rust bindings for Python, including tools for
+creating native Python extension modules. Running and interacting with
+Python code from a Rust binary is also supported.")
+ (license (list license:expat license:asl2.0))))
+
+(define-public rust-pyo3-0.19
+ (package
+ (inherit rust-pyo3-0.20)
+ (name "rust-pyo3")
+ (version "0.19.2")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "pyo3" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "0f1aqx947mzsrk05zdm9w2702lj5k9s97y9w9lxwkp2avk7sd0g6"))))
+ (arguments
+ `(#:cargo-test-flags
+ '("--release" "--"
+ "--skip=exceptions::PyUnicodeDecodeError::new_utf8")
+ #:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-cfg-if" ,rust-cfg-if-1)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-eyre" ,rust-eyre-0.6)
+ ("rust-hashbrown" ,rust-hashbrown-0.14)
+ ("rust-indexmap" ,rust-indexmap-2)
+ ("rust-indoc" ,rust-indoc-1)
+ ("rust-inventory" ,rust-inventory-0.3)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-memoffset" ,rust-memoffset-0.9)
+ ("rust-num-bigint" ,rust-num-bigint-0.4)
+ ("rust-num-complex" ,rust-num-complex-0.4)
+ ("rust-parking-lot" ,rust-parking-lot-0.12)
+ ("rust-pyo3-build-config" ,rust-pyo3-build-config-0.19)
+ ("rust-pyo3-ffi" ,rust-pyo3-ffi-0.19)
+ ("rust-pyo3-macros" ,rust-pyo3-macros-0.19)
+ ("rust-rust-decimal" ,rust-rust-decimal-1)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-unindent" ,rust-unindent-0.1))
+ #:cargo-development-inputs
+ (("rust-assert-approx-eq" ,rust-assert-approx-eq-1)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-proptest" ,rust-proptest-0.10)
+ ("rust-rayon" ,rust-rayon-1)
+ ("rust-rust-decimal" ,rust-rust-decimal-1)
+ ("rust-rustversion" ,rust-rustversion-1)
+ ("rust-send-wrapper" ,rust-send-wrapper-0.6)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1)
+ ("rust-widestring" ,rust-widestring-0.5))))))
+
+(define-public rust-pyo3-0.18
+ (package
+ (inherit rust-pyo3-0.19)
+ (name "rust-pyo3")
+ (version "0.18.3")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "pyo3" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "02914yszvcg7qzh1kkrhiz8qqi0p9pbzi1cpmbyk9fii6xdsrcg3"))))
+ (arguments
+ `(#:cargo-test-flags
+ '("--release" "--"
+ "--skip=test_compile_errors"
+ "--skip=exceptions::PyUnicodeDecodeError::new_utf8")
+ #:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-cfg-if" ,rust-cfg-if-1)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-eyre" ,rust-eyre-0.6)
+ ("rust-hashbrown" ,rust-hashbrown-0.12)
+ ("rust-indexmap" ,rust-indexmap-1)
+ ("rust-indoc" ,rust-indoc-1)
+ ("rust-inventory" ,rust-inventory-0.3)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-memoffset" ,rust-memoffset-0.8)
+ ("rust-num-bigint" ,rust-num-bigint-0.4)
+ ("rust-num-complex" ,rust-num-complex-0.4)
+ ("rust-parking-lot" ,rust-parking-lot-0.12)
+ ("rust-pyo3-build-config" ,rust-pyo3-build-config-0.18)
+ ("rust-pyo3-ffi" ,rust-pyo3-ffi-0.18)
+ ("rust-pyo3-macros" ,rust-pyo3-macros-0.18)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-unindent" ,rust-unindent-0.1))
+ #:cargo-development-inputs
+ (("rust-assert-approx-eq" ,rust-assert-approx-eq-1)
+ ("rust-chrono" ,rust-chrono-0.4)
+ ("rust-criterion" ,rust-criterion-0.3)
+ ("rust-proptest" ,rust-proptest-0.10)
+ ("rust-rayon" ,rust-rayon-1)
+ ("rust-rustversion" ,rust-rustversion-1)
+ ("rust-send-wrapper" ,rust-send-wrapper-0.6)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1)
+ ("rust-widestring" ,rust-widestring-0.5))))))
+
+(define-public rust-pyo3-0.16
+ (package
+ (inherit rust-pyo3-0.19)
+ (name "rust-pyo3")
+ (version "0.16.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pyo3" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "1jn6nhp9a8i5kfwds6fzy3hzb938qim8bajp8gfkkcn9892c8802"))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-cfg-if" ,rust-cfg-if-1)
+ ("rust-eyre" ,rust-eyre-0.6)
+ ("rust-hashbrown" ,rust-hashbrown-0.11)
+ ("rust-indexmap" ,rust-indexmap-1.7)
+ ("rust-indoc" ,rust-indoc-1)
+ ("rust-inventory" ,rust-inventory-0.2)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-num-bigint" ,rust-num-bigint-0.4)
+ ("rust-num-complex" ,rust-num-complex-0.4)
+ ("rust-parking-lot" ,rust-parking-lot-0.11)
+ ("rust-pyo3-build-config" ,rust-pyo3-build-config-0.16)
+ ("rust-pyo3-ffi" ,rust-pyo3-ffi-0.16)
+ ("rust-pyo3-macros" ,rust-pyo3-macros-0.16)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-unindent" ,rust-unindent-0.1))
+ #:cargo-development-inputs
+ (("rust-assert-approx-eq" ,rust-assert-approx-eq-1)
+ ("rust-criterion" ,rust-criterion-0.3)
+ ("rust-proptest" ,rust-proptest-0.10)
+ ("rust-rustversion" ,rust-rustversion-1)
+ ("rust-send-wrapper" ,rust-send-wrapper-0.5)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1)
+ ("rust-widestring" ,rust-widestring-0.5))
+ ;; SIGSEGV: invalid memory reference
+ #:tests? #f))))
+
+(define-public rust-pyo3-0.15
+ (package
+ (inherit rust-pyo3-0.16)
+ (name "rust-pyo3")
+ (version "0.15.2")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (crate-uri "pyo3" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32 "0ljp3m1frg8y50al4cbadwxfwwrgsvslmljclp4cf20y4ykm07fl"))
+ (modules '((guix build utils)))
+ (snippet
+ '(begin (substitute* "Cargo.toml"
+ (("\"=([[:digit:]]+(\\.[[:digit:]]+)*)" _ version)
+ (string-append "\"^" version)))))))
+ (arguments
+ `(#:cargo-inputs
+ (("rust-anyhow" ,rust-anyhow-1)
+ ("rust-cfg-if" ,rust-cfg-if-1)
+ ("rust-eyre" ,rust-eyre-0.6)
+ ("rust-hashbrown" ,rust-hashbrown-0.11)
+ ("rust-indexmap" ,rust-indexmap-1.7)
+ ("rust-indoc" ,rust-indoc-0.3)
+ ("rust-inventory" ,rust-inventory-0.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-num-bigint" ,rust-num-bigint-0.4)
+ ("rust-num-complex" ,rust-num-complex-0.4)
+ ("rust-parking-lot" ,rust-parking-lot-0.11)
+ ("rust-paste" ,rust-paste-0.1)
+ ("rust-pyo3-build-config" ,rust-pyo3-build-config-0.15)
+ ("rust-pyo3-macros" ,rust-pyo3-macros-0.15)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-unindent" ,rust-unindent-0.1))
+ #:cargo-development-inputs
+ (("rust-assert-approx-eq" ,rust-assert-approx-eq-1)
+ ("rust-bitflags" ,rust-bitflags-1)
+ ("rust-clap" ,rust-clap-2)
+ ("rust-criterion" ,rust-criterion-0.3)
+ ("rust-half" ,rust-half-1)
+ ("rust-proptest" ,rust-proptest-0.10)
+ ("rust-rustversion" ,rust-rustversion-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1))
+ ;; FIXME: fails to initialize Python interpreter.
+ #:tests? #f))))
+
+(define-public rust-pyo3-0.13
+ (package
+ (inherit rust-pyo3-0.15)
+ (name "rust-pyo3")
+ (version "0.13.2")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "pyo3" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1hq965lgi25dn578fpn9hjva6zjr1c8rl7lxywijq44aw7lbhds8"))))
+ (arguments
+ `(#:skip-build? #true
+ #:cargo-inputs
+ (("rust-cfg-if" ,rust-cfg-if-1)
+ ("rust-ctor" ,rust-ctor-0.1)
+ ("rust-hashbrown" ,rust-hashbrown-0.9)
+ ("rust-indoc" ,rust-indoc-0.3)
+ ("rust-inventory" ,rust-inventory-0.1)
+ ("rust-libc" ,rust-libc-0.2)
+ ("rust-num-bigint" ,rust-num-bigint-0.3)
+ ("rust-num-complex" ,rust-num-complex-0.3)
+ ("rust-parking-lot" ,rust-parking-lot-0.11)
+ ("rust-paste" ,rust-paste-0.1)
+ ("rust-pyo3-macros" ,rust-pyo3-macros-0.13)
+ ("rust-serde" ,rust-serde-1)
+ ("rust-unindent" ,rust-unindent-0.1))
+ #:cargo-development-inputs
+ (("rust-assert-approx-eq" ,rust-assert-approx-eq-1)
+ ("rust-bitflags" ,rust-bitflags-1.2)
+ ("rust-criterion" ,rust-criterion-0.3)
+ ("rust-half" ,rust-half-1)
+ ("rust-proptest" ,rust-proptest-0.10)
+ ("rust-rustversion" ,rust-rustversion-1)
+ ("rust-serde-json" ,rust-serde-json-1)
+ ("rust-trybuild" ,rust-trybuild-1))))))
+
(define-public rust-pyo3-build-config-0.20
(package
(name "rust-pyo3-build-config")
@@ -58009,103 +58288,6 @@ (define-public rust-pyo3-log-0.8
extension to python.")
(license (list license:asl2.0 license:expat))))
-(define-public rust-pyo3-macros-backend-0.20
- (package
- (name "rust-pyo3-macros-backend")
- (version "0.20.2")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pyo3-macros-backend" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32 "07w8x1wxm1ksx72jb0w1p2ssmg9zh95dsv4xmxyq4iqqhpa11j8g"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs (("rust-heck" ,rust-heck-0.4)
- ("rust-proc-macro2" ,rust-proc-macro2-1)
- ("rust-quote" ,rust-quote-1)
- ("rust-syn" ,rust-syn-2))))
- (home-page "https://github.com/pyo3/pyo3")
- (synopsis "Code generation for PyO3")
- (description
- "This package provides code generation backends for PyO3.")
- (license (list license:expat license:asl2.0))))
-
-(define-public rust-pyo3-macros-backend-0.19
- (package
- (inherit rust-pyo3-macros-backend-0.20)
- (name "rust-pyo3-macros-backend")
- (version "0.19.2")
- (source (origin
- (method url-fetch)
- (uri (crate-uri "pyo3-macros-backend" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0dlm4pg29hjmlqx15gcy9cmnabvc8ycy60hcvjg8hm62flhw2zcl"))))
- (arguments
- `(#:cargo-inputs
- (("rust-proc-macro2" ,rust-proc-macro2-1)
- ("rust-quote" ,rust-quote-1)
- ("rust-syn" ,rust-syn-1))))))
-
-(define-public rust-pyo3-macros-backend-0.18
- (package
- (inherit rust-pyo3-macros-backend-0.19)
- (name "rust-pyo3-macros-backend")
- (version "0.18.3")
- (source (origin
- (method url-fetch)
- (uri (crate-uri "pyo3-macros-backend" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "062rxf7cj1dn82yiaws3dmxw5qq9ssccq92jgdc210y4lh4gznlp"))))
- (arguments
- `(#:cargo-inputs
- (("rust-proc-macro2" ,rust-proc-macro2-1)
- ("rust-quote" ,rust-quote-1)
- ("rust-syn" ,rust-syn-1))))))
-
-(define-public rust-pyo3-macros-backend-0.16
- (package
- (inherit rust-pyo3-macros-backend-0.19)
- (name "rust-pyo3-macros-backend")
- (version "0.16.6")
- (source (origin
- (method url-fetch)
- (uri (crate-uri "pyo3-macros-backend" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "1f0y9vxmyq1cidk544pwg3my30f6xfqfgf42grw4gx4q5pl687v1"))))
- (arguments
- `(#:cargo-inputs
- (("rust-proc-macro2" ,rust-proc-macro2-1)
- ("rust-quote" ,rust-quote-1)
- ("rust-syn" ,rust-syn-1))))))
-
-(define-public rust-pyo3-macros-backend-0.15
- (package
- (inherit rust-pyo3-macros-backend-0.16)
- (name "rust-pyo3-macros-backend")
- (version "0.15.2")
- (source
- (origin
- (method url-fetch)
- (uri (crate-uri "pyo3-macros-backend" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32 "15bhc1xib9yz4l1sd2lk3nc7scbqsjfvgvlr3mj0xq0jqh92i32s"))))
- (arguments
- `(#:cargo-inputs
- (("rust-proc-macro2" ,rust-proc-macro2-1)
- ("rust-pyo3-build-config" ,rust-pyo3-build-config-0.15)
- ("rust-quote" ,rust-quote-1)
- ("rust-syn" ,rust-syn-1))))
- (native-inputs (list python))))
-
(define-public rust-pyo3-macros-0.20
(package
(name "rust-pyo3-macros")
@@ -58167,25 +58349,6 @@ (define-public rust-pyo3-macros-0.18
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-1))))))
-(define-public rust-pyo3-macros-backend-0.13
- (package
- (inherit rust-pyo3-macros-backend-0.15)
- (name "rust-pyo3-macros-backend")
- (version "0.13.2")
- (source (origin
- (method url-fetch)
- (uri (crate-uri "pyo3-macros-backend" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32
- "0rjxayd78l10hnyphk03bcvhm0jpsvnzn07lczhy7jsgv3jrgc47"))))
- (arguments
- `(#:skip-build? #t
- #:cargo-inputs
- (("rust-proc-macro2" ,rust-proc-macro2-1)
- ("rust-quote" ,rust-quote-1)
- ("rust-syn" ,rust-syn-1))))))
-
(define-public rust-pyo3-macros-0.16
(package
(inherit rust-pyo3-macros-0.19)
@@ -58224,303 +58387,140 @@ (define-public rust-pyo3-macros-0.15
("rust-syn" ,rust-syn-1))))
(native-inputs (list python))))
-(define-public rust-pyo3-0.20
+(define-public rust-pyo3-macros-0.13
(package
- (name "rust-pyo3")
+ (inherit rust-pyo3-macros-0.15)
+ (name "rust-pyo3-macros")
+ (version "0.13.2")
+ (source (origin
+ (method url-fetch)
+ (uri (crate-uri "pyo3-macros" version))
+ (file-name (string-append name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1fxi5lx5dl7xh469gr5xckyjy3r3c5dqypzxcj0fbhzf1hq2qzx4"))))
+ (arguments
+ `(#:skip-build? #t
+ #:cargo-inputs
+ (("rust-pyo3-macros-backend" ,rust-pyo3-macros-backend-0.13)
+ ("rust-quote" ,rust-quote-1)
+ ("rust-syn" ,rust-syn-1))))))
+
+(define-public rust-pyo3-macros-backend-0.20
+ (package
+ (name "rust-pyo3-macros-backend")
(version "0.20.2")
(source
(origin
- (method url-fetch)
- (uri (crate-uri "pyo3" version))
- (file-name (string-append name "-" version ".tar.gz"))
- (sha256
- (base32 "1q3g7ppg2qskigbgqg3w9280klkil5is9hhyps1ykl2hb1xdr2cs"))))
- (build-system cargo-build-system)
- (arguments
- `(#:cargo-inputs (("rust-anyhow" ,rust-anyhow-1)
- ("rust-cfg-if" ,rust-cfg-if-1)
- ("rust-chrono" ,rust-chrono-0.4)
- ("rust-either" ,rust-either-1)
- ("rust-eyre" ,rust-eyre-0.6)
- ("rust-hashbrown" ,rust-hashbrown-0.14)
- ("rust-indexmap" ,rust-indexmap-2)
- ("rust-indoc" ,rust-indoc-2)
- ("rust-inventory" ,rust-inventory-0.3)
- ("rust-libc" ,rust-libc-0.2)
- ("rust-memoffset" ,rust-memoffset-0.9)
- ("rust-num-bigint" ,rust-num-bigint-0.4)
- ("rust-num-complex" ,rust-num-complex-0.4)
- ("rust-parking-lot" ,rust-parking-lot-0.12)
- ("rust-pyo3-build-config" ,rust-pyo3-build-config-0.20)
- ("rust-pyo3-ffi" ,rust-pyo3-ffi-0.20)
- ("rust-pyo3-macros" ,rust-pyo3-macros-0.20)
- ("rust-rust-decimal" ,rust-rust-decimal-1)
- ("rust-serde" ,rust-serde-1)
- ("rust-smallvec" ,rust-smallvec-1)
- ("rust-uninden