Skip to content

Ori:Dev v0.34.4

Choose a tag to compare

@github-actions github-actions released this 26 Apr 18:07
· 39 commits to master since this release

Release v0.34.4 · Signed with release keystore

Artifacts

  • oridev-*.aab / oridev-*.apk — Phone build (R8 minified)
  • oridev-wear-*.aab / oridev-wear-*.apk — Wear OS companion
  • oridev-*-mapping.txt — R8 deobfuscation map (upload to Play Console for stack traces)

Changes since v0.32.1

Features

  • feat: foldable split terminal (two tabs parallel on unfolded) (#187)
  • feat: opt-in full session resume (tabs, paths, last-tab) (#184)
  • feat(security): FLAG_SECURE toggle während aktiver SSH-Sessions (#183)
  • feat: Files polish + session-kill safety net (PR 3) (#181)
  • feat: SessionRegistry foundation — consolidate SSH-session state (#177)
  • feat(settings): Dummy-Rows aktivieren — 8 neue Picker-Dialoge (#169)
  • feat(connections): TOFU-Dialog für unbekannte/geänderte Host-Keys (#165)
  • feat(filemanager): Multi-Select-Toolbar mit Copy/Rename/Chmod/Info (#167)
  • feat(filemanager): replace legacy storage perms with SAF DocumentFile (#142)
  • feat(terminal): split CustomKeyboard for unfolded foldable (#140)
  • feat(filemanager): compact FileItemRow density (#138)
  • feat(terminal): drop Send-to-Claude FAB (#136)
  • feat(app): responsive top-level navigation — compact bar / rail (#139)
  • feat(terminal): KeyboardHost + resize debounce (Phase 14 Task 5) (#127)
  • feat(settings): keyboard style picker (Phase 14 Task 6) (#128)
  • feat(terminal): TerminalExtraKeys row (Phase 14 Task 4) (#126)
  • feat(terminal): TerminalImeAnchor (Phase 14 Task 2) (#122)
  • feat(terminal): ModifierState single source of truth (Phase 14 Task 3) (#124)
  • feat(domain): KeyboardMode + KeyboardPreferences (Phase 14 Task 1) (#121)
  • feat(ci): auto-release on master push + align RELEASE.md (#110)
  • feat: Phase 13 — Premium Features (Billing, Ads, Throttling, Chunks) (#107)
  • feat(transfer-engine): add TransferStatus.CANCELLED (Tier 2 T2b) (#101)
  • feat(wear): migrate 5 remaining screens to OriDevWearTheme (Tier 2 T2c) (#99)
  • feat(security): wire BiometricGate into credential unlock path (Tier 1 T1d) (#95)

Bug Fixes

  • fix(network): getClient throws IOException so ViewModel catches route it (#196)
  • fix(service): switch ConnectionService to FGS specialUse (#193)
  • fix(network): prune disconnected SSH clients from session cache (#192)
  • fix(network): route withSftpClient through Dispatchers.IO (#190)
  • fix(settings): complete AppPreferencesSnapshot fixture in TransfersSectionTest (#185)
  • fix: Connect-Folgeschritte — Service-Typ, Session-Wiring, UI-State (#175)
  • fix(connections): Passwort im Edit prefillen, Connect-Pfad loggen (#173)
  • fix(connections): Passwörter tatsächlich im Keystore ablegen (#171)
  • fix(editor): Absturz beim Öffnen von Dateien auf Android 16 (#166)
  • fix(filemanager): SAF-Unterordner wieder auflistbar (#164)
  • fix(filemanager): BreadcrumbBar must not split SAF content URIs (#160)
  • fix(wear): exclude OSGI META-INF to unblock bcprov packaging (#161)
  • fix(ssh): replace Android's stripped BC provider so Ed25519 works (#158)
  • fix(ssh,filemanager): move connect to IO + null-safe SAF listFiles (#156)
  • fix(app): add NonFatalErrorLogger + dump connect failures to Downloads (#154)
  • fix(terminal): move imePadding to TerminalScreen root + gate ExtraKeys on isImeVisible (#137)
  • fix(app): install LocalCrashLogger BEFORE super.attachBaseContext (#133)
  • fix(app): add LocalCrashLogger that writes to Downloads on crash (#131)
  • fix(terminal): default split ratio to 50/50 (#118)
  • fix(ci): use RELEASE_PAT to push bump branch so CI triggers (#115)
  • fix(ci): move regex patterns into variables for bash parser (#112)
  • fix(ci): correct bash glob syntax for chore(release) skip pattern (#111)
  • fix(ci): add pull-requests: write permission to release workflow (#108)
  • fix(ci): release workflow manual-only, PR-based version bump (#97)
  • fix(ci): serialize release workflow + retry-rebase push loop (#96)

Other

  • chore(release): v0.34.3 (#195)
  • chore(release): v0.34.2 (#194)
  • chore(release): v0.34.1 (#191)
  • chore(release): v0.34.0 (#188)
  • chore(release): v0.33.22 (#186)
  • chore(release): v0.33.21 (#182)
  • chore(release): v0.33.20 (#180)
  • refactor: UI consolidation onto SessionRegistry (nav + sheet + terminal tabs) (#179)
  • chore(release): v0.33.19 (#178)
  • chore(release): v0.33.18 (#176)
  • chore(release): v0.33.17 (#174)
  • chore(release): v0.33.16 (#172)
  • chore(release): v0.33.15 (#170)
  • chore(release): v0.33.14 (#168)
  • chore(release): v0.33.13 (#163)
  • chore(release): v0.33.12 (#162)
  • chore(release): v0.33.11 (#157)
  • chore(release): v0.33.10 (#155)
  • chore(release): v0.33.9 (#143)
  • chore(release): v0.33.8 (#141)
  • docs(plan): Phase 15 Foldable UX + Storage Access Framework (#135)
  • chore(release): v0.33.7 (#134)
  • chore(release): v0.33.6 (#132)
  • chore(release): v0.33.5 (#130)
  • docs(phase14): document the three keyboard modes (#129)
  • chore(release): v0.33.4 (#125)
  • docs(plan): fold devil's-advocate findings into Phase 14 plan (#120)
  • docs(plan): Phase 14 Terminal Hybrid Keyboard plan (#119)
  • ci(deps): bump actions/cache from 4 to 5 (#114)
  • chore(release): v0.33.3 (#117)
  • chore(release): v0.33.2 (#116)
  • chore(release): v0.33.1 (#113)
  • chore(release): v0.33.0 (#109)
  • test(security): BiometricGate authenticate path via launcher seam (Tier 3 T3d) (#106)
  • test(transfer-engine): Robolectric coverage for TransferNotificationManager (Tier 3 T3c) (#105)
  • test(transfer-engine): instrumentation test infra + lifecycle test (Tier 3 T3a) (#104)
  • test(wear): OriWearCard Compose UI test infrastructure (Tier 3 T3b) (#103)
  • chore(security): promote material-icons + clipboard rules to ERROR (#102)
  • refactor(transfer-engine): FtpTransferExecutor owns its FTPClient (Tier 2 T2a) (#100)
  • refactor(connections): form primitives + credential clear on ViewModel death (Tier 2 T2d) (#98)
  • chore(deps): bump okhttp from 4.12.0 to 5.3.2 (#21)
  • chore(deps): bump the androidx group across 1 directory with 25 updates (#33)
  • chore(deps): bump the kotlin group across 1 directory with 3 updates (#22)
  • chore(deps): bump io.coil-kt.coil3:coil-compose from 3.1.0 to 3.4.0 (#27)
  • chore(deps): bump the testing group across 1 directory with 4 updates (#31)
  • chore(deps): bump commons-net:commons-net from 3.11.1 to 3.13.0 (#14)
  • chore(deps): bump androidx.core:core-splashscreen from 1.2.0-alpha02 to 1.2.0 (#12)
  • chore(deps): bump androidx.compose:compose-bom from 2026.03.00 to 2026.03.01 in the compose group across 1 directory (#3)
  • ci(deps): bump softprops/action-gh-release from 2 to 3 (#24)
  • ci(deps): bump actions/setup-java from 4 to 5 (#5)
  • ci(deps): bump actions/upload-artifact from 4 to 7 (#4)
  • ci(deps): bump actions/checkout from 4 to 6 (#2)
  • ci(deps): bump gradle/actions from 4 to 6 (#1)
  • refactor(terminal): migrate clipboard usage to OriClipboard (Tier 1 T1c) (#94)
  • refactor(connections): complete Material icon sweep (Tier 1 T1a) (#93)
  • refactor(editor): Lucide icons in SearchReplaceBar (Tier 1 T1b) (#92)
  • chore: opt into KT-73255 annotation-target-property to silence forward-compat warnings (#91)
  • chore(ci): add release build smoke test to pr-check.yml (TD3) (#90)