Repository navigation
Ori:Dev v0.34.4
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 companionoridev-*-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)