This would be completely lossless, except that I also told ECT that it can do away with the metadata of the zip archive such as timestamps. But they aren't being used by Cura anyway.
Conflicts:
resources/definitions/skriware_2.def.json -> File was rewritten while I modified the platform mesh. All indentation was changed to tabs which caused a merge conflict.
Otherwise if a retracted move had a different Z coordinate, this would not be put in the final print. It's pretty simple to extend it this way.
Fixes#7458.
It was doing an os.path.exists on the relative path which has no context of where we're looking from. So make it absolute first and then check for the existence of the file. Also take the correct parent folder then and improve debug output.
The import script doesn't parse these correctly yet. Keep finding them now.
Some of the plural forms were incorrect. They were like that last time as well. Lionbridge isn't translating them correctly, but it's the fault of a very annoying interface in Smartling. I was able to fix all of them decently except Russian, so Russian will have to make do with just plural everywhere.
Contributes to issue CURA-7344.
These are the new translations we got. I didn't make any corrections yet, but I did already see some mistakes in the Chinese ones.
Contributes to issue CURA-7344.
I don't know what exactly caused this since it's impossible to trace. But the crash happened with a setting called 'dual_gcode' which currently doesn't exist in Cura. So I think it must be some plug-in that adds it. In any case, it's good to be defensive about this sort of thing. Good type checking would've caught this for us.
Fixes Sentry issue CURA-JB.
Subtract the thickness of the walls from this setting. This most likely ends up negative and thus not counting because it's maxed with something that starts at 0.
I've also simplified this algorithm a bit. Easier to follow if you ask me.
Done as a 5 minute fix.
Subtract the thickness of the walls from this setting. This most likely ends up negative and thus not counting because it's maxed with something that starts at 0.
I've also simplified this algorithm a bit. Easier to follow if you ask me.
Done as a 5 minute fix.
The resolution of the coordinates in these meshes is now reduced to 1 micron. Any unnecessary trailing zeros are removed. Any unnecessary data is removed (like object name). Any comments are removed. All normals are removed and no longer used by the faces.
This should save 10MB on the download and installation size or so.