briar issueshttps://code.briarproject.org/groups/briar/-/issues2023-09-12T12:23:17Zhttps://code.briarproject.org/briar/public-mesh-research/-/issues/1Research communication via public mesh2023-09-12T12:23:17ZakwizgranResearch communication via public meshDevelop and evaluate one or more concepts for communicating over a "public mesh" (as opposed to Briar's "social mesh", where users only connect to their contacts). A delay-tolerant, publish-subscribe architecture with end-to-end encrypti...Develop and evaluate one or more concepts for communicating over a "public mesh" (as opposed to Briar's "social mesh", where users only connect to their contacts). A delay-tolerant, publish-subscribe architecture with end-to-end encryption is assumed.
Each concept must include solutions for:
* Discovering nearby peers
* Connecting to peers
* Deciding which data to sync with each peer
* Providing an API for user-facing components (e.g. messaging) to insert data into the mesh and be notified when relevant data is received
Concepts must be suitable for use on unrooted Android devices (taking into account current restrictions on device discovery). Ideally concepts should also be suitable for use on iOS and allow communication between Android and iOS.
Identify and evaluate any risks of passive information leaks or active attacks. Evaluate performance taking Briar's "social mesh" as a baseline.Public mesh research2023-04-30https://code.briarproject.org/briar/briar/-/issues/2256Create skeleton app for public mesh experiments2022-01-21T14:12:55ZakwizgranCreate skeleton app for public mesh experimentsSubtask of #1817.Subtask of #1817.Public mesh researchakwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1985Register public mesh research app's signing key and package name with Google ...2022-01-21T14:13:18ZakwizgranRegister public mesh research app's signing key and package name with Google PlayIf we plan to develop a research app as part of #1817, register the package name and app signing key with Google Play before the end of July 2021 so we're not required to let Google manage the signing key.
https://android-developers.goo...If we plan to develop a research app as part of #1817, register the package name and app signing key with Google Play before the end of July 2021 so we're not required to let Google manage the signing key.
https://android-developers.googleblog.com/2020/11/new-android-app-bundle-and-target-api.html
Subtask of #1817.Public mesh researchakwizgranakwizgran2021-07-31https://code.briarproject.org/briar/briar/-/issues/1817Research communication via public mesh2022-07-20T10:38:58ZakwizgranResearch communication via public meshDevelop and evaluate one or more concepts for communicating over a "public mesh" (as opposed to Briar's "social mesh", where users only connect to their contacts). A delay-tolerant, publish-subscribe architecture with end-to-end encrypti...Develop and evaluate one or more concepts for communicating over a "public mesh" (as opposed to Briar's "social mesh", where users only connect to their contacts). A delay-tolerant, publish-subscribe architecture with end-to-end encryption is assumed.
Each concept must include solutions for:
* Discovering nearby peers
* Connecting to peers
* Deciding which data to sync with each peer
* Providing an API for user-facing components (e.g. messaging) to insert data into the mesh and be notified when relevant data is received
Concepts must be suitable for use on unrooted Android devices (taking into account current restrictions on device discovery). Ideally concepts should also be suitable for use on iOS and allow communication between Android and iOS.
Identify and evaluate any risks of passive information leaks or active attacks. Evaluate performance taking Briar's "social mesh" as a baseline.Public mesh research2023-04-30https://code.briarproject.org/briar/briar-desktop/-/issues/508Release 0.4.2-beta2023-08-29T13:34:52ZSebastianRelease 0.4.2-betasee #463 as reference
### Preparation
* [x] ~~String freeze (disable auto-pull) and announcement on Transifex at least a week before the release~~
* [x] ~~Update translations (MR)~~
- run `tx pull -a -f`, add new languages to `Une...see #463 as reference
### Preparation
* [x] ~~String freeze (disable auto-pull) and announcement on Transifex at least a week before the release~~
* [x] ~~Update translations (MR)~~
- run `tx pull -a -f`, add new languages to `UnencryptedSettings.kt` (see [java locale list](https://www.oracle.com/java/technologies/javase/jdk17-suported-locales.html)), create commit
- temporarily remove `minimum_perc = 50` from `.tx/config`
- run `tx pull -a -f && rm briar-desktop/src/main/resources/strings/* && git restore briar-desktop/src/main/resources/strings/*`
- re-add `minimum_perc = 50` to `.tx/config`, append changes to last commit
* [x] Extensive testing
* [x] Update [changelog](https://code.briarproject.org/briar/briar-desktop/-/wikis/Changelog)
### Version bump
* [x] Change version in build config and metainfo.xml (!325)
* [x] Tag in Git (use `git tag -a -s <version-name>-beta -m "Briar Desktop <version-name>-beta"`) (https://code.briarproject.org/briar/briar-desktop/-/tags/0.4.2-beta)
* [x] GitLab CI builds release files automatically (https://code.briarproject.org/briar/briar-desktop/-/pipelines/13935)
### Deployment
* [x] Copy release files to desktop.briarproject.org (using [`update-binaries.sh`](https://code.briarproject.org/briar/briar-desktop-servers/-/blob/main/root/update-binaries.sh) with updated version code)
* [x] Rewrite and check that permalink points to correct version (don't forget to test and reload web server)
* [x] Update version and checksums (calculated using [`verify_hashsums.sh`](https://code.briarproject.org/briar/briar-desktop-servers/-/blob/main/verify_hashsums.sh)) on website (https://code.briarproject.org/briar/website/-/merge_requests/108)
* [x] Publish website
### PR
* [x] Inform 3rd party maintainers about release
* [ ] Publish blog post
* [x] Post on social media ([Mastodon](), [Twitter](TWITTER)), useful [character counter](https://charactercounter.com/twitter)
* [x] ~~Update screenshot on website~~
### Backlog
* [x] Update description, milestone and due date of #337
* [x] ~~Re-enable auto-pull on Transifex under Resources > Auto update resources > add [url](https://code.briarproject.org/briar/briar-desktop/-/raw/main/briar-desktop/src/main/resources/strings/BriarDesktop.properties)~~Desktop 0.4.2https://code.briarproject.org/briar/briar-desktop/-/issues/507Crash when forum messages try to get marked as read2023-03-12T17:56:23ZSebastianCrash when forum messages try to get marked as readA user reported that opening an existing forum with unread messages crashes the app once the view tries to mark some of the messages as read. Either when there are some unread messages directly on the view when opened or once scrolling t...A user reported that opening an existing forum with unread messages crashes the app once the view tries to mark some of the messages as read. Either when there are some unread messages directly on the view when opened or once scrolling to a position where unread messages appear.
This is the stacktrace:
```
17:21:47.900 [main] INFO org.briarproject.briar.desktop.Main - This is briar-desktop version 0.4.1-beta
17:21:47.901 [main] INFO org.briarproject.briar.desktop.Main - Build info:
17:21:47.901 [main] INFO org.briarproject.briar.desktop.Main - Git hash 227dfcfa07b4da07b494209d2058434929ea9ce5
17:21:47.902 [main] INFO org.briarproject.briar.desktop.Main - Commit time 2023-03-10 11:20:52
17:21:47.902 [main] INFO org.briarproject.briar.desktop.Main - Tag 0.4.1-beta
17:21:48.963 [AWT-EventQueue-0] INFO o.b.b.d.n.l.LibnotifyNotificationProvider - Notification server capabilities: actions, body, body-hyperlinks, body-images, body-markup, persistence
17:22:05.608 [AWT-EventQueue-0] WARN org.briarproject.briar.desktop.Main - Uncaught exception in thread AWT-EventQueue-0
java.util.NoSuchElementException: null
at org.briarproject.bramble.api.Multiset.remove(Multiset.java:62)
at org.briarproject.briar.desktop.ui.MessageCounterImpl.removeCount(MessageCounterImpl.kt:113)
at org.briarproject.briar.desktop.ui.MessageCounterImpl._init_$lambda$0(MessageCounterImpl.kt:93)
at org.briarproject.bramble.event.EventBusImpl.lambda$broadcast$0(EventBusImpl.java:42)
at org.briarproject.briar.desktop.DesktopCoreModule.provideUiExecutor$lambda$0(DesktopCoreModule.kt:157)
at org.briarproject.bramble.event.EventBusImpl.broadcast(EventBusImpl.java:41)
at org.briarproject.briar.desktop.forums.ThreadedConversationViewModel.markPostsRead(ThreadedConversationViewModel.kt:186)
at org.briarproject.briar.desktop.forums.GroupConversationScreenKt$GroupConversationScreen$3$2.invoke(GroupConversationScreen.kt:84)
at org.briarproject.briar.desktop.forums.GroupConversationScreenKt$GroupConversationScreen$3$2.invoke(GroupConversationScreen.kt:84)
at org.briarproject.briar.desktop.forums.ThreadedConversationScreenKt$ThreadedConversationScreen$2$2$1.invokeSuspend(ThreadedConversationScreen.kt:90)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at androidx.compose.ui.platform.FlushCoroutineDispatcher$dispatch$2$1.invoke(FlushCoroutineDispatcher.skiko.kt:62)
at androidx.compose.ui.platform.FlushCoroutineDispatcher$dispatch$2$1.invoke(FlushCoroutineDispatcher.skiko.kt:57)
at androidx.compose.ui.platform.FlushCoroutineDispatcher.performRun(FlushCoroutineDispatcher.skiko.kt:91)
at androidx.compose.ui.platform.FlushCoroutineDispatcher.access$performRun(FlushCoroutineDispatcher.skiko.kt:37)
at androidx.compose.ui.platform.FlushCoroutineDispatcher$dispatch$2.invokeSuspend(FlushCoroutineDispatcher.skiko.kt:57)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:106)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:318)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:771)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:722)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:716)
at java.base/java.security.AccessController.doPrivileged(AccessController.java:399)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:86)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:741)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)
Suppressed: kotlinx.coroutines.DiagnosticCoroutineContextException: null
```
akwizgran was also able to reproduce it.Desktop 0.4.2SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/506Unsubscribing from forum with unread posts keeps the unread count in the mess...2023-03-12T17:00:30ZSebastianUnsubscribing from forum with unread posts keeps the unread count in the message counterThis can be observed when leaving the last forum that has unread message; the unread badge on the forum button stays there.This can be observed when leaving the last forum that has unread message; the unread badge on the forum button stays there.Desktop 0.4.2SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/505AddContact dialog: Bug in TextField2023-03-10T11:41:01ZMikolai GütschowAddContact dialog: Bug in TextFieldAfter entering the first character into the nickname field, the cursor gets reset to position 0 (the start of the string). Later keystrokes are processed correctly.
Only observed in this text field, not in the AddForum dialog, neither i...After entering the first character into the nickname field, the cursor gets reset to position 0 (the start of the string). Later keystrokes are processed correctly.
Only observed in this text field, not in the AddForum dialog, neither in the message compose field nor in the introduction/forum invitation message field.Desktop 0.4.1Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar-desktop/-/issues/504Tor not working on current main2023-03-10T08:50:20ZSebastianTor not working on current mainI'm getting this kind of error in the log on current main:
```
15:41:43.928 [pool-1-thread-1] INFO o.b.b.plugin.tor.TorPluginFactory - System's os.arch is amd64
15:41:43.928 [pool-1-thread-1] INFO o.b.b.plugin.tor.TorPluginFactory - T...I'm getting this kind of error in the log on current main:
```
15:41:43.928 [pool-1-thread-1] INFO o.b.b.plugin.tor.TorPluginFactory - System's os.arch is amd64
15:41:43.928 [pool-1-thread-1] INFO o.b.b.plugin.tor.TorPluginFactory - The selected architecture for Tor is x86_64
15:41:43.932 [pool-1-thread-4] INFO o.b.bramble.plugin.tor.TorPlugin - Installing Tor binary for x86_64
15:41:43.933 [pool-1-thread-4] WARN org.briarproject.briar.desktop.Main - Uncaught exception in thread pool-1-thread-4
java.lang.NullPointerException: null
at org.briarproject.nullsafety.NullSafety.requireNonNull(NullSafety.java:17)
at org.briarproject.bramble.system.JavaResourceProvider.getResourceInputStream(JavaResourceProvider.java:22)
at org.briarproject.bramble.plugin.tor.TorPlugin.getExecutableInputStream(TorPlugin.java:374)
at org.briarproject.bramble.plugin.tor.TorPlugin.installTorExecutable(TorPlugin.java:351)
at org.briarproject.bramble.plugin.tor.TorPlugin.installAssets(TorPlugin.java:335)
at org.briarproject.bramble.plugin.tor.TorPlugin.start(TorPlugin.java:247)
at org.briarproject.bramble.plugin.PluginManagerImpl$PluginStarter.run(PluginManagerImpl.java:232)
at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
at java.base/java.lang.Thread.run(Thread.java:833)
```
I think it's probably due to the changes in https://code.briarproject.org/briar/briar/-/merge_requests/1775Desktop 0.4.1SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/503Release 0.4.1-beta2023-03-12T16:52:48ZSebastianRelease 0.4.1-betasee #463 as reference
### Preparation
* [x] ~~String freeze (disable auto-pull) and announcement on Transifex at least a week before the release~~
* [x] Update translations (https://code.briarproject.org/briar/briar-desktop/-/merge_req...see #463 as reference
### Preparation
* [x] ~~String freeze (disable auto-pull) and announcement on Transifex at least a week before the release~~
* [x] Update translations (https://code.briarproject.org/briar/briar-desktop/-/merge_requests/318)
- run `tx pull -a -f`, add new languages to `UnencryptedSettings.kt` (see [java locale list](https://www.oracle.com/java/technologies/javase/jdk17-suported-locales.html)), create commit
- temporarily remove `minimum_perc = 50` from `.tx/config`
- run `tx pull -a -f && rm briar-desktop/src/main/resources/strings/* && git restore briar-desktop/src/main/resources/strings/*`
- re-add `minimum_perc = 50` to `.tx/config`, append changes to last commit
* [x] Extensive testing
* [x] Update [changelog](https://code.briarproject.org/briar/briar-desktop/-/wikis/Changelog)
### Version bump
* [x] Change version in build config and metainfo.xml (https://code.briarproject.org/briar/briar-desktop/-/merge_requests/320)
* [x] Tag in Git (use `git tag -a -s <version-name>-beta -m "Briar Desktop <version-name>-beta"`) (https://code.briarproject.org/briar/briar-desktop/-/tags/0.4.1-beta)
* [x] GitLab CI builds release files automatically (https://code.briarproject.org/briar/briar-desktop/-/pipelines/13913)
### Deployment
* [x] Copy release files to desktop.briarproject.org (using [`update-binaries.sh`](https://code.briarproject.org/briar/briar-desktop-servers/-/blob/main/root/update-binaries.sh) with updated version code)
* [x] Rewrite and check that permalink points to correct version (don't forget to test and reload web server)
* [x] Update version and checksums (calculated using [`verify_hashsums.sh`](https://code.briarproject.org/briar/briar-desktop-servers/-/blob/main/verify_hashsums.sh)) on website (website!107)
* [x] Publish website
### PR
_skipped due to critical bug detected with #507_
* [ ] ~~Inform 3rd party maintainers about release~~
* [ ] ~~Publish blog post~~
* [ ] ~~Post on social media ([Mastodon](), [Twitter](TWITTER)), useful [character counter](https://charactercounter.com/twitter)~~
* [x] ~~Update screenshot on website~~
### Backlog
* [x] Update description, milestone and due date of #337
* [x] ~~Re-enable auto-pull on Transifex under Resources > Auto update resources > add [url](https://code.briarproject.org/briar/briar-desktop/-/raw/main/briar-desktop/src/main/resources/strings/BriarDesktop.properties)~~Desktop 0.4.1https://code.briarproject.org/briar/briar-desktop/-/issues/485Context Menu translations for copy/paste are not updated at runtime2023-02-13T13:35:38ZMikolai GütschowContext Menu translations for copy/paste are not updated at runtimeTo reproduce:
- start Briar Desktop
- change language in settings screen
- right-click on a private message
- notice that the context menu entries are still in the previously selected languageTo reproduce:
- start Briar Desktop
- change language in settings screen
- right-click on a private message
- notice that the context menu entries are still in the previously selected languageDesktop 0.4.1Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar-desktop/-/issues/479Forum: Allow copying of message text2023-02-13T13:35:38ZMikolai GütschowForum: Allow copying of message textSimilar to what's possible for private chats.
Slightly related to (might run into same issues as) #355Similar to what's possible for private chats.
Slightly related to (might run into same issues as) #355Desktop 0.4.1Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar-desktop/-/issues/477Second login attempt after failed startup results in infinite loading screen2023-02-24T13:50:45ZMikolai GütschowSecond login attempt after failed startup results in infinite loading screenExperienced with the known database migration issue and version 0.4.0 on an old database.
The error screen is correctly shown, but allows to go back:
![image](/uploads/205466faf066bf4afc031ccca4d12137/image.png)
After entering the pas...Experienced with the known database migration issue and version 0.4.0 on an old database.
The error screen is correctly shown, but allows to go back:
![image](/uploads/205466faf066bf4afc031ccca4d12137/image.png)
After entering the password again, the loading screen stays forever and logs show:
```
14:44:19.987 [pool-1-thread-1] WARN o.b.b.desktop.login.StartupViewModel - Startup failed: SERVICE_ERROR
14:45:05.036 [pool-1-thread-1] WARN o.b.b.lifecycle.LifecycleManagerImpl - Already running
14:45:05.037 [pool-1-thread-1] INFO o.b.b.desktop.login.StartupViewModel - Already running
```Desktop 0.4.1SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/472NoticeMessageItem is not added to open contact list after sharing forum2023-03-10T08:54:48ZMikolai GütschowNoticeMessageItem is not added to open contact list after sharing forumTo reproduce:
1. Open chat with contact A
2. Switch to forums in the sidebar
3. share a forum with contact A
4. switch back to private messages
5. notice that the chat with contact A is still open, but the info message, that the forum h...To reproduce:
1. Open chat with contact A
2. Switch to forums in the sidebar
3. share a forum with contact A
4. switch back to private messages
5. notice that the chat with contact A is still open, but the info message, that the forum has been shared, is not shown
6. switch to another contact B and back to contact A, see the info messageDesktop 0.4.1https://code.briarproject.org/briar/briar-desktop/-/issues/456Consistent naming "Briar" throughout app2023-02-05T22:26:35ZMikolai GütschowConsistent naming "Briar" throughout appThe following discussion from !274 should be addressed:
- [ ] @ialokim started a [discussion](https://code.briarproject.org/briar/briar-desktop/-/merge_requests/274#note_73755): (+3 comments)
> While trying out the installer gener...The following discussion from !274 should be addressed:
- [ ] @ialokim started a [discussion](https://code.briarproject.org/briar/briar-desktop/-/merge_requests/274#note_73755): (+3 comments)
> While trying out the installer generated by the CI, I noticed we use "Briar" as the application name during installation and also for the `.desktop` file for Linux, but the title of the main window is "Briar Desktop". Not sure if we should instead be consistent.
TL;DR: We probably want to use "Briar" everywhere instead of "Briar Desktop".Desktop 0.4.1SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/443Check and fix all i18n warnings found via code inspection2023-02-24T13:42:05ZSebastianCheck and fix all i18n warnings found via code inspectioneither add NON-NLS comments or `@file:Suppress("nls")` to ignore whole files (mostly useful for testing code)either add NON-NLS comments or `@file:Suppress("nls")` to ignore whole files (mostly useful for testing code)Desktop 0.4.1SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/438Fix signature of eventOccurred()2023-02-02T13:58:17ZSebastianFix signature of eventOccurred()IntelliJ shows a warning at the locations where we override `eventOccurred()` from `EventListener` with `Event?` as the argument instead of `Event`. The interface is not nullable, so I think we can make this `Event` everywhere.
```
$ gr...IntelliJ shows a warning at the locations where we override `eventOccurred()` from `EventListener` with `Event?` as the argument instead of `Event`. The interface is not nullable, so I think we can make this `Event` everywhere.
```
$ grep -rI --include "*.kt" eventOcc briar-desktop/
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/conversation/ConversationViewModel.kt: override fun eventOccurred(e: Event?) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/login/StartupViewModel.kt: override fun eventOccurred(e: Event) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ThreadedConversationViewModel.kt: override fun eventOccurred(e: Event) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/forums/ForumViewModel.kt: override fun eventOccurred(e: Event) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/ThreadedConversationViewModel.kt: override fun eventOccurred(e: Event?) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/privategroups/PrivateGroupListViewModel.kt: override fun eventOccurred(e: Event?) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactsViewModel.kt: override fun eventOccurred(e: Event?) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactListViewModel.kt: override fun eventOccurred(e: Event?) {
briar-desktop/src/main/kotlin/org/briarproject/briar/desktop/contact/ContactListViewModel.kt: super.eventOccurred(e)
```Desktop 0.4.1SebastianSebastianhttps://code.briarproject.org/briar/briar-desktop/-/issues/331Simplify Introduction Contact List2023-03-07T11:48:16ZpaulSimplify Introduction Contact List![after-0.2.1-intro0](/uploads/4fa61a59af8eb4a7bb70bdad09c7b81b/after-0.2.1-intro0.png)
While re-using the code is nice, I'm not sure if the message counters, time of last message, and online status are important to display on the conta...![after-0.2.1-intro0](/uploads/4fa61a59af8eb4a7bb70bdad09c7b81b/after-0.2.1-intro0.png)
While re-using the code is nice, I'm not sure if the message counters, time of last message, and online status are important to display on the contact list for contact introduction. Might be useful to swap this out with a simplified contact list which just displays profile pictures, alias and name?Desktop 0.4.1Mikolai GütschowMikolai Gütschowhttps://code.briarproject.org/briar/briar/-/issues/1822Import RSS feeds shared by other apps2023-03-15T12:35:33ZakwizgranImport RSS feeds shared by other appsImport RSS feeds shared as XML files by other apps.
This should use the same parsing and import logic as #1810.Import RSS feeds shared as XML files by other apps.
This should use the same parsing and import logic as #1810.RSS import2023-02-28https://code.briarproject.org/briar/briar-mailbox/-/issues/6Implement RSS API2022-11-17T14:30:52ZakwizgranImplement RSS APIImplement the RSS endpoints of the mailbox REST API. These endpoints allow the owner to receive a list of feeds offered by the mailbox (including the time when each feed was last updated) and download feeds.
Related to briar#1809 and br...Implement the RSS endpoints of the mailbox REST API. These endpoints allow the owner to receive a list of feeds offered by the mailbox (including the time when each feed was last updated) and download feeds.
Related to briar#1809 and briar#1810. Depends on briar#1804.RSS import2022-10-31