Subject: Re: [PATCH] Updated python-flake8 and inputs to reenable build.

From: Liliana Marie Prikler <[email-masked]>
Date: Mon, 06 Jun 2022 08:13:43 +0200

Am Sonntag, dem 05.06.2022 um 21:43 -0400 schrieb Christopher
Rodriguez:
> It builds in my local tree, and had been linted/styled/tested/etc.
Did you also check that all the packages referring to it build?  The
upgrade to python-pyflakes ignored this important check as well as the
call not to update packages with more than 300 dependents on master.

>  gnu/packages/python-xyz.scm | 54 ++++++++++++++++++-----------------
> --
>  1 file changed, 26 insertions(+), 28 deletions(-)
> 
> diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-
> xyz.scm
> index 0dfc6ca7e0..77f2c88235 100644
> --- a/gnu/packages/python-xyz.scm
> +++ b/gnu/packages/python-xyz.scm
> @@ -6443,23 +6443,21 @@ (define-public python-socksipychain
>  (define-public python-pycodestyle
>    (package
>      (name "python-pycodestyle")
> -    (version "2.7.0")
> -    (source
> -     (origin
> -       (method url-fetch)
> -       (uri (pypi-uri "pycodestyle" version))
> -       (sha256
> -        (base32
> -         "1vqwmzmjdv331kmfq3q9j3as2x7r2r49lf83r9w4147pdg8c32f3"))))
> +    (version "2.8.0")
> +    (source (origin
> +              (method url-fetch)
> +              (uri (pypi-uri "pycodestyle" version))
> +              (sha256
> +               (base32
> +               
> "0zxyrg8029lzjhima6l5nk6y0z6lm5wfp9qchz3s33j3xx3mipgd"))))
Factor out into a single patch.

>      (build-system python-build-system)
>      (arguments
> -     `(#:phases
> -       (modify-phases %standard-phases
> -         (replace 'check
> -           (lambda _
> -             (invoke "pytest" "-vv"))))))
> +     `(#:phases (modify-phases %standard-phases
> +                  (replace 'check
> +                    (lambda (#:keys input output tests? #:allow-
> other-keys)
> +                      (if tests?
> +                          (invoke "pytest" "-vv")))))))
IIUC this is fixing an already existing problem; thus factor out into
its own patch.

> -    (native-inputs
> -     (list python-pytest)) 
> +    (native-inputs (list python-pytest))
I'd recommend not mixing updates and semantic fixes with style fixes.

>      (home-page "https://pycodestyle.readthedocs.io/")
>      (synopsis "Python style guide checker")
>      (description "@code{pycodestyle} (formerly pep8) is a tool to
> check
> @@ -10143,18 +10141,17 @@ (define-public python-pyflakes
>    (package
>      (name "python-pyflakes")
>      (version "2.4.0")
> -    (source
> -      (origin
> -        (method url-fetch)
> -        (uri (pypi-uri "pyflakes" version))
> -        (sha256
> -         (base32
> -          "0k5jn8jpxni264wxf6cc3xcd1qckc0pww30bsd77mwzdf8l5ra05"))))
> +    (source (origin
> +              (method url-fetch)
> +              (uri (pypi-uri "pyflakes" version))
> +              (sha256
> +               (base32
> +               
> "0k5jn8jpxni264wxf6cc3xcd1qckc0pww30bsd77mwzdf8l5ra05"))))
>      (build-system python-build-system)
>      (home-page "https://github.com/PyCQA/pyflakes")
>      (synopsis "Passive checker of Python programs")
>      (description
> -      "Pyflakes statically checks Python source code for common
> errors.")
> +     "Pyflakes statically checks Python source code for common
> errors.")
>      (license license:expat)))
Nothing to do here.

>  (define-public python-pyflakes-2.2
> @@ -10193,20 +10190,21 @@ (define-public python-mccabe
>  (define-public python-flake8
>    (package
>      (name "python-flake8")
> -    (version "3.9.2")
> +    (version "4.0.1")
Note that 4.0.1 is a semver break from 3.9 – also, we still supply 3.8.
Thus, you might want to keep python-flake8-3.9 as a variant.

>      (source (origin
>                (method url-fetch)
>                (uri (pypi-uri "flake8" version))
>                (sha256
>                 (base32
> -               
> "0sspgh2ph7bb5fmf49mrdhi7n5m421kfkxk1n0vn4akgg20q6lh7"))))
> +               
> "03c7mnk34wfz7a0m5zq0273y94awz69fy5iww8alh4a4v96h6vl0"))))
>      (build-system python-build-system)
>      (arguments
>       `(#:phases (modify-phases %standard-phases
>                    (replace 'check
> -                    (lambda* (#:key inputs outputs #:allow-other-
> keys)
> -                      (add-installed-pythonpath inputs outputs)
> -                      (invoke "pytest" "-v"))))))
> +                    (lambda* (#:key inputs outputs tests? #:allow-
> other-keys)
> +                      (if tests?
> +                          (add-installed-pythonpath inputs outputs)
> +                          (invoke "pytest" "-v")))))))
Again, should be its own patch.

Cheers