guix-devel/guix
Ludovic Courtès e037e9dbec
store: Buffer RPC writes.
For a command like:

  guix build python2-numpy -n

this reduces the number of 'write' syscalls from 9.5K to 2.0K.

* guix/store.scm (<nix-server>)[buffer, flush]: New fields.
(open-connection): Adjust accordingly.  Call 'buffering-output-port' to
compute the two new fields.
(write-buffered-output, buffering-output-port): New procedures.
(operation): Write to (nix-server-output-port server).  Call
'write-buffered-output'.
2017-06-19 23:23:14 +02:00
..
build syscalls: 'opendir*' error message shows the file name. 2017-06-18 00:14:07 +02:00
build-system build-system/texlive: Update to texlive-2017.1, revision 44591. 2017-06-19 08:22:04 +02:00
import guix: Add texlive importer. 2017-06-15 17:03:19 +02:00
scripts guix: Add texlive importer. 2017-06-15 17:03:19 +02:00
store store: Support 'ssh://' URIs in 'GUIX_DAEMON_SOCKET'. 2017-04-21 19:17:36 +02:00
tests
base16.scm
base32.scm
base64.scm base64: Turn into a regular Guile module. 2017-05-25 14:25:17 +02:00
build-system.scm
cache.scm cache: Work around 'time-monotonic' bug in Guile 2.2.2. 2017-04-22 14:42:15 +02:00
combinators.scm
config.scm.in
cpio.scm
cve.scm
cvs-download.scm
derivations.scm derivations: Introduce 'read-derivation-from-file'. 2017-06-12 17:53:51 +02:00
discovery.scm discovery: 'scheme-files' returns '() for a non-accessible directory. 2017-06-18 00:14:07 +02:00
docker.scm
download.scm download: Prune the ImageMagick mirror list. 2017-05-20 14:06:20 -04:00
elf.scm
ftp-client.scm
gcrypt.scm
gexp.scm gexp: 'gexp-modules' accepts plain Scheme objects. 2017-04-19 17:51:39 +02:00
git-download.scm git-download: Fix 'git-predicate' to use absolute paths. 2017-05-30 18:08:37 +02:00
git.scm guix: git: Add new module. 2017-06-09 09:48:26 +02:00
gnu-maintenance.scm
gnupg.scm ui: Rename '_' to 'G_'. 2017-05-03 16:16:17 +02:00
grafts.scm derivations: Introduce 'read-derivation-from-file'. 2017-06-12 17:53:51 +02:00
graph.scm graph: Add Cypher backend. 2017-05-11 16:17:49 +02:00
hash.scm
hg-download.scm
http-client.scm ui: Rename '_' to 'G_'. 2017-05-03 16:16:17 +02:00
licenses.scm licenses: Add common TeX and LaTeX licenses. 2017-06-15 17:03:14 +02:00
memoization.scm
modules.scm modules: Raise an error when a dependency could not be found. 2017-05-25 14:25:17 +02:00
monad-repl.scm
monads.scm monads: Add a template and specialization mechanism for monadic procedures. 2017-05-02 23:41:13 +02:00
nar.scm ui: Rename '_' to 'G_'. 2017-05-03 16:16:17 +02:00
packages.scm packages: Patches can be any lowerable object. 2017-06-15 23:07:47 +02:00
pk-crypto.scm
pki.scm
profiles.scm profiles: Add elapsed time to manual-database hook to output message. 2017-05-20 10:15:47 +02:00
records.scm records: Slight simplification. 2017-04-17 23:31:28 +02:00
scripts.scm scripts: Do not create the config directory. 2017-05-13 00:03:46 +02:00
search-paths.scm
serialization.scm serialization: Remove Guile < 2.0.9 workaround. 2017-04-17 23:31:28 +02:00
sets.scm
ssh.scm ssh: Improve error reporting when 'send-files' fails. 2017-06-04 23:00:32 +02:00
store.scm store: Buffer RPC writes. 2017-06-19 23:23:14 +02:00
svn-download.scm guix: Add download-svn-to-store. 2017-06-15 17:03:14 +02:00
tests.scm store: 'GUIX_DAEMON_SOCKET' can now be a URI. 2017-04-21 17:23:37 +02:00
ui.scm store: Add an RPC counter. 2017-06-16 17:08:22 +02:00
upstream.scm ui: Rename '_' to 'G_'. 2017-05-03 16:16:17 +02:00
utils.scm utils: 'compressed-file?' matches ".lzma" files. 2017-05-15 23:55:10 +02:00
workers.scm scripts: Set thread names. 2017-05-28 23:13:39 +02:00
zlib.scm