GNU bug report logs -
#22693
`guix refresh -u` updates other packages with same version
Previous Next
Reported by: Leo Famulari <leo <at> famulari.name>
Date: Tue, 16 Feb 2016 09:28:02 UTC
Severity: normal
Done: iyzsong <at> member.fsf.org (宋文武)
Bug is archived. No further changes may be made.
To add a comment to this bug, you must first unarchive it, by sending
a message to control AT debbugs.gnu.org, with unarchive 22693 in the body.
You can then email your comments to 22693 AT debbugs.gnu.org in the normal way.
Toggle the display of automated, internal messages from the tracker.
Report forwarded
to
bug-guix <at> gnu.org
:
bug#22693
; Package
guix
.
(Tue, 16 Feb 2016 09:28:02 GMT)
Full text and
rfc822 format available.
Acknowledgement sent
to
Leo Famulari <leo <at> famulari.name>
:
New bug report received and forwarded. Copy sent to
bug-guix <at> gnu.org
.
(Tue, 16 Feb 2016 09:28:02 GMT)
Full text and
rfc822 format available.
Message #5 received at submit <at> debbugs.gnu.org (full text, mbox):
I've noticed that `guix refresh -u` will update extraneous packages if
they happen to have the same version and be in the same module.
For example, from commit d694230ab, you can reproduce the bug:
$ ./pre-inst-env guix environment guix -- ./pre-inst-env guix refresh -u python-pytest
$ git diff
diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
index 3dd3862..ae14404 100644
--- a/gnu/packages/python.scm
+++ b/gnu/packages/python.scm
@@ -796,7 +796,7 @@ Python 3 support.")
(define-public python-pycrypto
(package
(name "python-pycrypto")
- (version "2.6.1")
+ (version "2.8.7")
(source
(origin
(method url-fetch)
@@ -1565,7 +1565,7 @@ code introspection, and logging.")
(define-public python-pytest
(package
(name "python-pytest")
- (version "2.6.1")
+ (version "2.8.7")
(source
(origin
(method url-fetch)
@@ -1574,7 +1574,7 @@ code introspection, and logging.")
version ".tar.gz"))
(sha256
(base32
- "0g2w4p0n42wvz8rq4k6gnzpkakgz3g8sfanxk8jrsra9675snkcr"))
+ "1bwb06g64x2gky8x5hcrfpg6r351xwvafimnhm5qxq7wajz8ck7w"))
(modules '((guix build utils)))
(snippet
;; One of the tests involves the /usr directory, so it fails.
Information forwarded
to
bug-guix <at> gnu.org
:
bug#22693
; Package
guix
.
(Mon, 22 Feb 2016 21:34:02 GMT)
Full text and
rfc822 format available.
Message #8 received at 22693 <at> debbugs.gnu.org (full text, mbox):
On Tue, Feb 16, 2016 at 04:27:24AM -0500, Leo Famulari wrote:
> I've noticed that `guix refresh -u` will update extraneous packages if
> they happen to have the same version and be in the same module.
>
> For example, from commit d694230ab, you can reproduce the bug:
>
> $ ./pre-inst-env guix environment guix -- ./pre-inst-env guix refresh -u python-pytest
> $ git diff
> diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
> @@ -796,7 +796,7 @@ Python 3 support.")
> (define-public python-pycrypto
> (package
> (name "python-pycrypto")
> - (version "2.6.1")
> + (version "2.8.7")
> (define-public python-pytest
> (package
> (name "python-pytest")
> - (version "2.6.1")
> + (version "2.8.7")
I wondered about the "./pre-inst-env guix environment guix", but I tried it
without, and I confirm the problem.
Andreas
Information forwarded
to
bug-guix <at> gnu.org
:
bug#22693
; Package
guix
.
(Mon, 22 Feb 2016 22:38:01 GMT)
Full text and
rfc822 format available.
Message #11 received at 22693 <at> debbugs.gnu.org (full text, mbox):
On Mon, Feb 22, 2016 at 10:33:12PM +0100, Andreas Enge wrote:
> On Tue, Feb 16, 2016 at 04:27:24AM -0500, Leo Famulari wrote:
> > I've noticed that `guix refresh -u` will update extraneous packages if
> > they happen to have the same version and be in the same module.
> >
> > For example, from commit d694230ab, you can reproduce the bug:
> >
> > $ ./pre-inst-env guix environment guix -- ./pre-inst-env guix refresh -u python-pytest
> > $ git diff
> > diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
> > @@ -796,7 +796,7 @@ Python 3 support.")
> > (define-public python-pycrypto
> > (package
> > (name "python-pycrypto")
> > - (version "2.6.1")
> > + (version "2.8.7")
> > (define-public python-pytest
> > (package
> > (name "python-pytest")
> > - (version "2.6.1")
> > + (version "2.8.7")
>
> I wondered about the "./pre-inst-env guix environment guix", but I tried it
> without, and I confirm the problem.
I like to offer my bug reports with './pre-inst-env' and a commit, to
increase the number of factors that are deterministic.
>
> Andreas
>
Information forwarded
to
bug-guix <at> gnu.org
:
bug#22693
; Package
guix
.
(Mon, 04 Apr 2016 10:23:01 GMT)
Full text and
rfc822 format available.
Message #14 received at 22693 <at> debbugs.gnu.org (full text, mbox):
Leo Famulari <leo <at> famulari.name> writes:
> I've noticed that `guix refresh -u` will update extraneous packages if
> they happen to have the same version and be in the same module.
>
> For example, from commit d694230ab, you can reproduce the bug:
>
> $ ./pre-inst-env guix environment guix -- ./pre-inst-env guix refresh -u python-pytest
> $ git diff
> diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm
> index 3dd3862..ae14404 100644
> --- a/gnu/packages/python.scm
> +++ b/gnu/packages/python.scm
> @@ -796,7 +796,7 @@ Python 3 support.")
> (define-public python-pycrypto
> (package
> (name "python-pycrypto")
> - (version "2.6.1")
> + (version "2.8.7")
> (source
> (origin
> (method url-fetch)
> @@ -1565,7 +1565,7 @@ code introspection, and logging.")
> (define-public python-pytest
> (package
> (name "python-pytest")
> - (version "2.6.1")
> + (version "2.8.7")
> (source
> (origin
> (method url-fetch)
> @@ -1574,7 +1574,7 @@ code introspection, and logging.")
> version ".tar.gz"))
> (sha256
> (base32
> - "0g2w4p0n42wvz8rq4k6gnzpkakgz3g8sfanxk8jrsra9675snkcr"))
> + "1bwb06g64x2gky8x5hcrfpg6r351xwvafimnhm5qxq7wajz8ck7w"))
> (modules '((guix build utils)))
> (snippet
> ;; One of the tests involves the /usr directory, so it fails.
How to fix this?
The procedure is ‘update-package-source’ in (guix upstream).
it find the file, then use ‘substitute’ to replace the version and
hash. ‘substitute’ works line-by-line, it can’t match mutiple lines.
I try:
- use ‘package-location’ and ‘read’ to get the package object,
but it lost all format and comments.
- use ‘string-match’, but I have no idea how to match the whole
package sexp.
Information forwarded
to
bug-guix <at> gnu.org
:
bug#22693
; Package
guix
.
(Mon, 04 Apr 2016 11:54:01 GMT)
Full text and
rfc822 format available.
Message #17 received at 22693 <at> debbugs.gnu.org (full text, mbox):
On Mon 04 Apr 2016 12:20, iyzsong <at> member.fsf.org (宋文武) writes:
> How to fix this?
>
> The procedure is ‘update-package-source’ in (guix upstream).
> it find the file, then use ‘substitute’ to replace the version and
> hash. ‘substitute’ works line-by-line, it can’t match mutiple lines.
>
> I try:
> - use ‘package-location’ and ‘read’ to get the package object,
> but it lost all format and comments.
One option:
1. open the source file for the package
2. Call (read) until port-line / port-column are beyond the
package-location of the package
3. At that point you have the ending location of the package.
Then limit your substitute* to work within those lines.
Another option would be to extend substitute* to start on a certain
line, and to limit the number of substitutions. That way if you start
on package-location and limit to one substitution you are likely to
update the correct version.
Andy
Information forwarded
to
bug-guix <at> gnu.org
:
bug#22693
; Package
guix
.
(Mon, 04 Apr 2016 20:58:02 GMT)
Full text and
rfc822 format available.
Message #20 received at 22693 <at> debbugs.gnu.org (full text, mbox):
Andy Wingo <wingo <at> igalia.com> skribis:
> On Mon 04 Apr 2016 12:20, iyzsong <at> member.fsf.org (宋文武) writes:
>
>> How to fix this?
>>
>> The procedure is ‘update-package-source’ in (guix upstream).
>> it find the file, then use ‘substitute’ to replace the version and
>> hash. ‘substitute’ works line-by-line, it can’t match mutiple lines.
>>
>> I try:
>> - use ‘package-location’ and ‘read’ to get the package object,
>> but it lost all format and comments.
>
> One option:
>
> 1. open the source file for the package
> 2. Call (read) until port-line / port-column are beyond the
> package-location of the package
> 3. At that point you have the ending location of the package.
Right. ‘package-field-location’ does something along these lines.
> Then limit your substitute* to work within those lines.
A simpler yet less elegant trick used in ‘report-formatting-issues’ in
(guix scripts lint) is to have a maximum number of lines assumed to be
part of the ‘package’ form following its starting line.
Thanks,
Ludo’.
Reply sent
to
iyzsong <at> member.fsf.org (宋文武)
:
You have taken responsibility.
(Wed, 13 Apr 2016 01:30:02 GMT)
Full text and
rfc822 format available.
Notification sent
to
Leo Famulari <leo <at> famulari.name>
:
bug acknowledged by developer.
(Wed, 13 Apr 2016 01:30:02 GMT)
Full text and
rfc822 format available.
Message #25 received at 22693-done <at> debbugs.gnu.org (full text, mbox):
fixed in commit 2b8e9d9ed.
bug archived.
Request was from
Debbugs Internal Request <help-debbugs <at> gnu.org>
to
internal_control <at> debbugs.gnu.org
.
(Wed, 11 May 2016 11:24:04 GMT)
Full text and
rfc822 format available.
This bug report was last modified 7 years and 345 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.