1
0
forked from tribes/guix
Commit Graph

14 Commits

Author SHA1 Message Date
Ludovic Courtès 1114504b31 Revert "guix: diagnostics: Export 'info' as replacement."
This reverts commit 6c6139bce0: this change
worked “by chance” since no Guile 3.0.x release provides an ‘info’ binding to
replace.  See <https://codeberg.org/guix/guix/pulls/4074#issuecomment-8289707>.

Change-Id: Icadc7fcf337ca1ff3b3d3af5a66b47e8cd2f61b2
2025-12-07 21:59:52 +01:00
Martin Schitter 6c6139bce0 guix: diagnostics: Export 'info' as replacement.
This change suppresses warning output that interfere 
and break nar signing procedures in guix resp. their
authenticationAgent communication.

* guix/diagnostics.scm
2025-11-15 15:53:15 +09:00
Ludovic Courtès 9f3ea03516 diagnostics: Factorize 'absolute-location'.
* guix/scripts/style.scm (absolute-location): Move to...
* guix/diagnostics.scm (absolute-location): ... here.
* guix/upstream.scm (update-package-source): Use it.
2023-05-31 23:25:25 +02:00
Maxim Cournoyer 53cd5923ef diagnostics: Fix typo about 0-indexed COL in location.
* guix/diagnostics.scm (source-properties->location): The location column is
0-indexed, not 1-indexed (the same as in source-properties, so the code is
accurate).
2022-05-31 14:52:14 -04:00
Ludovic Courtès 13307c198b diagnostics: Turn diagnostic locations into hyperlinks.
* guix/diagnostics.scm (print-diagnostic-prefix): Use
'location->hyperlink' when 'supports-hyperlinks?' returns true.
2022-04-08 23:59:48 +02:00
Ludovic Courtès 3da62bf5aa ui: Move 'location->hyperlink' to (guix diagnostics).
* guix/ui.scm (location->hyperlink): Move to...
* guix/diagnostics.scm: ... here.
* guix/scripts/system/search.scm: Adjust imports accordingly.
2022-04-08 23:59:48 +02:00
Josselin Poiret 346d2f6488 diagnostics: Add syntax to capture arguments' syntax-properties.
* guix/diagnostics.scm (define-with-syntax-properties): Add it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2021-11-17 23:05:58 +01:00
Ludovic Courtès 524c9800af diagnostics, ui: Adjust to 'read-error' and 'syntax-error' in Guile 3.0.6.
* guix/diagnostics.scm (source-properties->location): Add clause for
vectors.
* guix/ui.scm (report-load-error): Tweak 'read-error' handling for 3.0.6.
* tests/guix-package.sh: Relax regexp for the "unbound variable"
diagnostic check.
* tests/guix-system.sh: Adjust "missing closing paren" check for 3.0.6.
* tests/records.scm (location-alist): New procedure.
("define-record-type* & wrong field specifier")
("define-record-type* & wrong field specifier, identifier")
("define-record-type* & duplicate initializers"): Use it.
2021-04-29 01:22:04 +02:00
Ludovic Courtès 252a1926bc diagnostics: Add '&formatted-message'.
This allows 'gettext' to be called on the format string at the site
where the exception is caught (rather than the site where it's thrown).
It also allows for argument highlighting.

* guix/diagnostics.scm (&formatted-message): New condition type.
(check-format-string): New procedure.
(formatted-message): New macro.
* guix/ui.scm (report-load-error): Add clause for 'formatted-message?'.
(warn-about-load-error): Likewise.
(call-with-error-handling): Likewise.
(read/eval): Likewise.
2020-07-25 19:11:36 +02:00
Ludovic Courtès 860f3d7749 diagnostics: Add a procedural variant of diagnostic procedures.
Callers can pass 'report-error', 'warning', etc. to 'apply'.

* guix/diagnostics.scm (trivial-format-string?): New procedure, moved
from...
(highlight-argument): ... here.
(define-diagnostic): Add 'identifier?' clause.
(emit-diagnostic): New procedure.
2020-07-25 19:11:36 +02:00
Ludovic Courtès f9a8dd053c utils: Move '&fix-hint' to (guix diagnostics).
* guix/utils.scm (&fix-hint): Move to...
* guix/diagnostics.scm (&fix-hint): ... here.
* gnu.scm: Adjust imports accordingly.
* gnu/system/mapped-devices.scm: Likewise.
* guix/channels.scm: Likewise.
* guix/profiles.scm: Likewise.
* guix/scripts/system/reconfigure.scm: Likewise.
* guix/ssh.scm: Likewise.
2020-07-25 19:11:36 +02:00
Ludovic Courtès a5e2fc7376 utils: Move <location> and '&error-location' to (guix diagnostics).
* guix/utils.scm (<location>, source-properties->location)
(location->source-properties, &error-location): Move to...
* guix/diagnostics.scm: ... here.
* gnu.scm: Adjust imports accordingly.
* gnu/machine.scm: Likewise.
* gnu/system.scm: Likewise.
* gnu/tests.scm: Likewise.
* guix/inferior.scm: Likewise.
* tests/channels.scm: Likewise.
* tests/packages.scm: Likewise.
2020-07-25 19:11:36 +02:00
Ludovic Courtès d229215051 diagnostics: Avoid highlighting complete messages.
* guix/diagnostics.scm (%highlight-argument): Don't highlight ARG if it
contains white space.
2019-08-28 18:52:52 +02:00
Ludovic Courtès 1b5ee3bdaa Add (guix diagnostics).
* guix/ui.scm (warning, info, report-error, leave)
(location->string, guix-warning-port, program-name)
(highlight-argument, %highlight-argument, define-diagnostic)
(%warning-color, %info-color, %error-color)
(print-diagnostic-prefix): Move to...
* guix/diagnostics.scm: ... here.  New file.
* Makefile.am (MODULES): Add it.
2019-06-03 23:18:47 +02:00