summaryrefslogtreecommitdiff
path: root/state.go
AgeCommit message (Collapse)Author
2022-09-12Types Error: Do not panic on JSON errorjwijenbergh
2022-09-12State: Log public function errorsjwijenbergh
- Info: Something failed but it's not really an error. These errors mostly only get logged - Warning: Something failed to complete the operation, but it's not critical for the functioning. E.g. state changes (maybe a button gets pressed twice quickly, NO-OPS, e.g. disconnecting but no active server) - Error: Something failed that was needed to complete for the functioning of the app (e.g. a server is down and cannot be connected to)
2022-09-12State: Do not automatically remove servers on a config errorjwijenbergh
This is problematic as we do not want to remove already fully added servers!
2022-09-12State: More accurate back transitionsjwijenbergh
2022-09-08OAuth: Separate login functions to get rid of callbackjwijenbergh
2022-09-07Refactor: Define FSM state constants inside the public packagejwijenbergh
2022-09-07Refactor: Remove the usage of the FSM in other internal packagesjwijenbergh
This removes the FSM from being imported and thus used in other internal packages such as `oauth` or `server`. The benefit is that it becomes much easier now to reason about the FSM as it's only used in the public package. Additionally, we do not have to re-initialize the server and the oauth structure with the FSM pointer.
2022-09-06State: Do not append 'see the log file' in location errorjwijenbergh
2022-09-06State: Log fatal discovery errors if the app will fail to workjwijenbergh
2022-09-06State + FSM + Python: Rename the HAS_CONFIG state to DISCONNECTEDjwijenbergh
2022-09-06State: ShouldRenewButton is possible in more statesjwijenbergh
2022-09-06State: Remove servers on adding errorjwijenbergh
2022-09-06State: Properly handle setting secure location errorjwijenbergh
2022-09-06State + Discovery: Save the discovery data in the config JSONjwijenbergh
2022-08-24State + Server + Exports: Implement removing a serverjwijenbergh
2022-08-23Formatting: Run golinesjwijenbergh
2022-08-22State + Exports: Make cleanup optional when entering disconnectjwijenbergh
2022-08-22State: Initialize FSM in renew and disconnectjwijenbergh
2022-08-19State + FSM: Properly handle the disconnect flowjwijenbergh
- /disconnect is now called - A new state is added (DISCONNECTING) that waits for the disconnect to complete - A helper function is exposed (InFSMState) that can be used by clients to see in which state they are in
2022-08-19State: Expose serverinfo typejwijenbergh
2022-08-16Refactor: Use an interface for the data in the FSM callbackjwijenbergh
2022-08-15Refactor: Use constants for state callbacks instead of stringsjwijenbergh
2022-08-10State + Util: Create a valid URL by ensuring a scheme is presentjwijenbergh
2022-08-10State + Python: Implement renewing a sessionjwijenbergh
2022-08-09Formatting: Run gofumptjwijenbergh
2022-07-22State + Exports: Implement should show renew button booleanjwijenbergh
2022-07-22State + FSM + Exports: Implement changing a secure internet locationjwijenbergh
2022-07-20Refactor: Do not log in internal packagesjwijenbergh
The reason behind this is that we then do not have to pass a lot to each function. Logging inside internal packages is less useful as we want to let them return errors and only log in the 'public' facing API or let the client decide
2022-07-19State: Allow setting a profile regardless of the FSM statejwijenbergh
2022-07-19Server: Give JSON for the configured servers used in the main screenjwijenbergh
2022-07-19Server: Split CustomServer and split types into multiple filesjwijenbergh
2022-07-18State: Save the state after retrieving a successful connect configjwijenbergh
2022-07-18All: Run Gofumpt formatterjwijenbergh
2022-07-18Server + State + Types: Return marshalled JSON for display informationjwijenbergh
2022-07-15State + Python: Remove Set/Get Identifierjwijenbergh
Let clients serialize data to a file themselves
2022-07-15FSM + State + Python: Add a connecting state and improve back transitionsjwijenbergh
2022-07-12State + Server: Ensure the current secure location is re-initializedjwijenbergh
2022-07-12State + FSM: Implement a loading server statejwijenbergh
2022-07-12State + FSM: Add an easy way to go back to the previous 'Main' statejwijenbergh
The 'Main' state here is a main UI menu, e.g. the intial state, the server search page, the configuring server page or the connected/has config page
2022-07-11Types + Exports: Return JSON and use error leveljwijenbergh
2022-07-11Exports/State: Return error traceback instead of normal errorjwijenbergh
2022-07-07Secure Internet: Implement the Ask Location transition callbackjwijenbergh
2022-07-07Format: Run gofumptjwijenbergh
2022-07-05Refactor: Handling of different servers and identifiersjwijenbergh
- Uses OrgID for Secure Internet and gets the data from discovery - Uses URL for Institute/Custom and gets the data from discovery - Implements SKIP WAYF as we now have the needed data - Implements an initial change location with a default location (NL right now)
2022-06-21Server: Add the ability to get the saved serversjwijenbergh
2022-06-21State: Add functions for getting/setting a connection identifierjwijenbergh
e.g. the uuid of the connection in case of NetworkManager on Linux
2022-06-20Refactor: Errors to have one custom type that is to be wrappedjwijenbergh
- For this an `internal/types` package is created with a custom error type - This custom error type can give back the cause and traceback of an error
2022-09-20Server: Implement function for checking renewal button visibilityjwijenbergh
2022-05-13Refactor: Adapt the API to the documentationjwijenbergh
2022-05-10API/Server: Correctly handle multiple protocol preferencejwijenbergh