Skip to content

[pull] main from Stade-App:main - #21

Merged
pull[bot] merged 4 commits into
noydra:mainfrom
StadeDevelopment:main
Sep 27, 2026
Merged

pull[bot] merged 4 commits into
noydra:mainfrom
StadeDevelopment:main

Conversation

@pull

@pull pull Bot commented Sep 27, 2026 •

Copy link
Copy Markdown

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

Where the app asks for a PIN it can now accept a fingerprint instead, on
devices that have a sensor. The option lives in Security settings and is
hidden entirely on devices without one. Every prompt offers to continue
with the PIN, for wet hands or a sensor that will not read.

The PIN is sealed with a key held in the phone's secure hardware that is
only released by a fingerprint, and only for a single use. The key is
never readable by the app, and the system destroys it the moment a new
fingerprint is added to the device, so unlocking falls back to the PIN.
Changing the PIN, signing out and the duress wipe all clear it too.

Exporting a backup could also write a file that was missing its ending.
Opening the file picker sends the app to the background, which starts a
routine re-encryption of the database, and the export then read that
same database while it was being replaced. The export now takes the
same lock the re-encryption does, the database is swapped in a single
step rather than removed and rewritten, and an export that cannot finish
no longer leaves a half-written file behind.
macOS refuses an application version whose first number is zero, so the
Mac build carried a hand-written version that had drifted away from the
rest of the app and sat at 1.2.4 across several releases.

It is now derived from the app version by raising only that leading
zero, so 0.3.3 ships as 1.3.3 and the two move together from here on.
The bundle also gained a build number, taken from the same counter
Android uses, so macOS can tell one release from the next.

The version itself is now written once in the build and checked against
the copy the About screen reads, and the disk image is renamed to the
released version before it is published, so every platform offers a file
named after the same version.
Locking or signing out shut the database while background work was
still reading from it, which ended the app with an error about a
database that had already been closed. Connections also kept their own
worker running that the shutdown never reached. Shutting down now stops
that work and waits for it to finish before the database is closed,
giving up after a few seconds so locking can never hang.

A failure in background work also ended the whole app. Connections, Tor,
the local network, Radar and the background service now report such a
failure and carry on, rather than taking the app down with them.

Opening an invite file while the app had locked itself landed on the
home screen instead of the confirmation to add the contact. The invite
was handed to the session that was about to be discarded. Anything
waiting to be opened, including a tapped notification, now moves across
to the session that replaces it.
@pull pull Bot locked and limited conversation to collaborators Sep 27, 2026
@pull pull Bot added the ⤵️ pull label Sep 27, 2026
@pull
pull Bot merged commit 710f78d into noydra:main Sep 27, 2026
1 check failed
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant