| Commit message (Collapse) | Author | Age |
|
|
|
|
|
|
|
| |
This avoids a closure allocation when 'lookup-cached-object' is called.
* guix/store.scm (lookup-cached-object): Avoid optional/keyword
arguments and inline.
(%mcached): Adjust accordingly.
|
|
|
|
|
| |
* guix/gexp.scm (gexp-attribute): Use 'fold' and 'fold/tree' instead of
'append-map'.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reduces the total amount of memory allocated by 8% when running
"guix build qemu -d --no-grafts".
* guix/gexp.scm (fold/tree): New procedure.
(gexp-inputs)[interesting?]: New procedure.
[add-reference-inputs]: Change (lst ...) clause to (? pair? lst), and
use 'fold/tree' to recurse into it.
(gexp-inputs)[add-reference-output]: Likewise, and remove
plain (lst ...) clause.
Call 'fold'.
(gexp->sexp)[reference->sexp]: In the list case, avoid boxing and
recursive call when the object has a plain non-aggregate type.
|
|
|
|
|
|
| |
* guix/gexp.scm (lower-inputs, gexp->sexp): Change keyword parameters to
positional parameters. Adjust callers accordingly.
* tests/gexp.scm (gexp->sexp*, "gexp->file"): Adjust accordingly.
|
|
|
|
|
|
|
| |
It had been made public in 6b6298ae39bfe185ce1ab18bb3d641ddfad17c8f but
it's no longer needed since 779aa003fbacbbcb6973f289b607d1d285009cec.
* guix/gexp.scm (lower-inputs): Do not export.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This avoids double traversal of references and extra bookkeeping,
thereby further reducing memory allocations.
* guix/gexp.scm (lower-gexp): Include only one call to 'lower-inputs'.
(gexp-inputs): Remove #:native? parameter.
[set-gexp-input-native?]: New procedure.
[add-reference-inputs]: Use it.
(gexp-native-inputs): Remove.
* tests/gexp.scm (gexp-native-inputs): Remove.
(gexp-input->tuple): Include 'gexp-input-native?'.
("let-system")
("let-system, nested")
("ungexp + ungexp-native")
("ungexp + ungexp-native, nested")
("ungexp + ungexp-native, nested, special mixture")
("input list")
("input list + ungexp-native")
("input list splicing")
("input list splicing + ungexp-native-splicing")
("gexp list splicing + ungexp-splicing"): Adjust accordingly.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This slightly reduces memory allocation.
* guix/gexp.scm (lower-inputs): Expect a list of <gexp-input> rather
than a list of tuples.
(lower-reference-graphs)[tuple->gexp-input]: New procedure.
Use it.
(gexp-inputs): Return a list of <gexp-input> rather than a list of
tuples.
* tests/gexp.scm (gexp-input->tuple): New procedure.
("one input package")
("one input package, dotted list")
("one input origin")
("one local file")
("one local file, symlink")
("one plain file")
("two input packages, one derivation, one file")
("file-append")
("file-append, output")
("file-append, nested")
("let-system")
("let-system, nested")
("ungexp + ungexp-native")
("ungexp + ungexp-native, nested")
("ungexp + ungexp-native, nested, special mixture")
("input list")
("input list + ungexp-native")
("input list splicing")
("input list splicing + ungexp-native-splicing")
("gexp list splicing + ungexp-splicing"): Adjust accordingly.
|
|
|
|
|
| |
* guix/gexp.scm (sexp->string): New procedure.
(gexp->derivation): Use it instead of 'object->string'.
|
|
|
|
|
| |
* guix/store.scm (record-cache-lookup!): Add 'size' variable; keep it
up-to-date and display it.
|
|
|
|
|
|
|
| |
As for 'current-target-system' & co., this makes sure we don't
needlessly allocate closures.
* guix/grafts.scm (grafting?, set-grafting): Inline.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* gnu/packages/rails.scm (ruby-activemodel, ruby-activerecord,
ruby-actionview, ruby-actionpack, ruby-actioncable, ruby-activejob,
ruby-activestorage, ruby-actionmailer, ruby-railties, ruby-rails):
Update to 6.1.3.
(ruby-actiontext, ruby-actionmailbox): New variables.
(ruby-actioncable)[propagated-inputs]: Add ruby-activesupport.
(ruby-activestorage)[propagated-inputs]: Add ruby-activejob,
ruby-activesupport, ruby-mimemagic.
(ruby-actionmailer)[propagated-inputs]: Add ruby-activesupport.
(ruby-railties)[propagated-inputs]: Add ruby-rake.
(ruby-rails)[propagated-inputs]: Add ruby-actionmailbox,
ruby-actiontext.
* gnu/packages/ruby.scm (ruby-activesupport): Update to 6.1.3.
[propagated-inputs]: Add ruby-zeitwerk.
[home-page]: Use https.
|
|
|
|
|
|
|
|
|
|
|
|
| |
* gnu/packages/ruby.scm (ruby-rack): Update to 2.2.3.
[source]: Remove patch. Add snippet.
[arguments]: Adjust custom 'fix-tests phase. Remove 'make-files-writable
phase.
[native-inputs]: Remove ruby-minitest-sprint, which. Add
ruby-minitest-global-expectations.
[propagated-inputs]: Remove ruby-concurrent.
* gnu/packages/patches/ruby-rack-ignore-failing-test.patch: Remove file.
* gnu/local.mk (dist_patch_DATA): Remove it.
|
|
|
|
| |
* gnu/packages/ruby.scm (ruby-zeitwerk): New variable.
|
|
|
|
| |
* gnu/packages/rails.scm (ruby-web-console): Update to 4.1.0.
|
|
|
|
|
|
|
|
|
|
| |
* gnu/packages/ruby.scm (ruby-tzinfo-data): Update to 1.2021.1.
[source]: Remove patch.
[arguments]: Add custom 'patch-source, 'pre-check phases.
[native-inputs]: Add IANA timezone data files.
* gnu/packages/patches/ruby-tzinfo-data-ignore-broken-test.patch: Remove
file.
* gnu/local.mk (dist_patch_DATA): Remove it.
|
|
|
|
|
|
|
|
| |
* gnu/packages/ruby.scm (ruby-tzinfo): Update to 2.0.4.
[source]: Download using git-fetch.
[arguments]: Add custom 'pre-check, 'check phases.
[propagated-inputs]: Remove ruby-thread-safe, add ruby-concurrent.
[native-inputs]: Add ruby-simplecov.
|
|
|
|
| |
* gnu/packages/rails.scm (ruby-rails-html-sanitizer): Update to 1.3.0.
|
|
|
|
| |
* gnu/packages/rails.scm (ruby-rails-dom-testing): Update to 2.0.3.
|
|
|
|
|
|
| |
* gnu/packages/ruby.scm (ruby-loofah): Update to 2.3.1.
[arguments]: Adjust custom 'remove-unnecessary-dependencies phase for
upstream changes.
|
|
|
|
|
|
| |
* gnu/packages/ruby.scm (ruby-mail): Update to 2.7.1.
[propagated-inputs]: Remove ruby-mime-types, add ruby-mini-mime.
[arguments]: Adjust comment about skipping tests.
|
|
|
|
| |
* gnu/packages/ruby.scm (ruby-mini-mime): New variable.
|
|
|
|
|
| |
* gnu/packages/protobuf.scm (ruby-protobuf)[propagated-inputs]: Add
ruby-thread-safe.
|
|
|
|
|
|
|
| |
* gnu/packages/games.scm (stockfish): Update to 13.
[inputs]: Update neural network file.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
|
|
|
|
|
| |
* gnu/packages/emacs-xyz.scm (emacs-ido-at-point): New variable.
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
|
|
|
|
| |
* gnu/packages/cpp.scm (cli11)[arguments]: Do not import (guix utils) that is
not meant to go on the build side.
|
|
|
|
|
|
|
|
|
| |
This is a follow-up of ab054868afe6a4ba9d8aa9943e265bd6a871d0ae. The test was
failing because the Shepherd control socket wasn't ready yet. Restore it but
make sure that the control socket is available first.
* gnu/tests/cuirass.scm ("shepherd socket ready"): New test.
("cuirass running"): Restore it.
|
|
|
|
|
| |
* gnu/tests/cuirass.scm ("cuirass running"): Remove it as it fails if all the
dependencies are not started yet.
|
|
|
|
|
|
|
| |
* gnu/services/cuirass.scm (cuirass-shepherd-service): Add "postgres-roles" to
cuirass requirements. Set cuirass-web requirements to cuirass only. Remove
"guix-daemon" and "networking" from cuirass-remote-server requirements as are
already required by cuirass.
|
|
|
|
|
|
|
|
|
|
| |
Make sure that the postgresql-roles script is completed before declaring the
postgresql-roles service as started.
* gnu/services/databases.scm (postgresql-create-roles): Return the command
line instead of a program-file.
(postgresql-role-shepherd-service): Use fork+exec-command to start the role
creation script and wait for its completion before returning.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Instead of returning multiple services in simple-cuirass-services, rely on the
instantiate-missing-services procedure to instantiate postgresql and
postgresql-role-service-type when missing.
Turn simple-cuirass-services procedure into
simple-cuirass-configuration->specs, that takes a simple-cuirass-configuration
record and returns a Cuirass specification.
Suggested-by: Ludovic Courtès <ludo@gnu.org>
* gnu/services/cuirass.scm (%default-cuirass-config): Remove it.
(simple-cuirass-services): Rename it to ...
(simple-cuirass-configuration->specs): ... this procedure.
* gnu/tests/cuirass.scm (cuirass-services): Remove postgresql and
postgresql-role services that are automatically instantiated.
(simple-cuirass-service): New variable.
(%cuirass-simple-test): Adapt it to use simple-cuirass-configuration->specs
instead of simple-cuirass-services.
* doc/guix.texi (Simple Cuirass): Update it.
|
|
|
|
| |
* gnu/packages/lisp-xyz.scm (sbcl-common-lisp-jupyter): Update to 20210217.
|
|
|
|
| |
* gnu/packages/lisp-xyz.scm (sbcl-trivial-clipboard): Update to 20210219.
|
|
|
|
| |
* gnu/packages/video.scm (youtube-dl): Update to 2021.02.22.
|
|
|
|
|
|
|
|
| |
Previously, 'guix install foo -r bar' would crash with a backtrace
because NAME would be #\r (a character instead of a string).
* guix/scripts.scm (parse-command-line)[parse-options-from]: Call
'option-hint' only when NAME is a string.
|
|
|
|
| |
* guix/build/profiles.scm (build-profile): Fix typo.
|
|
|
|
|
| |
* guix/describe.scm (manifest-entry-with-provenance): Fix first argument
to 'assq'.
|
|
|
|
|
|
|
|
| |
Commit 8f710cc598fb675d267f49a82cffc197f03ad52c introduced a duplicate
ocaml-llvm@9.0.1 package, which was flagged by a test failure in
tests/packages.scm.
* gnu/packages/ocaml.scm (make-ocaml-llvm): Define as 'mlambdaq'.
|
|
|
|
|
|
| |
Fixes a typo introduced in b819512ca2cce1051c5fea26328da2e5d6a9a101.
* gnu/packages/linux.scm (linux-libre-headers-5.11): Really refer to 5.11.
|
|
|
|
|
|
|
|
| |
This fixes a regression introduced in
9a38bed2cf32e9462badfa43e74cdd4580e804fc.
* guix/packages.scm (package-field-location): Do not shadow the 'file'
variable.
|
|
|
|
| |
* gnu/packages/mail.scm (isync): Update to 1.3.5.
|
|
|
|
| |
* gnu/packages/monitoring.scm (temper-exporter): New variable.
|
|
|
|
|
|
|
|
|
| |
Some services require networking, I'm looking at the Guix Build Coordinator
agent. Networking seems to work in the childhurd VM, so I think this change
makes sense.
* gnu/system/hurd.scm (%base-services/hurd): Add 'networking to the provision
parameter for the static-networking service.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is part of trying to reduce the interdependency of code within the
substitute module.
This commit addresses some of the error handling that was performed through
open-connection-for-uri/maybe. The new approach is to use
call-with-connection-error-handling, and wrap calls to http-multiple-get and
http-fetch with that procedure, which takes care of handling connection
errors.
I think this is even slightly more rigerous than the previous setup, because
this approach handles connection errors that occur when http-multiple-get
reconnects to a host.
* guix/scripts/substitute.scm (open-connection-for-uri/maybe): Transform in to
call-with-connection-error-handling.
(fetch-narinfos): Use call-with-connection-error-handling.
(process-query): Replace open-connection-for-uri/maybe with
open-connection-for-uri/cached.
(open-connection-for-uri/cached): Set a default timeout, matching the
behaviour in open-connection-for-uri/maybe.
(process-substitution): Use call-with-connection-error-handling.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
At least by default. Instead, make the open-connection procedure a parameter,
and make the default guix:open-connection-for-uri. Do so similarly for
lookup-narinfos and lookup-narinfos/diverse which work towards calling
fetch-narinfos.
This means this code can be moved to a different module, without having
use/move the connection caching code.
* guix/scripts/substitute.scm (fetch-narinfos): Add #:open-connection
argument, and call http-multiple-get with it.
(lookup-narinfos) Add #:open-connection argument, and call fetch-narinfos with
it.
(lookup-narinfos/diverse): Add #:open-connection argument, and call
lookup-narinfos with it.
(process-query): Call lookup-narinfos/diverse with #:open-connection
open-connection-for-uri/maybe.
|
|
|
|
|
|
|
|
| |
As it's only called in one place, and this should make the code easier to
read.
* guix/scripts/substitute.scm (fetch): Move procedure inside…
(process-substitution): …here.
|
|
|
|
|
|
|
|
|
| |
It's just called in one place, with hardcoded argument values, so just inline
them.
* guix/scripts/substitute.scm (fetch): Remove arguments that don't vary, copy
the values from the call site in process-substitution.
(process-substitution): Remove unnecessary argument values from fetch call.
|
|
|
|
|
|
|
|
| |
Failures now should be handled where they occur, and if there's a problem
that's symptomatic of an issue with the connection, the port should be closed.
* guix/scripts/substitute.scm (call-with-cached-connection): Remove procedure.
(with-cached-connection): Remove syntax rule.
|
|
|
|
|
|
|
|
|
| |
Just pass open-connection-for-uri/maybe to http-fetch, this removes the need
for with-cached-connection and passing the port in.
* guix/scripts/substitute.scm (fetch): Don't take a port as an argument, and
pass open-connection-for-uri/maybe to http-fetch.
(process-substitution): Don't call fetch with with-cached-connection.
|
|
|
|
|
|
|
|
| |
So that an alternative procedure can be passed in, perhaps to perform
connection caching.
* guix/http-client.scm (http-fetch): Add an #:open-connection keyword
argument.
|
|
|
|
|
|
|
|
|
| |
Instead, just pass open-connection-for-uri/maybe to http-multiple-get. This
code should be functionaly similar to the previous code. The eventual aim of
this is to make the connection caching not mandatory in fetch-narinfos.
* guix/scripts/substitute.scm (fetch-narinfos): Remove use of
call-with-cached-connection.
|