From patchwork Thu May 9 22:53:56 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Nicolas Graves X-Patchwork-Id: 27304 Return-Path: X-Original-To: patchwork@mira.cbaines.net Delivered-To: patchwork@mira.cbaines.net Received: by mira.cbaines.net (Postfix, from userid 113) id E3F1F27BBEC; Thu, 9 May 2024 23:59:18 +0100 (BST) X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on mira.cbaines.net X-Spam-Level: X-Spam-Status: No, score=-2.9 required=5.0 tests=BAYES_00,MAILING_LIST_MULTI, SPF_HELO_PASS autolearn=ham autolearn_force=no version=3.4.6 Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) by mira.cbaines.net (Postfix) with ESMTPS id 8D8C427BBF1 for ; Thu, 9 May 2024 23:59:10 +0100 (BST) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1s5CiR-0007A0-88; Thu, 09 May 2024 18:58:19 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1s5CiO-00073Y-Fj for guix-patches@gnu.org; Thu, 09 May 2024 18:58:16 -0400 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1s5CiO-0006t0-4r for guix-patches@gnu.org; Thu, 09 May 2024 18:58:16 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1s5CiM-0002sn-FV for guix-patches@gnu.org; Thu, 09 May 2024 18:58:14 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#70855] [PATCH 61/92] gnu: python-pytest-enabler: Break dependency cycle. Resent-From: Nicolas Graves Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Thu, 09 May 2024 22:58:14 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 70855 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 70855@debbugs.gnu.org Cc: ngraves@ngraves.fr Received: via spool by 70855-submit@debbugs.gnu.org id=B70855.171529547110809 (code B ref 70855); Thu, 09 May 2024 22:58:14 +0000 Received: (at 70855) by debbugs.gnu.org; 9 May 2024 22:57:51 +0000 Received: from localhost ([127.0.0.1]:41252 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s5Chy-0002o6-Ii for submit@debbugs.gnu.org; Thu, 09 May 2024 18:57:51 -0400 Received: from 7.mo560.mail-out.ovh.net ([188.165.48.182]:44523) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1s5Cht-0002n7-1J for 70855@debbugs.gnu.org; Thu, 09 May 2024 18:57:46 -0400 Received: from director11.ghost.mail-out.ovh.net (unknown [10.109.176.25]) by mo560.mail-out.ovh.net (Postfix) with ESMTP id 4Vb6qF34lKz1Scn for <70855@debbugs.gnu.org>; Thu, 9 May 2024 22:57:45 +0000 (UTC) Received: from ghost-submission-6684bf9d7b-6dhzz (unknown [10.110.96.146]) by director11.ghost.mail-out.ovh.net (Postfix) with ESMTPS id 2A4C81FDF3; Thu, 9 May 2024 22:57:45 +0000 (UTC) Received: from ngraves.fr ([37.59.142.108]) by ghost-submission-6684bf9d7b-6dhzz with ESMTPSA id 5dXOB+lUPWYw9yAAXUNWsQ (envelope-from ); Thu, 09 May 2024 22:57:45 +0000 Authentication-Results: garm.ovh; auth=pass (GARM-108S0029a8701f6-3b8f-4572-a9c8-843e754ece83, E63BAB6C0A71DD4DA934779D5D345DF804807214) smtp.auth=ngraves@ngraves.fr X-OVh-ClientIp: 81.67.146.208 Date: Fri, 10 May 2024 00:53:56 +0200 Message-ID: <20240509225530.24649-61-ngraves@ngraves.fr> X-Mailer: git-send-email 2.41.0 In-Reply-To: <20240509225530.24649-1-ngraves@ngraves.fr> References: <20240509225530.24649-1-ngraves@ngraves.fr> MIME-Version: 1.0 X-Ovh-Tracer-Id: 6118421571927466722 X-VR-SPAMSTATE: OK X-VR-SPAMSCORE: 0 X-VR-SPAMCAUSE: gggruggvucftvghtrhhoucdtuddrgedvledrvdeffedgudeiucetufdoteggodetrfdotffvucfrrhhofhhilhgvmecuqfggjfdpvefjgfevmfevgfenuceurghilhhouhhtmecuhedttdenucenucfjughrpefhvfevufffkffojghfggfgsedtkeertdertddtnecuhfhrohhmpefpihgtohhlrghsucfirhgrvhgvshcuoehnghhrrghvvghssehnghhrrghvvghsrdhfrheqnecuggftrfgrthhtvghrnhepvdehleeiffehtedvlefhffffjeefgfduhfetkeevheeiteduiedugfekuedtheejnecuffhomhgrihhnpehgihhthhhusgdrtghomhenucfkphepuddvjedrtddrtddruddpkedurdeijedrudegiedrvddtkedpfeejrdehledrudegvddruddtkeenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpeduvdejrddtrddtrddupdhmrghilhhfrhhomhepnhhgrhgrvhgvshesnhhgrhgrvhgvshdrfhhrpdhnsggprhgtphhtthhopedupdhrtghpthhtohepjedtkeehheesuggvsggsuhhgshdrghhnuhdrohhrghdpoffvtefjohhsthepmhhoheeitddpmhhouggvpehsmhhtphhouhht X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Nicolas Graves X-ACL-Warn: , Nicolas Graves via Guix-patches X-Patchwork-Original-From: Nicolas Graves via Guix-patches via From: Nicolas Graves Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org X-getmail-retrieved-from-mailbox: Patches * gnu/packages/check.scm (python-pytest-enabler-bootstrap): Delete variable. (python-pytest-enabler): Redefine variable. * gnu/packages/python-xyz.scm (python-jaraco-classes)[native-inputs]: Remove python-pytest-enabler-bootstrap. (python-jaraco-context-bootstrap): Delete variable. (python-jaraco-context): Redefine variable. (python-jaraco-functools-bootstrap): Delete variable. (python-jaraco-functools): Redefine variable. Change-Id: I96649093009beb7a3d0e9716eced778d4fc800e2 --- gnu/packages/check.scm | 80 +++++++------------- gnu/packages/python-xyz.scm | 142 +++++++++++++++--------------------- 2 files changed, 85 insertions(+), 137 deletions(-) diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 1d0be03d406..880d3cb46f3 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -2474,60 +2474,36 @@ (define-public python-lit failures.") (license license:ncsa))) -;;; This is marked as a bootstrap package because it propagates bootstrapped -;;; versions of jaraco-context and jaraco-functools. -(define-public python-pytest-enabler-bootstrap - (hidden-package - (package - (name "python-pytest-enabler-bootstrap") - (version "1.2.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "pytest-enabler" version)) - (sha256 - (base32 "023ymm0r2gpn5q7aikvx567s507j0zk46w41w6gxb69c688zgs73")))) - (build-system python-build-system) - (arguments (list #:tests? #f)) - (propagated-inputs - (list python-jaraco-context-bootstrap - python-jaraco-functools-bootstrap - python-toml)) - (native-inputs (list python-setuptools-scm)) - (home-page "https://github.com/jaraco/pytest-enabler") - (synopsis "Enable installed pytest plugins") - (description "Enable installed pytest plugins") - (license license:expat)))) - (define-public python-pytest-enabler - (package/inherit python-pytest-enabler-bootstrap - (arguments - (substitute-keyword-arguments - (strip-keyword-arguments - '(#:tests?) - (package-arguments python-pytest-enabler-bootstrap)) - ((#:phases phases #~%standard-phases) - #~(modify-phases #$phases - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (when tests? - (invoke "python" "-m" "pytest" "-vv" "tests")))))))) + (package + (name "python-pytest-enabler") + (version "1.2.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pytest-enabler" version)) + (sha256 + (base32 "023ymm0r2gpn5q7aikvx567s507j0zk46w41w6gxb69c688zgs73")))) + (build-system pyproject-build-system) + (arguments (list #:tests? #f + #:test-flags '(list "tests"))) (propagated-inputs - (modify-inputs (package-propagated-inputs python-pytest-enabler-bootstrap) - (replace "python-jaraco-context-bootstrap" python-jaraco-context) - (replace "python-jaraco-functools-bootstrap" python-jaraco-functools))) - (native-inputs - (modify-inputs (package-native-inputs python-pytest-enabler-bootstrap) - (append python-pytest - python-pytest-black - python-pytest-checkdocs - python-pytest-cov - python-pytest-flake8 - python-pytest-mypy - python-types-toml))) - (properties (alist-delete 'hidden? - (package-properties - python-pytest-enabler-bootstrap))))) + (list python-jaraco-context + python-jaraco-functools + python-toml)) + (native-inputs (list python-pytest + python-pytest-black + python-pytest-checkdocs + python-pytest-cov + python-pytest-flake8 + python-pytest-mypy + python-setuptools + python-setuptools-scm + python-types-toml)) + (home-page "https://github.com/jaraco/pytest-enabler") + (synopsis "Enable installed pytest plugins") + (description "Enable installed pytest plugins") + (license license:expat))) (define-public python-pytest-freezegun (package diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 0c88e48870c..42bde34a486 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -11724,7 +11724,6 @@ (define-public python-jaraco-classes python-pytest-black python-pytest-checkdocs python-pytest-cov - python-pytest-enabler-bootstrap ;OK since not propagated python-pytest-flake8 python-pytest-mypy python-setuptools-scm @@ -11799,99 +11798,72 @@ (define-public python-jaraco-collections @end itemize") (license license:expat))) -;;; Variant used to break a cycle with python-pytest-enabler. -(define-public python-jaraco-context-bootstrap - (hidden-package - (package - (name "python-jaraco-context-bootstrap") - (version "4.1.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "jaraco.context" version)) - (sha256 - (base32 "0hbjm1rpxf4pzmbdp9rh3ali4zqnlcr8m97bhh1nizxvzcpxim7h")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) - (native-inputs (list python-setuptools-scm)) - (home-page "https://github.com/jaraco/jaraco.context") - (synopsis "Context managers Python library") - (description "This Python library provides context managers-related -procedures.") - (license license:expat)))) - (define-public python-jaraco-context - (package/inherit python-jaraco-context-bootstrap + (package (name "python-jaraco-context") + (version "4.1.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "jaraco.context" version)) + (sha256 + (base32 "0hbjm1rpxf4pzmbdp9rh3ali4zqnlcr8m97bhh1nizxvzcpxim7h")))) + (build-system pyproject-build-system) (arguments - (substitute-keyword-arguments - (package-arguments python-jaraco-context-bootstrap) - ((#:tests? _ #f) - (not (%current-target-system))) - ;; Do not test the myproject.toml build as it pulls dependencies. - ((#:test-flags test-flags '()) - '(list "-k" "not project")))) + (list #:tests? (not (%current-target-system)) + ;; Do not test the myproject.toml build as it pulls dependencies. + #:test-flags '(list "-k" "not project"))) (native-inputs - (modify-inputs - (package-native-inputs python-jaraco-context-bootstrap) - (append python-pytest - python-pytest-black - python-pytest-checkdocs - python-pytest-cov - python-pytest-enabler-bootstrap ;OK since not propagated - python-pytest-flake8 - python-pytest-mypy))) - (properties (alist-delete 'hidden? (package-properties - python-jaraco-context-bootstrap))))) - -;;; Variant used to break a cycle with python-pytest-enabler. -(define-public python-jaraco-functools-bootstrap - (hidden-package - (package - (name "python-jaraco-functools-bootstrap") - (version "3.5.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "jaraco.functools" version)) - (sha256 - (base32 "186xqzs3bqhjwajnprxy3sc3h0w5vdld8spc1dxjnn9720yykq1i")))) - (build-system pyproject-build-system) - (arguments (list #:tests? #f)) - (native-inputs (list python-setuptools-scm)) - (propagated-inputs (list python-more-itertools)) - (home-page "https://github.com/jaraco/jaraco.functools") - (synopsis "Python library extending Python's @code{functools}") - (description "This library extends the standard @code{functools} Python -module with a few extra procedures.") - (license license:expat)))) + (list python-pytest + python-pytest-black + python-pytest-checkdocs + python-pytest-cov + python-pytest-flake8 + python-pytest-mypy + python-setuptools + python-setuptools-scm + python-wheel)) + (home-page "https://github.com/jaraco/jaraco.context") + (synopsis "Context managers Python library") + (description "This Python library provides context managers-related +procedures.") + (license license:expat))) (define-public python-jaraco-functools - (package/inherit python-jaraco-functools-bootstrap + (package (name "python-jaraco-functools") + (version "3.5.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "jaraco.functools" version)) + (sha256 + (base32 "186xqzs3bqhjwajnprxy3sc3h0w5vdld8spc1dxjnn9720yykq1i")))) + (build-system pyproject-build-system) (arguments - (substitute-keyword-arguments - (package-arguments python-jaraco-functools-bootstrap) - ((#:tests? _ #f) - (not (%current-target-system))) - ;; Do not test the myproject.toml build as it pulls dependencies. - ;; Do not run a test that tries to emulate a broken proprietary CI - ;; set-up, fails to do so correctly, and then throws an error. - ((#:test-flags test-flags '()) - '(list "-k" "not project and not test_function_throttled")))) + (list #:tests? (not (%current-target-system)) + ;; Do not test the myproject.toml build as it pulls dependencies. + ;; Do not run a test that tries to emulate a broken proprietary + ;; CI set-up, fails to do so correctly, and then throws an error. + #:test-flags + '(list "-k" "not project and not test_function_throttled"))) (native-inputs - (modify-inputs - (package-native-inputs python-jaraco-functools-bootstrap) - (append python-jaraco-classes - python-pytest - python-pytest-black - python-pytest-checkdocs - python-pytest-cov - python-pytest-enabler-bootstrap ;OK since not propagated - python-pytest-flake8 - python-pytest-mypy))) - (properties (alist-delete 'hidden? (package-properties - python-jaraco-functools-bootstrap))))) + (list python-jaraco-classes + python-pytest + python-pytest-black + python-pytest-checkdocs + python-pytest-cov + python-pytest-flake8 + python-pytest-mypy + python-setuptools + python-setuptools-scm + python-wheel)) + (propagated-inputs (list python-more-itertools)) + (home-page "https://github.com/jaraco/jaraco.functools") + (synopsis "Python library extending Python's @code{functools}") + (description "This library extends the standard @code{functools} Python +module with a few extra procedures.") + (license license:expat))) (define-public python-jaraco-packaging (package