<feed xmlns='http://www.w3.org/2005/Atom'>
<title>guix/tests, branch wip-postfix</title>
<subtitle>Transactional package manager, declarative GNU/Linux distribution, reproducible deployment tool, and more! https://guix.gnu.org</subtitle>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/'/>
<entry>
<title>gnu: services: Revert to deleting and updating all matching services</title>
<updated>2023-09-01T03:31:50+00:00</updated>
<author>
<name>Brian Cully</name>
<email>bjc@spork.org</email>
</author>
<published>2023-07-17T17:02:19+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=f66fa5f917e76935187935b09ae7ac037b8b35f8'/>
<id>f66fa5f917e76935187935b09ae7ac037b8b35f8</id>
<content type='text'>
This patch reverts the behavior introduced in
181951207339508789b28ba7cb914f983319920f which caused ‘modify-services’
clauses to only match a single instance of a service.

We will now match all service instances when doing a deletion or update, while
still raising an exception when trying to match against a service that does
not exist in the services list, or which was deleted explicitly by a ‘delete’
clause (or an update clause that returns ‘#f’ for the service).

Fixes: #64106

* gnu/services.scm (%modify-services): New procedure.
(modify-services): Use it.
(apply-clauses): Add DELETED-SERVICES argument, change to modify one service
at a time.
* tests/services.scm
("modify-services: delete then modify")
("modify-services: modify then delete")
("modify-services: delete multiple services of the same type")
("modify-services: modify multiple services of the same type"): New tests.

Signed-off-by: Maxim Cournoyer &lt;maxim.cournoyer@gmail.com&gt;
Modified-by: Maxim Cournoyer &lt;maxim.cournoyer@gmail.com&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This patch reverts the behavior introduced in
181951207339508789b28ba7cb914f983319920f which caused ‘modify-services’
clauses to only match a single instance of a service.

We will now match all service instances when doing a deletion or update, while
still raising an exception when trying to match against a service that does
not exist in the services list, or which was deleted explicitly by a ‘delete’
clause (or an update clause that returns ‘#f’ for the service).

Fixes: #64106

* gnu/services.scm (%modify-services): New procedure.
(modify-services): Use it.
(apply-clauses): Add DELETED-SERVICES argument, change to modify one service
at a time.
* tests/services.scm
("modify-services: delete then modify")
("modify-services: modify then delete")
("modify-services: delete multiple services of the same type")
("modify-services: modify multiple services of the same type"): New tests.

Signed-off-by: Maxim Cournoyer &lt;maxim.cournoyer@gmail.com&gt;
Modified-by: Maxim Cournoyer &lt;maxim.cournoyer@gmail.com&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>import-utils: Do not include punctuation when wrapping in @code{}.</title>
<updated>2023-08-28T17:08:38+00:00</updated>
<author>
<name>Ricardo Wurmus</name>
<email>rekado@elephly.net</email>
</author>
<published>2023-08-28T17:08:38+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=c8a642de9a7b6c0e21c8327232245ab721822842'/>
<id>c8a642de9a7b6c0e21c8327232245ab721822842</id>
<content type='text'>
* guix/import/utils.scm (beautify-description): Exclude punctuation.
* tests/import-utils.scm: Add new test.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* guix/import/utils.scm (beautify-description): Exclude punctuation.
* tests/import-utils.scm: Add new test.
</pre>
</div>
</content>
</entry>
<entry>
<title>gnu-maintenance: Consider Qt source tarballs as "release files".</title>
<updated>2023-08-26T15:38:56+00:00</updated>
<author>
<name>Maxim Cournoyer</name>
<email>maxim.cournoyer@gmail.com</email>
</author>
<published>2023-08-11T17:44:28+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=1dce88777691b7a38ad66ba58b17a9b368c11e07'/>
<id>1dce88777691b7a38ad66ba58b17a9b368c11e07</id>
<content type='text'>
* guix/gnu-maintenance.scm (release-file?): Use positive logic in doc.
Add a special case for Qt source archives.
* tests/gnu-maintenance.scm ("release-file?"): Update test.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* guix/gnu-maintenance.scm (release-file?): Use positive logic in doc.
Add a special case for Qt source archives.
* tests/gnu-maintenance.scm ("release-file?"): Update test.
</pre>
</div>
</content>
</entry>
<entry>
<title>gnu-maintenance: Add support to rewrite version in URL path.</title>
<updated>2023-08-26T15:38:56+00:00</updated>
<author>
<name>Maxim Cournoyer</name>
<email>maxim.cournoyer@gmail.com</email>
</author>
<published>2023-08-10T15:42:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=6953fb924111c400a064255d8274a2caa68f7436'/>
<id>6953fb924111c400a064255d8274a2caa68f7436</id>
<content type='text'>
Fixes &lt;https://issues.guix.gnu.org/64015&gt;.
Fixes &lt;https://issues.guix.gnu.org/65304&gt;.

Previously, the generic HTML updater would only look for the list of files
found at the parent of its current source URL, ignoring that the URL may embed
the version elsewhere in its path.  This could cause 'guix refresh' to report
no updates available, while in fact there were, such as for 'libuv'.

* guix/gnu-maintenance.scm (strip-trailing-slash): New procedure.
(%version-rx): New variable.
(rewrite-url): New procedure.
(import-html-release): New rewrite-url? argument.  When true, use the above
procedure.
(import-html-updatable-release): Call import-html-release with #:rewrite-url
set to #t.
* tests/gnu-maintenance.scm ("rewrite-url, to-version specified")
("rewrite-url, without to-version"): New tests.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes &lt;https://issues.guix.gnu.org/64015&gt;.
Fixes &lt;https://issues.guix.gnu.org/65304&gt;.

Previously, the generic HTML updater would only look for the list of files
found at the parent of its current source URL, ignoring that the URL may embed
the version elsewhere in its path.  This could cause 'guix refresh' to report
no updates available, while in fact there were, such as for 'libuv'.

* guix/gnu-maintenance.scm (strip-trailing-slash): New procedure.
(%version-rx): New variable.
(rewrite-url): New procedure.
(import-html-release): New rewrite-url? argument.  When true, use the above
procedure.
(import-html-updatable-release): Call import-html-release with #:rewrite-url
set to #t.
* tests/gnu-maintenance.scm ("rewrite-url, to-version specified")
("rewrite-url, without to-version"): New tests.
</pre>
</div>
</content>
</entry>
<entry>
<title>tests: guix-home: Fix description search for home-mcron.</title>
<updated>2023-08-25T15:45:47+00:00</updated>
<author>
<name>Josselin Poiret</name>
<email>dev@jpoiret.xyz</email>
</author>
<published>2023-08-25T15:45:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=4fefbd4f147bc1174792dc2473c79c784de42065'/>
<id>4fefbd4f147bc1174792dc2473c79c784de42065</id>
<content type='text'>
* tests/guix-home.sh: home-mcron has changed description, adapt the search.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* tests/guix-home.sh: home-mcron has changed description, adapt the search.
</pre>
</div>
</content>
</entry>
<entry>
<title>tests: guix-shell: Use bash instead of user's $SHELL.</title>
<updated>2023-08-25T12:23:43+00:00</updated>
<author>
<name>Josselin Poiret</name>
<email>dev@jpoiret.xyz</email>
</author>
<published>2023-08-11T12:22:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=519c3b7803c48bfbb42053ab8edf7e052071be5f'/>
<id>519c3b7803c48bfbb42053ab8edf7e052071be5f</id>
<content type='text'>
* tests/guix-shell.sh (fd_list): Use bash instead of $SHELL.  Some other
shells have trouble not opening too many fds.  Also, bash in an implicit input
of guix, so it should always be available.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* tests/guix-shell.sh (fd_list): Use bash instead of $SHELL.  Some other
shells have trouble not opening too many fds.  Also, bash in an implicit input
of guix, so it should always be available.
</pre>
</div>
</content>
</entry>
<entry>
<title>tests: Adjust 'node-back-edges' test for 'bag' to system-dependent glibc.</title>
<updated>2023-08-21T14:16:47+00:00</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2023-08-21T13:13:59+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=df2117b8e0e9a35ef8be7f122a783190cafed669'/>
<id>df2117b8e0e9a35ef8be7f122a783190cafed669</id>
<content type='text'>
Fixes a regression introduced in
560cb51e7b37e2c6f6fe4b72a3781185c57fdf83, which would lead this test on
x86_64-linux to return a DIFF with two packages, nhc98 and dev86 (both
have #:system "i686-linux" and thus depend on a different glibc object;
why other system-specific packages such as 'wine' aren't reported is
unclear).

* tests/graph.scm ("node-transitive-edges + node-back-edges"): Use
'test-equal'.  Define 'system-specific?' and use it.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixes a regression introduced in
560cb51e7b37e2c6f6fe4b72a3781185c57fdf83, which would lead this test on
x86_64-linux to return a DIFF with two packages, nhc98 and dev86 (both
have #:system "i686-linux" and thus depend on a different glibc object;
why other system-specific packages such as 'wine' aren't reported is
unclear).

* tests/graph.scm ("node-transitive-edges + node-back-edges"): Use
'test-equal'.  Define 'system-specific?' and use it.
</pre>
</div>
</content>
</entry>
<entry>
<title>tests: store-roots: Remove bogus test.</title>
<updated>2023-08-18T14:10:08+00:00</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludo@gnu.org</email>
</author>
<published>2023-08-18T14:10:08+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=4b1fdd44ed87dc07d23cc9313a8b6b14d0646923'/>
<id>4b1fdd44ed87dc07d23cc9313a8b6b14d0646923</id>
<content type='text'>
This test was added in 1261ce15233cbf7e24de9959df86a23b46314a28 but it
proved to be bogus: &lt;https://issues.guix.gnu.org/64760&gt;.

* tests/store-roots.scm ("gc-roots, initial"): Remove.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This test was added in 1261ce15233cbf7e24de9959df86a23b46314a28 but it
proved to be bogus: &lt;https://issues.guix.gnu.org/64760&gt;.

* tests/store-roots.scm ("gc-roots, initial"): Remove.
</pre>
</div>
</content>
</entry>
<entry>
<title>tests: packages: Set system for expected result of package-&gt;bag.</title>
<updated>2023-08-18T14:09:29+00:00</updated>
<author>
<name>Josselin Poiret</name>
<email>dev@jpoiret.xyz</email>
</author>
<published>2023-07-21T10:14:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=f8dd6377560ee2b3a69059f2af1455c9869478c3'/>
<id>f8dd6377560ee2b3a69059f2af1455c9869478c3</id>
<content type='text'>
* tests/packages.scm ("package-&gt;bag"): Parameterize the expected result by the
system used to lower the package to a bag.

Signed-off-by: Ludovic Courtès &lt;ludo@gnu.org&gt;
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
* tests/packages.scm ("package-&gt;bag"): Parameterize the expected result by the
system used to lower the package to a bag.

Signed-off-by: Ludovic Courtès &lt;ludo@gnu.org&gt;
</pre>
</div>
</content>
</entry>
<entry>
<title>ui: 'load*' accepts /dev/fd/N files pointing to a pipe.</title>
<updated>2023-08-17T15:33:53+00:00</updated>
<author>
<name>Ludovic Courtès</name>
<email>ludovic.courtes@inria.fr</email>
</author>
<published>2023-08-11T15:20:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.vineetk.net/guix/commit/?id=3363ff1867bb02c4aa4955db917ef1d67f2c47e6'/>
<id>3363ff1867bb02c4aa4955db917ef1d67f2c47e6</id>
<content type='text'>
This allows users to write Bash commands like:

  guix time-machine -C &lt;(echo %default-channels) -- ...

or:

  guix build -m &lt;(echo '(specifications-&gt;manifest (list "guile"))')

Previously, on GNU/Linux, they would fail with:

  error: failed to load '/dev/fd/63': No such file or directory

* guix/ui.scm (try-canonicalize-path): New procedure.
(load*): Use it.
* tests/guix-build.sh: Test 'guix build -m' with a /dev/fd/N file.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This allows users to write Bash commands like:

  guix time-machine -C &lt;(echo %default-channels) -- ...

or:

  guix build -m &lt;(echo '(specifications-&gt;manifest (list "guile"))')

Previously, on GNU/Linux, they would fail with:

  error: failed to load '/dev/fd/63': No such file or directory

* guix/ui.scm (try-canonicalize-path): New procedure.
(load*): Use it.
* tests/guix-build.sh: Test 'guix build -m' with a /dev/fd/N file.
</pre>
</div>
</content>
</entry>
</feed>
