9d0d3708af
feat(GODT-2808): Apply comment from Bug Report content review.
2023-08-09 11:07:15 +00:00
4c908aac7c
fix(GODT-2857): Do not check changed values in clear recent flag
...
https://github.com/ProtonMail/gluon/pull/390
2023-08-09 10:18:30 +02:00
6eb1878f66
fix(GODT-2827): Restore ticker to event poller
2023-08-09 10:17:41 +02:00
826dc2e5c3
test(GODT-2743): Sync high number of messages
2023-08-08 14:37:00 +00:00
20b188368a
feat(GODT-2799): SMTP service interacts directly with Server Manager
...
Bridge no longer needs to manually add and remove accounts from the
service.
2023-08-08 14:14:52 +02:00
ded4f370dc
fix(GODT-2759): Use examine rather than select for fetching
...
When fetching messages in the debug mailbox state command, use read only
mode to avoid modifying the mailbox state.
2023-08-08 13:05:39 +02:00
519a6ecdb7
fix(GODT-2833): Migration of Message Flags
...
https://github.com/ProtonMail/gluon/pull/388
2023-08-08 12:38:54 +02:00
9a96588afb
feat(GODT-2814): Standalone Server Manager
...
Convert ServerManger into a standalone service so that it can become a
self contained module.
2023-08-07 16:47:41 +02:00
1f2c573803
feat(GODT-2782): Apply content modification after review.
2023-08-03 18:05:33 +02:00
cc33423c1f
feat(GODT-2782): Add category name in decribe issue view + apply review comments.
2023-08-03 17:51:37 +02:00
1b95c290f1
feat(GODT-2808): Initial list of categories and questions.
2023-08-01 14:49:53 +00:00
9b88778c43
feat(GODT-2788): Add JSON validator file.
2023-08-01 14:49:53 +00:00
ae4705ba70
feat(GODT-2787): Replace the PathTracker by a more visual NavigationIndicator.
2023-08-01 14:49:53 +00:00
243ddf47ab
feat(GODT-2816): Handle maxChar even for non mandatory field + make it customisable from JSON.
2023-08-01 14:49:53 +00:00
80d729e3e5
feat(GODT-2816): Wait until mandatory fields are filled then fill body and title.
2023-08-01 14:49:53 +00:00
3d64c5f894
feat(GODT-2794): Clear cached answers when report is sent.
2023-08-01 14:49:53 +00:00
c4bcc38c53
feat(GODT-2793): Feed the bug report body with the answered questions.
2023-08-01 14:49:53 +00:00
2c2f816f3a
feat(GODT-2791): Add Unitary test.
2023-08-01 14:49:53 +00:00
86e115b2f3
feat(GODT-2791): Parse the Bug Report Flow description file and ensure forward compatibility (GODT-2789).
2023-08-01 14:49:53 +00:00
1a2783a63b
feat(GODT-2821): Display questions in one page.
2023-08-01 14:49:53 +00:00
cbbab71f5c
feat(GODT-2786): Init bug report flow description file.
2023-08-01 14:49:53 +00:00
80add80be2
feat(GODT-2792): Implement display of question set for bug report.
2023-08-01 14:49:53 +00:00
f0e2688a8e
fix(GODT-2800): Ensure 429 does not cause bad event
2023-07-31 13:15:26 +02:00
06639ff6cd
fix(GODT-2800): Handle subscribe followed by unsubscribe properly
2023-07-31 13:12:29 +02:00
716de7f45a
test: Fix event registration in TestBridge_SyncWithOngoingEvents
...
We need to register the event subscriber earlier to avoid missing the
event later.
2023-07-31 12:36:06 +02:00
750de0cd31
test: TestBridge_SendAddTextBodyPartIfNotExists eventually fix
...
It may take a couple of fetch requests until the pending state updates
get applied.
2023-07-31 12:36:06 +02:00
823ca4d207
feat(GODT-2822): Integrate and activate all service
...
The bridge now runs on the new architecture.
2023-07-31 12:36:03 +02:00
a187747c7c
feat(GODT-2802): IMAP Serivce
...
Handles all IMAP related tasks. Unlike the previous iteration, this new
service automatically adds and removes users from Gluon by interfacing
with server manager.
2023-07-31 11:06:47 +02:00
11ebb16933
fix(GODT-2822): Update smtp and events service to use ordered cancel
2023-07-31 11:06:47 +02:00
0048767022
fix(GODT-28022): Missing user identity service methods
...
Add methods to access user identity state from the outside.
2023-07-31 11:06:47 +02:00
c4b75c6f34
fix(GODT-2802): Ensure cpc reply does not block if never read
2023-07-31 11:06:43 +02:00
32448063dc
test: Verify leaks at end of WithEnv
...
Helps track down the individual test leaks.
2023-07-28 15:00:23 +02:00
86bde91958
feat(GODT-2802): Ordered task cancellation
...
Add `OrderedCancelGroup` type to enforce the cancellation of go routines
in a reverse order. Additionally this type waits for the go-routine to
finish before proceeding to the next one.
We need this to guarantee that all the user services shut down properly
without deadlocking.
2023-07-28 14:50:42 +02:00
90c34406ba
test: Fix deadlock in chToType
...
Make sure the go routine is cancelled if there is a new event, but no
one is reading it after a call to done.
2023-07-28 13:32:28 +02:00
334a256638
fix(GODT-2802): Remove CPC request from Event Service
...
Prevents deadlocks if the service needs to be paused during an event
loop.
2023-07-26 10:03:48 +02:00
da528f2d9b
feat(GODT-2801): Add Key Decryption helpers to identityservice.State
2023-07-25 09:59:26 +02:00
1b0f930471
fix(GODT-2802): Consolidate Address Mode
2023-07-25 09:15:52 +02:00
09c523e2d2
feat(GODT-2801): User Service Integration
...
Enable the User Event, User Identity and User SMTP service. The services
don't persist any data at the moment to avoid conflict with the existing
event loop.
2023-07-24 17:10:05 +02:00
0b35f41ffd
feat(GODT-2799): Integrate SMTP service with User Identity Service
2023-07-24 17:10:05 +02:00
7be1a8ae8a
feat(GODT-2801): Identity State Cloning & Auth Check
...
This patch moves the `user.User.CheckAuth` function into the `State`
type as it contains all the necessary information to perform this check.
A couple of more interfaces are added to abstract the retrieval of the
Bridge and the User's key passwords, as well as telemetry reports.
Finally, adds `State.OnAddressEvents` which other services should use to
update the state.
2023-07-24 17:10:05 +02:00
bdbf1bdd76
fix(GODT-2800): Pending Subscriptions Cleanup
...
Ensure pending subscriptions are cleaned up with `Service.Close()` or
we can leak go routines.
2023-07-24 17:10:05 +02:00
776976a8a2
feat(GODT-2801): Debug names for QueuedChannels
...
https://github.com/ProtonMail/gluon/pull/385
https://github.com/ProtonMail/go-proton-api/pull/90
2023-07-24 16:38:01 +02:00
040ddadb7a
feat(GODT-2801): Identity Service
...
Identity Service contains all the information related to user state,
addresses and keys.
This patch also introduces the `State` type which can be used by other
services to maintain their own copy of this state to avoid lock
contention.
Finally, there are currently no external facing methods via a CPC
interface. Those will added as needed once the refactoring of the
architecture is complete.
2023-07-24 11:22:50 +02:00
11f6f84dd6
fix(GODT-2800): ChanneledSubcriber types
2023-07-21 15:18:49 +02:00
82efa16d65
feat(GODT-2800): User Event Service
...
This patch adds the User Event Service which is meant to replace the
current event polling flow.
Each user interested in receiving events should register a new
subscriber using the `Service.Subscribe` function and then react on
the incoming events.
The current patch does not hook this up Bridge user as there are no
existing consumers, but it does provide extensive testing for the
expected behavior.
2023-07-21 11:47:43 +02:00
110286b81c
fix(GODT-2813): Write new vault to temporary file first
...
Do not immediately overwrite the old vault with new data. If something
goes wrong, we at least maintain on previously valid state.
2023-07-19 09:12:36 +02:00
bc66841cdc
chore(GODT-2799): Move SMTP backend to SMTP service module
2023-07-19 09:12:33 +02:00
8d028966c7
chore(GODT-2799): Move Identifier interface to separate module
...
Required so we can move the smtp backend into the smtp service module.
2023-07-19 09:07:02 +02:00
d120bbeffc
chore(GODT-2799): Separate account states for SMTP Backend
...
Rather than accessing the Bridge user list, each user register their
individual SMTP service with the server manager.
Note that some dependencies on the user data are hidden behind the
`UserInterface`. These will be removed in a future patch.
2023-07-19 09:07:02 +02:00
eda49483e2
chore: use qmlformat on qml files, and removed deprecated tests.
2023-07-18 18:12:29 +02:00