From: Garek Dyszel via Guix-patches via <guix-patches@gnu.org>
To: 58310@debbugs.gnu.org
Subject: [bug#58310] [PATCH 05/14] gnu: Add python-hatch.
Date: Wed, 05 Oct 2022 13:46:04 -0400 [thread overview]
Message-ID: <878rluqi3n.fsf@disroot.org> (raw)
In-Reply-To: <87h70iqji2.fsf@disroot.org>
diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm
index f90d23874f..0b8d8a7647 100644
--- a/gnu/packages/python-build.scm
+++ b/gnu/packages/python-build.scm
@@ -579,3 +579,64 @@ (define-public python-hatchling-bootstrap
(synopsis "Bootstrap binaries to build @code{python-hatch}")
(description "Bootstrap binaries to build @code{python-hatch}")
(license license:expat)))
+
+(define-public python-hatch
+ (package
+ (name "python-hatch")
+ (version "1.10.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/pypa/hatch")
+ (commit (string-append "hatch-v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "030yi9hw50mn899pq073lw2a55r57skl2g9agjp3b4l95f3nay30"))))
+ (inputs (list python-pypa-build
+ python-editables
+ python-importlib-metadata
+ python-version
+ python-packaging-next
+ python-pathspec
+ python-pluggy-1.0 ;TODO: Not detected by pytest?
+ python-hatchling-bootstrap
+ python-tomli
+ python-platformdirs
+ python-rich
+ python-tomli-w))
+ (build-system python-build-system)
+ (arguments
+ `( ;Tests appear to be written such that the input python-pluggy-1.0 is
+ ;; not detected.
+ #:tests? #f
+ #:phases (modify-phases %standard-phases
+ (replace 'build
+ (lambda _
+ ;; ZIP does not support timestamps before 1980.
+ (setenv "SOURCE_DATE_EPOCH" "315532800")
+ (invoke "hatchling" "build")))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((whl (car (find-files "dist" "\\.whl$"))))
+ (invoke "pip"
+ "--no-cache-dir"
+ "--no-input"
+ "install"
+ "--no-deps"
+ "--prefix"
+ (assoc-ref %outputs "out")
+ whl))))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (chdir "tests")
+ (invoke "pytest" "-vv"))))
+ ;; Can't have hatch as a requirement of itself.
+ (delete 'sanity-check))))
+ (home-page "https://ofek.dev/projects/hatch/")
+ (synopsis "Python build system with project generation")
+ (description
+ "Python build system with project generation. It also defines a specific
+syntax in @code{toml} files to check for dependencies.")
+ (license license:expat)))
--
2.37.3
next prev parent reply other threads:[~2022-10-05 17:50 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-10-05 17:15 [bug#58310] [PATCH] Add coq-mathcomp-analysis Garek Dyszel via Guix-patches via
2022-10-05 17:40 ` [bug#58310] [PATCH 01/14] gnu: Add python-pprintpp Garek Dyszel via Guix-patches via
2022-10-05 17:41 ` [bug#58310] [PATCH 02/14] gnu: Add python-pluggy-1.0.* gnu/packages/python-xyz.scm (python-pluggy-1.0): New variable Garek Dyszel via Guix-patches via
2022-10-05 17:41 ` [bug#58310] [PATCH 03/14] gnu: Add python-setuptools-scm-7.* gnu/packages/python-build.scm (python-setuptools-scm-7): " Garek Dyszel via Guix-patches via
2022-11-02 17:08 ` [bug#58310] [PATCH 03/14] gnu: Add python-setuptools-scm-7 zimoun
2022-11-03 9:22 ` Lars-Dominik Braun
2022-11-03 11:14 ` zimoun
2022-11-03 11:57 ` Lars-Dominik Braun
2022-11-03 18:34 ` zimoun
2022-11-04 0:44 ` Lars-Dominik Braun
2022-10-05 17:41 ` [bug#58310] [PATCH 04/14] gnu: Add python-hatchling-bootstrap Garek Dyszel via Guix-patches via
2022-11-02 17:11 ` zimoun
2022-11-03 9:26 ` Lars-Dominik Braun
2022-11-03 11:18 ` zimoun
2022-11-03 11:59 ` Lars-Dominik Braun
2022-11-04 15:15 ` Garek Dyszel via Guix-patches via
2022-10-05 17:46 ` Garek Dyszel via Guix-patches via [this message]
2022-10-05 17:46 ` [bug#58310] [PATCH 06/14] gnu: Add python-hatch-vcs Garek Dyszel via Guix-patches via
2022-10-05 17:46 ` [bug#58310] [PATCH 07/14] gnu: Add python-pytest-icdiff Garek Dyszel via Guix-patches via
2022-10-05 17:46 ` [bug#58310] [PATCH 08/14] gnu: Add python-hatch-fancy-pypi-readme Garek Dyszel via Guix-patches via
2022-10-05 17:47 ` [bug#58310] [PATCH 09/14] gnu: python-jsonschema-next: Update to 4.16.0 Garek Dyszel via Guix-patches via
2022-10-05 17:47 ` [bug#58310] [PATCH 10/14] gnu: Add ocaml-atd Garek Dyszel via Guix-patches via
2022-10-05 17:51 ` [bug#58310] [PATCH 11/14] gnu: Add ocaml-elpi Garek Dyszel via Guix-patches via
2022-10-05 17:51 ` [bug#58310] [PATCH 12/14] gnu: Add coq-elpi Garek Dyszel via Guix-patches via
2022-10-05 17:51 ` [bug#58310] [PATCH 13/14] gnu: Add coq-mathcomp-hierarchy-builder Garek Dyszel via Guix-patches via
2022-10-05 17:51 ` [bug#58310] [PATCH 14/14] gnu: Add coq-mathcomp-analysis Garek Dyszel via Guix-patches via
2022-10-18 15:42 ` [bug#58310] Temporary manifest for coq-mathcomp-analysis Garek Dyszel via Guix-patches via
[not found] ` <handler.58310.B.166499048624567.ack@debbugs.gnu.org>
2022-11-12 23:48 ` [bug#58310] Manifest " Garek Dyszel via Guix-patches via
2022-11-13 9:17 ` Julien Lepiller
2022-11-13 10:53 ` Julien Lepiller
2022-11-13 18:54 ` Garek Dyszel via Guix-patches via
2022-11-13 19:40 ` Julien Lepiller
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=878rluqi3n.fsf@disroot.org \
--to=guix-patches@gnu.org \
--cc=58310@debbugs.gnu.org \
--cc=garekdyszel@disroot.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.