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.