The "narinfo-string" procedure is expensive in term of IO operations and can
take a while under IO pressure, such a GC collecting. Defer its call to a new
thread created in the http-write procedure.
Fixes: <https://issues.guix.gnu.org/48468>
Partially fixes: <https://issues.guix.gnu.org/49089>
* guix/scripts/publish.scm (render-narinfo): Defer the narinfo string creation
to the http-write procedure.
(compression->sexp, sexp->compression): New procedures.
("X-Nar-Compression"): Use them.
("X-Narinfo-Compressions"): New custom header.
(strip-headers): Add the x-nar-path header.
(http-write): Add narinfo on-the-fly creation support. It happens in a
separated thread to prevent blocking the main thread.
...otherwise, failing tests would show up as successful. This is a follow-up
to commit 273380fda2.
* gnu/packages/web.scm (hitch)[native-inputs]: Add PROCPS.
* gnu/packages/networking.scm (openvswitch)[arguments]: Remove #:tests?. Add
two new phases to patch /bin/sh, and create a 'kill -0' script that handles
zombies.
[native-inputs]: Add BASH and PROCPS.
[inputs]: Add BASH-MINIMAL.
Fixes a failing test case in PHP (Zend/tests/bug74093.phpt). See
<https://github.com/php/php-src/pull/7555/files> for upstream status.
* gnu/packages/php.scm (php)[source]: Add patch.
* gnu/packages/patches/php-bug-74093-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
* gnu/packages/diffoscope.scm (diffoscope): Update to 186.
[source]: Add patch.
[arguments]: Add a new 'fix-failing-tests phase.
Don't explicitly return #t from phases.
* gnu/packages/patches/diffoscope-fix-test_item3_deflate_llvm_bitcode.patch:
New file.
* gnu/local.mk (dist_patch_DATA): Add it.
Previously, manifests could only contain packages:
https://lists.gnu.org/archive/html/guix-devel/2021-10/msg00002.html
This allows us to pass origins as found in 'etc/source-manifest.scm'.
* gnu/ci.scm (derivation->job): Change default #:timeout value to 5h.
(manifests->packages): Remove.
(manifests->jobs): New procedure.
(cuirass-jobs): Use it in the 'manifests' case.
Do not treat major version suffixes (such as "/v3") as repository
subdirectories. See <https://golang.org/ref/mod#major-version-suffixes>.
* guix/import/go.scm (go-module->guix-package): When determining the
unpack path, compare 'root-module-path' to 'module-path-sans-suffix'
instead of 'module-path'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Some packages sites use extra whitespace in the content portion of <meta
name="go-import" ...> tags, so handle that. Example:
<https://k8s.io/api?go-get=1>
* guix/import/go.scm (fetch-module-meta-data)[go-import->module-meta]:
Use 'string-tokenize' instead of 'string-split'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Oh, hello, you must be new here:
$ git show ba912479e8
That silly person really ought to have added a comment to the code,
shouldn't they? This reverts similar changes made in commit
ec7bcdc35a, and adds one.
The '#$' doesn't belong there, and will cause ‘unbound variable’ errors.
Reported-By: ss2 (on IRC)
* doc/guix.texi (Setuid Programs): Remove #$ from example.
Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
* gnu/packages/gnome.scm (brasero)[arguments]: Rename the
'embed-growisofs phase to 'embed-growisofs-reference. Get its
growisofs file name from the dvd+rw-tools input, not WHICH.