| Age | Commit message (Collapse) | Author | |
|---|---|---|---|
| 2023-09-25 | Client: Relax state requirements for No Server on add | jwijenbergh | |
| 2023-09-25 | Client: Fix institute servers map typo | jwijenbergh | |
| 2023-09-25 | Client: Return on refresh endpoints context error | jwijenbergh | |
| 2023-09-25 | Client: Re-create failover object on new call | jwijenbergh | |
| This additional bookkeeping is not needed now because we have contexts | |||
| 2023-09-25 | All: Implement a token handler | jwijenbergh | |
| This implements a token handler for OAuth tokens. Clients can use the SetTokenHandler function in exports to set a token handler. It needs two arguments, a getter and a setter. The getter is a callback with three arguments: - The server to get the tokens for, in types.server.current as JSON - The output buffer - The output buffer maximum length The tokens should be written to the output buffer with maximum length. The type should be types.server.Tokens and be marshalled as JSON. If no tokens are available, leave the output buffer intact The token setter is a callback with two arguments: - The server for which to set the tokens for, in types.server.Current as JSON - The tokens, defined in types.server.Tokens as JSON Breaking changes: - No more tokens as arguments, was already deprecated in previous commits - Tokens are no longer returned in types.server.Configuration | |||
| 2023-09-25 | Refactor: Move client implementation to one file | jwijenbergh | |
| Much easier to oversee and it forces me to keep the client type as small as possible. This also uses the cookie for cancellation We also no longer require tokens inside arguments. We will later implement them with callbacks | |||
| 2023-09-25 | Exports + Client: Refactor registering a client | jwijenbergh | |
| - Make sure the global exports state is only set on successful creating - Only call discovery when adding a server to ensure we get the most up to date args. Creating a client should have no network calls. Fixes #12 - Split creating a client in New and Register in the GO api | |||
| 2023-09-25 | Exports + Client Register: Make sure to only update state if no err | jwijenbergh | |
| 2023-09-25 | Client: Check if the base time is zero when getting expiry times | jwijenbergh | |
| 2023-09-25 | Client: Remove servers argument to transition | jwijenbergh | |
| 2023-09-25 | Types: Split server into subpackage | jwijenbergh | |
| 2023-09-25 | Types: Split discovery into its own package | jwijenbergh | |
| 2023-09-25 | Format: Run gofumpt | jwijenbergh | |
| 2023-09-25 | Types: Split protocol into its own | jwijenbergh | |
| 2023-09-25 | Client: Add functions to convert to public types | jwijenbergh | |
| 2023-04-18 | Client: Fix ask profile linter error | jwijenbergh | |
| 2023-04-18 | Client + Server: Implement a token updater callback | jwijenbergh | |
| 2023-03-01 | Client: Allow max version to be 20 characters | jwijenbergh | |
| Bit long maybe but we shouldn't limit it too much | |||
| 2023-03-01 | Client: Make user agent equal to client ID names | jwijenbergh | |
| See https://git.sr.ht/~fkooman/vpn-user-portal/tree/v3/item/src/OAuth/VpnClientDb.php | |||
| 2023-03-01 | Format: Run black and gofumpt | jwijenbergh | |
| 2023-03-01 | Client + Exports + HTTP: Set a user-agent using the client's version | jwijenbergh | |
| 2023-02-28 | Log: Use a global logger instance | jwijenbergh | |
| 2023-01-31 | Client: Check if client ID is valid | jwijenbergh | |
| 2023-01-10 | Client + Discovery: Implement further organizations expiry | jwijenbergh | |
| 2023-01-05 | Logger: Do not interpret error string as format specifier argument | jwijenbergh | |
| 2022-12-21 | Failover: Initial implementation | jwijenbergh | |
| 2022-12-14 | Client: If debug, log with stacktrace | jwijenbergh | |
| 2022-12-12 | simplify error handling | Aleksandar Pesic | |
| fixes #6 Signed-off-by: Aleksandar Pesic <peske.nis@gmail.com> | |||
| 2022-11-28 | Log: Define f prefix for log functions to indicate printf like | jwijenbergh | |
| 2022-11-28 | Formatting: Run gofumpt -w | jwijenbergh | |
| 2022-11-28 | Refactor: Fix revive linter errors by deleting redundant prefixes | jwijenbergh | |
| 2022-11-28 | Lint: Run godot fix | jwijenbergh | |
| Full command: golangci-lint run --disable-all -E godot --fix | |||
| 2022-11-28 | Refactor: Remove most get prefixes for receiver functions | jwijenbergh | |
| 2022-11-28 | Document: Add comments for most functions and packages | jwijenbergh | |
| Errors and test files still need to be done. Also some getters are changed by removing the 'get' prefix | |||
| 2022-11-24 | Style: Use stylecheck and fix errors | jwijenbergh | |
| 2022-11-23 | FSM: Check unhandled transitions | jwijenbergh | |
| 2022-11-17 | Log: Add additional params to get rid of Sprintf calls | jwijenbergh | |
| 2022-11-10 | Logging: Add a Debug level | jwijenbergh | |
| This makes the levels more logical | |||
| 2022-10-25 | Client + FSM: Remove background argument from transition | jwijenbergh | |
| This fixes a race condition reported by Go's -race flag In the future we should use waitgroups to ensure the OAuth local listener is started before we sent the URL | |||
| 2022-10-24 | Log: Rename log file to go.log | jwijenbergh | |
| 2022-10-24 | Client + Server + Exports: Implement optional WireGuard support | jwijenbergh | |
| 2022-10-19 | Refactor: Make errors use the parent's error level | jwijenbergh | |
| - All wrapped errors have to be created with types.NewWrappedError to inherit the error level from the parent - Or types.NewWrappedErrorLevel can be used which means a custom error level is given. For example this is done with cancelling OAuth - Client public errors are forwarded with handleError that also logs it with the error's level | |||
| 2022-10-19 | Client: Separate into different files | jwijenbergh | |
| 2022-10-18 | Client: Move to its own package | jwijenbergh | |
