guix/guix
Mathieu Othacehe 0b8fa24bbd
publish: Add keep-alive support when sending nar.
The default Guile web server implementation supports the keep alive
mechanism. However, in our custom http-write implementation, the connection
is unconditionally close after sending nar files.

To prevent that, when supported, add the client port to the server poll set so
that further requests can be handled without closing the connection.

* guix/scripts/publish.scm (nar-response-port): Rename it into ...
(nar-compressed-port): ... this procedure. Operate directly on a given PORT.
(http-write): Add keep-alive support when sending nar files.
* guix/scripts/substitute.scm (process-substitution): Pass the download size
to the progress-report-port procedure so that it doesn't block reading from
the input port when keep-alive is supported.
2021-06-01 09:10:32 +02:00
..
build build-system: asdf: Work around package-name->name+version bug. 2021-05-08 13:42:38 +02:00
build-system build-system: asdf: Work around package-name->name+version bug. 2021-05-08 13:42:38 +02:00
import import: opam: Generate license for package. 2021-05-28 11:36:03 +02:00
scripts publish: Add keep-alive support when sending nar. 2021-06-01 09:10:32 +02:00
store database: Validate #:nar-size and #:time when registering store items. 2021-01-31 21:49:58 +01:00
tests tests: do not hard code HTTP ports 2021-03-06 11:41:48 +01:00
android-repo-download.scm android-repo-download: Add guile-json extension. 2021-05-02 18:45:27 +02:00
avahi.scm avahi: Remove poll timeout when possible. 2020-12-20 10:40:57 +01:00
base16.scm
base32.scm
base64.scm
build-system.scm
bzr-download.scm
cache.scm git: Periodically delete least-recently-used cached checkouts. 2021-01-13 16:26:58 +01:00
channels.scm channels: Add a #:system argument to channel-instances->manifest. 2021-05-12 08:34:07 +01:00
ci.scm guix: ci: Add spec support to latest-evaluations. 2021-05-26 15:29:32 +02:00
colors.scm
combinators.scm
config.scm.in build: Add '--with-channel-commit' and related configure flags. 2021-02-04 09:23:39 +01:00
cpio.scm linux-initrd: Add special-file->cpio-header*. 2020-11-22 11:03:31 +01:00
cve.scm cve: Gracefully handle bogus CVE entries. 2021-04-25 14:35:42 +02:00
cvs-download.scm cvs-download: Fix module exports 2021-05-05 16:56:43 +02:00
d3.v3.js graph: Install JavaScript files. 2021-01-04 23:54:16 +01:00
deprecation.scm
derivations.scm
describe.scm describe: Gracefully handle profiles that lack provenance info. 2021-05-09 23:46:46 +02:00
diagnostics.scm diagnostics, ui: Adjust to 'read-error' and 'syntax-error' in Guile 3.0.6. 2021-05-09 23:45:36 +02:00
discovery.scm
docker.scm docker: Pass '--hard-dereference' to 'tar' to ensure reproducible builds. 2021-02-08 23:50:35 +01:00
download.scm lint: archival: Lookup content in Disarchive database. 2021-05-22 23:13:11 +02:00
elf.scm
ftp-client.scm ftp-client: Before 'PASV', try 'EPSV' first for IPv6. 2021-02-15 08:38:00 +08:00
gexp.scm gexp: 'gexp->script' uses #:guile also as the guile-for-build. 2021-03-29 16:47:23 +02:00
git-authenticate.scm channels: Consider the current channel commit as authentic. 2021-02-04 09:23:39 +01:00
git-download.scm git-download: Support submodules in 'git-predicate'. 2021-05-28 11:36:02 +02:00
git.scm git: Honor proxy settings when fetching submodules. 2021-04-14 22:51:38 +02:00
glob.scm guix: Add globstar support. 2020-12-09 22:25:17 +01:00
gnu-maintenance.scm gnu-maintenance: 'generic-html' correctly handles relative release URLs. 2021-05-28 23:04:44 +02:00
gnupg.scm
grafts.scm grafts: Inline 'grafting?' and 'set-grafting'. 2021-02-23 15:24:47 +01:00
graph.js graph: Install JavaScript files. 2021-01-04 23:54:16 +01:00
graph.scm graph: Install JavaScript files. 2021-01-04 23:54:16 +01:00
hg-download.scm hg-download: Add guile-json and gnutls extensions. 2021-05-02 18:42:11 +02:00
http-client.scm http-client: Remove exception mishandling in 'http-multiple-get'. 2021-04-25 14:36:45 +02:00
i18n.scm
inferior.scm inferior: Support querying package replacements. 2021-05-15 12:14:47 +01:00
ipfs.scm Add (guix ipfs). 2021-04-12 18:42:22 +02:00
licenses.scm licenses: Add Free Art License 1.3. 2021-03-29 11:56:05 +02:00
lint.scm lint: archival: Lookup content in Disarchive database. 2021-05-22 23:13:11 +02:00
man-db.scm
memoization.scm
modules.scm modules: Recognize #:re-export-and-replace. 2021-01-19 17:45:38 +01:00
monad-repl.scm
monads.scm maint: Require Guile >= 2.2.6. 2020-12-19 23:25:01 +01:00
nar.scm database: Remove #:deduplicate? from 'register-items'. 2020-12-15 17:32:11 +01:00
narinfo.scm substitute: Choose compression method based on past CPU usage. 2021-03-21 23:41:01 +01:00
openpgp.scm openpgp: Remove now unnecessary procedure. 2021-03-02 23:12:37 +01:00
packages.scm packages: 'package-with-patches' preserves package location. 2021-04-29 01:22:04 +02:00
pki.scm
profiles.scm guix: Build texlive-configuration only when texlive-base is present. 2021-05-20 16:29:41 +02:00
profiling.scm
progress.scm progress: Add a download-size argument to progress-report-port. 2021-06-01 09:10:32 +02:00
quirks.scm
records.scm
remote.scm
repl.scm repl: Fix exception handling for interpreted code. 2021-01-21 00:14:38 +01:00
scripts.scm guix: scripts: Fix corner cases of hint for option typo. 2021-02-24 23:50:13 +01:00
search-paths.scm
self.scm self: Add dependency on Disarchive. 2021-05-14 23:24:08 +02:00
serialization.scm serialization: Micro-optimize string literal output in 'write-file-tree'. 2021-03-01 17:45:51 +01:00
sets.scm
ssh.scm ssh: Fix type that broke offloading. 2021-05-11 12:49:53 +02:00
status.scm status: Avoid abbreviation in messages. 2021-05-05 00:57:35 +02:00
store.scm store: Export 'connect-to-daemon'. 2021-05-08 14:55:51 +02:00
substitutes.scm substitutes: Reduce negative TTLs. 2021-05-16 23:28:11 +02:00
svn-download.scm
swh.scm swh: 'lookup-origin-revision' ignores partial visits. 2021-05-14 23:25:09 +02:00
tests.scm Revert "tests: Refer to '%derivation-cache' in the right module." 2021-03-06 11:41:48 +01:00
transformations.scm transformations: Add '--with-latest'. 2021-01-19 17:45:39 +01:00
ui.scm ui: 'load*' compiles with '-O1'. 2021-05-17 23:59:58 +02:00
upstream.scm upstream: 'package-latest-release' tries all the matching updaters. 2021-04-06 23:59:46 +02:00
utils.scm utils: 'tarball-sans-extension' recognizes ".tgz". 2021-04-05 12:03:09 +02:00
workers.scm