This is the changelog for Calamares. For each release, the major changes and contributors are listed. Note that Calamares does not have a historical changelog -- this log starts with version 3.3.0. See CHANGES-3.2 for the history of the 3.2 series (2018-05 - 2022-08). # 3.3.0-alpha3 (unreleased) This release contains contributions from (alphabetically by first name): - Adriaan de Groot - Anke Boersma - Evan James - Jeremy Attall - Johannes Kamprad - Shivanand - Peter Jung ## Core ## - Incompatible module-configuration changes, see #1438. - Branding entries use ${var} instead of @{var} for substitutions, in line with all the other substitution mechanisms used from C++ core. See documentation in `branding.desc`. - Boost::Python requires at least version 1.72 - KDE Frameworks must be version 5.58 or later ## Modules ## - *dracut* added a configurable kernel name. (thanks Anke) - *initcpiocfg* orders hookds slightly differently. (thanks Peter) - *localeq* moved to using Drawer instead of ComboBox in UI. (thanks Anke) - *keyboardq* moved to using Drawer instead of ComboBox in UI. (thanks Anke) - *netinstall* now has a new *noncheckable* option for groups, which prevent it a group from being checked/uncheckd as a whole. You can still check individual items **in** the group though. (thanks Shivanand) - *partition* can now pick LUKS or LUKS2. (thanks Jeremy) - *zfs* creates a hostid through zgenhostid. - *zfshostid* new module to copy zfs generated /etc/hostid # 3.3.0-alpha2 (2022-08-23) Second alpha release, with updated ABI compatibility checking, some 3.3.0 release goals, new features in modules and important bugfixes. This release contains contributions from (alphabetically by first name): - Adriaan de Groot - Anke Boersma - Evan James - Shivanand - Vitor Lopes ## Core ## A core **TODO** is moving all library code into the `Calamares` namespace, dropping the `CalamaresUtils` namespace. Modern C++ supports nested namespaces, so in some cases we can use those. This has a drastic effect on ABI compatibility, though, as functions move from one namespace to another. This needs to be completed before a 3.3.0 with ABI stability is released. ## Modules ## Module schemas have been updated to reflect all the incompatible changes. # 3.3.0-alpha1 (2022-06-27) Initial 3.3.0 alpha release to check the release scripts &c. This release contains contributions from (alphabetically by first name): - Adriaan de Groot - Aleksey Samoilov - Anke Boersma - Dan Simmons - Evan James - Peter Jung # 3.3.0-pre-alpha (unreleased) # This release contains contributions from (alphabetically by first name): - Anke Boersma - Anubhav Choudhary - Evan James - Vitor Lopes This is a "minor" version change, but the size of the changes is very large. Configuration files from previous versions of Calamares will **certainly** need to be re-validated. Take heed of the many changes in the *Modules* heading, below. Users (distributions) are **strongly** advised to use the tools for configuration validation (`ci/configvalidator.py`) to check that the distribution configuration files follow the current schema. ## Project ## - The C++ code in the project is now formatted with clang-format 12 or 13, with the coding-style as found in `.clang-format`; there are minor differences from the tool, compared to the clang-format 9 usually applied to Calamares 3.2. - The CMake code in the project is now formatted with gersemi 0.7.5. ## Core ## - CMake 3.16, Qt 5.15 are now required; the newer CMake is to support new features (also for KDE Frameworks), Qt is the current LTS version. - Running `calamares -d` no longer enforces a single-application (it is for debugging purposes, after all). - Python 3.6 or later is now required, to allow for F-strings in Python code and allow other tidy-ups in the Python modules. Boost::Python now requires 1.67 or later (for CMake support). - The log file now **always** contains a debug-log, and the `-D` flag primarily controls what is printed to stdout. By default, stdout only gets errors; use `-D6` to match stdout with the file. Use `-D8` to get an extra-verbose log file **and** verbose stdout. ## Modules ## - *bootloader* now supports more options when building the kernel command-line. (Thanks Evan) - *bootloader* no longer supports `@@`-style suffixes for unique-EFI-id generation. Use `${}` instead. - *displaymanager* no longer supports the discontinued *kdm* display manager. - *fstab* configuration has been completely re-done. Many configuration options have moved to the *mount* module. See #1993 - *grubcfg* changed the key *keepDistributor* to *keep_distributor*. Please update configurations. - *mount* now does most of the mounting; options that were in *fstab* have moved here. See #1993 - *oemid* now uses consistent variable replacement (e.g. KMacroExpander) and does not support `@@DATE@@` anymore (use `${DATE}`). - *partition* requires KPMCore 21.12 (e.g. KPMCore 4.2 API, or later). - *partition* can now skip installing the bootloader in more scenarios. #1632 (Thanks Anubhav) - *preservefiles* follows `${}` variable syntax instead of `@@`.