guix/guix
Ludovic Courtès 7c1161dba4
records: 'match-record' checks fields at macro-expansion time.
This allows 'match-record' to be more efficient (field offsets are
computed at compilation time) and to report unknown fields at
macro-expansion time.

* guix/records.scm (map-fields): New macro.
(define-record-type*)[rtd-identifier]: New procedure.
Define TYPE as a macro and use a separate identifier for the RTD.
(lookup-field, match-record-inner): New macros.
(match-record): Rewrite in terms of 'match-error-inner'.
* tests/records.scm ("match-record, simple")
("match-record, unknown field"): New tests.
* gnu/services/cuirass.scm (cuirass-shepherd-service): Rename 'log-file'
local variable to 'main-log-file'.
* gnu/services/getmail.scm (serialize-getmail-configuration-file): Move
after <getmail-configuration-file> definition.
2022-12-02 00:02:12 +01:00
..
build build: kconfig: Add new module to modify defconfig files. 2022-12-01 11:57:06 -05:00
build-system gnu: linux-libre: Move info manual to doc output. 2022-12-01 10:53:49 -05:00
import import/cran: Add package name mapping. 2022-11-29 15:27:20 +01:00
platforms platforms: x86: Rename Hurd hurd to i586-gnu. 2022-09-24 14:49:07 +02:00
scripts offload: Increase default 'overload-threshold' value. 2022-11-23 19:34:42 +01:00
store guix gc: Add '--vacuum-database'. 2022-11-06 14:02:08 +02:00
tests tests: git: Write files as UTF-8. 2022-08-09 15:58:14 +02:00
android-repo-download.scm
avahi.scm
base16.scm
base32.scm
base64.scm
build-system.scm
bzr-download.scm
cache.scm
channels.scm channels: Interpret the 'commit' field of channel as a tag or commit. 2022-10-17 09:37:27 +02:00
ci.scm ci: Add 'start-time' and 'stop-time' to <build> records. 2022-10-20 23:07:37 +02:00
colors.scm
combinators.scm
config.scm.in
cpio.scm
cpu.scm
cve.scm
cvs-download.scm
d3.v3.js
deprecation.scm
derivations.scm
describe.scm
diagnostics.scm
discovery.scm
docker.scm
download.scm guix: Replace defective freemirror.org. 2022-11-13 01:00:07 +01:00
elf.scm
ftp-client.scm
gexp.scm Remove now unnecessary uses of (guix grafts). 2022-10-22 01:46:55 +02:00
git-authenticate.scm
git-download.scm
git.scm git: 'update-cached-checkout' returns the commit ID when given a tag. 2022-10-17 09:37:27 +02:00
glob.scm
gnu-maintenance.scm guix: Replace defective freemirror.org. 2022-11-13 01:00:07 +01:00
gnupg.scm
grafts.scm grafts: Run with a UTF-8 locale. 2022-11-11 23:17:42 +01:00
graph.js
graph.scm
hash.scm
hg-download.scm
http-client.scm
i18n.scm
inferior.scm inferior: Raise '&inferior-protocol-error' on invalid response. 2022-11-22 09:43:54 +01:00
ipfs.scm
least-authority.scm
licenses.scm licenses: Add EUPL 1.1. 2022-11-26 09:07:29 +01:00
lint.scm Remove now unnecessary uses of (guix grafts). 2022-10-22 01:46:55 +02:00
man-db.scm
memoization.scm
modules.scm
monad-repl.scm
monads.scm
nar.scm
narinfo.scm narinfo: Fix misleading docstring. 2022-09-24 17:59:04 +02:00
openpgp.scm
packages.scm guix: modify-input: Recommend prepend instead of append. 2022-11-21 14:25:13 +00:00
pki.scm
platform.scm guix: platform: Use #false instead of #f. 2022-09-07 14:24:52 +02:00
profiles.scm profiles: info-dir-file: Remove install-info '--silent' option. 2022-10-27 23:34:45 -04:00
profiling.scm
progress.scm
quirks.scm
read-print.scm read-print: Recognize 'define-record-type' and 'define-record-type*'. 2022-10-17 10:00:50 +02:00
records.scm records: 'match-record' checks fields at macro-expansion time. 2022-12-02 00:02:12 +01:00
remote.scm
repl.scm
scripts.scm Remove now unnecessary uses of (guix grafts). 2022-10-22 01:46:55 +02:00
search-paths.scm search-paths: Tweak $SSL_CERT_DIR comment. 2022-09-08 16:22:21 +02:00
self.scm self: Mark the generation (guix config) as non-declarative. 2022-11-14 12:31:33 +01:00
serialization.scm
sets.scm
ssh.scm ssh: 'open-ssh-session' gracefully handles connection timeouts. 2022-08-10 16:53:58 +02:00
status.scm
store.scm grafts: Move '%graft?' and related bindings to (guix store). 2022-10-22 01:46:54 +02:00
substitutes.scm
svn-download.scm svn-download: Add missing exports. 2022-10-17 23:15:08 +02:00
swh.scm
tests.scm
transformations.scm transformations: Switch to SRFI-71. 2022-10-02 22:14:45 +02:00
ui.scm guix: ui: Add default synopsis for “doc” output. 2022-11-05 10:23:24 +01:00
upstream.scm upstream: Factorize 'package-archive-type'. 2022-11-11 23:17:42 +01:00
utils.scm
workers.scm