90 Commits

Author SHA1 Message Date
Kostas Karmas
881e4406a4 Ensure the organization_id is None 2020-11-04 09:21:28 +01:00
Kostas Karmas
1521430d42 Include all subscription information in the slice data
CURA-7717
2020-10-14 11:43:22 +02:00
Kostas Karmas
ceda3e70bd Include organization id and type of enterprise plan in slice data
CURA-7717
2020-10-13 16:30:29 +02:00
Kostas Karmas
6d7d7bdb95 Fix local authorization server crashing
The thread handling the web_server was crashing. This in turn ended in
the web_server not being able to start again, thus being impossible to
login again if you logged out.
2020-06-11 15:27:29 +02:00
Nino van Hooff
f66e723866 Fix Authorization server not properly stopping after flow completes.
CURA-7490
2020-06-09 15:12:26 +02:00
Kostas Karmas
ea6a73e76d Fix mypy complains 2020-06-05 13:18:48 +02:00
Kostas Karmas
22b9bb77ef Fix reporting the [WinError 10038] exception traceback on sign-in
Surround the serve_forever function of the web server with a try-catch
on Windows, in order to avoid printing the entire (useless) traceback.
Now a warning message is be displayed in the log instead.

The behavior is untouched in other platforms
2020-06-05 12:59:31 +02:00
Nino van Hooff
89f0970a88 Remove trailing whitespace from Python files 2020-05-29 14:30:33 +02:00
Nino van Hooff
8e347c1034 Merge remote-tracking branch 'origin/doxygen_to_restructuredtext_comments' into doxygen_to_restructuredtext_comments
# Conflicts:
#	cura/OAuth2/AuthorizationService.py
2020-05-15 13:40:22 +02:00
Kostas Karmas
898ca852f0 Fix mypy complaint about Optional type
CURA-7427
2020-05-12 13:40:27 +02:00
Kostas Karmas
32efb8d7bb Fix description comment of _generate_auth_url()
CURA-7427
2020-05-12 13:17:18 +02:00
Kostas Karmas
d3fb002d9b Transfer the generation of the auth link into its own function
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
2020-05-12 13:07:39 +02:00
Kostas Karmas
b717755f20 Add "Sign in with another account" button in AddCloudPrintersView
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
2020-05-11 17:47:09 +02:00
jelle Spijker
b032101e55
Updated comments in cura/OAuth2
Used DOX_2_RST.py to convert doxygen style comments to sphinx style comments
2020-05-11 13:16:29 +02:00
Nino van Hooff
ea00ff3c47 Update wording for authorization server error message
CURA-7346
2020-04-09 16:59:43 +02:00
Jaime van Kessel
849e012756
Gracefully handle binding erorr for local OAUTH2 Server
CURA-7346
2020-04-08 13:08:12 +02:00
Ghostkeeper
e52dc56a64
Prevent crashing on PermissionError when importing http.server (#7095)
* Fix PermissionError when importing http.server

Instead of crashing, now it'll just not start the server. This means that you won't be able to receive the response from the log-in so you won't be able to log in. The browser gives an error that it can't find the page on localhost. But at least it doesn't crash.

Fixes crash CURA-3Q.

* Log an error when the HTTP server can't be started

Contributes to crash CURA-3Q.

* Indicate that types are optional

Attempt to fix the typing issue with MyPy. I can't run this locally so the CI server will have to tell me if this fixed it.

Contributes to Sentry issue CURA-3Q.
2020-02-17 17:01:11 +01:00
Jaime van Kessel
c167481e60
Add missing ignore 2020-01-31 16:24:46 +01:00
Jaime van Kessel
1269de744f
Use state in AuthorizationService
It's a paranoid safety precaution, but beter safe than sorry.
Reported by WhiteHats; F-1.1.1
2020-01-31 16:11:59 +01:00
Jaime van Kessel
ca25ec3dbc
Increase size of the verificationCode
It's mostly a theoretical problem, but 16 could theoretically be brute
forced. Bumping it up to 32 won't break anything, but it does make it
exteremely unlikely that it gets broken
2020-01-31 15:00:03 +01:00
Jaime van Kessel
81b33b8649
Add some missing typing 2020-01-10 14:58:53 +01:00
Jaime van Kessel
4613b62120
Merge branch '4.4' of github.com:Ultimaker/Cura 2019-11-11 16:01:19 +01:00
Jaime van Kessel
e2414ed5c9
Also log the exception when the connection failed to connect 2019-11-11 15:58:39 +01:00
Jaime van Kessel
00078fd659
Remove a bunch of unused imports 2019-11-08 13:38:42 +01:00
Jaime van Kessel
1e130637ee
Remove retry action from login
It doesn't work anyway and there is another way that does work (eg; login via the top right)
2019-09-13 10:38:52 +02:00
Lipu Fei
9f110368de Add do_HEAD() for auth req handler
CURA-6609
2019-08-27 14:48:02 +02:00
Lipu Fei
4762711c33 chdir to ~ on Linux if frozen 2019-08-20 11:18:54 +02:00
Lipu Fei
f4dc9cc6a2 Fix QDesktopServices.openUrl() for AppImage on Linux 2019-08-20 09:57:13 +02:00
Lipu Fei
4c792419e3 Use QDesktopServices.openUrl() instead of webbrowser 2019-08-15 08:57:19 +02:00
Jaime van Kessel
ce2b1adc82 Prevent crash on sign in if the socket was already closed 2019-08-12 10:50:46 +02:00
Jaime van Kessel
5f76070f05 Fix situation where authtoken wasnt updated for the toolbox request headers 2019-04-25 16:16:44 +02:00
Jaime van Kessel
b2e2f088c4 Add even more logging to the auth service 2019-04-24 16:44:13 +02:00
Jaime van Kessel
d69eb89f17 Fix refresh token not being stored in the bootup refresh case 2019-04-24 16:03:12 +02:00
Jaime van Kessel
48f37d03a4 Add debug log for when we are refreshing the access token 2019-04-18 09:29:04 +02:00
Jaime van Kessel
d8f193870f Added more logging to the authorization service 2019-04-17 16:11:39 +02:00
Jaime van Kessel
e9d4eb741a Merge branch '4.0' of github.com:Ultimaker/Cura 2019-03-11 10:52:14 +01:00
Jaime van Kessel
50999a075e Fix stupid mistake (signals need an emit, not a direct call)
CURA-6278
2019-03-11 10:46:41 +01:00
Jaime van Kessel
38a9206898 Merge branch '4.0' of github.com:Ultimaker/Cura 2019-02-28 16:01:40 +01:00
Jaime van Kessel
a8128556f3 Don't drop refresh token if request failed 2019-02-28 14:54:59 +01:00
Jaime van Kessel
62f913802f Prevent crash if the connection was lost for auth token 2019-02-28 12:58:41 +01:00
Ghostkeeper
1c6cce316a
Merge branch '4.0' 2019-02-27 11:47:47 +01:00
ChrisTerBeke
9ba342c541 Fix codestyle failure on float conversion 2019-02-27 10:43:15 +01:00
ChrisTerBeke
365f67cbf8 Have some overlap in token expiry to prevent unauthorized issues 2019-02-27 10:32:30 +01:00
Ghostkeeper
650204dae7
Merge branch '4.0' 2019-02-21 09:09:19 +01:00
Ghostkeeper
3040fde9eb
Merge branch '4.0'
Conflicts:
	cura/OAuth2/AuthorizationService.py -> Code style change vs. fixing logging in while no internet connection.
2019-02-21 08:25:21 +01:00
Ian Paschal
cb8804b86a Revert "Add some kaizen changes from #5328"
This reverts commit 09fe06b8bf463fd0805fa767bbe34087adc0c700.
2019-02-20 10:46:15 +01:00
Ian Paschal
09fe06b8bf Add some kaizen changes from #5328
Contributes to CL-1245
2019-02-20 10:45:36 +01:00
Ian Paschal
a11878b199 Log warning instead of exception if no connection
Contributes to CL-1245
2019-02-20 10:40:23 +01:00
Ghostkeeper
6143906fa4
Add type for message saying it's unable to connect
Contributes to issue CURA-6231.
2019-02-19 15:57:09 +01:00
Jaime van Kessel
c35aabd2c4 Add message to indicate that Cura was unable to connect with account server
This happens when you were logged previously, but currently don't have internet acces.

CURA-6231
2019-02-19 13:34:04 +01:00