From patchwork Sun Aug 28 13:15:34 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Patchwork-Submitter: Hartmut Goebel X-Patchwork-Id: 922 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 C2EC227BBEA; Sun, 28 Aug 2022 14:16:13 +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,URIBL_BLOCKED autolearn=unavailable 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 3E9BC27BBE9 for ; Sun, 28 Aug 2022 14:16:13 +0100 (BST) Received: from localhost ([::1]:58134 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1oSI96-0001yO-Cf for patchwork@mira.cbaines.net; Sun, 28 Aug 2022 09:16:12 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:41034) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oSI8w-0001xA-My for guix-patches@gnu.org; Sun, 28 Aug 2022 09:16:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:39770) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1oSI8w-0002CS-A0 for guix-patches@gnu.org; Sun, 28 Aug 2022 09:16:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1oSI8w-0006nD-5K for guix-patches@gnu.org; Sun, 28 Aug 2022 09:16:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#57460] [PATCH 00/19] Refresh to specific version Resent-From: Hartmut Goebel Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 28 Aug 2022 13:16:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: report 57460 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: 57460@debbugs.gnu.org X-Debbugs-Original-To: guix-patches@gnu.org Received: via spool by submit@debbugs.gnu.org id=B.166169254926086 (code B ref -1); Sun, 28 Aug 2022 13:16:02 +0000 Received: (at submit) by debbugs.gnu.org; 28 Aug 2022 13:15:49 +0000 Received: from localhost ([127.0.0.1]:57752 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oSI8i-0006mg-Hm for submit@debbugs.gnu.org; Sun, 28 Aug 2022 09:15:48 -0400 Received: from lists.gnu.org ([209.51.188.17]:55928) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1oSI8h-0006mY-HZ for submit@debbugs.gnu.org; Sun, 28 Aug 2022 09:15:48 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:43716) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oSI8e-0001qv-Kr for guix-patches@gnu.org; Sun, 28 Aug 2022 09:15:47 -0400 Received: from mout.kundenserver.de ([212.227.126.131]:52093) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1oSI8c-0002AK-6A for guix-patches@gnu.org; Sun, 28 Aug 2022 09:15:44 -0400 Received: from hermia.goebel-consult.de ([46.87.137.46]) by mrelayeu.kundenserver.de (mreue010 [212.227.15.167]) with ESMTPSA (Nemesis) id 1MdNoW-1p1cxE0tZg-00ZQdr for ; Sun, 28 Aug 2022 15:15:36 +0200 Received: from lenashee.fritz.box (lenashee.goebel-consult.de [192.168.110.2]) by hermia.goebel-consult.de (Postfix) with ESMTP id CB50A5F52C; Sun, 28 Aug 2022 15:15:42 +0200 (CEST) From: Hartmut Goebel Date: Sun, 28 Aug 2022 15:15:34 +0200 Message-Id: X-Mailer: git-send-email 2.30.4 MIME-Version: 1.0 X-Provags-ID: V03:K1:9Pp+eWylVAQ0+ZcF6Bi9xAbyCaJ4CKyk7zhZWYz8auwanFx3EB8 XstViSEJnXUNJXmL7a8O2EH4R4gM2HfjMSTte8kuEhX2eT146LPPDVykqALseZMa3bQ7BC+ tibxgSNT9jA3VnEhVfKDUJ549Lm/+4OYUaR0yvY/sO3U1Je9/UMQSBi49LCo1BjCTc+Lkrs oVh6MVeG6Hi7mSHkWlaVA== X-UI-Out-Filterresults: notjunk:1;V03:K0:YbClcUNAFdY=:5nWZ8NVyt2q8p0JdwoGgta NmkXoODR8i3wI0MW5PIBpMjq7upaIMbyUgqVcgCXFJtKX9RLJpAiBDWJHE0oYywDkhq2gQ5m9 7CiNjEaWkIF/QUWrqEU7AxcIo0z/H7Pm3j5faA6g+Tf9Piv1xmF53B1SnuHlKQPwpKBZotKcy RULZ2gy9UsbBE8oGTYXnVLWWEFZLh9ovGb7wj1J/VFbeOPZZ1BvYbleu6KjkHwhsoX88PvY4P o3439ChyYAG36aN80/ohJWY83W4rMlxLsfBuZffRpS14bLY+rU+NYsXqHNqdTa2ZDaEAZXBv0 kM+YqGdxe6Wsyb7acqctTZDDGTl4zvmY3gOUnerLsGoIe4jqQfhSyvT+tBF7jqX1C0R4O6kdZ 8X+ICtWOjl/jFpsJ7FRjF7T7p0LG2wfWwgUPXb/5DmPPOv32kcmeQwO9aRMVaayVxRYHEXxXH kpnI5wjz2sWynacdzRqmKZnvwUFy+YBdCNJUcI3oyiU4BsgJ3NABHW3awVwUuO8agFzmU5u4P ws/gwASymj3a9Izw7mJDv/3aj8uruBTmAgwWsm8KdysvuFtATfQ9SN2QInHgEgf/OQRcH1Y1K 1sGBIoeIHbpR2MliKQG2SctrYN5wxQkkpRsRGyncaShdCaajZZEqsFtqMTfkVFOm8KmIvFMdo FpvlbykFJw6fC1+sqAkX3QL7eJS8t43hNgL/btqyhG+j5LSs5ntZNd8Rn92Maho6OG4R+a4jN NIvwVIJahwCt1liNrKRnRYI4DKWl/I904aNMGetHYNVBkKadw66M8mgBaGI= Received-SPF: none client-ip=212.227.126.131; envelope-from=h.goebel@crazy-compilers.com; helo=mout.kundenserver.de X-Spam_score_int: -18 X-Spam_score: -1.9 X-Spam_bar: - X-Spam_report: (-1.9 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action 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: , Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" X-getmail-retrieved-from-mailbox: Patches This series now implements refreshing packages to a specific version, see . +@example +$ guix refresh trytond-party … trytond-party would be upgraded from 6.2.0 to 6.4.0 +$ guix refresh -u trytond-party@6.2.1 … … trytond-party: updating from version 6.2.0 to version 6.2.1... … +@end example The „main“ part of thhis series does the following: * All updaters get a new keyword-argument "version" * Updaters supporting updating to a specific version - will pass the version on to call functions and try to update to the specific version. - "latest-XX-release" functions have been renamed into "import-XX-release" to mirror the change * Updaters not supporting updating to a specific version - will issue an error message if a version is given. - "latest-XX-release" functions keep the name My plan is to squash the „main” patches into a single one after review (and extend the commit-message from this post). WDYT? For testing the change, please run "sh test-import-with-version.sh", which will update one package for each importer/updater and report about those not supporting updating to a specific version. Hartmut Goebel (20): upstream-updater: Rename record field. import: cpan: Remove unused exports. updaters: Issue error-message if version is given: import: sourceforge: Issue error-message if version is given. refresh: Allow updating to a specific version (gnu-maintenance) refresh: Allow updating to a specific version (crate) refresh: Allow updating to a specific version (egg) refresh: Allow updating to a specific version (git) refresh: Allow updating to a specific version (github) refresh: Allow updating to a specific version (gnome) refresh: Allow updating to a specific version (hexpm) refresh: Allow updating to a specific version (kde) refresh: Allow updating to a specific version (launchpad) refresh: Allow updating to a specific version (pypi) refresh: Allow updating to a specific version (script) refresh: Allow updating to a specific version (upstream) refresh: Allow updating to a specific version (documentation) These patches will not go into master. Their sole purpose is to carry the code required to test this patch. TEMP REMOVE import: git: Restrict to non-github origins. TEMP REMOVE upstream: Output names of importers tried. TEMP REMOVE Add test-script for refesh-with-version doc/guix.texi | 13 +++ guix/gnu-maintenance.scm | 152 ++++++++++++++++++++++-------------- guix/import/cpan.scm | 32 +++----- guix/import/cran.scm | 23 ++++-- guix/import/crate.scm | 7 +- guix/import/egg.scm | 7 +- guix/import/elpa.scm | 11 ++- guix/import/gem.scm | 12 ++- guix/import/git.scm | 33 +++++--- guix/import/github.scm | 29 ++++--- guix/import/gnome.scm | 47 +++++++---- guix/import/gnu.scm | 2 +- guix/import/hackage.scm | 12 ++- guix/import/hexpm.scm | 6 +- guix/import/kde.scm | 58 ++++++++------ guix/import/launchpad.scm | 7 +- guix/import/minetest.scm | 12 ++- guix/import/opam.scm | 11 ++- guix/import/pypi.scm | 11 +-- guix/import/stackage.scm | 10 ++- guix/scripts/refresh.scm | 40 +++++++--- guix/upstream.scm | 26 +++--- test-import-with-version.sh | 98 +++++++++++++++++++++++ tests/import-github.scm | 2 +- tests/transformations.scm | 8 +- 25 files changed, 465 insertions(+), 204 deletions(-) create mode 100644 test-import-with-version.sh base-commit: 84d191ea30eb7d97ee3f4d62f39c811ba77bb187