From: ludo@gnu.org (Ludovic Courtès)
To: Mathieu Lirzin <mthl@gnu.org>
Cc: guix-devel@gnu.org, Alex Kost <alezost@gmail.com>
Subject: Re: [PATCH 04/13] utils: Use '@' for separating package names and version numbers.
Date: Tue, 23 Feb 2016 12:11:01 +0100 [thread overview]
Message-ID: <87vb5flm0q.fsf@gnu.org> (raw)
In-Reply-To: <87k2m0cto5.fsf@gnu.org> (Mathieu Lirzin's message of "Fri, 19 Feb 2016 21:49:14 +0100")
Mathieu Lirzin <mthl@gnu.org> skribis:
> ludo@gnu.org (Ludovic Courtès) writes:
>
>> Mathieu Lirzin <mthl@gnu.org> skribis:
>>
>>> From 7fef43249b704db3c4d511b2f1b62428740cfa73 Mon Sep 17 00:00:00 2001
>>> From: Mathieu Lirzin <mthl@gnu.org>
>>> Date: Sun, 24 Jan 2016 01:54:44 +0100
>>> Subject: [PATCH] utils: Use '@' for separating package names and version
>>> numbers.
>>>
>> [...]
>>> (define (package-name->name+version name)
>>> - "Given NAME, a package name like \"foo-0.9.1b\", return two values:
>>> -\"foo\" and \"0.9.1b\". When the version part is unavailable, NAME and
>>> -#f are returned. The first hyphen followed by a digit is considered to
>>> -introduce the version part."
>>> + "Given NAME, a package name like \"foo@0.9.1b\", return two values: \"foo\"
>>> +and \"0.9.1b\". When the version part is unavailable, NAME and #f are
>>> +returned. Both parts must not contain any '@'."
>>
>> I think this one should remain unchanged, first because it triggers a
>> full rebuild ;-), and second because it has uses in
>> {emacs,gnu}-build-system that expect exactly these semantics.
>>
>> So I think we have to simply provide a different version of that in
>> (guix utils) or so.
>>
>> Also, I think that at least for some time, the new
>> ‘package-name->name+version’ (maybe we could call it
>> ‘package-specification->name+version’ for consistency) should fall back
>> to the old method when:
>>
>> 1. The spec has no @ sign, and
>>
>> 2. The specified package name was not found.
>>
>>
>> It could print a warning when the old method has been used *and* a
>> matching package was found, explaining that this is deprecated syntax.
>>
>> WDYT?
>
> I have finally took some time to look into this, and actually
> implementing ‘package-specification->name+version’ in (guix utils) with
> the suggested fall back feature seems not desirable since checking for
> package existence would require using the procedure
> ‘find-packages-by-name’ from (gnu packages) which will then create a
> circular dependency. Did I miss something?
No, good point.
What about this:
1. Put the new ‘package-name->name+version’ in (guix utils) and keep
it dumb (i.e., it insists on having an ‘@’, as is the case with the
patch you posted.)
2. Add the fallback case in ‘specification->package’ and
‘specification->package+output’ in (gnu packages).
How does that sound?
Thanks!
Ludo’.
next prev parent reply other threads:[~2016-02-23 11:11 UTC|newest]
Thread overview: 65+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-01-24 20:19 [PATCH 00/13] New syntax 'package@version' and compilation improvements Mathieu Lirzin
2016-01-24 20:19 ` [PATCH 01/13] tests: Use 'dummy-origin' for lint tests when possible Mathieu Lirzin
2016-01-26 15:58 ` Ludovic Courtès
2016-01-24 20:19 ` [PATCH 02/13] lint: Remove an unneeded clause in 'check-patch-file-names' Mathieu Lirzin
2016-01-26 16:00 ` Ludovic Courtès
2016-01-24 20:19 ` [PATCH 03/13] lint: Rewrite 'check-patch-file-names' Mathieu Lirzin
2016-01-26 16:01 ` Ludovic Courtès
2016-01-24 20:19 ` [PATCH 04/13] utils: Use '@' for separating package names and version numbers Mathieu Lirzin
2016-01-25 11:37 ` Alex Kost
2016-01-25 20:56 ` Mathieu Lirzin
2016-01-26 16:22 ` Ludovic Courtès
2016-01-26 20:52 ` Mathieu Lirzin
2016-01-26 21:08 ` Ludovic Courtès
2016-02-19 20:49 ` Mathieu Lirzin
2016-02-23 11:11 ` Ludovic Courtès [this message]
2016-02-29 0:28 ` Mathieu Lirzin
2016-02-29 16:00 ` Ludovic Courtès
2016-03-02 21:35 ` Mathieu Lirzin
2016-03-05 1:28 ` Nils Gillmann
2016-03-05 9:24 ` Alex Kost
2016-03-05 9:36 ` Mathieu Lirzin
2016-03-03 10:29 ` Alex Kost
2016-03-03 16:55 ` Ludovic Courtès
2016-03-04 10:19 ` Alex Kost
2016-03-04 23:03 ` Mathieu Lirzin
2016-03-04 23:25 ` Ludovic Courtès
2016-03-05 1:08 ` Mathieu Lirzin
2016-03-05 9:16 ` Alex Kost
2016-01-25 14:04 ` Thompson, David
2016-01-25 21:41 ` Mathieu Lirzin
2016-01-25 23:33 ` Alex Kost
2016-01-26 17:57 ` Mathieu Lirzin
2016-01-24 20:19 ` [PATCH 05/13] packages: Use '@' in package record printers Mathieu Lirzin
2016-01-26 16:22 ` Ludovic Courtès
2016-01-24 20:19 ` [PATCH 06/13] build: Generate man pages after compiling guile objects Mathieu Lirzin
2016-01-26 16:52 ` Ludovic Courtès
2016-01-26 20:08 ` Mathieu Lirzin
2016-01-28 2:37 ` Eric Bavier
2016-01-28 15:44 ` Mathieu Lirzin
2016-01-28 15:59 ` Eric Bavier
2016-01-28 17:00 ` Mathieu Lirzin
2016-01-29 0:27 ` Eric Bavier
2016-01-29 16:17 ` Mathieu Lirzin
2016-01-29 16:46 ` Eric Bavier
2016-01-29 22:56 ` Mathieu Lirzin
2016-01-31 9:17 ` Ludovic Courtès
2016-01-24 20:19 ` [PATCH 07/13] build: Add 'DL' silent rule Mathieu Lirzin
2016-01-26 16:28 ` Ludovic Courtès
2016-01-26 17:44 ` Mathieu Lirzin
2016-01-26 19:22 ` Taylan Ulrich Bayırlı/Kammer
2016-01-26 21:06 ` Ludovic Courtès
2016-01-26 21:14 ` Mathieu Lirzin
2016-01-24 20:19 ` [PATCH 08/13] build: Add 'DOT' " Mathieu Lirzin
2016-01-26 16:28 ` Ludovic Courtès
2016-01-24 20:19 ` [PATCH 09/13] build: Add 'EMACS' " Mathieu Lirzin
2016-01-26 16:28 ` Ludovic Courtès
2016-01-24 20:19 ` [PATCH 10/13] build: Add 'HELP2MAN' " Mathieu Lirzin
2016-01-26 16:29 ` Ludovic Courtès
2016-01-24 20:19 ` [PATCH 11/13] build: Delete emacs/guix-autoloads.el when 'make clean' Mathieu Lirzin
2016-01-26 16:33 ` Ludovic Courtès
2016-01-26 22:55 ` Mathieu Lirzin
2016-01-24 20:19 ` [PATCH 12/13] build: Use 'GEN' and 'at' silent rules Mathieu Lirzin
2016-01-26 16:34 ` Ludovic Courtès
2016-01-24 20:19 ` [PATCH 13/13] Update .gitignore Mathieu Lirzin
2016-01-26 16:34 ` Ludovic Courtès
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=87vb5flm0q.fsf@gnu.org \
--to=ludo@gnu.org \
--cc=alezost@gmail.com \
--cc=guix-devel@gnu.org \
--cc=mthl@gnu.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.