Subject: bug#37300: closed (Re: bug#37300: Imported packages' indentation doesn't respect Guix conventions)

From: [email-masked] (GNU bug Tracking System)
Date: Thu, 20 Jul 2023 13:24:02 +0000

Your bug report

#37300: Imported packages' indentation doesn't respect Guix conventions

which was filed against the guix package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
37300: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=37300
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: Re: bug#37300: Imported packages' indentation doesn't respect Guix conventions
From: Maxim Cournoyer <[email-masked]>
To: [email-masked]
Date: Thu, 20 Jul 2023 09:23:28 -0400
List-Id: <debbugs-submit.debbugs.gnu.org>

Hello,

Maxim Cournoyer <[email-masked]> writes:

> The package definitions imported by Guix importers do not respect Guix
> conventions regarding indentation.
>
> Consider:
>
> guix pypi import transaction
>
> (package
>   (name "python-transaction")
>   (version "2.4.0")
>   (source
>     (origin
>       (method url-fetch)
>       (uri (pypi-uri "transaction" version))
>       (sha256
>         (base32
>           "17wz1y524ca07vr03yddy8dv0gbscs06dbdywmllxv5rc725jq3j"))))
>   (build-system python-build-system)
>   (propagated-inputs
>     `(("python-zope.interface" ,python-zope.interface)))
>   (native-inputs
>     `(("python-coverage" ,python-coverage)
>       ("python-mock" ,python-mock)
>       ("python-nose" ,python-nose)))
>   (home-page
>     "https://github.com/zopefoundation/transaction")
>   (synopsis "Transaction management for Python")
>   (description "Transaction management for Python")
>   (license #f))
>
> Re-identing this in Emacs with the Guix .dir-local.el indentation
> customizations yields:
>
> (define-public python-transaction
>   (package
>     (name "python-transaction")
>     (version "2.4.0")
>     (source
>      (origin
>        (method url-fetch)
>        (uri (pypi-uri "transaction" version))
>        (sha256
>         (base32
>          "17wz1y524ca07vr03yddy8dv0gbscs06dbdywmllxv5rc725jq3j"))))
>     (build-system python-build-system)
>     (propagated-inputs
>      `(("python-zope.interface" ,python-zope.interface)))
>     (native-inputs
>      `(("python-coverage" ,python-coverage)
>        ("python-mock" ,python-mock)
>        ("python-nose" ,python-nose)))
>     (home-page
>      "https://github.com/zopefoundation/transaction")
>     (synopsis "Transaction management for Python")
>     (description "Transaction management for Python")
>     (license #f)))

That's been taken care of by applying 'guix style' to the
importer-generated definitions; it now looks like:

(define-public python-transaction
  (package
    (name "python-transaction")
    (version "3.1.0")
    (source (origin
              (method url-fetch)
              (uri (pypi-uri "transaction" version))
              (sha256
               (base32
                "191gj6pzvgw0726dsywy8pbj7shxnkc6pyrpnbiw9ryvjbmb3l35"))))
    (build-system pyproject-build-system)
    (propagated-inputs (list python-zope.interface))
    (native-inputs (list python-coverage python-mock python-nose))
    (home-page "https://github.com/zopefoundation/transaction")
    (synopsis "Transaction management for Python")
    (description "Transaction management for Python")
    (license #f)))

which is correct.

Closing.

-- 
Thanks,
Maxim

Subject: Imported packages' indentation doesn't respect Guix conventions
From: Maxim Cournoyer <[email-masked]>
To: bug-guix <[email-masked]>
Date: Wed, 04 Sep 2019 12:17:10 +0900
List-Id: <debbugs-submit.debbugs.gnu.org>

The package definitions imported by Guix importers do not respect Guix
conventions regarding indentation.

Consider:

guix pypi import transaction

(package
  (name "python-transaction")
  (version "2.4.0")
  (source
    (origin
      (method url-fetch)
      (uri (pypi-uri "transaction" version))
      (sha256
        (base32
          "17wz1y524ca07vr03yddy8dv0gbscs06dbdywmllxv5rc725jq3j"))))
  (build-system python-build-system)
  (propagated-inputs
    `(("python-zope.interface" ,python-zope.interface)))
  (native-inputs
    `(("python-coverage" ,python-coverage)
      ("python-mock" ,python-mock)
      ("python-nose" ,python-nose)))
  (home-page
    "https://github.com/zopefoundation/transaction")
  (synopsis "Transaction management for Python")
  (description "Transaction management for Python")
  (license #f))

Re-identing this in Emacs with the Guix .dir-local.el indentation
customizations yields:

(define-public python-transaction
  (package
    (name "python-transaction")
    (version "2.4.0")
    (source
     (origin
       (method url-fetch)
       (uri (pypi-uri "transaction" version))
       (sha256
        (base32
         "17wz1y524ca07vr03yddy8dv0gbscs06dbdywmllxv5rc725jq3j"))))
    (build-system python-build-system)
    (propagated-inputs
     `(("python-zope.interface" ,python-zope.interface)))
    (native-inputs
     `(("python-coverage" ,python-coverage)
       ("python-mock" ,python-mock)
       ("python-nose" ,python-nose)))
    (home-page
     "https://github.com/zopefoundation/transaction")
    (synopsis "Transaction management for Python")
    (description "Transaction management for Python")
    (license #f)))

Multiple record fields indentation offset is set to 1 instead of the
regular 2.

This is produced by the function pretty-print from ice-9. Maybe there's
a way to configure the indentation rules used by pretty-print?