We're changing the unit of one of our settings, so we need to implement a version upgrade to change that for our users in case they changed this setting themselves.
Contributes to issue CURA-7118.
Since the metadata/setting_version field was not written in project files from the 3MF writer,
the preferences were never really updated, because their preferences version was marked as 6000000
(basically omitting the setting_version). Now, if any project file is found without a metadata
setting_version tag, it will default to preference version 6000000 and thus it will start calling
the updatedPreferences() functions starting from VersionUpgrade34to35, properly updating the
preferences and adding the metadata/setting_version field in the preferences.cfg of the project
file.
CURA-6711
It was decided that functionality present in existing plugins is
sufficient. No need to replicate it in our own codebase and
take on the burden of maintenance
CURA-5479
These two version upgraders do the same operation. Their code is copied. Instead, we can just let one version upgrader upgrade both versions of the files.
Contributes to issue CURA-7413.
Previously, the ironing_inset was changed in the profiles to reflect
the changes made in the CuraEngine. This inset though was not taking
into account the ironing_pattern (in the CuraEngine, the inset is
compensated differently depending on the pattern).
This commit fixes that in the version upgrader and the printer
definitions in order to maintain the same behavior for the old
profiles.
CURA-7318
The slicer has been adjusted to give this setting a more logical function: It should be an inset of the outer edge of ironing as it appears in layer view where the lines are made thinner according to their flow.
As a result all of the slices with ironing have changed. This adjusts the setting value so that the actual slice output will not change, just the appearance of the setting.
Contributes to issue CURA-7318.
Conflicts:
plugins/VersionUpgrade/VersionUpgrade460to462/VersionUpgrade460to462.py -> On master we removed the getCfgVersion function, while we moved the entire plug-in to a different folder in 4.6.
resources/definitions/skriware_2.def.json -> On master we merged a PR that changes more or less all settings, while on 4.6 we doubled the maximum deviation.
The code was moved to uranium, so no need to test them in a plugin.
In some cases they were also testing a specific implementation artifact and not
actual expected behavior.
CURA-7388