briar issueshttps://code.briarproject.org/groups/briar/-/issues2019-11-06T17:55:06Zhttps://code.briarproject.org/briar/briar/-/issues/1638Image support not updated while conversation is open2019-11-06T17:55:06ZTorsten GroteImage support not updated while conversation is open[User testing has identified an issue](https://code.briarproject.org/briar/briar/issues/1243#note_38091) that the conversation does not update its image support status when this becomes available while the conversation is already open.[User testing has identified an issue](https://code.briarproject.org/briar/briar/issues/1243#note_38091) that the conversation does not update its image support status when this becomes available while the conversation is already open.Android 1.3akwizgranakwizgranhttps://code.briarproject.org/briar/briar-gtk/-/issues/2Repair pytest on GitLab CI2020-07-19T13:59:52ZNicoRepair pytest on GitLab CISince fc91cbd8dac3db4dd8965b7ef1662b63bad047f6, _pytest_ fails on GitLab CI. Locally, everything works fine for me. [This is the first job](https://code.briarproject.org/nicoalt/briar-gtk/-/jobs/3893) failing for this commit:
```
$ tool...Since fc91cbd8dac3db4dd8965b7ef1662b63bad047f6, _pytest_ fails on GitLab CI. Locally, everything works fine for me. [This is the first job](https://code.briarproject.org/nicoalt/briar-gtk/-/jobs/3893) failing for this commit:
```
$ tools/tests/test-pytest.sh
============================= test session starts ==============================
platform linux -- Python 3.7.3, pytest-5.2.0, py-1.8.0, pluggy-0.13.0
rootdir: /builds/nicoalt/briar-gtk, inifile: pytest.ini
plugins: cov-2.7.1, mock-1.11.0, requests-mock-1.7.0
collected 20 items
tests/briar/api/test_constants.py .... [ 20%]
tests/briar/api/models/test_contacts.py . [ 25%]
tests/briar/api/models/test_private_chat.py .. [ 35%]
tests/briar/gtk/test_application.py .....tools/tests/test-pytest.sh: line 6: 4406 Trace/breakpoint trap (core dumped) PYTHONPATH=src pytest --cov=src tests/
ERROR: Job failed: exit code 1
```
Until this is fixed, I allowed the pipeline to fail with d519ebc7aa5e0d3ed76cba2a424c4e64acf4397a.GTK 0.1.0-alpha2https://code.briarproject.org/briar/briar/-/issues/1636Compression of small images throws exception2020-01-08T16:06:41ZTorsten GroteCompression of small images throws exceptionWhen sending images on Android 10 (did not test other versions) smaller than 32KB, the app shows an error and an `IOException` is thrown.
```java
if (!bitmap.compress(JPEG, quality, out))
throw new I...When sending images on Android 10 (did not test other versions) smaller than 32KB, the app shows an error and an `IOException` is thrown.
```java
if (!bitmap.compress(JPEG, quality, out))
throw new IOException();
```
Sending images larger than 32 KB works just fine.Android 1.3Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1634Raise target API level to 282019-10-22T15:14:15ZakwizgranRaise target API level to 28From 1 November Google Play requires all updates to target API 28 or higher. Even if 1.2 is released before 1 November it might make sense to raise the target API level for that release so we don't have to worry about it later if we need...From 1 November Google Play requires all updates to target API 28 or higher. Even if 1.2 is released before 1 November it might make sense to raise the target API level for that release so we don't have to worry about it later if we need to make an urgent bugfix release.Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1633Raise minimum API level to 162019-10-14T15:37:45ZakwizgranRaise minimum API level to 16Devices running API 15 account for less than 1/1000 of our active installs according to Google Play.
Removing the non-PIE 32-bit binaries for Tor and obfsproxy, which are only needed for API 15, will make room for the 64-bit PIE binarie...Devices running API 15 account for less than 1/1000 of our active installs according to Google Play.
Removing the non-PIE 32-bit binaries for Tor and obfsproxy, which are only needed for API 15, will make room for the 64-bit PIE binaries. There may also be some conditional code we can remove. One of the test devices will have to be retired. :crying_cat_face:Android 1.2Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1632Unable to re-share Shareable2019-10-14T14:29:57ZTorsten GroteUnable to re-share ShareableA leaves, sends `REMOTE_LEAVE` to B and goes into `LOCAL_LEFT` state. Now B also leaves and since it got the leave message from A, it does nothing, just moves into `START` state. Provided that A and B get access to the forum again throug...A leaves, sends `REMOTE_LEAVE` to B and goes into `LOCAL_LEFT` state. Now B also leaves and since it got the leave message from A, it does nothing, just moves into `START` state. Provided that A and B get access to the forum again through other contacts, B can still share the forum with A while A is permanently blocked from sharing it again with B, because it is stuck in the `LOCAL_LEFT` state.
https://code.briarproject.org/briar/briar/commits/shareable-re-sharing-issueAndroid 1.2Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1630Remove anonymous author status2022-09-06T09:56:47ZakwizgranRemove anonymous author statusRemove the obsolete AuthorInfo.Status.ANONYMOUS constant and the corresponding drawable for the trust indicator.Remove the obsolete AuthorInfo.Status.ANONYMOUS constant and the corresponding drawable for the trust indicator.Android 1.4https://code.briarproject.org/briar/briar/-/issues/1629Support for deleting a subset of all conversation messages2019-10-28T16:53:17ZTorsten GroteSupport for deleting a subset of all conversation messagesSubtask of #68
* [x] method to `ConversationClient` that returns a set of `MessageId`s it is responsible for
* [x] method to `ConversationClient` to delete a set of messages identified by `MessageId`
* [x] method to `ConversationManager...Subtask of #68
* [x] method to `ConversationClient` that returns a set of `MessageId`s it is responsible for
* [x] method to `ConversationClient` to delete a set of messages identified by `MessageId`
* [x] method to `ConversationManager` for deleting a set of messages identified by `MessageId`. This will intersect the IDs from the clients with IDs to be deleted and as the client to only delete this intersection
Implementation plan for deleting messages in ConversationClients builds on work done in #1627.
* parse message visibility for session's messages (true if visible in UI)
* when looping over all sessions check that all visible messages were selected for deletion, if not, do not delete sessionAndroid 1.2Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1628Multi-select conversion messages to delete2019-11-08T15:58:43ZTorsten GroteMulti-select conversion messages to deleteSubtask of #68
Add multi-selection of messages to conversation view and add a delete action for ActionMode.
If we migrated to AndroidX when working on this ticket, we could use the [androidx.recyclerview.selection](https://developer.an...Subtask of #68
Add multi-selection of messages to conversation view and add a delete action for ActionMode.
If we migrated to AndroidX when working on this ticket, we could use the [androidx.recyclerview.selection](https://developer.android.com/reference/androidx/recyclerview/selection/package-summary) library. Article: https://proandroiddev.com/a-guide-to-recyclerview-selection-3ed9f2381504Android 1.2Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1627Delete all invitation/introduction messages for completed sessions2019-10-14T12:57:58ZTorsten GroteDelete all invitation/introduction messages for completed sessionsSubtask of #68
* [x] Implement the no-ops from #1625 in the remaining `ConversationClient`s that deletes all completed sessions. A session is complete if it is in a completed state and all messages have been ACKed.
* [x] Introductio...Subtask of #68
* [x] Implement the no-ops from #1625 in the remaining `ConversationClient`s that deletes all completed sessions. A session is complete if it is in a completed state and all messages have been ACKed.
* [x] Introductions: If the session isn't in the start state or there are sent-but-unacked messages, refuse to delete the session. Otherwise delete all messages and their metadata, but leave the session storage message
* [x] Blogs/Forums: If the session has an invite available to answer, refuse to delete the session. Otherwise delete all visible messages and their metadata, but leave invisible messages and the session storage message
* [x] Private Groups: If the session has an invite available to answer, refuse to delete the session. Otherwise delete all visible messages and their metadata, but leave invisible messages and the session storage message
* [x] Update UI dialog to explain that ongoing invitations/introductions can't be deleted
Implementation plan:
* look up all the message metadata
* look up all message states
* loop over all message states and create hash set of message ids that are sent but not acked
* loop over all the message metadata finding session storage objects messages and creating session objects
* loop over it again assigning protocol messages to their sessions
* loop over all sessions: If session state is completed and all messages were ACKed, delete entire session, else remember non-deletion
* return false if at least one session could not be deletedAndroid 1.2Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1626UI for partial conversation message deletion2019-10-09T12:17:31ZTorsten GroteUI for partial conversation message deletionSubtask of #68
* [x] Add menu item for triggering deletion of all messages
* [x] Show dialog (if needed) explaining that invitation/introduction messages can't be deletedSubtask of #68
* [x] Add menu item for triggering deletion of all messages
* [x] Show dialog (if needed) explaining that invitation/introduction messages can't be deletedAndroid 1.2Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1625ConversationClient method for message deletion2019-10-07T14:45:20ZTorsten GroteConversationClient method for message deletionSubtask of #68
* [x] Add `ConversationManager` method for deleting all conversation messages which delegates to conversation clients
* [x] Add `ConversationClient` method for deleting all messages that returns true if all messages were ...Subtask of #68
* [x] Add `ConversationManager` method for deleting all conversation messages which delegates to conversation clients
* [x] Add `ConversationClient` method for deleting all messages that returns true if all messages were delete or false if not (because they are invitation/introduction messages that can't be deleted).
* [x] Add real implementation for `MessagingManager`, no-op implementations for other clients (just return false)Android 1.2Torsten GroteTorsten Grotehttps://code.briarproject.org/briar/briar/-/issues/1624Investigate whether IPv6 link-local addresses work over consumer wifi networks2020-06-30T15:22:04ZakwizgranInvestigate whether IPv6 link-local addresses work over consumer wifi networks[Meshenger](https://github.com/meshenger-app/meshenger-android/blob/master/docs/Documentation.md) uses IPv6 link-local addresses to communicate with peers on the same LAN. A device's link-local address is derived from its MAC address, so...[Meshenger](https://github.com/meshenger-app/meshenger-android/blob/master/docs/Documentation.md) uses IPv6 link-local addresses to communicate with peers on the same LAN. A device's link-local address is derived from its MAC address, so it's the same on every LAN.
If this works reliably on consumer wifi networks it would have a major advantage over our current approach: contacts that connect to a new network would be able to connect to each other immediately without first exchanging updated transport properties via some other transport.
If it works when one of the devices is providing a wifi hotspot, it might also provide an alternative to #1328.
Related to #28, #1193, #1328.Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1621Contact link disappears after selecting and copying on API 15-172021-02-12T13:04:27ZakwizgranContact link disappears after selecting and copying on API 15-17On the emulator running API 15-17, the user's own contact link disappears when selected, and doesn't reappear after the selection has been copied. The link reappears when the screen is rotated.
This happens with both software and hardwa...On the emulator running API 15-17, the user's own contact link disappears when selected, and doesn't reappear after the selection has been copied. The link reappears when the screen is rotated.
This happens with both software and hardware rendering, making me think it's unlikely to be an emulator bug. It doesn't happen on the emulator running API 18+. Assigning to myself to reproduce on a real device.Android 1.2IvanaIvanahttps://code.briarproject.org/briar/briar/-/issues/1618Removing local messages from contact2019-10-14T11:58:44ZHansRemoving local messages from contactQuickly checked a few classes and searched for a way to delete them but I am unable to get a clue of how to properly do this, is there even a function yet to do this? I see the deleteContact function which deletes all information from th...Quickly checked a few classes and searched for a way to delete them but I am unable to get a clue of how to properly do this, is there even a function yet to do this? I see the deleteContact function which deletes all information from the db but that's not what I want to achieve.
Maybe I was looking at the wrong place or missed it, I might need a hint or a facepalm in that case.
Hanshttps://code.briarproject.org/briar/briar/-/issues/1616A dumb issue2019-08-05T01:48:15ZKyf LeeA dumb issuehttps://code.briarproject.org/briar/briar/-/issues/1614Android studio - No dependency for integrity assertion2020-11-16T10:32:41ZjomocuAndroid studio - No dependency for integrity assertionI have finally managed to load the project correctly.
When I open android studio, everything appears right.
**Screenshot:** https://i.imgur.com/0ffGl14.png
But when trying to run the program on the virtual machine it shows me this erro...I have finally managed to load the project correctly.
When I open android studio, everything appears right.
**Screenshot:** https://i.imgur.com/0ffGl14.png
But when trying to run the program on the virtual machine it shows me this error ...
*No dependency for integrity assertion 'com.android.support.test.uiautomator:uiautomator-v18:2.1.3:uiautomator-v18-2.1.3.aar:15e6b3c7104859630bf844e31805aa7cb2eb4b385e6119ab34132c8258eee2c4'*
**Screenshot:** https://i.imgur.com/qMLVVqR.png
I am running the virtual machine "Nexus One API 23", I use android 6 without the api of google play.
Any idea how to solve this?
Thankshttps://code.briarproject.org/briar/briar/-/issues/1612Latest version in F-Droid main repo is 1.2.102021-03-11T12:22:30ZakwizgranLatest version in F-Droid main repo is 1.2.10~~The F-Droid main repo hasn't picked up any of our releases since 1.1.6 in March.~~
~~The F-Droid build server couldn't reproduce the 1.2.9 release.~~
~~F-Droid couldn't parse the version numbers in the 1.2.11 - 1.2.13 releases.~~
F-...~~The F-Droid main repo hasn't picked up any of our releases since 1.1.6 in March.~~
~~The F-Droid build server couldn't reproduce the 1.2.9 release.~~
~~F-Droid couldn't parse the version numbers in the 1.2.11 - 1.2.13 releases.~~
F-Droid failed to reproduce the 1.2.16 build due to differences in the Tor and obfs4proxy binaries.Android 1.2akwizgranakwizgranhttps://code.briarproject.org/briar/briar/-/issues/1611"Add contact at a distance" share action is available in 1.1 releases2019-11-06T09:48:24Zakwizgran"Add contact at a distance" share action is available in 1.1 releasesThe remote contact feature is accessible in recent releases from the 1.1 series via the "add contact at a distance" share action.The remote contact feature is accessible in recent releases from the 1.1 series via the "add contact at a distance" share action.Android 1.1https://code.briarproject.org/briar/briar/-/issues/1610Pending contact list shows "no internet connection" when empty2019-11-06T09:54:17ZakwizgranPending contact list shows "no internet connection" when emptyIf the pending contact list is opened concurrently with the last pending contact being removed (unlikely but possible - it happened to me accidentally while testing !1152) then the "no internet connection" snackbar is shown even though t...If the pending contact list is opened concurrently with the last pending contact being removed (unlikely but possible - it happened to me accidentally while testing !1152) then the "no internet connection" snackbar is shown even though the app is connected to Tor.
![device-2019-07-01-170738](/uploads/b314816dbe11b6a327f81498adafa442/device-2019-07-01-170738.png)Android 1.2Torsten GroteTorsten Grote