|
| 1 | +# Changelog |
| 2 | + |
| 3 | +All notable changes to SENDA are documented in this file. |
| 4 | + |
| 5 | +## [v2.0.0] – 2026-05-22 |
| 6 | + |
| 7 | +This is a major release representing a complete overhaul of the SENDA codebase |
| 8 | +and a significant expansion of features since v1.3.0. |
| 9 | + |
| 10 | +### Breaking changes |
| 11 | +- The app has been **fully rewritten in Kotlin** (previously Java). The minimum |
| 12 | + supported Android version remains Android 11. |
| 13 | +- The internal package structure was reorganised for improved modularity. |
| 14 | + |
| 15 | +### New features |
| 16 | +- **Dark theme** support (follows system setting). |
| 17 | +- **In-app tutorial** with multiple pages guiding new users through setup. |
| 18 | +- **About dialog** accessible from the action bar. |
| 19 | +- **Movella DOT** sensor support: connects once on discovery to resolve the |
| 20 | + human-readable name, then reconnects for measurement. |
| 21 | + |
| 22 | +### Improvements & refactoring |
| 23 | +- Migrated to **MVVM architecture** with ViewModel and Repository pattern. |
| 24 | +- Foreground service and wakelock handling refactored for `targetSdk 34+`. |
| 25 | +- Permissions handling streamlined; new transient *starting* / *stopping* |
| 26 | + UI states provide clearer feedback. |
| 27 | +- **16 KB ELF page-size compatibility**: native code compiled with the required |
| 28 | + alignment flags (Google Play requirement since November 2025). Note that the |
| 29 | + bundled Movella SDK library is not yet compatible. |
| 30 | +- Main layout simplified to `LinearLayout`; old landscape / splash layouts and |
| 31 | + unused preference XMLs removed. |
| 32 | +- `compileSdk` / `targetSdk` raised to **35**; NDK updated to **r28**. |
| 33 | +- Gradle plugin updated to **8.1.2 / 8.10**; `setup-gradle` action bumped; CI |
| 34 | + workflow split into separate debug and release APK jobs. |
| 35 | +- LSL service start/stop made concurrency-safe. |
| 36 | +- LocationBridge crash on startup fixed. |
| 37 | +- MainActivity crash fixed by lazy-initialising the ViewModel. |
| 38 | +- Sensor outlet race condition fixed (sensor stream now starts only after the |
| 39 | + LSL outlet is initialised). |
| 40 | +- Unit test added for `MainViewModel`. |
| 41 | +- App correctly stops the foreground service when swiped away from recents. |
| 42 | + |
| 43 | +### UI / UX |
| 44 | +- Stream availability status text updated. |
| 45 | +- Layout margins adjusted in `activity_main.xml`. |
| 46 | +- Settings/gear menu icon removed (no configurable settings at this time). |
| 47 | +- Tutorial layout constraints and text corrected. |
| 48 | + |
| 49 | +### Build & CI |
| 50 | +- APK signed correctly via GitHub Actions using repository secrets. |
| 51 | +- Separate CI jobs for debug builds (feature branches) and signed release APKs |
| 52 | + (master branch). |
| 53 | +- Signing configuration now checks for keystore existence before applying |
| 54 | + settings, preventing local-build failures. |
| 55 | + |
| 56 | +--- |
| 57 | + |
| 58 | +## [v1.3.0] – see [NeuropsyOL/SENDA](https://github.com/NeuropsyOL/SENDA/releases/tag/v1.3.0) |
| 59 | + |
| 60 | +Previous releases are tagged in the public repository at |
| 61 | +https://github.com/NeuropsyOL/SENDA/releases. |
| 62 | + |
0 commit comments