Hi!
Maxim Cournoyer <[email protected]> skribis:
> This version field exposes the (already present) version information of a boot
> parameters file.
>
> * gnu/system.scm (%boot-parameters-version): New variable.
> (<boot-parameters>)[version]: New field.
> (read-boot-parameters): Use it.
> (operating-system-boot-parameters-file): Likewise.
> * tests/boot-parameters.scm (test-read-boot-parameters): Use
> %boot-parameters-version as the default version value in the template.
[...]
> + ;; New versions are not backward-compatible, so only accept past and
> current
> + ;; versions, not future ones.
> + (define (version? n)
> + (member n (iota (1+ %boot-parameters-version))))
> +
> (match (read port)
> - (('boot-parameters ('version 0)
> + (('boot-parameters ('version (? version? version))
I still have a preference for an explicit list right here, for clarity,
and so that we don’t unwillingly find ourselves treating any past
version in the same way in the future.
I think I wasn’t clear about it (sorry!) but I wonder if we could,
instead of bumping the version, use something like:
(find (cut string-prefix? "gnu.load=") kernel-arguments)
to determine whether we’re dealing with an “old-style” “parameters”
file.
If that’s not possible, then what this patch is doing SGTM.
Thanks,
Ludo’.