guix-devel/guix
Ludovic Courtès 7874bbbb9f
records: Insert record type ABI checks in constructors.
* guix/records.scm (print-record-abi-mismatch-error): New procedure.
<top level>: Add 'set-exception-printer!' call.
(current-abi-identifier, abi-check): New procedures.
(make-syntactic-constructor): Add #:abi-cookie parameter.  Insert calls
to 'abi-check'.
(define-record-type*)[compute-abi-cookie]: New procedure.
Use it and emit a definition of the 'current-abi-identifier' for TYPE.
* tests/records.scm ("ABI checks"): New test.
2018-05-23 10:21:02 +02:00
..
build union: Do not warn about harmless collisions. 2018-05-17 10:48:37 +02:00
build-system gnu: android-make-stub: Update to 0.6.0. 2018-05-10 15:35:28 +02:00
import Correct name and Email for ng0. 2018-03-20 17:17:58 +01:00
scripts pack: Link top-level entries of wrapped packages. 2018-05-14 23:01:36 +02:00
store store: Support 'ssh://' URIs in 'GUIX_DAEMON_SOCKET'. 2017-04-21 19:17:36 +02:00
tests tests: Support multiple HTTP server instances. 2017-10-12 23:47:48 +02:00
base16.scm utils: Move base16 procedures to (guix base16). 2017-03-16 22:50:14 +01:00
base32.scm base32: Export the base32 charsets. 2017-07-21 17:03:24 +02:00
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
ci.scm Add (guix ci). 2018-03-28 16:17:06 +02:00
combinators.scm Add (guix memoization). 2017-01-28 18:55:20 +01:00
config.scm.in pull: Install (guix config) module to override the user's one. 2016-07-20 22:53:02 +02:00
cpio.scm
cve.scm cve: Use 'http-fetch/cached' instead of having custom caching. 2017-11-16 08:45:15 +01:00
cvs-download.scm download: Download a nar when a VCS checkout fails. 2017-10-19 23:21:49 +02:00
derivations.scm derivations: Fix typo in docstring. 2018-01-11 00:00:03 +01:00
discovery.scm discovery: Remove dependency on (guix ui). 2018-04-08 17:48:33 +02:00
docker.scm guix: Rewrite build-docker-image to allow more paths. 2018-03-24 03:04:10 +01:00
download.scm download: Use ungrafted tools in 'url-fetch/tarbomb' and 'url-fetch/zipbomb'. 2018-04-23 15:25:56 +02:00
elf.scm
ftp-client.scm download: Pass the timeout to 'ftp-retr'. 2017-11-14 23:46:53 +01:00
gcrypt.scm
gexp.scm gexp: Disable deprecation warnings for 'imported-modules'. 2018-05-15 10:34:45 +02:00
git-download.scm git-download: Fix recursive checkouts. 2018-03-18 20:00:44 -05:00
git.scm git: Increase modularity and expose 'update-cached-checkout'. 2018-04-02 23:16:30 +02:00
glob.scm glob: Add an extra glob pattern compilation stage. 2018-03-18 22:57:17 +01:00
gnu-maintenance.scm gnu-maintenance: 'latest-ftp-release' ignores "unstable" directories. 2017-12-17 16:52:27 +01:00
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 Revert "graph: Provide access to the package record in the emit functions." 2017-08-24 23:55:51 +02:00
hash.scm hash: Add 'sha1'. 2018-03-08 11:56:20 +01:00
hg-download.scm download: Download a nar when a VCS checkout fails. 2017-10-19 23:21:49 +02:00
http-client.scm build: Require Guile >= 2.0.13. 2018-02-26 18:19:34 +01:00
i18n.scm ui: Introduce (guix i18n). 2017-11-08 22:31:58 +01:00
licenses.scm Correct name and Email for ng0. 2018-03-20 17:17:58 +01:00
man-db.scm guix: Exclude broken symlinks from man files. 2017-12-22 00:06:37 +01:00
memoization.scm memoization: Add 'invalidate-memoization!. 2017-12-13 23:11:53 +01:00
modules.scm modules: Report the search path in &missing-dependency-error. 2018-04-08 17:41:08 +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 guix: Separate the package name and version with "@", not "-". 2018-05-08 21:55:46 -07:00
pk-crypto.scm publish: The public and private keys are now SRFI-39 parameters. 2017-03-22 14:05:59 +01:00
pki.scm Use (ice-9 binary-ports) instead of (rnrs io ports). 2016-10-19 15:54:10 +02:00
profiles.scm profiles: Add hook to generate "gschemas.compiled". 2018-05-21 09:56:37 +02:00
profiling.scm Add (guix profiling). 2017-12-12 18:11:22 +01:00
progress.scm progress: Rename 'erase-in-line' to 'erase-current-line'. 2017-12-15 11:53:21 +01:00
records.scm records: Insert record type ABI checks in constructors. 2018-05-23 10:21:02 +02:00
scripts.scm scripts: Factorize option parsing sans 'GUIX_BUILD_OPTIONS'. 2017-10-28 09:45:53 +02:00
search-paths.scm search-paths: Add 'set-search-paths'. 2018-05-10 14:53:57 +02:00
self.scm self: Add "guix-packages-base" derivation. 2018-05-07 00:17:34 +02:00
serialization.scm store: Fix potential over-reads in 'import-paths'. 2018-01-11 00:00:02 +01:00
sets.scm
ssh.scm ssh: Work around 'select' bug in Guile. 2018-02-09 11:23:27 +01:00
store.scm store: Fix potential over-reads in 'import-paths'. 2018-01-11 00:00:02 +01: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 guix build: Nicely report unbound variables with hints. 2018-05-04 15:07:08 +02:00
upstream.scm discovery: Remove dependency on (guix ui). 2018-04-08 17:48:33 +02:00
utils.scm utils: Add 'version-prefix?'. 2018-05-13 13:29:27 +02:00
workers.scm workers: Display backtrace in pre-unwind handler. 2017-11-17 10:47:56 +01:00
zlib.scm zlib: Fix race condition when closing gzip ports. 2017-11-19 23:09:01 +01:00