briar merge requestshttps://code.briarproject.org/briar/briar/-/merge_requests2022-05-12T14:14:04Zhttps://code.briarproject.org/briar/briar/-/merge_requests/1622Fetch and store mailbox's supported API versions when pairing mailbox2022-05-12T14:14:04ZDaniel LublinFetch and store mailbox's supported API versions when pairing mailboxCloses #2298Closes #2298Mailbox: Pairinghttps://code.briarproject.org/briar/briar/-/merge_requests/1621Include mailbox API version in local and remote mailbox properties2022-05-16T09:58:31ZDaniel LublinInclude mailbox API version in local and remote mailbox propertiesCloses #2261Closes #2261Mailbox: Sync mailbox propertieshttps://code.briarproject.org/briar/briar/-/merge_requests/1641Add logging for message delivery, comments for initial messages exchanged in ...2022-05-16T11:18:02ZakwizgranAdd logging for message delivery, comments for initial messages exchanged in testsMailbox: Sync mailbox propertiesDaniel LublinDaniel Lublinhttps://code.briarproject.org/briar/briar/-/merge_requests/1643Add method for fetching api versions that the mailbox supports2022-05-18T12:18:49ZDaniel LublinAdd method for fetching api versions that the mailbox supportsCloses #2299Closes #2299Mailboxakwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/merge_requests/1640Troubleshooting wizard for mailbox2022-05-18T17:00:51ZTorsten GroteTroubleshooting wizard for mailboxCloses #2309Closes #2309Mailbox: Status UI for Briar apphttps://code.briarproject.org/briar/briar/-/merge_requests/1642Send mailbox update to contacts if supported mailbox versions changed2022-05-19T12:17:40ZDaniel LublinSend mailbox update to contacts if supported mailbox versions changedCloses #2301Closes #2301Mailbox: Sync mailbox propertieshttps://code.briarproject.org/briar/briar/-/merge_requests/1649Abstract task for calling an API endpoint2022-05-26T12:27:15ZakwizgranAbstract task for calling an API endpointCloses #2234Closes #2234Mailboxhttps://code.briarproject.org/briar/briar/-/merge_requests/1647Bump major version of mailbox update client to avoid startup failure2022-05-26T12:45:56ZakwizgranBump major version of mailbox update client to avoid startup failureTest instructions:
* Check out commit 9f839d9d12ca01a9c1d4501574c7c4d36fc81e1d ("Merge branch '2309-troubleshooting-wizard' into 'master')
* Start Briar, create an account and sign out
* Check out commit b3dcde91875f0cb64611f559595571948...Test instructions:
* Check out commit 9f839d9d12ca01a9c1d4501574c7c4d36fc81e1d ("Merge branch '2309-troubleshooting-wizard' into 'master')
* Start Briar, create an account and sign out
* Check out commit b3dcde91875f0cb64611f55959557194850492f0 ("Merge branch '2301-update-contacts-about-change-in-mailbox-versions-that-client-supports' into 'master')
* Start Briar and sign in
* Expected: Signing in fails, startup failure screen is shown
* Check out this branch
* Start Briar and sign in
* Expected: Signing in succeeds, startup failure screen is not shown
Closes #2320Mailboxhttps://code.briarproject.org/briar/briar/-/merge_requests/1648Show notification warning when own mailbox is unreachable2022-05-26T20:10:14ZTorsten GroteShow notification warning when own mailbox is unreachableCloses #2175Closes #2175Mailbox: Unpairinghttps://code.briarproject.org/briar/briar/-/merge_requests/1650Add connectivity check tasks, refactor mailbox properties2022-06-20T11:20:56ZakwizgranAdd connectivity check tasks, refactor mailbox propertiesThis branch refactors some mailbox code to make it easier to convert between MailboxUpdates (exchanged with contacts) and MailboxProperties (used by the MailboxApi).
The branch also refactors the MailboxApiCaller interface to make it a ...This branch refactors some mailbox code to make it easier to convert between MailboxUpdates (exchanged with contacts) and MailboxProperties (used by the MailboxApi).
The branch also refactors the MailboxApiCaller interface to make it a bit more legible, replacing `Supplier<Boolean>` with the more meaningfully named ApiCall interface.
Finally, the branch adds a ConnectivityChecker interface, with implementations for checking the reachability of our own mailbox and a contact's mailbox. These will be used by the respective mailbox clients to wait for the mailbox to become reachable before making other API calls. The connectivity checker is the main part of #2229.Mailbox: Manage mailbox connectionshttps://code.briarproject.org/briar/briar/-/merge_requests/1654Tor reachability monitor2022-06-03T17:08:14ZakwizgranTor reachability monitorThis branch adds a component that monitors the state of the Tor plugin and calls observers when the plugin has been continuously active for 10 minutes. After 10 minutes we assume that our hidden service is reachable and contacts should b...This branch adds a component that monitors the state of the Tor plugin and calls observers when the plugin has been continuously active for 10 minutes. After 10 minutes we assume that our hidden service is reachable and contacts should be able to connect to us directly.
The reachability monitor will be started and destroyed by the mailbox client manager (#2228).
Infrastructure for #2292 and other mailbox workers.Mailbox: Manage mailbox connectionshttps://code.briarproject.org/briar/briar/-/merge_requests/1655Add mailbox plugin and file manager for downloads2022-06-06T11:51:23ZakwizgranAdd mailbox plugin and file manager for downloadsThis branch adds a mailbox plugin and a file manager for handling mailbox downloads. The upload parts of the file manager will be added later.
A download worker can call MailboxFileManager#createTempFileForDownload() to create a local f...This branch adds a mailbox plugin and a file manager for handling mailbox downloads. The upload parts of the file manager will be added later.
A download worker can call MailboxFileManager#createTempFileForDownload() to create a local file that can be passed to MailboxApi#getFile(). When the download finishes, the worker calls MailboxFileManager#handleDownloadedFile(). The file manager is responsible for the file from
this point on.
The file manager uses the plugin to create a TransportConnectionReader for reading from the file. This is passed to the ConnectionManager. If the read succeeds then the file is deleted. The file is also deleted if the read fails, unless the app is shutting down, in which case the manager leaves the file in the download directory and tries again to process it at the next startup. This is meant to prevent files from being wrongly deleted if the read is interrupted during shutdown.
Part of #2292.Mailbox: Manage mailbox connectionshttps://code.briarproject.org/briar/briar/-/merge_requests/1651Show warning if own mailbox's API version is incompatible2022-06-06T16:23:15ZTorsten GroteShow warning if own mailbox's API version is incompatibleFor now, this very basic and assumes Briar can continue to support old major versions of the mailbox for some time. Also, in core, the version of the mailbox never gets updated and the connectivity check doesn't take new version informat...For now, this very basic and assumes Briar can continue to support old major versions of the mailbox for some time. Also, in core, the version of the mailbox never gets updated and the connectivity check doesn't take new version information into account.
Closes #2319Mailbox: Status UI for Briar apphttps://code.briarproject.org/briar/briar/-/merge_requests/1658Mailbox download worker for a contact's mailbox2022-06-08T16:31:36ZakwizgranMailbox download worker for a contact's mailboxThis branch adds a worker for downloading files from a contact's mailbox.
Closes #2292This branch adds a worker for downloading files from a contact's mailbox.
Closes #2292Mailbox: Manage mailbox connectionshttps://code.briarproject.org/briar/briar/-/merge_requests/1665Use /versions for mailbox connectivity check2022-06-14T12:29:31ZTorsten GroteUse /versions for mailbox connectivity checkBriar's mailbox status screen used the status API endpoint for its connectivity check. Now, it uses the versions endpoint instead, so that if we've warned the user that Briar and the Mailbox are using incompatible API versions, and the u...Briar's mailbox status screen used the status API endpoint for its connectivity check. Now, it uses the versions endpoint instead, so that if we've warned the user that Briar and the Mailbox are using incompatible API versions, and the user has upgraded one of the apps to fix the issue, the user can use the "check connection" button in the status screen to check that the issue has been fixed.
(This is specifically needed for the case where the user has upgraded the Mailbox, because in the case where the user has upgraded Briar, Briar should automatically check the mailbox's API versions when it comes back online after upgrading.)
Closes #2326Mailbox: Status UI for Briar appakwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/merge_requests/1670Plumbing for mailbox upload worker2022-06-17T13:07:23ZakwizgranPlumbing for mailbox upload workerThis branch contains some refactoring to support #2291.This branch contains some refactoring to support #2291.Mailbox: Manage mailbox connectionshttps://code.briarproject.org/briar/briar/-/merge_requests/1671Consider latency when getting next send time from DB2022-06-17T13:14:38ZakwizgranConsider latency when getting next send time from DBCloses #2336.Closes #2336.Mailbox: Manage mailbox connectionshttps://code.briarproject.org/briar/briar/-/merge_requests/1672Ignore offline event in Paired state (when success screen is shown)2022-06-17T13:16:28ZTorsten GroteIgnore offline event in Paired state (when success screen is shown)Closes #2337Closes #2337https://code.briarproject.org/briar/briar/-/merge_requests/1673Mailbox upload worker2022-06-20T11:39:45ZakwizgranMailbox upload workerThis branch adds an upload worker for our own mailbox and contacts' mailboxes, and implements the upload parts of the MailboxFileManager.
Closes #2291This branch adds an upload worker for our own mailbox and contacts' mailboxes, and implements the upload parts of the MailboxFileManager.
Closes #2291Mailbox: Manage mailbox connectionshttps://code.briarproject.org/briar/briar/-/merge_requests/1676Don't crash when offline while unlink dialog gets shown2022-06-22T16:41:26ZTorsten GroteDon't crash when offline while unlink dialog gets shownThis fixes only the crash, but there is more we could do. For example: Closing the dialog when we become offline while it is shown.
Closes #2340This fixes only the crash, but there is more we could do. For example: Closing the dialog when we become offline while it is shown.
Closes #2340Mailbox: Unpairing