Instead of using a separate function to force logging out before
login, login now has a boolean parameter that instructs it to logout
before loging in again, if the user is alread logged in. It then
starts the authorization with a force browser logout first.
CURA-7427
The authentication link should be prepended with a logoff link from
mycloud, if it is requested. In order to make this process testable
this commit separates the generation of the authentication link,
based on whether it requests for a browser logoff first, into its
own function.
This commit also adds tests for this function.
CURA-7427
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.
There are cases where Cura and the browser fall out of sync when it
comes to accounts. In such cases, you may be logged in cura with an
account that has no cloud printers and in the browser with an account
that has printers. So when you press the "Add cloud printer" button,
you are redirected to mycloud and you see cloud printers that are not
detected by Cura (because Cura is in a different acconut). In such
cases, the user can now press the "Sign in with a different account"
link in the "Waiting for cloud response" page, which will log him/her
out in Cura AND in the browser, and then reinitiate the whole
authorization flow, to make sure the accounts are in sync.
CURA-7427
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:
resources/quality/hms434/pla/hms434_0.4_pla_high.inst.cfg -> Setting version was updated at the same time.
resources/quality/hms434/pla/hms434_0.4_pla_normal.inst.cfg -> Deleted while we updated setting version.
resources/quality/hms434/pla/hms434_0.8_pla_coarse.inst.cfg -> Deleted while we updated setting version.
resources/quality/hms434/pla/hms434_0.8_pla_normal.inst.cfg -> Deleted while we updated setting version.