Conflicts:
plugins/SimulationView/SimulationPass.py -> Reverted layer view optimisation in Master while some whitespace changed in Arachne.
resources/definitions -> Bunch of conflicts with profile updates.
resources/quality -> Bunch of conflicts with profile updates.
resources/texts/change_log.txt -> Removed the Arachne change log (as they are internal versions). It'll have to be re-added when we release this version as stable.
Conflicts:
resources/definitions/ultimaker2.def.json -> Additions in Arachne around a place where we fixed an enum setting.
resources/definitions/ultimaker3.def.json
resources/definitions/ultimaker_s3.def.json
resources/definitions/ultimaker_s5.def.json
Since the setting version 18 is used in the arachne beta build, we decided to make the the setting version to 19 in the normal releases, so that we make sure that projects made in arachne beta won't use any version upgrade scripts if a user attempts to open them in 4.12.
CURA-8510
We now have version 18, where Flsun Super Racer has customised profiles.
Nothing changes in the built-in profiles. It only needs a change in the machine instances.
Contributes to issue CURA-8510.
When we close Cura, we now remove the global stack first. If the discard/keep dialog closes as a result of closing Cura, this would crash since there is no global stack any more to discard changes from or keep changes in, and we can't access the extruder stacks either.
So if there's no global stack, just skip this. It'll be as if you selected 'keep'.
Fixes Sentry issue CURA-2ET.
Conflicts:
cura/CuraApplication.py: Setting version
fdmprinter and fdmextruder: Setting version
intents, qualities and variants: Setting version
Changelog: 4.9.1 was added, should be below Arachne changes
The other transformations, in particular rotation, were also influencing the merge. The transformations were not removed when calculating the center position, causing the center position of a mesh to be calculating differently. When the meshes were actually transformed/moved, all of the transformations were removed but this gave the model a different center position. The different center position wasn't properly being compensated for using the previously calculated center position.
Fixes CURA-7873.
There's an extensive explanation in the documentation. But truth be told, I don't know why the conversion of global stack to QObject fails after the main window is closed. This may be something in PyQt as it doesn't seem to happen for Nallath who is still on PyQt5.11, but did update Qt to 5.14. So this should be considered a workaround.
This is currently just ONE of the reasons why the application crashes on exit in PyQt5.14+. There is another, much more mysterious issue that is causing the application to segfault on exit, which is still happening. But if it didn't happen it would otherwise still crash on this, so this needs to be solved anyway.
Contributes to issue CURA-7813.
The previous default position was aimed at 100mm above the build plate. This is taller than most models that people load into Cura. It's now aimed at 30mm. Models up to 50mm are way more common to print, so this brings it right in the butter zone for most people, hopefully.
Fixes#9251.
To my surprise, it seems fdmprinter has merged perfectly. Nice.
Conflicts:
resources/setting_visibility/advanced.cfg -> Settings moved to a different category while we added new settings in the same place.
An error will pop up by the ReadFileJob if the file cannot be found. If we also handle the File
NotFound error in the checkIsValidProjectFile, then two error message will pop up in the user's
screen, which is not desired. So, let only the ReadFileJob show it's error instead.
CURA-7996
If a file that existed in the Recent Files list was deleted, Cura was still trying to open the file
on user's request without properly displaying an error if the file was not found.
This is now fixed by popping up a message to indicate that the file doesn't exist.
CURA-7996
Opening a .3mf file or other project would cause a crash if the preference for always opening as a project (as opposed to importing models or 'always ask') was set. Traced back to a typo.
CURA-7987