The base-URI of the schema is already set; references
that are relative and contain only a fragment (e.g. start with `#`)
resolve against the base-URI, so that's within this document.
Since we already have `definitions` as a key, `#/definitions`
references that sub-schema. We don't need the `$id` settings in
each sub-schema, which messes up the base-URI; it should have been
an `$anchor`, maybe, but isn't necessary after all.
3.3.0 wasn't a good choice and we **know** we're
not stable relative to that. Later release 3.3.3
introduced better visibility controls to reduce
the size of the interface that needs to be considered.
- Adding another example command broke the test which checks
the number of entries in the example script.
- Add a second line of output to the example command, so it makes
more sense to log it line-by-line.
If you switch languages, and then go to the partition
page, and pick "manual", the combo-box entries would
not be translated until **after** you do something
(e.g. edit a partition).
Now they are re-translated when the language changes.
There was an accumulation of connected slots when the
current device changed (CALAMARES_RETRANSLATE **adds** one).
Instead, extract the translated messages and carry the
necessary information (number of entries, and if just one,
its name) in the ChoicePage object.
Although you can't effectively change the translation /
current language while looking at the ChoicePage, it is
best to be future-proof.
Use yescrypt instead of sha512 when CRYPT_GENSALT is not used and the salt is manually determined.
yescrypt is the default key derivation function in almost every modern distro and grants higher levels of security.
https://www.openwall.com/yescrypt/
Although the standard is clear about what this means, Clang
warns about it, so change names to avoid the warning (and make
it slightly easier to read).