briar issueshttps://code.briarproject.org/groups/briar/-/issues2021-02-17T18:49:59Zhttps://code.briarproject.org/briar/briar/-/issues/1940Check if Localizer requires context.createConfigurationContext()2021-02-17T18:49:59ZSebastianCheck if Localizer requires context.createConfigurationContext()It's possible that we can remove this entirely:
https://code.briarproject.org/briar/briar/-/merge_requests/1367#note_46627
Should be tested on many API levels and with toggling themes while testing.It's possible that we can remove this entirely:
https://code.briarproject.org/briar/briar/-/merge_requests/1367#note_46627
Should be tested on many API levels and with toggling themes while testing.https://code.briarproject.org/briar/briar/-/issues/1938UnknownServiceException: Cleartext communication not permitted2021-02-17T12:27:36ZakwizgranUnknownServiceException: Cleartext communication not permitted* Android version: 10
* Phone model: Fairphone FP3
* Briar version: 1.2.13 (5fdc7e7)
* User feedback: "Import RSS fail"
Log snippet:
```
02-14 16:15:58.259 W/RssFeedImportActivity: java.net.UnknownServiceException: CLEARTEXT communicati...* Android version: 10
* Phone model: Fairphone FP3
* Briar version: 1.2.13 (5fdc7e7)
* User feedback: "Import RSS fail"
Log snippet:
```
02-14 16:15:58.259 W/RssFeedImportActivity: java.net.UnknownServiceException: CLEARTEXT communication to [scrubbed] not permitted by network security policy
java.net.UnknownServiceException: CLEARTEXT communication to [scrubbed] not permitted by network security policy
at okhttp3.internal.connection.RealConnection.connect(RealConnection.java:148)
at okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:258)
at okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:135)
at okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:114)
at okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:127)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
at okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
at okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:257)
at okhttp3.RealCall.execute(RealCall.java:93)
at org.briarproject.briar.feed.FeedManagerImpl.getFeedInputStream(FeedManagerImpl.java:385)
at org.briarproject.briar.feed.FeedManagerImpl.fetchSyndFeed(FeedManagerImpl.java:332)
at org.briarproject.briar.feed.FeedManagerImpl.addFeed(FeedManagerImpl.java:171)
at org.briarproject.briar.android.blog.RssFeedImportActivity.lambda$importFeed$2(RssFeedImportActivity.java:137)
at org.briarproject.briar.android.blog.RssFeedImportActivity.lambda$importFeed$2$RssFeedImportActivity(Unknown Source:0)
at org.briarproject.briar.android.blog.-$$Lambda$RssFeedImportActivity$yMsHehcx_j-aBTiyhHwsHyxrpIs.run(Unknown Source:4)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:919)
```
Note: the domain name wasn't scrubbed from the original log. We should fix that.https://code.briarproject.org/briar/briar/-/issues/1937IndexOutOfBoundsException when selecting text2023-09-14T12:20:44ZakwizgranIndexOutOfBoundsException when selecting text* Android version: 7.1.1
* Phone model: OnePlus A5000 (OnePlus5)
* Briar version: 1.2.13 (5fdc7e7)
* User feedback: "I was trying to use this app offline to contact my friend."
Stacktrace:
```
java.lang.IndexOutOfBoundsException: setSpa...* Android version: 7.1.1
* Phone model: OnePlus A5000 (OnePlus5)
* Briar version: 1.2.13 (5fdc7e7)
* User feedback: "I was trying to use this app offline to contact my friend."
Stacktrace:
```
java.lang.IndexOutOfBoundsException: setSpan (-1 ... -1) starts before 0
at android.text.SpannableStringBuilder.checkRange(SpannableStringBuilder.java:1325)
at android.text.SpannableStringBuilder.setSpan(SpannableStringBuilder.java:683)
at android.text.SpannableStringBuilder.setSpan(SpannableStringBuilder.java:676)
at android.text.Selection.setSelection(Selection.java:76)
at android.text.method.ArrowKeyMovementMethod.onTouchEvent(ArrowKeyMovementMethod.java:291)
at android.widget.TextView.onTouchEvent(TextView.java:8546)
at android.view.View.dispatchTouchEvent(View.java:10180)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:2632)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2321)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:414)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1808)
at android.app.Activity.dispatchTouchEvent(Activity.java:3122)
at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:69)
at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:69)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:376)
at android.view.View.dispatchPointerEvent(View.java:10400)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:4445)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:4313)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3860)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3913)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3879)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:4006)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3887)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:4063)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3860)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:3913)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:3879)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:3887)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:3860)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:6254)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:6228)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:6189)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:6357)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:185)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:323)
at android.os.Looper.loop(Looper.java:136)
at android.app.ActivityThread.main(ActivityThread.java:6138)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:893)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:783)
```
No log due to #1917.
Looks like a platform bug - I'm opening this ticket in case there's a known workaround.Android 1.4https://code.briarproject.org/briar/briar/-/issues/1936Contact was shown as offline when online2021-02-17T11:15:26ZakwizgranContact was shown as offline when online* Android version: 10
* Phone model: Huawei LYA-L29 (LYA-L29RU)
* Briar version: 1.2.13 (5fdc7e7)
* User feedback: "Very often displays incorrect information about the network status of another contact. The interlocutor is online for all...* Android version: 10
* Phone model: Huawei LYA-L29 (LYA-L29RU)
* Briar version: 1.2.13 (5fdc7e7)
* User feedback: "Very often displays incorrect information about the network status of another contact. The interlocutor is online for all network conditions, and displays as if he is not available."
Edited log:
```
02-12 20:59:14.597 I/DuplexOutgoingSession: Sending keepalive
02-12 20:59:44.598 I/DuplexOutgoingSession: Sending keepalive
02-12 20:59:53.360 I/AndroidNetworkManager: Received broadcast android.intent.action.SCREEN_ON
02-12 20:59:53.367 I/TorPlugin: Online: true, wifi: true, IPv6 only: false
02-12 20:59:53.367 I/TorPlugin: Country code: RU
02-12 20:59:53.367 I/TorPlugin: Charging: false
02-12 20:59:53.367 I/TorPlugin: Enabling network
02-12 20:59:53.367 I/TorPlugin: Using obfs4 bridges
02-12 20:59:53.367 I/TorPlugin: Disabling connection padding
02-12 21:00:02.666 I/PollerImpl: Polling plugin org.briarproject.bramble.bluetooth
02-12 21:00:02.672 I/ConnectionRegistryImpl: 0 contacts connected or better: org.briarproject.bramble.bluetooth
02-12 21:00:09.531 I/BaseActivity: Creating SplashScreenActivity
02-12 21:00:09.575 I/BaseActivity: Creating NavDrawerActivity
02-12 21:00:09.597 I/BaseActivity: Starting NavDrawerActivity
02-12 21:00:09.598 I/BaseActivity: Resuming NavDrawerActivity
02-12 21:00:10.158 I/BaseActivity: Destroying SplashScreenActivity
02-12 21:00:14.598 I/DuplexOutgoingSession: Sending keepalive
02-12 21:00:16.395 I/BaseActivity: Pausing NavDrawerActivity
02-12 21:00:16.818 I/BaseActivity: Stopping NavDrawerActivity
02-12 21:00:17.015 I/PollerImpl: Polling plugin org.briarproject.bramble.tor
02-12 21:00:17.019 I/ConnectionRegistryImpl: 1 contacts connected or better: org.briarproject.bramble.tor
02-12 21:00:17.020 I/TorPlugin: Connecting to v3 wwi[scrubbed]
02-12 21:00:17.793 I/TorPlugin: Connected to v3 wwi[scrubbed]
02-12 21:00:17.824 I/DuplexOutgoingSession: Generated ack: false
02-12 21:00:17.827 I/DuplexOutgoingSession: Generated batch: false
02-12 21:00:17.830 I/DuplexOutgoingSession: Generated offer: false
02-12 21:00:17.830 I/DuplexOutgoingSession: Generated request: false
02-12 21:00:18.981 I/ConnectionRegistryImpl: Outgoing connection registered: org.briarproject.bramble.tor
02-12 21:00:18.982 I/ConnectionRegistryImpl: Contact connected
02-12 21:00:18.982 I/ConnectionRegistryImpl: Setting connection priority: org.briarproject.bramble.tor
02-12 21:00:28.954 I/AndroidNetworkManager: Received broadcast android.intent.action.SCREEN_OFF
02-12 21:00:28.959 I/TorPlugin: Online: true, wifi: true, IPv6 only: false
02-12 21:00:28.959 I/TorPlugin: Country code: RU
02-12 21:00:28.959 I/TorPlugin: Charging: false
02-12 21:00:28.959 I/TorPlugin: Enabling network
02-12 21:00:28.959 I/TorPlugin: Using obfs4 bridges
02-12 21:00:28.959 I/TorPlugin: Disabling connection padding
02-12 21:00:33.955 I/TorPlugin: V3 descriptor uploaded
02-12 21:00:34.584 I/TorPlugin: V3 descriptor uploaded
02-12 21:00:34.720 I/TorPlugin: V3 descriptor uploaded
02-12 21:00:34.942 I/TorPlugin: V3 descriptor uploaded
02-12 21:00:35.030 I/TorPlugin: V3 descriptor uploaded
02-12 21:00:39.403 I/TorPlugin: V3 descriptor uploaded
02-12 21:00:44.598 I/DuplexOutgoingSession: Sending keepalive
02-12 21:00:47.823 I/DuplexOutgoingSession: Sending keepalive
02-12 21:00:50.914 I/AndroidNetworkManager: Received broadcast android.intent.action.SCREEN_ON
02-12 21:00:50.918 I/TorPlugin: Online: true, wifi: true, IPv6 only: false
02-12 21:00:50.918 I/TorPlugin: Country code: RU
02-12 21:00:50.918 I/TorPlugin: Charging: false
02-12 21:00:50.918 I/TorPlugin: Enabling network
02-12 21:00:50.918 I/TorPlugin: Using obfs4 bridges
02-12 21:00:50.918 I/TorPlugin: Disabling connection padding
02-12 21:00:57.771 I/BaseActivity: Starting NavDrawerActivity
02-12 21:00:57.772 I/BaseActivity: Resuming NavDrawerActivity
02-12 21:01:02.667 I/PollerImpl: Polling plugin org.briarproject.bramble.bluetooth
02-12 21:01:02.673 I/ConnectionRegistryImpl: 0 contacts connected or better: org.briarproject.bramble.bluetooth
02-12 21:01:05.717 I/TorPlugin: V3 descriptor uploaded
02-12 21:01:06.601 I/TorPlugin: V3 descriptor uploaded
02-12 21:01:06.988 I/BaseActivity: Pausing NavDrawerActivity
02-12 21:01:07.007 I/BaseActivity: Creating SettingsActivity
02-12 21:01:07.026 I/BaseActivity: Starting SettingsActivity
02-12 21:01:07.060 I/BaseActivity: Resuming SettingsActivity
02-12 21:01:07.539 I/BaseActivity: Stopping NavDrawerActivity
02-12 21:01:11.405 I/PollerImpl: Polling plugin org.briarproject.bramble.lan
02-12 21:01:11.418 I/ConnectionRegistryImpl: 0 contacts connected or better: org.briarproject.bramble.lan
02-12 21:01:11.539 I/BaseActivity: Pausing SettingsActivity
02-12 21:01:11.551 I/BaseActivity: Creating FeedbackActivity
```
Notes:
* A duplex connection to a contact is open at the start of the log
* Later log messages from the poller show that this is a Tor connection, rather than Bluetooth or LAN
* A second Tor connection is made at 21:00:17
* The Tor hidden service descriptor is being uploaded, which may indicate that the device recently came online, or may be the daily republishing of the descriptor
The reported issue could be a UI bug (failing to show/update the online state of one or both contacts), or it could be a network or power management issue at the contact's end, causing the contact's Tor connection to be lost.https://code.briarproject.org/briar/briar/-/issues/1935ArrayIndexOutOfBoundsException in RecyclerView2021-11-04T11:03:23ZakwizgranArrayIndexOutOfBoundsException in RecyclerView* Android version: 10
* Briar version: 1.2.10 (54b852d)
Stacktrace:
```
java.lang.ArrayIndexOutOfBoundsException: length=5; index=7
at java.util.Arrays$ArrayList.get(Arrays.java:3766)
at androidx.recyclerview.selection.T...* Android version: 10
* Briar version: 1.2.10 (54b852d)
Stacktrace:
```
java.lang.ArrayIndexOutOfBoundsException: length=5; index=7
at java.util.Arrays$ArrayList.get(Arrays.java:3766)
at androidx.recyclerview.selection.ToolHandlerRegistry.get(ToolHandlerRegistry.java:69)
at androidx.recyclerview.selection.EventRouter.onInterceptTouchEvent(EventRouter.java:57)
at androidx.recyclerview.widget.RecyclerView.findInterceptingOnItemTouchListener(RecyclerView.java:3151)
at androidx.recyclerview.widget.RecyclerView.onInterceptTouchEvent(RecyclerView.java:3170)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2620)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3073)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2709)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3073)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2709)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3073)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2709)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3073)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2709)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3073)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2709)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3073)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2709)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3073)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2709)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3073)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2709)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3073)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:2709)
at com.android.internal.policy.DecorView.superDispatchTouchEvent(DecorView.java:613)
at com.android.internal.policy.PhoneWindow.superDispatchTouchEvent(PhoneWindow.java:1933)
at android.app.Activity.dispatchTouchEvent(Activity.java:4147)
at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:69)
at androidx.appcompat.view.WindowCallbackWrapper.dispatchTouchEvent(WindowCallbackWrapper.java:69)
at com.android.internal.policy.DecorView.dispatchTouchEvent(DecorView.java:559)
at android.view.View.dispatchPointerEvent(View.java:13766)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:5824)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:5619)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:5063)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5116)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:5082)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:5239)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:5090)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:5296)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:5063)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:5116)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:5082)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:5090)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:5063)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:7954)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:7905)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:7859)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:8144)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:233)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:363)
at android.os.Looper.loop(Looper.java:173)
at android.app.ActivityThread.main(ActivityThread.java:8169)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:513)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1101)
```
Edited log:
```
02-12 21:12:09.963 I/BaseActivity: Starting ConversationActivity
02-12 21:12:09.965 I/BaseActivity: Resuming ConversationActivity
02-12 21:12:10.590 I/AndroidNetworkManager: Received broadcast android.intent.action.SCREEN_ON
```
Crash occurred at 21:12:18.697.
This looks like a RecyclerView bug. Opening a ticket in case we need to upgrade the relevant library.Android 1.4https://code.briarproject.org/briar/briar-gtk/-/issues/98Provide flatpak builds for arm architectures2021-02-16T09:30:56ZNicoProvide flatpak builds for arm architecturesOnce we got https://code.briarproject.org/briar/briar/-/issues/1854 fixed, we can provide flatpak builds for other architectures than x86/linux, too. All we need to do is to ship the correct version of briar-headless in the manifest.
@f...Once we got https://code.briarproject.org/briar/briar/-/issues/1854 fixed, we can provide flatpak builds for other architectures than x86/linux, too. All we need to do is to ship the correct version of briar-headless in the manifest.
@fphemeral found [org.freedesktop.Sdk.Extension.rust-stable](https://github.com/flathub/org.freedesktop.Sdk.Extension.rust-stable/blob/branch/20.08/org.freedesktop.Sdk.Extension.rust-stable.json) as an example of using different sources per architecture.https://code.briarproject.org/briar/briar/-/issues/1932API 28 emulator stalled on "decrypting database..." screen2021-02-16T23:16:46ZSebastianAPI 28 emulator stalled on "decrypting database..." screenI tested the current master on a bunch of devices and emulators.
On API 28 I got the problem that briar does not get past the "decrypting database..." screen after entering the password. When switching back to a different app and then ba...I tested the current master on a bunch of devices and emulators.
On API 28 I got the problem that briar does not get past the "decrypting database..." screen after entering the password. When switching back to a different app and then back to briar, I'm properly logged in and can see the contact list.
Tried to reproduce on other devices, but it only appears on my API 28 emulator. Also tried emulators with levels 23, 24, 29 and 30 as well as real devices with levels 16 and 23. All work fine.
@akwizgran you do have API level 28 devices, maybe you could try and see if the problem can be reproduced there?https://code.briarproject.org/briar/briar/-/issues/1931Add new contact FAB labels not visible in landscape orientation2021-02-11T13:25:47ZIvanaAdd new contact FAB labels not visible in landscape orientationWth your device in landscape orientation
Tap on + to add a contact
The icons for adding contacts at a distance or nearby are visible, but labels are not so user doesn't know what to tap.
The workaround is: use phone in portrait orienta...Wth your device in landscape orientation
Tap on + to add a contact
The icons for adding contacts at a distance or nearby are visible, but labels are not so user doesn't know what to tap.
The workaround is: use phone in portrait orientation, where labels are clearly visible
(Mattermost conversation 11/2/21: perhaps solution is to stack icons vertically?)
Low priority as the contact creation is successful in both landscape and portrait, plus workaround super easy - it's jsut a matter of labels showing/not showing...https://code.briarproject.org/briar/briar/-/issues/1929Scan QR codes from DigiSafeGuard encryption app2021-02-10T15:09:30ZRion OcerusScan QR codes from DigiSafeGuard encryption appThis app could be much more robust, if preparation was made to share, & have shared QR codes from DigiSafe Guard (DSG)from SecuryptoThis app could be much more robust, if preparation was made to share, & have shared QR codes from DigiSafe Guard (DSG)from Securyptohttps://code.briarproject.org/briar/briar/-/issues/1927Make entire crash report/feedback exportable2021-02-08T17:30:19ZakwizgranMake entire crash report/feedback exportableThe crash report/feedback entries are selectable individually but not collectively. A tester asked for them to be selectable/exportable/shareable collectively for easier sending of reports via other means when Tor isn't available.The crash report/feedback entries are selectable individually but not collectively. A tester asked for them to be selectable/exportable/shareable collectively for easier sending of reports via other means when Tor isn't available.https://code.briarproject.org/briar/briar-gtk/-/issues/97Accessibility User Testing2021-02-08T12:12:33ZNicoAccessibility User TestingWe should test whether Briar GTK is accessible to users with [different types of disability](https://developer.gnome.org/accessibility-devel-guide/stable/idm140487279365936.html.en) by using tools like [Orca](https://wiki.gnome.org/Proje...We should test whether Briar GTK is accessible to users with [different types of disability](https://developer.gnome.org/accessibility-devel-guide/stable/idm140487279365936.html.en) by using tools like [Orca](https://wiki.gnome.org/Projects/Orca).
Relevant links:
* [GNOME Accessibility Developers Guid](https://developer.gnome.org/accessibility-devel-guide/stable/index.html.en)
* [Accessibility in GTK 4](https://blog.gtk.org/2020/10/21/accessibility-in-gtk-4/)GTK 0.2.0-beta1https://code.briarproject.org/briar/briar/-/issues/1925More config options for metered connection/mobile data2021-02-16T23:17:23ZJens KorteMore config options for metered connection/mobile dataAndroid distinguishes between metered and non-metered connections. It could be useful, if users can decide, when to connect to the tor-network. The mobile option is a similar option.
~~Does an option like "connect once per hour until al...Android distinguishes between metered and non-metered connections. It could be useful, if users can decide, when to connect to the tor-network. The mobile option is a similar option.
~~Does an option like "connect once per hour until all messages are received" or "disconnect after fetching all messages" make sense? An extreme way to configure this would be to offer an repeating event configuration like a calendar software, but I am unsure, if this would be a privacy related issue, because the connections could get predictable. On the other hand this could save bandwidth and battery, if people would agree upon connect every beginning of an hour for some minutes.~~ see #1588
Original issue: https://code.briarproject.org/briar/briar-manual/-/issues/7https://code.briarproject.org/briar/briar/-/issues/1924After switching language, "sign out" dialog button doesn't appear to work2021-11-04T11:03:24ZakwizgranAfter switching language, "sign out" dialog button doesn't appear to workAfter changing the app language in the Briar settings screen, a dialog is shown prompting the user to sign out. On the Samsung Galaxy Ace 2 (Android 4.1.2) the "sign out" button dismisses the dialog and brings the contact list to the for...After changing the app language in the Briar settings screen, a dialog is shown prompting the user to sign out. On the Samsung Galaxy Ace 2 (Android 4.1.2) the "sign out" button dismisses the dialog and brings the contact list to the foreground. The UI remains visible and usable for about 15 seconds and then disappears when sign out completes.
Ideally the UI should be hidden immediately and if the app's relaunched it should show the "signing out" fragment, as happens when the "sign out" menu option is used.Android 1.4SebastianSebastianhttps://code.briarproject.org/briar/briar/-/issues/1923Mailing list migration2021-02-16T23:06:44ZsysterMailing list migrationMailing list migration:
For the reasons:
https://code.briarproject.org/briar/briar/-/issues/988
https://code.briarproject.org/briar/briar/-/issues/1741
"_sourceforge doesn't give us access to the subscriptions_"
migration is bet...Mailing list migration:
For the reasons:
https://code.briarproject.org/briar/briar/-/issues/988
https://code.briarproject.org/briar/briar/-/issues/1741
"_sourceforge doesn't give us access to the subscriptions_"
migration is better done soonish, then later.
-----------------------------------------------------------
**Solution 1:**
Creating new lists and announcing them. Letting the old lists run for 1 year or something and regular invite folks to join the new lists.
**Solution 2:**
There is access to subscribers email pre-2017. They can be migrated to new service and sending them an email asking for confirmation. Sending announcement via sourceforge to all, that there's a new email list. There is no option that pre-2017 subscribers won't receive that same email, even if they're already part of the new list. Potential legal issue: Do you have the consent, that allows you to switch the pre-2017 subscribers to new service?
**Solution 3:**
?
Concern:
- discussion in devel list will be split between 2 lists until everyone participating switched to the new one, or if this issue is mitigated by bridging the lists (could be as simple as coping the digest of the daily mails into the other list with a link to read them in the browser)https://code.briarproject.org/briar/briar/-/issues/1920Change Password 'Done' IME action button doesn't complete flow2021-02-03T14:09:31ZIvanaChange Password 'Done' IME action button doesn't complete flowThis is a very small issue in that when that user types up a new password, and taps Done on the keyboard, the keybaoard itself is dismissed, the the page remains disaplayed, as thought eh workflow is not complete. Only when the user tap...This is a very small issue in that when that user types up a new password, and taps Done on the keyboard, the keybaoard itself is dismissed, the the page remains disaplayed, as thought eh workflow is not complete. Only when the user taps on Change password button the screen is dismissed and the next one shows.
This is really only a very small annoyance to the user - so ... ti fix or not to fix will be a decision based on project priorities.![device-2021-02-03-142650](/uploads/ea69b203021c4b46419e86db1e156b78/device-2021-02-03-142650.mp4)https://code.briarproject.org/briar/briar/-/issues/1918Onion address collision when adding contact2021-02-03T12:37:49ZakwizgranOnion address collision when adding contact* Android version: 10
* Phone model: Samsung SM-A107F (a10sxx)
* Briar version: 1.2.13 (5fdc7e7)
* User feedback: "Unfortunately, I could not connect to my friend. It didn't work. I could not understand the problem."
Log snippet:
```
02...* Android version: 10
* Phone model: Samsung SM-A107F (a10sxx)
* Briar version: 1.2.13 (5fdc7e7)
* User feedback: "Unfortunately, I could not connect to my friend. It didn't work. I could not understand the problem."
Log snippet:
```
02-03 11:37:17.631 I/PluginManagerImpl: org.briarproject.bramble.tor changed from state ENABLING to ACTIVE
02-03 11:37:17.631 I/TorPlugin: First circuit built
02-03 11:37:17.631 I/PluginViewModel: TransportStateEvent: org.briarproject.bramble.tor is ACTIVE
02-03 11:37:17.640 I/AndroidTaskScheduler: Running 1 due tasks
02-03 11:37:17.640 I/AndroidTaskScheduler: Task is 0 ms overdue
02-03 11:37:17.642 I/PollerImpl: Polling plugin org.briarproject.bramble.tor
02-03 11:37:17.643 I/ConnectionRegistryImpl: 0 contacts connected or better: org.briarproject.bramble.tor
02-03 11:37:17.688 I/TorPlugin: WARN tor_bug_occurred_(): Bug: src/feature/hs/hs_service.c:3603: hs_servic
e_add_ephemeral: Non-fatal assertion !(register_service(hs_service_map, service) < 0) failed. (on Tor 0.3.5.12 a0b827eb5b50aa81)
02-03 11:37:17.689 I/TorPlugin: WARN Bug: Tor 0.3.5.12 (git-a0b827eb5b50aa81): Non-fatal assertion !(register_service(hs_service_map, service) < 0) failed in hs_service_add_ephemeral at src/feature/hs/hs_service.c:3603. (Stack trace not available) (on Tor 0.3.5.12 a0b827eb5b50aa81)
02-03 11:37:17.689 I/TorPlugin: WARN Onion Service private key collides with an existing v3 service.
02-03 11:37:17.689 W/TorPlugin: net.freehaven.tor.control.TorControlError: Error reply: Onion address collision
net.freehaven.tor.control.TorControlError: Error reply: Onion address collision
at net.freehaven.tor.control.TorControlConnection.sendAndWaitForResponse(TorControlConnection.java:204)
at net.freehaven.tor.control.TorControlConnection.addOnion(TorControlConnection.java:837)
at net.freehaven.tor.control.TorControlConnection.addOnion(TorControlConnection.java:786)
at org.briarproject.bramble.plugin.tor.TorPlugin.createRendezvousEndpoint(TorPlugin.java:751)
at org.briarproject.bramble.rendezvous.RendezvousPollerImpl.createEndpoint(RendezvousPollerImpl.java:213)
at org.briarproject.bramble.rendezvous.RendezvousPollerImpl.addTransport(RendezvousPollerImpl.java:350)
at org.briarproject.bramble.rendezvous.RendezvousPollerImpl.lambda$addTransportAsync$5(RendezvousPollerImpl.java:339)
at org.briarproject.bramble.rendezvous.RendezvousPollerImpl.lambda$addTransportAsync$5$RendezvousPollerImpl(Unknown Source:0)
at org.briarproject.bramble.rendezvous.-$$Lambda$RendezvousPollerImpl$h19OH8Qm1qYh76tkmxUCO9U4dzc.run(Unknown Source:4)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0(PoliteExecutor.java:57)
at org.briarproject.bramble.PoliteExecutor.lambda$execute$0$PoliteExecutor(Unknown Source:0)
at org.briarproject.bramble.-$$Lambda$PoliteExecutor$wSvuPL6t_HUoaaqCVexrhJX_RSg.run(Unknown Source:6)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
at java.lang.Thread.run(Thread.java:919)
```https://code.briarproject.org/briar/briar-gtk/-/issues/96Distribute on postmarketOS2021-02-04T09:30:19ZTim MageeDistribute on postmarketOSOne of the major phone operating systems that got a special edition PinePhone is postmarketOS.
It would be cool if Briar GTK was available on postmarketOS.One of the major phone operating systems that got a special edition PinePhone is postmarketOS.
It would be cool if Briar GTK was available on postmarketOS.https://code.briarproject.org/briar/briar-gtk/-/issues/95Switch from semi-official package to official APT repository2021-02-01T12:32:40ZNicoSwitch from semi-official package to official APT repositoryOnce https://code.briarproject.org/briar/briar-debian/-/issues/3 is done, we should only offer using that repository and deprecate (or delete) the existing semi-public package at [media.dorfbrunnen.eu/briar/debs](https://media.dorfbrunne...Once https://code.briarproject.org/briar/briar-debian/-/issues/3 is done, we should only offer using that repository and deprecate (or delete) the existing semi-public package at [media.dorfbrunnen.eu/briar/debs](https://media.dorfbrunnen.eu/briar/debs).
In my humble opinion we can then also release Briar to Flathub.org (https://code.briarproject.org/briar/briar-gtk/-/issues/37).
To complete this issue, we should
* change the text in the readme
* push an last update to the semi-public sources, telling users to switch to the new version
I think starting with version https://code.briarproject.org/briar/briar-gtk/-/milestones/7 we should only offer updates through official sources.GTK 0.2.0-beta1https://code.briarproject.org/briar/website/-/issues/31Design brochure2021-01-31T05:07:50ZCleopatraDesign brochureIt'll be nice to have a brochure that can be printed and handed out at events.
**Size:** 8.5 x 5.5 inches
We could have 2 versions of the brochure, with the same front and different backs:
- **Freedom & Privacy Online:** The target au...It'll be nice to have a brochure that can be printed and handed out at events.
**Size:** 8.5 x 5.5 inches
We could have 2 versions of the brochure, with the same front and different backs:
- **Freedom & Privacy Online:** The target audience here is the general public - helping educate people about the reasons that protecting their privacy is important.
- **Activist & aid workers:** This is meant for activists and people working in disaster response - showing people how they can use Briar to communicate when the internet is not available.
**Front content:**
- Briar's mission
- Link to learn more
- How to contribute to the project
- Briar's main features
- How to download
**Back content:**
- Who uses Briar
- Main features
- Use cases
- How Briar workshttps://code.briarproject.org/briar/briar/-/issues/1916Remove locking from MessageTreeImpl and mark the interface @UiThread2021-04-30T13:35:41ZakwizgranRemove locking from MessageTreeImpl and mark the interface @UiThreadSubtask of #1823.Subtask of #1823.