guix-devel/guix
Ludovic Courtès 24ab804ce1
gexp: Catch and report non-self-quoting gexp inputs.
Previously we would, for example, generate build scripts in the store;
when trying to run them, we'd get a 'read' error due to the presence
of #<foo> syntax in there.

* guix/gexp.scm (gexp->sexp)[self-quoting?]: New procedure.
[reference->sexp]: Check whether the argument in a <gexp-input> box is
self-quoting.  Raise a '&gexp-input-error' condition if it's not.
* tests/gexp.scm ("lower-gexp, non-self-quoting input"): New test.
2019-09-23 23:41:19 +02:00
..
build build: ruby-build-system: Fix typo. 2019-09-23 12:08:13 -07:00
build-system Revert "build-system/r: Use %bioconductor-version." 2019-09-16 14:34:15 +03:00
import import: stackage: Fix typo. 2019-09-23 12:06:46 -07:00
scripts show, search: Add '--load-path'. 2019-09-23 23:41:19 +02:00
store daemon: Invoke 'guix gc --list-busy' instead of 'list-runtime-roots'. 2019-09-08 11:49:24 +02:00
tests channels: Allow news entries to refer to a tag. 2019-09-23 10:38:44 +02:00
base16.scm
base32.scm
base64.scm
build-system.scm
bzr-download.scm download: Pass 'http_proxy' et al. to git, hg, etc. 2019-09-05 18:33:30 +02:00
cache.scm
channels.scm channels: Allow news entries to refer to a tag. 2019-09-23 10:38:44 +02:00
ci.scm ci: Use (guix json) and adjust for Guile-JSON 3.x. 2019-09-04 13:02:27 +02:00
colors.scm colors: Add 'highlight'. 2019-04-14 23:40:52 +02:00
combinators.scm
config.scm.in Add (guix lzlib). 2019-05-06 23:21:33 +02:00
cpio.scm
cve.scm cve: Update feed URL. 2018-08-26 01:47:40 +02:00
cvs-download.scm download: Pass 'http_proxy' et al. to git, hg, etc. 2019-09-05 18:33:30 +02:00
deprecation.scm deprecation: Use the 'warning' procedure for diagnostics. 2019-06-03 23:18:47 +02:00
derivations.scm derivations: Fix typo in docstring. 2019-08-17 19:26:10 +02:00
describe.scm describe: Add 'current-profile-date'. 2019-03-17 22:55:01 +01:00
diagnostics.scm diagnostics: Avoid highlighting complete messages. 2019-08-28 18:52:52 +02:00
discovery.scm discovery: 'scheme-files' ignores hidden files. 2019-07-26 21:49:25 +02:00
docker.scm pack: Provide a meaningful "repository name" for Docker. 2019-09-16 10:25:31 +02:00
download.scm download: Use the new 'derivation' calling convention. 2019-07-15 10:01:05 +02:00
elf.scm
ftp-client.scm Remove most uses of the _IO*F constants. 2019-01-09 14:47:53 +01:00
gexp.scm gexp: Catch and report non-self-quoting gexp inputs. 2019-09-23 23:41:19 +02:00
git-download.scm download: Pass 'http_proxy' et al. to git, hg, etc. 2019-09-05 18:33:30 +02:00
git.scm git: Add 'commit-difference'. 2019-09-23 10:38:43 +02:00
glob.scm glob: Add an extra glob pattern compilation stage. 2018-03-18 22:57:17 +01:00
gnu-maintenance.scm upstream: Move KDE updater into a separate module. 2019-09-10 19:04:06 +02:00
gnupg.scm gnupg: Change default keyserver. 2018-09-25 18:45:50 +02:00
grafts.scm grafts: 'references-oracle' now takes a derivation input. 2019-07-02 18:33: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
hg-download.scm download: Pass 'http_proxy' et al. to git, hg, etc. 2019-09-05 18:33:30 +02:00
http-client.scm Remove most uses of the _IO*F constants. 2019-01-09 14:47:53 +01:00
i18n.scm ui: Introduce (guix i18n). 2017-11-08 22:31:58 +01:00
inferior.scm inferior: Fix typo. 2019-09-23 12:03:00 -07:00
json.scm Add (guix json). 2019-09-04 13:02:27 +02:00
licenses.scm licenses: Add Historical Permission Notice and Disclaimer license 2019-06-20 18:24:49 +02:00
lint.scm lint: Fix typo. 2019-09-23 12:00:03 -07:00
lzlib.scm lzlib: 'make-lzip-input-port' better handles end of decompression. 2019-06-01 15:26:30 +02:00
man-db.scm profiles: Use 'with-extensions'. 2018-06-01 15:21:28 +02:00
memoization.scm memoization: Add 'invalidate-memoization!. 2017-12-13 23:11:53 +01:00
modules.scm Remove traces of "GuixSD". 2019-03-13 23:12:43 +01:00
monad-repl.scm
monads.scm monads, gexp: Prevent redefinition of syntax parameters. 2019-02-06 23:06:18 +01:00
nar.scm nar: Really lock store files. 2019-06-05 23:10:37 +02:00
packages.scm packages: 'package-field-location' really catches 'system-error. 2019-09-10 00:34:40 +02:00
pki.scm Switch to Guile-Gcrypt. 2018-09-04 17:25:11 +02:00
profiles.scm profiles: Adjust packages->manifest pattern for inferior packages. 2019-07-03 12:03:07 +02:00
profiling.scm profiling: Add a "gc" profiling component. 2019-01-15 20:24:08 +01:00
progress.scm progress: Call 'time-difference' on times of the same type. 2019-06-24 23:10:13 +02:00
records.scm records: Support custom 'this' identifiers. 2019-03-30 11:08:39 +01:00
remote.scm remote, ssh: Show the command exit status upon failure. 2019-08-28 18:52:52 +02:00
repl.scm repl, marionette: 'self-quoting?' matches keywords. 2019-09-23 23:41:19 +02:00
scripts.scm scripts: GC hint suggests 'guix gc -d 1m'. 2019-04-10 17:09:47 +02:00
search-paths.scm search-paths: Add 'set-search-paths'. 2018-05-10 14:53:57 +02:00
self.scm maint: Switch to Guile-JSON 3.x. 2019-07-25 00:16:41 +02:00
serialization.scm store: Rename '&nix-error' to '&store-error'. 2019-01-21 23:09:55 +01:00
sets.scm
ssh.scm remote, ssh: Show the command exit status upon failure. 2019-08-28 18:52:52 +02:00
status.scm colors: Introduce a disjoint type and pre-compute ANSI escapes. 2019-04-11 18:18:13 +02:00
store.scm store: 'run-with-store' gracefully deals with #f store. 2019-07-05 00:51:17 +02:00
svn-download.scm download: Pass 'http_proxy' et al. to git, hg, etc. 2019-09-05 18:33:30 +02:00
swh.scm Add (guix json). 2019-09-04 13:02:27 +02:00
tests.scm lzlib: Add 'make-lzip-input-port/compressed'. 2019-05-27 22:47:24 +02:00
ui.scm ui: Add 'current-message-language'. 2019-09-23 10:38:44 +02:00
upstream.scm refresh: Distinguish between "no updater" and "failing updater". 2019-09-10 00:34:40 +02:00
utils.scm guix: Rename and move sans-extension to tarball-sans-extension. 2019-09-10 19:04:05 +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