Subject: [bug#55637] [PATCH] gnu: Add python-canopen.

From: Christopher Baines <[email-masked]>
Date: Fri, 27 May 2022 10:22:08 +0100

[email-masked] writes:

> From: Peter Polidoro <[email-masked]>
>
> * gnu/packages/python-xyz.scm (python-canopen): New variable.
> ---
>  gnu/packages/python-xyz.scm | 21 +++++++++++++++++++++
>  1 file changed, 21 insertions(+)
>
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
> index 6ca759e2e2..35a2009f69 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -31743,3 +31743,24 @@ (define-public python-preshed
>       "Simple but high performance Cython hash table mapping pre-randomized keys
>  to void* values.")
>      (license license:expat)))
> +
> +(define-public python-canopen
> +  (package
> +    (name "python-canopen")
> +    (version "2.0.0")
> +    (source
> +     (origin
> +       (method url-fetch)
> +       (uri (pypi-uri "canopen" version))
> +       (sha256
> +        (base32 "1nb543wb37kj95v6bhh272lm5gkpi41q3pnsl1fxlyizm2gamj5w"))))
> +    (build-system python-build-system)
> +    (native-inputs (list python-packaging))
> +    (propagated-inputs (list python-can))
> +    (home-page "")
> +    (synopsis "CANopen stack implementation")
> +    (description "A Python implementation of the CANopen standard. The aim of
> +the project is to support the most common parts of the CiA 301 standard in a
> +simple Pythonic interface. It is mainly targeted for testing and automation
> +tasks rather than a standard compliant master implementation.")
> +    (license license:expat)))

The linter picks up a couple of issues:

gnu/packages/python-xyz.scm:31761:17: [email-masked]: sentences in description should be followed by two spaces; possible infractions at 47, 162
gnu/packages/python-xyz.scm:31759:15: [email-masked]: invalid home page URL: ""

Plus, I'd avoid adding packages to the end of modules. If everyone does
this, it means lots of git conflicts. Instead, try and slot the new
package definition in somewhere close to related packages, or
alphabetically, or randomly even if neither of those approaches apply.