We've deemed it irresponsible to redo multiple layers. This will dig the nozzle back down into the layers that were printed before the pause.
This doesn't include a version upgrade yet.
Contributes to issue CURA-7413.
If the print job happens to get cancelled right after checking if the index is correct, but before actually reading the line, it would get an IndexError when trying to read the line since cancelling the job clears the _gcode list.
This prevents that asynchronous issue by using the internal check in the list access to check that, and just uses an exception to check whether it's reached the end.
Fixes Sentry issue CURA-QC.
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.
Otherwise it would crash with a BadZipFile error. We should be robust against that. This will trigger a generic message that we couldn't read that file to the user, and put more information in the log.
Fixes Sentry issue CURA-NH.
Removed the dependency of the DiscoveredCloudPrintersModel on CloudOutputDevice,
which is Ultimaker specific. This can allow even external plugins to add to this
model in the future.
CURA-7022
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
If it happens at just the wrong moment, Cura could crash. Hopefully no longer, though I fear that now it would maybe crash somewhere else with the same error then. We'll find out through new error reports, I hope.
Fixes Sentry issue CURA-K8.
The plug-in ID is set once the register function is completed, so after initialisation. If the _createSocket function is called in between, Cura would crash.
I don't know why the _createSocket function would be called in between, but possibly another plug-in causes an event that calls it since it's being called on many events (everything that would initiate a reslice).
Fixes Sentry issue CURA-K4.
This could happen because a material is deleted right at that moment, since the SendMaterialJob is done on a separate thread.
Fixes Sentry issue CURA-JZ.