M1: pure-Kotlin core engine (paths, classification, sorting, search, transfers) + 44 JVM tests

This commit is contained in:
2026-10-14 15:05:14 +02:00
parent adfd95fc38
commit 6d4c2c3f87
19 changed files with 1038 additions and 3 deletions
+9
View File
@@ -12,6 +12,15 @@ upload needs a **higher `versionCode`** than every previous upload.
### Added
- **M1 — pure-Kotlin core engine.** An Android-free `core/` package holding the logic
every other layer builds on: `StoragePath` (normalised absolute paths that can never
escape the root), `FileEntry` with extension-based `FileKind` classification and a
`MimeTypes` lookup for "open with", natural-order `SortSpec` (directories always
first, `file2` before `file10`), human-readable `FileSize`, `NameMatcher`
(case-insensitive substring plus `*`/`?` globs), `NameAllocator` ("name (1)") and
`TransferPlanner` (conflict policies and move-into-self detection). Covered by
**44 JVM unit tests** across 10 classes.
- **M0 — project scaffold.** Gradle 9.3.1 / AGP 9.1.0 build with a version catalog,
`de.softwareapp_hb.filemanager` app module, a Compose Material 3 shell with the
branded blue theme (dynamic colour on Android 12+), an adaptive launcher icon, and