e71e56f7fe
Other: Ensure context is string in sentry reports
2022-11-29 14:58:29 +00:00
9f64e8a6fa
Other: Wipe vault properly on factory reset
...
Deleting the file isn't enough because it's still held in memory
and is written back to disk on the next write (SetLastVersion during
bridge teardown).
2022-11-29 09:59:30 +01:00
1c374b59d3
GODT-2160: Prevent double closing of bridge if restart fails
...
Set imapServer instance to nil once the server is no longer running to
prevent multiple calls to close on shutdown.
2022-11-29 08:38:21 +01:00
ae7ae2886f
GODT-2041: Crash after factory reset
...
I forgot to remove the user from the users map during factory reset.
This meant the (deleted) would attempt to be closed during teardown.
2022-11-28 19:58:10 +01:00
e601245f01
Other(chore): Bump major version to v3
2022-11-23 16:08:27 +01:00
ad1fb47b0d
Other: Switch from liteapi to go-proton-api
2022-11-23 15:17:56 +01:00
57e9310510
Other: Use API call rather than server-specific method in test code
2022-11-22 16:01:01 +01:00
e087a7972e
GODT-2003: introduces 3 phases user state (SignedOut/Locked/Connected)
...
WIP: introduced UserState enum in GUI and implemented logic.
2022-11-16 16:24:55 +01:00
ae87d7b236
GODT-1913: pass reporter to gluon, limit restarts, add crash handlers.
2022-11-16 13:48:31 +01:00
59278913ca
GODT-2037: Handle and log API refresh event
2022-11-16 13:48:31 +01:00
d093488522
GODT-1978: Auto-updates
2022-11-16 13:48:30 +01:00
d066e32719
GODT-1986: Handle case where an address has no decryption entities
...
It's possible (but very rare, I don't think proton still allows it)
for an address to have no keys. If we try to load the address keyring
for such an address, this change logs a warning that no decryption
entities were found in the unlocked keyring.
It bumps liteapi to a version that does not return an error when no
keys could be unlocked.
2022-11-16 13:48:30 +01:00
5a4f733518
Other(refactor): Remove unused safe types
2022-11-16 13:48:30 +01:00
8749d5dc7d
Other(refactor): Remove always-nil return value of (*Bridge).Close
2022-11-16 13:48:30 +01:00
5adbf74cbe
Other(test): Ensure calls are protected by mutex
2022-11-16 13:48:30 +01:00
6fbf6d90dc
Other: Fix IMAP/SMTP/Login leaks/race conditions
...
Depending on the timing of bridge closure, it was possible for the
IMAP/SMTP servers to not have started serving yet. By grouping this in
a cancelable goroutine group (*xsync.Group), we mitigate this issue.
Further, depending on internet disconnection timing during user login,
it was possible for a user to be improperly logged in. This change
fixes this and adds test coverage for it.
Lastly, depending on timing, certain background tasks (updates check,
connectivity ping) could be improperly started or closed. This change
groups them in the *xsync.Group as well to be closed properly.
2022-11-16 13:48:30 +01:00
c4343e0124
Other: Bump liteapi and clean up tests a bit
2022-11-16 13:48:30 +01:00
bf29090ffa
Other: Fix log message, rename test fixture
2022-11-16 12:26:09 +01:00
7c62312220
Other: Fix all linter errors
2022-11-16 12:26:09 +01:00
e10cd2a3ed
GODT-1901: Allow to set IMAP SSL from UI
2022-11-16 12:26:09 +01:00
fd63611b41
Other: Safer user types
2022-11-16 12:26:09 +01:00
2450511555
Other: Put back split login process in backend
2022-11-16 12:26:09 +01:00
1c922ca083
Other: Fix flaky cookies test
2022-11-16 12:26:09 +01:00
14a578f319
Other: Linter fixes after bumping linter version
2022-11-16 12:26:09 +01:00
0de30afba1
Other: Better cookies test
2022-11-16 12:26:09 +01:00
f01c70e506
GODT-1816: Connect Gluon Logs to bridge Logs
...
Ensure the IMAP commands and SMTP commands are logged to trace channels
with an entry so they are recognizable as before.
2022-11-16 12:26:09 +01:00
509a767e50
GODT-1657: More stable sync, with some tests
2022-11-16 12:26:09 +01:00
9d69a2e565
GODT-1657: Stable sync (still needs more tests)
2022-11-16 12:26:09 +01:00
cce372fc50
GODT-1650: Test of end-to-end send with attachments (internal)
2022-11-16 12:26:09 +01:00
ba9368426c
GODT-1650: Send extras
2022-11-16 12:26:09 +01:00
b536b8707e
GODT-1609: use byte array for password
2022-11-16 12:26:09 +01:00
e9672e6bba
GODT-1815: Combined/Split mode
2022-11-16 12:26:08 +01:00
9670e29d9f
GODT-1815: Start with missing gluon files
2022-11-16 12:26:08 +01:00
612fb7ad7b
GODT-1815: Start without internet, load users later
2022-11-16 12:26:08 +01:00
39433fe707
GODT-1779: Remove go-imap
2022-11-16 12:26:08 +01:00
4d2baa6b85
Renamed bridge to general users and keep bridge only for bridge stuff
2020-05-25 09:02:34 +02:00
522cadb8b1
refactor: dedicated constants package, no explicit bridge version
2020-04-28 12:39:05 +00:00
e95aece6d3
refactor: don't pass client directly to store syncer
2020-04-21 08:36:39 +00:00
80f4e1e346
Fixing unit tests for client manager.
...
* [x] pmapi: refresh auth uid won't change
* [x] bridge tests:
* update mocks
* delete auth when FinishLogin fails
* check for mailbox password
* add `gomock.InOrder` for better test control
* [x] fix linter issues except TODOs
* [x] make rootScheme unexported
* [x] store tests: update mocks
2020-04-21 08:36:39 +00:00
b01be382fc
refactor: GetBridgeAuthChannel --> GetAuthUpdateChannel
2020-04-21 08:36:38 +00:00
042c340881
feat: make store use ClientManager
2020-04-21 08:36:38 +00:00
f269be4291
refactor: make pmapi.Client the interface
2020-04-21 08:36:38 +00:00
6e38a65bd8
feat: improve login flow
2020-04-21 08:36:38 +00:00
17f4d6097a
We build too many walls and not enough bridges
2020-04-08 12:59:16 +02:00