Add 42 rust packages, and update 4 of them

  • Done
  • quality assurance status badge
Details
2 participants
  • Attila Lendvai
  • Nicolas Goaziou
Owner
unassigned
Submitted by
Attila Lendvai
Severity
normal
A
A
Attila Lendvai wrote on 24 Jan 2022 13:00
(name . guix-patches@gnu.org)(address . guix-patches@gnu.org)
CytKC2eH-Rmfm_TKJ2VV49-7XuVGl1jO5sTQ4Ib_4NWpsZuVM8ROJNtBojYJ_f_LlaITZmZKUo0tgWy4VxRe-Mzfbi8mm63qyHctgBwVin0=@lendvai.name
this is part of my struggle to package openethereum.

this patch series is a rebase of https://issues.guix.gnu.org/53401which has unfortunately developed countless merge conflicts.

this one supersedes 53401, which i have closed for good.

please apply at your earliest convenience, before this one also develops merge conflicts.

- attila
Attachment: file
N
N
Nicolas Goaziou wrote on 24 Jan 2022 13:24
(name . Attila Lendvai)(address . attila@lendvai.name)(address . 53500@debbugs.gnu.org)
87v8y9b9td.fsf@nicolasgoaziou.fr
Hello,

Attila Lendvai <attila@lendvai.name> writes:

Toggle quote (9 lines)
> this is part of my struggle to package openethereum.
>
> this patch series is a rebase of https://issues.guix.gnu.org/53401 which has unfortunately developed countless merge conflicts.
>
> this one supersedes 53401, which i have closed for good.
>
> please apply at your earliest convenience, before this one also
> develops merge conflicts.

Thank you.

Could you fix some synopses and descriptions of added packages. In
particular, a synopsis cannot start with an article, and the description
is expected to consist of full sentences. At the very least, when
inspiration is not there, you can use "This package provides ..."
template.

Toggle quote (6 lines)
> - (synopsis "Rustc-serialize compatible hex conversion traits")
> - (description "This package provides rustc-serialize compatible hex
> -conversion traits.")
> + (synopsis "@code{rustc-serialize} compatible hex conversion traits")
> + (description synopsis)

Here you removed a decent synopsis+description with something less good.

Toggle quote (2 lines)
> + (synopsis "General bytes-related utilities used in Parity Technologies projects")

I would remove the "used in" part, which is not useful.

Toggle quote (2 lines)
> + (description synopsis)

Hmmm, no :)

Toggle quote (3 lines)
> + (synopsis "Crate used in Parity Technologies projects")
> + (description synopsis)

See above.

Toggle quote (3 lines)
> + (synopsis "Salsa20 Stream Cipher")
> + (description synopsis)

Synopsis does not need to be titlecased.

Description should differ from synopsis.

Toggle quote (3 lines)
> + (synopsis "AST representation used by Serde derive macros")
> + (description "AST representation used by Serde derive macros. Unstable.")

Description should use full sentences.

Toggle quote (2 lines)
> + (synopsis "The bare essentials of std::io for use in no_std")

Don't start a synopsis with "The"

Toggle quote (3 lines)
> + (description
> + "The bare essentials of std::io for use in no_std. Alloc support is optional.")

The first sentence is not complete.

I won't comment each description, you get the picture.

Could you send an updated patch?

Regards,
--
Nicolas Goaziou
A
A
Attila Lendvai wrote on 24 Jan 2022 19:01
(name . Nicolas Goaziou)(address . mail@nicolasgoaziou.fr)(address . 53500@debbugs.gnu.org)
LrL-zPIub_6h-Gz-_JqUfGhT7if43OUPjmn0xtdTegTZ9Oenwca4SmrKmeavSrNUhKkFxxMzkjfG0D8Khca6YE6FNodXkm_Vbs3QAH6cC3c=@lendvai.name
please find the updated patch attached. it still has a few holes where i had no idea what to write...

- attila
N
N
Nicolas Goaziou wrote on 25 Jan 2022 09:21
(name . Attila Lendvai)(address . attila@lendvai.name)(address . 53500@debbugs.gnu.org)
87ilu8b4zp.fsf@nicolasgoaziou.fr
Hello,

Attila Lendvai <attila@lendvai.name> writes:

Toggle quote (3 lines)
> please find the updated patch attached. it still has a few holes where
> i had no idea what to write...

Thanks. Some more comments follow.

Toggle quote (5 lines)
> From 76c538bb3331b904790a827d7b762e057052de0c Mon Sep 17 00:00:00 2001
> From: Attila Lendvai <attila@lendvai.name>
> Date: Wed, 19 Jan 2022 09:29:13 +0100
> Subject: [PATCH 02/46] gnu: Add rust-parity-bytes 0.1.2.

In commit messages, you should mention the name of the variable you
added, not the name of the package and its version. So, the above should
be:

gnu: Add rust-parity-bytes.
Toggle quote (3 lines)
>
> * gnu/packages/crates-io.scm (rust-parity-bytes): New variable.

BTW, the name of the variable is wrong. It should be
`rust-parity-bytes-0.1'.

Toggle quote (2 lines)
> +(define-public rust-parity-bytes

See above.

Toggle quote (16 lines)
> + (package
> + (name "rust-parity-bytes")
> + (version "0.1.2")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (crate-uri "parity-bytes" version))
> + (file-name (string-append name "-" version ".tar.gz"))
> + (sha256
> + (base32 "0rww406dih6yxr4iadz7l07sibklqywxz10gjzdqn4r04hx6xd8n"))))
> + (build-system cargo-build-system)
> + (arguments `(#:skip-build? #t))
> + (home-page "https://github.com/paritytech/parity-common")
> + (synopsis "General bytes-related utilities")
> + (description synopsis)

As discussed on IRC, the construct above is to avoid. I suggest:

"This package provides general bytes-related utilities, including
a pretty-printer."

Toggle quote (2 lines)
> Subject: [PATCH 03/46] gnu: Add rust-ethereum-types 0.9.2 and 0.12.1.

See above for the remark about commit messages.
Toggle quote (35 lines)
>
> * gnu/packages/crates-io.scm (rust-ethereum-types-0.9): New variable.
> (rust-ethereum-types-0.12): New variable.
> ---
> gnu/packages/crates-io.scm | 36 ++++++++++++++++++++++++++++++++++++
> 1 file changed, 36 insertions(+)
>
> diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm
> index fb07701e16..0013ae28a2 100644
> --- a/gnu/packages/crates-io.scm
> +++ b/gnu/packages/crates-io.scm
> @@ -20081,6 +20081,42 @@ (define-public rust-escargot-0.3
> (("rust-serde" ,rust-serde-1)
> ("rust-serde-json" ,rust-serde-json-1))))))
>
> +(define-public rust-ethereum-types-0.12
> + (package
> + (name "rust-ethereum-types")
> + (version "0.12.1")
> + (source
> + (origin
> + (method url-fetch)
> + (uri (crate-uri "ethereum-types" version))
> + (file-name
> + (string-append name "-" version ".tar.gz"))
> + (sha256
> + (base32
> + "1bxxacsmb9majw7vd4sndv4dhw3g9srhf7flwq39yy7yaxq6y4q5"))))
> + (build-system cargo-build-system)
> + (arguments
> + `(#:skip-build? #t))
> + (home-page "https://github.com/paritytech/parity-common")
> + (synopsis "Crate used in Parity Technologies projects")
> + (description synopsis)

See above. I don't have anything meaningful to suggest, but the bare
minimum is

(description "This is crate an internal crate used in Parity
Technologies projects.")

BTW, should it be public?

Toggle quote (4 lines)
> Subject: [PATCH 05/46] gnu: Add rust-base64ct 1.0.1.
>
> * gnu/packages/crates-io.scm (rust-base64ct-1.0.1): New variable.

Do you need this variable? We already provide 1.1.1 version. Could
requirements be relaxed instead? See, e.g., rust-average-0.13.
Toggle quote (4 lines)
> Subject: [PATCH 09/46] gnu: Add rust-scrypt 0.5.0.
>
> * gnu/packages/crates-io.scm (rust-scrypt-0.5): New variable.

Usually, we also add:

(rust-scrypt-0.3): Inherit from above.
Toggle quote (5 lines)
> + (home-page "https://serde.rs")
> + (synopsis "AST representation used by Serde derive macros")
> + (description "AST representation used by Serde derive macros.
> Unstable.")

Please fix the description.

Toggle quote (5 lines)
> + (synopsis "Bare essentials of @code{std::io} for use in @code{no_std}")
> + (description
> + "The bare essentials of @code{std::io} for use in @code{no_std}. Alloc
> +support is optional.")

Please fix the description. This is not a full sentence.

Toggle quote (5 lines)
> From ad11a18a8c4468c9895d431962a5a76dd29894de Mon Sep 17 00:00:00 2001
> From: Attila Lendvai <attila@lendvai.name>
> Date: Wed, 19 Jan 2022 15:06:00 +0100
> Subject: [PATCH 13/46] gnu: Add rust-darling 0.13.1.

See my comment above about mentionning inheritance.

Toggle quote (6 lines)
> + (synopsis "Helper crate for @code{rust-darling}")
> + (description
> + "Internal support for @code{rust-darling}, a proc-macro library for
> +reading attributes into structs when implementing custom derives.")
> + (license license:expat)))

Please turn the description into a full sentence.
Toggle quote (2 lines)
> + (synopsis "A library for creating compact sets of enums")

Synopses should not start with an article. Please remove it.

Toggle quote (4 lines)
> + (description
> + "This package provides a rust library for creating compact sets of enums.")
> + (license (list license:expat license:asl2.0))))

rust -> Rust.

Toggle quote (2 lines)
> + (synopsis "An internal helper crate for enumset")

See above.

Toggle quote (3 lines)
> + (description "An internal helper crate for enumset. Not public
> API.")

Please turn it into full sentences.

Toggle quote (3 lines)
> + (synopsis "Macros for #[derive(JsonSchema)], for use with
> schemars")

I suggest to wrap @code{...} around #[derive...]

Toggle quote (2 lines)
> + (description synopsis)

Please write a description, even if it is:

This package provides macros for ...

Toggle quote (7 lines)
> From b42eeb02d631ce64152a8244c1b56aba51b0b66e Mon Sep 17 00:00:00 2001
> From: Attila Lendvai <attila@lendvai.name>
> Date: Wed, 19 Jan 2022 15:59:23 +0100
> Subject: [PATCH 19/46] gnu: rust-zeroize: Update to 1.5.0.
>
> Also update rust-zeroize-derive to 1.3.1.

The commit message is not formatted properly:

* gnu/packages/crates-io.scm (rust-zeroize): Update to 1.5.0.
(rust-zeroize-derive): Update to 1.3.1.
Toggle quote (4 lines)
>
> * gnu/packages/crates-io.scm (rust-zeroize-1.4): New variable.
> * gnu/packages/rust-apps.scm (rbw): Stick to the v1.4 line of rust-zeroize.

Can you relax requirements instead? Adding an intermediate crate is
a last-resort solution.

Toggle quote (2 lines)
> Also reword the description.

[description]: Reword it.


Toggle quote (3 lines)
> + (synopsis
> + "Rust wrapper library for Pieter Wuille's `libsecp256k1`. Implements ECDSA and BIP 340 signatures for the SECG elliptic curve group secp256k1 and related utilities.")

Synopsis should be shortened.

Toggle quote (5 lines)
> + (description
> + "Rust wrapper library for Pieter Wuille's `libsecp256k1`. Implements ECDSA and
> +BIP 340 signatures for the SECG elliptic curve group secp256k1 and related
> +utilities.")

Full sentences, please.

Toggle quote (4 lines)
> + (synopsis "Macros to define custom fixed-size hash types")
> + (description "Rust macros to define custom fixed-size hash types.")
> + (license (list license:expat license:asl2.0))))

See above.

I won't comment further because further remarks are of the same type.

Could you send an updated patch set?

Thank you for your work.

Regards,
--
Nicolas Goaziou
A
A
Attila Lendvai wrote on 25 Jan 2022 19:31
(name . Nicolas Goaziou)(address . mail@nicolasgoaziou.fr)(address . 53500@debbugs.gnu.org)
4Zk3VOMwRKAXz67yHbh9w9_XvLCdu-9m1UhBRU7mTc3XKBig_fgqXIrPqYh-MoEQALN-MVWJg7XU0e5N-yd_2BZrLLU7TUijm5-CSN-xFIE=@lendvai.name
i hope most issues have been dealt with in v3. please find attached.

- attila
N
N
Nicolas Goaziou wrote on 28 Jan 2022 01:15
(name . Attila Lendvai)(address . attila@lendvai.name)(address . 53500-done@debbugs.gnu.org)
87czkcyaud.fsf@nicolasgoaziou.fr
Hello,

Attila Lendvai <attila@lendvai.name> writes:

Toggle quote (2 lines)
> i hope most issues have been dealt with in v3. please find attached.

Applied, with minor fixes to descriptions. Thank you!

Regards,
--
Nicolas Goaziou
Closed
?