briar issueshttps://code.briarproject.org/groups/briar/-/issues2023-06-23T10:50:29Zhttps://code.briarproject.org/briar/briar-desktop/-/issues/529Document building and running on macOS2023-06-23T10:50:29ZSebastianDocument building and running on macOS!332 brings support for building and running on macOS. The CI has been configured to produce distributable zip archives, however it's not entirely straightforward to run these as signing and notarization needs to be done for which a cert...!332 brings support for building and running on macOS. The CI has been configured to produce distributable zip archives, however it's not entirely straightforward to run these as signing and notarization needs to be done for which a certificate is required (either self-created or officially obtained from Apple). While we do take the zip created by the CI and sign it ourselves in order to publish it on the website as packages that can be installed by ordinary users, we should probably document how to sign packages, so that developers can run developments builds or people can use the nightly builds from the CI for experimentation and testing.
There's a script `utils/sign-mac.sh` that can be used for signing the packages build locally using pinpit or build on the CI, but it requires some modification in order to work. Either one needs to put the credentials for one's own Apple developer certificate into the script:
```
TEAM="ABCDEF1234"
APPLE_ID="<your apple id email>"
PASSWORD="<password>"
```
or it needs to be changed in a way to work with a self-created certificate. How that works hasn't been worked out yet. Per [this comment](https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/issues/40819#note_2897651) we could probably figure something out based on [this script](https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/blob/main/tools/browser-self-sign-macos.sh).https://code.briarproject.org/briar/briar-mailbox/-/issues/195IllegalStateException: Hilt service must be attached to an @AndroidEntryPoint...2023-06-19T14:35:27ZakwizgranIllegalStateException: Hilt service must be attached to an @AndroidEntryPoint Application* Android version: 12
* Phone model: TECNO TECNO-BF6 (TECNO POP 7)
* Mailbox version: 1.0.5
Stacktrace:
```
Exception java.lang.RuntimeException:
at android.app.ActivityThread.handleCreateService (ActivityThread.java:4579)
at androi...* Android version: 12
* Phone model: TECNO TECNO-BF6 (TECNO POP 7)
* Mailbox version: 1.0.5
Stacktrace:
```
Exception java.lang.RuntimeException:
at android.app.ActivityThread.handleCreateService (ActivityThread.java:4579)
at android.app.ActivityThread.access$1700 (ActivityThread.java:272)
at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2138)
at android.os.Handler.dispatchMessage (Handler.java:106)
at android.os.Looper.loopOnce (Looper.java:201)
at android.os.Looper.loop (Looper.java:288)
at android.app.ActivityThread.main (ActivityThread.java:7981)
at java.lang.reflect.Method.invoke
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:553)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1003)
Caused by java.lang.IllegalStateException: Hilt service must be attached to an @AndroidEntryPoint Application. Found: class android.app.Application
at dagger.hilt.internal.Preconditions.checkState (Preconditions.java:10)
at dagger.hilt.android.internal.managers.ServiceComponentManager.generatedComponent (ServiceComponentManager.java:25)
at org.briarproject.mailbox.android.Hilt_MailboxService.generatedComponent (Hilt_MailboxService.java:5)
at org.briarproject.mailbox.android.Hilt_MailboxService.inject (Hilt_MailboxService.java:8)
at org.briarproject.mailbox.android.Hilt_MailboxService.onCreate (Hilt_MailboxService.java:1)
at org.briarproject.mailbox.android.MailboxService.onCreate (MailboxService.kt:1)
at android.app.ActivityThread.handleCreateService (ActivityThread.java:4566)
```https://code.briarproject.org/briar/briar-desktop/-/issues/528Unlinking mailbox doesn't remove the problem indicator2023-08-25T13:33:34ZMikolai GütschowUnlinking mailbox doesn't remove the problem indicatorAfter unlinking the mailbox, the sidebar is still showing the problem indicator.After unlinking the mailbox, the sidebar is still showing the problem indicator.Desktop 0.7.0Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/2436Explain signing of briar-headless on macOS2023-06-15T16:19:44ZSebastianExplain signing of briar-headless on macOSExplain how to sign using an Apple developer certificate and also how to sign using a certificate that has been created locally for debugging etc.Explain how to sign using an Apple developer certificate and also how to sign using a certificate that has been created locally for debugging etc.https://code.briarproject.org/briar/briar-mailbox/-/issues/194Documentation forthcoming?2023-08-28T16:00:10Zcoreless corelessDocumentation forthcoming?Will there be documentation added to the wiki about administering Briar Mailbox?
Perhaps I am mistaken, but the version number (1.0.5) implies Briar Mailbox is considered stable and fit for production use? If so, I'd like to deploy it ...Will there be documentation added to the wiki about administering Briar Mailbox?
Perhaps I am mistaken, but the version number (1.0.5) implies Briar Mailbox is considered stable and fit for production use? If so, I'd like to deploy it for my own use as well as my community, but I would benefit from documentation about how to do so.https://code.briarproject.org/briar/briar/-/issues/2435Camera can't focus on QR code in continuous-picture mode2023-06-08T12:13:45ZakwizgranCamera can't focus on QR code in continuous-picture modeA user reported that their camera can't focus on a QR code. The log shows that the camera's focus mode is continuous-picture (unlike #346 which concerns fixed-focus cameras).
* Android version: 10
* Phone model: Doogee S59 (S59_EEA)
* B...A user reported that their camera can't focus on a QR code. The log shows that the camera's focus mode is continuous-picture (unlike #346 which concerns fixed-focus cameras).
* Android version: 10
* Phone model: Doogee S59 (S59_EEA)
* Briar version: 1.5.3 (1f1a97f)
* User feedback: "I am writing again about the camera focus issue when adding a contact. It does not indicate the focus of the camera at all. Only with Briar do I have this problem."
Edited log:
```
05-26 10:17:14.255 I/CameraView: Opening camera
05-26 10:17:14.258 I/CameraView: Using back-facing camera
05-26 10:17:14.301 I/CameraView: Screen rotation 0 degrees, camera orientation 90 degrees
05-26 10:17:14.305 I/CameraView: Scene modes: [auto, action, portrait, landscape, night, night-portrait, theatre, beach, snow, sunset, steadyphoto, fireworks, sports, party, candlelight, barcode, hdr]
05-26 10:17:14.309 I/CameraView: Focus modes: [auto, macro, continuous-video, continuous-picture]
05-26 10:17:14.312 I/CameraView: Video stabilisation enabled: true
05-26 10:17:14.312 I/CameraView: Scene mode: barcode
05-26 10:17:14.312 I/CameraView: Focus mode: continuous-picture
05-26 10:17:14.312 I/CameraView: Flash mode: off
05-26 10:17:14.313 I/CameraView: Preview size: 1920x1080
05-26 10:17:14.368 I/CameraView: Surface created
05-26 10:17:14.368 I/CameraView: Surface changed: 720x1340
05-26 10:17:14.370 I/CameraView: Size 1920x1440, stretch 1.3958333, zoom 5.5296, score 0.12956055
05-26 10:17:14.370 I/CameraView: Size 1920x1088, stretch 1.0546296, zoom 4.17792, score 0.2269551
05-26 10:17:14.370 I/CameraView: Size 1920x1080, stretch 1.046875, zoom 4.1472, score 0.23032984
05-26 10:17:14.370 I/CameraView: Size 1600x1200, stretch 1.3958333, zoom 3.84, score 0.18656717
05-26 10:17:14.370 I/CameraView: Size 1440x1080, stretch 1.3958333, zoom 3.1104, score 0.23032986
05-26 10:17:14.370 I/CameraView: Size 1440x720, stretch 1.0746269, zoom 2.0736, score 0.44876328
05-26 10:17:14.370 I/CameraView: Size 1280x960, stretch 1.3958333, zoom 2.4576, score 0.2915112
05-26 10:17:14.370 I/CameraView: Size 1280x720, stretch 1.046875, zoom 1.8432, score 0.5182421
05-26 10:17:14.370 I/CameraView: Size 960x960, stretch 1.861111, zoom 1.8432, score 0.2915112
05-26 10:17:14.370 I/CameraView: Size 960x720, stretch 1.3958333, zoom 1.3824, score 0.5182422
05-26 10:17:14.370 I/CameraView: Size 960x540, stretch 1.046875, zoom 1.0368, score 0.92131937
05-26 10:17:14.370 I/CameraView: Size 960x480, stretch 1.0746269, zoom 1.0850694, score 0.8576
05-26 10:17:14.370 I/CameraView: Size 800x600, stretch 1.3958333, zoom 1.0416666, score 0.68776125
05-26 10:17:14.370 I/CameraView: Size 720x720, stretch 1.861111, zoom 1.0368, score 0.5182421
05-26 10:17:14.370 I/CameraView: Size 720x480, stretch 1.2407407, zoom 1.4467592, score 0.5570866
05-26 10:17:14.370 I/CameraView: Size 640x480, stretch 1.3958333, zoom 1.6276041, score 0.44016722
05-26 10:17:14.370 I/CameraView: Size 352x288, stretch 1.5227271, zoom 4.9321337, score 0.13315058
05-26 10:17:14.370 I/CameraView: Size 320x240, stretch 1.3958333, zoom 6.5104165, score 0.110041805
05-26 10:17:14.370 I/CameraView: Size 192x144, stretch 1.3958333, zoom 18.08449, score 0.03961505
05-26 10:17:14.370 I/CameraView: Size 192x108, stretch 1.046875, zoom 24.112654, score 0.039615046
05-26 10:17:14.371 I/CameraView: Size 176x144, stretch 1.5227271, zoom 19.728535, score 0.033287644
05-26 10:17:14.371 I/CameraView: Size 160x96, stretch 1.1166667, zoom 32.552082, score 0.027510447
05-26 10:17:14.371 I/CameraView: Best size 960x540
05-26 10:17:14.373 I/CameraView: Video stabilisation enabled: true
05-26 10:17:14.373 I/CameraView: Scene mode: barcode
05-26 10:17:14.373 I/CameraView: Focus mode: continuous-picture
05-26 10:17:14.373 I/CameraView: Flash mode: off
05-26 10:17:14.373 I/CameraView: Preview size: 960x540
05-26 10:17:14.373 I/CameraView: Starting preview
```https://code.briarproject.org/briar/briar/-/issues/2433IllegalStateException when storing attachments2023-08-24T14:33:28ZakwizgranIllegalStateException when storing attachments* Android version: 9
* Phone model: Coolpad cp3648AT (full_cp3648at)
* Briar version: 1.4.11 (2aa39e4)
Stacktrace:
```
java.lang.IllegalStateException
at org.briarproject.briar.android.attachment.AttachmentCreatorImpl.storeAttac...* Android version: 9
* Phone model: Coolpad cp3648AT (full_cp3648at)
* Briar version: 1.4.11 (2aa39e4)
Stacktrace:
```
java.lang.IllegalStateException
at org.briarproject.briar.android.attachment.AttachmentCreatorImpl.storeAttachments(AttachmentCreatorImpl.java:83)
at org.briarproject.briar.android.conversation.ConversationViewModel.storeAttachments(ConversationViewModel.java:277)
at org.briarproject.briar.android.view.TextAttachmentController.onNewUris(TextAttachmentController.java:178)
at org.briarproject.briar.android.view.TextAttachmentController.onImageReceived(TextAttachmentController.java:160)
at org.briarproject.briar.android.conversation.ConversationActivity.onImagesChosen(ConversationActivity.java:797)
at org.briarproject.briar.android.conversation.ConversationActivity.$r8$lambda$Yw3fl1gK9EIeGMTHPyKDfNfoOkI(Unknown Source:0)
at org.briarproject.briar.android.conversation.ConversationActivity$$ExternalSyntheticLambda3.onActivityResult(Unknown Source:4)
at androidx.activity.result.ActivityResultRegistry$1.onStateChanged(ActivityResultRegistry.java:148)
at androidx.lifecycle.LifecycleRegistry$ObserverWithState.dispatchEvent(LifecycleRegistry.java:354)
at androidx.lifecycle.LifecycleRegistry.forwardPass(LifecycleRegistry.java:265)
at androidx.lifecycle.LifecycleRegistry.sync(LifecycleRegistry.java:307)
at androidx.lifecycle.LifecycleRegistry.moveToState(LifecycleRegistry.java:148)
at androidx.lifecycle.LifecycleRegistry.handleLifecycleEvent(LifecycleRegistry.java:134)
at androidx.lifecycle.ReportFragment.dispatch(ReportFragment.java:68)
at androidx.lifecycle.ReportFragment.dispatch(ReportFragment.java:144)
at androidx.lifecycle.ReportFragment.onStart(ReportFragment.java:109)
at android.app.Fragment.performStart(Fragment.java:2548)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1334)
at android.app.FragmentManagerImpl.moveFragmentToExpectedState(FragmentManager.java:1576)
at android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1637)
at android.app.FragmentManagerImpl.dispatchMoveToState(FragmentManager.java:3046)
at android.app.FragmentManagerImpl.dispatchStart(FragmentManager.java:3003)
at android.app.FragmentController.dispatchStart(FragmentController.java:193)
at android.app.Activity.performStart(Activity.java:7165)
at android.app.ActivityThread.handleStartActivity(ActivityThread.java:2968)
at android.app.servertransaction.TransactionExecutor.performLifecycleSequence(TransactionExecutor.java:180)
at android.app.servertransaction.TransactionExecutor.cycleToPath(TransactionExecutor.java:165)
at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:142)
at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1836)
at android.os.Handler.dispatchMessage(Handler.java:106)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6704)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:911)
```
Edited log:
```
01-12 20:00:06.622 I/ValidationManagerImpl: Validating message for org.briarproject.briar.messaging
01-12 20:00:06.831 I/ValidationManagerImpl: Delivering message for org.briarproject.briar.messaging
01-12 20:00:06.837 I/AutoDeleteManagerImpl: Mirroring auto-delete timer -1
01-12 20:00:06.940 I/ContactsViewModel: Conversation message tracked, updating item
01-12 20:00:11.836 I/BaseActivity: Destroying NavDrawerActivity
01-12 20:00:11.954 I/BaseActivity: Creating ConversationActivity
01-12 20:00:12.158 I/BaseActivity: Starting ConversationActivity
01-12 20:00:12.163 I/BaseActivity: Resuming ConversationActivity
01-12 20:00:12.233 I/ConversationViewModel: PrivateMessageFormat loaded: TEXT_IMAGES_AUTO_DELETE
01-12 20:00:25.255 I/ConversationActivity: Eagerly loading text for latest message
01-12 20:00:31.004 W/AttachmentRetrieverImpl: org.briarproject.bramble.api.db.MessageDeletedException
org.briarproject.bramble.api.db.MessageDeletedException
at org.briarproject.bramble.db.JdbcDatabase.getMessage(JdbcDatabase.java:1860)
at org.briarproject.bramble.db.JdbcDatabase.getMessage(JdbcDatabase.java:100)
at org.briarproject.bramble.db.DatabaseComponentImpl.getMessage(DatabaseComponentImpl.java:600)
at org.briarproject.bramble.client.ClientHelperImpl.getMessage(ClientHelperImpl.java:146)
at org.briarproject.briar.attachment.AttachmentReaderImpl.getAttachment(AttachmentReaderImpl.java:46)
at org.briarproject.briar.attachment.AttachmentReaderImpl.lambda$getAttachment$0(AttachmentReaderImpl.java:38)
at org.briarproject.briar.attachment.AttachmentReaderImpl.$r8$lambda$eCXQ8CbNfD8FSDzXT4wNgsUZiKY(Unknown Source:0)
at org.briarproject.briar.attachment.AttachmentReaderImpl$$ExternalSyntheticLambda0.call(Unknown Source:4)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:212)
at org.briarproject.briar.attachment.AttachmentReaderImpl.getAttachment(AttachmentReaderImpl.java:38)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl.loadAttachmentItem(AttachmentRetrieverImpl.java:189)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl.lambda$getAttachmentItems$0(AttachmentRetrieverImpl.java:129)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl.$r8$lambda$IddQB3KJutztIvZ-pFcOKTYs1rM(Unknown Source:0)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl$$ExternalSyntheticLambda0.run(Unknown Source:8)
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:764)
01-12 20:00:32.000 W/AttachmentRetrieverImpl: org.briarproject.bramble.api.db.MessageDeletedException
org.briarproject.bramble.api.db.MessageDeletedException
at org.briarproject.bramble.db.JdbcDatabase.getMessage(JdbcDatabase.java:1860)
at org.briarproject.bramble.db.JdbcDatabase.getMessage(JdbcDatabase.java:100)
at org.briarproject.bramble.db.DatabaseComponentImpl.getMessage(DatabaseComponentImpl.java:600)
at org.briarproject.bramble.client.ClientHelperImpl.getMessage(ClientHelperImpl.java:146)
at org.briarproject.briar.attachment.AttachmentReaderImpl.getAttachment(AttachmentReaderImpl.java:46)
at org.briarproject.briar.attachment.AttachmentReaderImpl.lambda$getAttachment$0(AttachmentReaderImpl.java:38)
at org.briarproject.briar.attachment.AttachmentReaderImpl.$r8$lambda$eCXQ8CbNfD8FSDzXT4wNgsUZiKY(Unknown Source:0)
at org.briarproject.briar.attachment.AttachmentReaderImpl$$ExternalSyntheticLambda0.call(Unknown Source:4)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:212)
at org.briarproject.briar.attachment.AttachmentReaderImpl.getAttachment(AttachmentReaderImpl.java:38)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl.loadAttachmentItem(AttachmentRetrieverImpl.java:189)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl.lambda$getAttachmentItems$0(AttachmentRetrieverImpl.java:129)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl.$r8$lambda$IddQB3KJutztIvZ-pFcOKTYs1rM(Unknown Source:0)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl$$ExternalSyntheticLambda0.run(Unknown Source:8)
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:764)
01-12 20:00:43.142 I/BaseActivity: Pausing ConversationActivity
01-12 20:00:43.192 I/BaseActivity: Stopping ConversationActivity
01-12 20:00:43.886 W/AttachmentRetrieverImpl: org.briarproject.bramble.api.db.MessageDeletedException
org.briarproject.bramble.api.db.MessageDeletedException
at org.briarproject.bramble.db.JdbcDatabase.getMessage(JdbcDatabase.java:1860)
at org.briarproject.bramble.db.JdbcDatabase.getMessage(JdbcDatabase.java:100)
at org.briarproject.bramble.db.DatabaseComponentImpl.getMessage(DatabaseComponentImpl.java:600)
at org.briarproject.bramble.client.ClientHelperImpl.getMessage(ClientHelperImpl.java:146)
at org.briarproject.briar.attachment.AttachmentReaderImpl.getAttachment(AttachmentReaderImpl.java:46)
at org.briarproject.briar.attachment.AttachmentReaderImpl.lambda$getAttachment$0(AttachmentReaderImpl.java:38)
at org.briarproject.briar.attachment.AttachmentReaderImpl.$r8$lambda$eCXQ8CbNfD8FSDzXT4wNgsUZiKY(Unknown Source:0)
at org.briarproject.briar.attachment.AttachmentReaderImpl$$ExternalSyntheticLambda0.call(Unknown Source:4)
at org.briarproject.bramble.db.DatabaseComponentImpl.transactionWithResult(DatabaseComponentImpl.java:212)
at org.briarproject.briar.attachment.AttachmentReaderImpl.getAttachment(AttachmentReaderImpl.java:38)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl.loadAttachmentItem(AttachmentRetrieverImpl.java:189)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl.lambda$getAttachmentItems$0(AttachmentRetrieverImpl.java:129)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl.$r8$lambda$IddQB3KJutztIvZ-pFcOKTYs1rM(Unknown Source:0)
at org.briarproject.briar.android.attachment.AttachmentRetrieverImpl$$ExternalSyntheticLambda0.run(Unknown Source:8)
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:764)
01-12 20:01:00.181 I/BaseActivity: Starting ConversationActivity
01-12 20:01:00.308 I/BaseActivity: Resuming ConversationActivity
01-12 20:01:07.726 I/AutoDeleteManagerImpl: Sending message with auto-delete timer -1
01-12 20:01:17.992 I/BaseActivity: Pausing ConversationActivity
01-12 20:01:18.633 I/BaseActivity: Stopping ConversationActivity
01-12 20:01:19.034 I/ConversationActivity: Eagerly loading text for latest message
01-12 20:01:19.041 I/ConversationActivity: Concurrent update, reloading
01-12 20:01:19.064 I/AutoDeleteManagerImpl: Sending message with auto-delete timer -1
01-12 20:01:23.296 I/BaseActivity: Starting ConversationActivity
01-12 20:01:23.335 I/BaseActivity: Resuming ConversationActivity
01-12 20:01:23.550 I/ImageCompressorImpl: Original image size: 720x1440
01-12 20:01:23.550 I/ImageCompressorImpl: Scaling attachment by factor of 2
01-12 20:01:23.784 I/ImageCompressorImpl: Compressed image to 32229 bytes, quality 70
01-12 20:01:25.507 I/BaseActivity: Pausing ConversationActivity
01-12 20:01:26.209 I/BaseActivity: Stopping ConversationActivity
01-12 20:01:27.381 I/BaseActivity: Starting ConversationActivity
01-12 20:01:27.383 I/BaseActivity: Resuming ConversationActivity
01-12 20:01:29.743 I/BaseActivity: Pausing ConversationActivity
01-12 20:01:30.425 I/BaseActivity: Stopping ConversationActivity
01-12 20:01:30.751 I/BaseActivity: Starting ConversationActivity
01-12 20:01:30.756 W/AttachmentCreatorImpl: Task already exists!
01-12 20:01:30.756 W/AttachmentCreatorImpl: Result already exists!
01-12 20:01:30.756 W/AttachmentCreatorImpl: Uris available: [content://com.android.providers.media.documents/document/image%3A10277]
```
This looks similar to #1647.Android 1.4https://code.briarproject.org/briar/briar/-/issues/2432IllegalStateException from BluetoothConnectionLimiterImpl2023-05-30T15:27:15ZakwizgranIllegalStateException from BluetoothConnectionLimiterImpl* Android version: 10
* Phone models: Motorola Moto G(8) Plus (doha_reteu_n)
* Briar version: 1.4.11 (2aa39e4)
Stacktrace:
```
java.lang.IllegalStateException
at org.briarproject.bramble.plugin.bluetooth.BluetoothConnectionLimit...* Android version: 10
* Phone models: Motorola Moto G(8) Plus (doha_reteu_n)
* Briar version: 1.4.11 (2aa39e4)
Stacktrace:
```
java.lang.IllegalStateException
at org.briarproject.bramble.plugin.bluetooth.BluetoothConnectionLimiterImpl.endLimiting(BluetoothConnectionLimiterImpl.java:53)
at org.briarproject.bramble.plugin.bluetooth.AbstractBluetoothPlugin.eventOccurred(AbstractBluetoothPlugin.java:523)
at org.briarproject.bramble.event.EventBusImpl.lambda$broadcast$0(EventBusImpl.java:42)
at org.briarproject.bramble.event.EventBusImpl.$r8$lambda$clxOMxNLcHINGTGi9tkg-7meojQ(Unknown Source:0)
at org.briarproject.bramble.event.EventBusImpl$$ExternalSyntheticLambda0.run(Unknown Source:4)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:241)
at android.app.ActivityThread.main(ActivityThread.java:7582)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:492)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:941)
```
Edited log:
```
10-02 08:57:47.978 I/AddNearbyContactViewModel: Got result from decoder
... ditto ...
10-02 08:57:48.310 I/AddNearbyContactViewModel: Got result from decoder
10-02 08:57:48.328 I/PollerImpl: Polling plugin org.briarproject.bramble.bluetooth
10-02 08:57:48.337 I/ConnectionRegistryImpl: 1 contacts connected or better: org.briarproject.bramble.bluetooth
10-02 08:57:48.350 I/AddNearbyContactViewModel: Got result from decoder
... ditto ...
10-02 08:57:50.709 I/AddNearbyContactViewModel: Got result from decoder
10-02 08:57:50.760 I/KeyAgreementConnector: Listening via org.briarproject.bramble.bluetooth
10-02 08:57:50.772 I/AddNearbyContactViewModel: Got result from decoder
10-02 08:57:50.783 I/KeyAgreementConnector: Listening via org.briarproject.bramble.lan
10-02 08:57:50.784 I/BluetoothConnectionLimiterImpl: Limiting started
10-02 08:57:50.784 I/AddNearbyContactViewModel: KeyAgreementListeningEvent received
10-02 08:57:50.784 I/KeyAgreementConnector: Stopping BQP listeners
10-02 08:57:50.785 I/ConnectionChooserImpl: Closing 0 unused connections
10-02 08:57:50.786 I/AddNearbyContactViewModel: Local payload is 40 bytes
10-02 08:57:50.786 I/KeyAgreementConnector: Stopping BQP listeners
10-02 08:57:50.786 I/ConnectionChooserImpl: Closing 0 unused connections
10-02 08:57:50.787 I/ConnectionChooserImpl: java.io.IOException: read failed, socket might closed or timeout, read ret: -1
10-02 08:57:50.788 I/KeyAgreementConnector: Starting BQP listeners
10-02 08:57:50.788 I/ConnectionChooserImpl: java.net.SocketException: Socket closed
10-02 08:57:50.788 I/AbstractBluetoothPlugin: Key agreement UUID be4822aa-1ecc-3c82-b00a-7e234a5efdba
10-02 08:57:50.786 I/BluetoothConnectionLimiterImpl: Limiting ended
```Android 1.4https://code.briarproject.org/briar/briar-desktop/-/issues/527Private group invitation overview screen2023-08-08T11:21:54ZMikolai GütschowPrivate group invitation overview screenThe pendent to #521 for private groups. We haven't implemented it for forums yet either.The pendent to #521 for private groups. We haven't implemented it for forums yet either.https://code.briarproject.org/briar/briar/-/issues/2431MailboxIntegrationTest sometimes fails in CI pipelines2023-08-28T16:03:06ZakwizgranMailboxIntegrationTest sometimes fails in CI pipelineshttps://code.briarproject.org/briar/public-mesh-research/-/issues/23Initial Investigations: File IO and OS Integration2023-05-26T02:15:16ZpaulInitial Investigations: File IO and OS IntegrationSubtask of #1
Investigate how Bramble's existing stream import and export system can be used to integrate with outside networking processes.Subtask of #1
Investigate how Bramble's existing stream import and export system can be used to integrate with outside networking processes.https://code.briarproject.org/briar/onionwrapper/-/issues/11Scrub pluggable transport file paths from log messages2023-05-15T16:12:28ZakwizgranScrub pluggable transport file paths from log messagesTor logs the file path of the pluggable transport binaries. On desktop platforms these paths might contain sensitive data such as user names that shouldn't be logged.
Example:
```
05-07 09:59:54.191 I/TorWrapper: NOTICE Managed proxy \"...Tor logs the file path of the pluggable transport binaries. On desktop platforms these paths might contain sensitive data such as user names that shouldn't be logged.
Example:
```
05-07 09:59:54.191 I/TorWrapper: NOTICE Managed proxy \"/data/app/~~AN_deXWsWzeDVEaQKlwywQ==/org.briarproject.briar.android-PhR0ETCE4O5LGAHjfWxfEw==/lib/arm64/libsnowflake.so\": connected
```https://code.briarproject.org/briar/briar-desktop/-/issues/522Feature request: sharing forums in private chats, like make introduction2024-02-10T12:16:02ZAminda SuomalainenFeature request: sharing forums in private chats, like make introductionWhen I open a private chat, the three dots menu has an option to make introduction. There I can even introduce all my contacts to the contact whose chat I have open.
I wish I could do this with forums too in Briar desktop, especially wh...When I open a private chat, the three dots menu has an option to make introduction. There I can even introduce all my contacts to the contact whose chat I have open.
I wish I could do this with forums too in Briar desktop, especially when sharing to my other devices, but also when sharing multiple forums I think my contact would be interested in.https://code.briarproject.org/briar/briar-desktop/-/issues/521Feature request: unified place to manage forum invites2024-02-10T12:16:01ZAminda SuomalainenFeature request: unified place to manage forum invitesIn Briar Android, when I am invited to a forum and open the forums tab, on the bottom there is a floating bar saying that I have been invited to (a) forum(s) and opening it I see a list of forums I have been invited to, who has invited m...In Briar Android, when I am invited to a forum and open the forums tab, on the bottom there is a floating bar saying that I have been invited to (a) forum(s) and opening it I see a list of forums I have been invited to, who has invited me there and accept/decline buttons without having to find and scrolls the individual private chats.
I am missing this view in Briar Desktop.https://code.briarproject.org/briar/tor-reproducer/-/issues/14Optimize build time for macOS binaries2023-07-13T11:02:08ZSebastianOptimize build time for macOS binariesWith our current approach of building the tor binaries for macOS using the [tor-browser-build](https://gitlab.torproject.org/tpo/applications/tor-browser-build/) setup, the build takes rather long (~ 3.5 hours).
The cause of this is tha...With our current approach of building the tor binaries for macOS using the [tor-browser-build](https://gitlab.torproject.org/tpo/applications/tor-browser-build/) setup, the build takes rather long (~ 3.5 hours).
The cause of this is that the build does build lots of tools from source itself such as `cmake` and `clang` to name the building blocks that take up roughly 73% of the build time. Here's a full list of things it builds with the timestamps giving indication of how long it takes. The difference from the item to its predecessor is the time it takes to build, e.g. `cmake` takes 7 minutes in this instance (which is quicker than the actual CI hardware because the machine that was used here has better hardware):
```
drwxr-xr-x 2 z z 4,0K May 2 09:00 mmdebstrap
drwx------ 2 z z 4,0K May 2 09:01 mmdebstrap-image
drwxr-xr-x 2 z z 4,0K May 2 09:01 container-image
drwx------ 2 z z 4,0K May 2 09:08 cmake
drwxr-xr-x 2 z z 4,0K May 2 09:10 llvm-project
drwx------ 2 z z 4,0K May 2 09:12 ninja
drwx------ 2 z z 4,0K May 2 10:17 clang
drwx------ 2 z z 4,0K May 2 10:23 libtapi
drwx------ 2 z z 4,0K May 2 10:25 cctools
drwx------ 2 z z 4,0K May 2 10:31 macosx-toolchain
drwx------ 2 z z 4,0K May 2 10:34 openssl
drwx------ 2 z z 4,0K May 2 10:35 libevent
drwx------ 2 z z 4,0K May 2 10:38 tor
```
A solution could be to let the build just not build some of those and instead use Debian snapshot repos to get deterministic versions of cmake, clang etc. during build.
On an upstream ticket, it was suggested, that it's possible to disable the use of containers when building tor, which would result in the requirement of installing in the docker container all the dependencies needed for the build. (see https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/issues/40819#note_2899611)
Although this comment was given to solve a problem with docker in docker, I had the impression it also might help to reduce the build time. However it looks like `clang`, the most important building block (>66% of build time), is not among the tools that are then expected to be installed on the CI machine, it's still built from source.
I expect meddling with the tor build system to be a bit tricky even though it looks quite well structured. But I bet there is a way to make the build just use `clang` and `cmake` from the system instead of building it from source itself.
The same upstream ticket had a suggestion about reducing build times, too (see https://gitlab.torproject.org/tpo/applications/tor-browser-build/-/issues/40819#note_2899637):
> If you are able to keep the `out` directory accross builds, then it should not rebuild the dependencies.
I don't think though, that this is helpful for us. Well we could build those bits as part of the docker image, but as this runs as part of our pipeline as well, we won't gain much in total, only for reproducing locally maybe.https://code.briarproject.org/briar/briar-desktop/-/issues/519Noticing missing string resource: alternative to silent log?2023-05-08T14:14:43ZMikolai GütschowNoticing missing string resource: alternative to silent log?When a key is used in one of our `i18n*` functions, for which no string exists neither in the translation nor in the English resource file, we currently just print a message to the log and return an empty string. Maybe it might be better...When a key is used in one of our `i18n*` functions, for which no string exists neither in the translation nor in the English resource file, we currently just print a message to the log and return an empty string. Maybe it might be better to either hard-crash the program (following Briar's crash-early strategy) or have some other way of making sure at compile time all strings are actually present (and no keys are misspelled).https://code.briarproject.org/briar/briar/-/issues/2430Icons are missing from our F-Droid repo2023-04-28T17:31:20ZakwizgranIcons are missing from our F-Droid repoOur F-Droid repo doesn't appear to have up-to-date icons for Briar or Mailbox. The newest icons for Briar are for the long-obsolete 1.1.6 release.Our F-Droid repo doesn't appear to have up-to-date icons for Briar or Mailbox. The newest icons for Briar are for the long-obsolete 1.1.6 release.https://code.briarproject.org/briar/briar/-/issues/2428AssertionError when loading image preview2023-04-18T14:43:25ZakwizgranAssertionError when loading image preview* Android version: 10
* Phone model: Samsung SM-A115U (a11qsq)
* Briar version: 1.4.22 (f02bbeb)
* User feedback: "Crash when sending image."
Stacktrace:
```
java.lang.AssertionError
at org.briarproject.briar.android.view.ImageP...* Android version: 10
* Phone model: Samsung SM-A115U (a11qsq)
* Briar version: 1.4.22 (f02bbeb)
* User feedback: "Crash when sending image."
Stacktrace:
```
java.lang.AssertionError
at org.briarproject.briar.android.view.ImagePreviewAdapter.loadItemPreview(ImagePreviewAdapter.java:57)
at org.briarproject.briar.android.view.ImagePreview.loadPreviewImage(ImagePreview.java:80)
at org.briarproject.briar.android.view.TextAttachmentController.onNewAttachmentItemResults(TextAttachmentController.java:206)
at org.briarproject.briar.android.view.TextAttachmentController.access$000(TextAttachmentController.java:44)
at org.briarproject.briar.android.view.TextAttachmentController$1.onChanged(TextAttachmentController.java:187)
at org.briarproject.briar.android.view.TextAttachmentController$1.onChanged(TextAttachmentController.java:179)
at androidx.lifecycle.LiveData.considerNotify(LiveData.java:133)
at androidx.lifecycle.LiveData.dispatchingValue(LiveData.java:151)
at androidx.lifecycle.LiveData.setValue(LiveData.java:309)
at androidx.lifecycle.MutableLiveData.setValue(MutableLiveData.java:50)
at androidx.lifecycle.LiveData$1.run(LiveData.java:93)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:237)
at android.app.ActivityThread.main(ActivityThread.java:8107)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:496)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1100)
```
Edited log:
```
03-18 20:52:32.715 I/BaseActivity: Starting ConversationActivity
03-18 20:52:32.720 I/BaseActivity: Resuming ConversationActivity
03-18 20:52:33.024 I/ImageCompressorImpl: Original image size: 682x1024
03-18 20:52:33.024 I/ImageCompressorImpl: Scaling attachment by factor of 2
03-18 20:52:33.098 I/ImageCompressorImpl: Compressed image to 30054 bytes, quality 70
03-18 20:52:33.903 I/BaseActivity: Pausing ConversationActivity
03-18 20:52:33.924 I/BaseActivity: Starting NavDrawerActivity
03-18 20:52:33.925 I/BaseActivity: Resuming NavDrawerActivity
03-18 20:52:34.396 I/BaseActivity: Stopping ConversationActivity
03-18 20:52:34.397 I/BaseActivity: Destroying ConversationActivity
03-18 20:52:35.287 I/BaseActivity: Pausing NavDrawerActivity
03-18 20:52:35.310 I/BaseActivity: Creating ConversationActivity
03-18 20:52:35.333 I/ConversationViewModel: PrivateMessageFormat loaded: TEXT_IMAGES_AUTO_DELETE
03-18 20:52:35.382 I/BaseActivity: Starting ConversationActivity
03-18 20:52:35.384 I/BaseActivity: Resuming ConversationActivity
03-18 20:52:35.886 I/BaseActivity: Stopping NavDrawerActivity
03-18 20:52:36.322 I/ConversationActivity: Eagerly loading text for latest message
03-18 20:52:36.794 I/BaseActivity: Pausing ConversationActivity
03-18 20:52:37.403 I/BaseActivity: Stopping ConversationActivity
03-18 20:52:41.046 I/BaseActivity: Starting ConversationActivity
03-18 20:52:41.048 I/BaseActivity: Resuming ConversationActivity
03-18 20:52:41.076 I/ImageCompressorImpl: Original image size: 720x1560
03-18 20:52:41.077 I/ImageCompressorImpl: Scaling attachment by factor of 2
03-18 20:52:41.177 I/ImageCompressorImpl: Compressed image to 29301 bytes, quality 70
```Android 1.4https://code.briarproject.org/briar/briar-mailbox/-/issues/192Set up fastlane for app store metadata2023-08-28T16:00:10ZTorsten GroteSet up fastlane for app store metadatahttps://code.briarproject.org/briar/public-mesh-testbed/-/issues/2Add uncaught exception handler, ensure that crashes get logged2023-04-17T14:11:48ZakwizgranAdd uncaught exception handler, ensure that crashes get logged