Message ID | cover.1661691694.git.h.goebel@crazy-compilers.com |
---|---|
Headers |
Return-Path: <guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org> 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 <patchwork@mira.cbaines.net>; 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 <guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org>) 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 <Debian-debbugs@debbugs.gnu.org>) 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 <Debian-debbugs@debbugs.gnu.org>) 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 <Debian-debbugs@debbugs.gnu.org>) 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 <h.goebel@crazy-compilers.com> Original-Sender: "Debbugs-submit" <debbugs-submit-bounces@debbugs.gnu.org> Resent-CC: guix-patches@gnu.org Resent-Date: Sun, 28 Aug 2022 13:16:02 +0000 Resent-Message-ID: <handler.57460.B.166169254926086@debbugs.gnu.org> 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 <debbugs-submit-bounces@debbugs.gnu.org>) 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 <h.goebel@crazy-compilers.com>) 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 <h.goebel@crazy-compilers.com>) 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 <h.goebel@crazy-compilers.com>) 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 <guix-patches@gnu.org>; 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 <h.goebel@crazy-compilers.com> Date: Sun, 28 Aug 2022 15:15:34 +0200 Message-Id: <cover.1661691694.git.h.goebel@crazy-compilers.com> X-Mailer: git-send-email 2.30.4 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 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: <guix-patches.gnu.org> List-Unsubscribe: <https://lists.gnu.org/mailman/options/guix-patches>, <mailto:guix-patches-request@gnu.org?subject=unsubscribe> List-Archive: <https://lists.gnu.org/archive/html/guix-patches> List-Post: <mailto:guix-patches@gnu.org> List-Help: <mailto:guix-patches-request@gnu.org?subject=help> List-Subscribe: <https://lists.gnu.org/mailman/listinfo/guix-patches>, <mailto:guix-patches-request@gnu.org?subject=subscribe> Errors-To: guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org Sender: "Guix-patches" <guix-patches-bounces+patchwork=mira.cbaines.net@gnu.org> X-getmail-retrieved-from-mailbox: Patches |
Series |
Refresh to specific version
|
|
Message
Hartmut Goebel
Aug. 28, 2022, 1:15 p.m. UTC
This series now implements refreshing packages to a specific version, see <https://lists.gnu.org/archive/html/guix-devel/2022-07/msg00061.html>. +@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
Comments
On 28-08-2022 15:15, Hartmut Goebel wrote: > This series now implements refreshing packages to a specific version, > see <https://lists.gnu.org/archive/html/guix-devel/2022-07/msg00061.html>. I have looked at the patches and they all seem reasonable to me (although not verified locally) -- only two nitpicks but they don't affect the semantics at all. Greetings, Maxime.
Hi! Maxime Devos <maximedevos@telenet.be> skribis: > On 28-08-2022 15:15, Hartmut Goebel wrote: > >> This series now implements refreshing packages to a specific version, >> see <https://lists.gnu.org/archive/html/guix-devel/2022-07/msg00061.html>. > > I have looked at the patches and they all seem reasonable to me > (although not verified locally) -- only two nitpicks but they don't > affect the semantics at all. I had some further comments as you saw, but most of them are cosmetic. :-) I think this patch series is a much welcome improvement, and it’s almost ready. The one thing that needs to be sorted out is the version syntax in ‘guix refresh’, but it sounds like we should be able to do that without too much difficulty. Apologies for the delay in reviewing, and thanks for this work! Ludo’.
Am 24.09.22 um 11:48 schrieb Ludovic Courtès: > The one thing that needs to be sorted out is the version syntax in ‘guix > refresh’, but it sounds like we should be able to do that without too > much difficulty. I addresses this and just submitted an updated version (of this change only). Although I'd prefer '==' two equal-signs instead of just one to be future-proof for the case we want to add other specifiers ('<', '<=', '>=', >') > Apologies for the delay in reviewing, and thanks for this work! Never mind, I was busy anyway ;-)
Hi Ludo, I now at last found time for updating the patch series. Following is the complete series as I would push it. > In Guix, “package spec” refers to the syntax that > ‘specification->package’ accepts, like “guile” or “guile@2.2”. So we’ll > have to use another name throughout. How about “update spec” or > “refresh spec” for the string, and just “update” for the record? Using "update" resulted in a conflict with the existing "update-package" function. Using "refesh" would have names the accessor "refresh-package", which sounds irritating for me (same for "update". Thus I decided to call the record "update-spec" and the function "update-string->update.spec" (the name is use only once). WDYT? > Since there are just two fields, it may be simpler to use SRFI-9: Done. I also tested the patches with (an updated version of) the test-script I posted in the first version of the series. Hartmut Goebel (18): upstream-updater: Rename record field. import: cpan: Remove unused exports. import: Issue error-message if version is given. import: sourceforge: Issue error-message if version is given. gnu-maintenance: Allow updating to a specific version. import: crate: Allow updating to a specific version. import: egg: Allow updating to a specific version. import: gem: Allow updating to a specific version. import: git: Allow updating to a specific version. import: github: Allow updating to a specific version. import: gnome: Allow updating to a specific version. import: hexpm: Allow updating to a specific version. import: kde: Allow updating to a specific version. import: launchpad: Allow updating to a specific version. import: pypi: Allow updating to a specific version. refresh: Allow updating to a specific version. upstream: Allow updating to a specific version. doc: Describe how to update to a specific version. doc/guix.texi | 19 ++++ guix/gnu-maintenance.scm | 183 ++++++++++++++++++++++++-------------- guix/import/cpan.scm | 32 +++---- guix/import/cran.scm | 23 +++-- guix/import/crate.scm | 10 ++- guix/import/egg.scm | 10 ++- guix/import/elpa.scm | 11 ++- guix/import/gem.scm | 7 +- guix/import/git.scm | 39 +++++--- guix/import/github.scm | 36 +++++--- guix/import/gnome.scm | 47 ++++++---- guix/import/gnu.scm | 2 +- guix/import/hackage.scm | 12 ++- guix/import/hexpm.scm | 9 +- guix/import/kde.scm | 61 +++++++------ guix/import/launchpad.scm | 10 ++- guix/import/minetest.scm | 12 ++- guix/import/opam.scm | 11 ++- guix/import/pypi.scm | 14 +-- guix/import/stackage.scm | 10 ++- guix/scripts/refresh.scm | 49 +++++++--- guix/upstream.scm | 25 +++--- tests/import-github.scm | 2 +- tests/transformations.scm | 8 +- 24 files changed, 416 insertions(+), 226 deletions(-) base-commit: d241517d2cadac3122301b6260c0dfc9f3b383d6