* [bug#61842] [PATCH] file-systems: Remove deprecated 'title' field helper procedures.
@ 2023-02-27 14:59 Bruno Victal
2023-03-05 22:05 ` bug#61842: " Ludovic Courtès
0 siblings, 1 reply; 2+ messages in thread
From: Bruno Victal @ 2023-02-27 14:59 UTC (permalink / raw)
To: 61842; +Cc: Bruno Victal, ludo
* gnu/system/file-systems.scm (<file-system>): Change constructor name to 'file-system'.
(report-deprecation, device-expression, process-file-system-declaration, file-system): Remove macros.
(file-system-title): Remove procedure.
---
gnu/system/file-systems.scm | 69 +------------------------------------
1 file changed, 1 insertion(+), 68 deletions(-)
diff --git a/gnu/system/file-systems.scm b/gnu/system/file-systems.scm
index f2eb2e0837..b236011100 100644
--- a/gnu/system/file-systems.scm
+++ b/gnu/system/file-systems.scm
@@ -42,7 +42,6 @@ (define-module (gnu system file-systems)
file-system?
file-system-device
file-system-device->string
- file-system-title ;deprecated
file-system-mount-point
file-system-type
file-system-needed-for-boot?
@@ -158,7 +157,7 @@ (define-syntax validate-file-system-flags
#'%validate-file-system-flags))))
;; File system declaration.
-(define-record-type* <file-system> %file-system
+(define-record-type* <file-system> file-system
make-file-system
file-system?
(device file-system-device) ; string | <uuid> | <file-system-label>
@@ -200,72 +199,6 @@ (define-record-type <file-system-label>
(format port "#<file-system-label ~s>"
(file-system-label->string obj))))
-(define-syntax report-deprecation
- (lambda (s)
- "Report the use of the now-deprecated 'title' field."
- (syntax-case s ()
- ((_ field)
- (let* ((source (syntax-source #'field))
- (file (and source (assq-ref source 'filename)))
- (line (and source
- (and=> (assq-ref source 'line) 1+)))
- (column (and source (assq-ref source 'column))))
- (format (current-error-port)
- "~a:~a:~a: warning: 'title' field is deprecated~%"
- file line column)
- #t)))))
-
-;; Helper for 'process-file-system-declaration'.
-(define-syntax device-expression
- (syntax-rules (quote label uuid device)
- ((_ (quote label) dev)
- (file-system-label dev))
- ((_ (quote uuid) dev)
- (if (uuid? dev) dev (uuid dev)))
- ((_ (quote device) dev)
- dev)
- ((_ title dev)
- (case title
- ((label) (file-system-label dev))
- ((uuid) (uuid dev))
- (else dev)))))
-
-;; Helper to interpret the now-deprecated 'title' field. Detect forms like
-;; (title 'label), remove them, and adjust the 'device' field accordingly.
-;; TODO: Remove this once 'title' has been deprecated long enough.
-(define-syntax process-file-system-declaration
- (syntax-rules (device title)
- ((_ () (rest ...) #f #f) ;no 'title' and no 'device' field
- (%file-system rest ...))
- ((_ () (rest ...) dev #f) ;no 'title' field
- (%file-system rest ... (device dev)))
- ((_ () (rest ...) dev titl) ;got a 'title' field
- (%file-system rest ...
- (device (device-expression titl dev))))
- ((_ ((title titl) rest ...) (previous ...) dev _)
- (begin
- (report-deprecation (title titl))
- (process-file-system-declaration (rest ...)
- (previous ...)
- dev titl)))
- ((_ ((device dev) rest ...) (previous ...) _ titl)
- (process-file-system-declaration (rest ...)
- (previous ...)
- dev titl))
- ((_ (field rest ...) (previous ...) dev titl)
- (process-file-system-declaration (rest ...)
- (previous ... field)
- dev titl))))
-
-(define-syntax-rule (file-system fields ...)
- (process-file-system-declaration (fields ...) () #f #f))
-
-(define (file-system-title fs) ;deprecated
- (match (file-system-device fs)
- ((? file-system-label?) 'label)
- ((? uuid?) 'uuid)
- ((? string?) 'device)))
-
;; Note: This module is used both on the build side and on the host side.
;; Arrange not to pull (guix store) and (guix config) because the latter
;; differs from user to user.
--
2.39.1
^ permalink raw reply related [flat|nested] 2+ messages in thread
* bug#61842: [PATCH] file-systems: Remove deprecated 'title' field helper procedures.
2023-02-27 14:59 [bug#61842] [PATCH] file-systems: Remove deprecated 'title' field helper procedures Bruno Victal
@ 2023-03-05 22:05 ` Ludovic Courtès
0 siblings, 0 replies; 2+ messages in thread
From: Ludovic Courtès @ 2023-03-05 22:05 UTC (permalink / raw)
To: Bruno Victal; +Cc: 61842-done
Hi,
Bruno Victal <mirai@makinata.eu> skribis:
> * gnu/system/file-systems.scm (<file-system>): Change constructor name to 'file-system'.
> (report-deprecation, device-expression, process-file-system-declaration, file-system): Remove macros.
> (file-system-title): Remove procedure.
Good riddance. :-) Applied, thanks!
Ludo’.
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2023-03-05 22:06 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-02-27 14:59 [bug#61842] [PATCH] file-systems: Remove deprecated 'title' field helper procedures Bruno Victal
2023-03-05 22:05 ` bug#61842: " Ludovic Courtès
Code repositories for project(s) associated with this external index
https://git.savannah.gnu.org/cgit/guix.git
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.