Releases: abhay-byte/Adirstat
Releases · abhay-byte/Adirstat
Release list
Adirstat v1.0.3
Adirstat v1.0.3 Release Notes
Version: 1.0.3 (versionCode 4)
Release Date: 2026-03-08
Type: Bug Fix Release
Bug Fixes
Double Scan Fix
- Issue: Tapping "Scan Storage" triggered the scan twice - once on the Dashboard, then again when the Treemap screen loaded.
- Fix: Removed scan functionality from Dashboard entirely. Now scanning only happens in Treemap. The Dashboard FAB now navigates directly to Treemap, which handles scanning with proper cache-first logic.
Cache Retry Logic
- Added cache retry logic in
TreemapViewModel.loadTreemap()that waits up to 2 seconds for the cache to become available before starting a new scan. - The retry handles both error cases and "no cache yet" cases.
Changes
Dashboard Changes
- Changed FAB from "Scan Storage" to "View Storage"
- FAB now navigates directly to Treemap instead of starting scan in Dashboard
- Removed scan progress UI from Dashboard
- Removed
isScanning,scanProgress, and related state from Dashboard
Treemap Changes
- Improved cache loading with retry logic
- Treemap now handles scanning entirely - checks cache first, scans if needed
Build Changes
- Version: 1.0.3 (versionCode: 4)
- Added lint baseline configuration in
app/build.gradle.kts - Added
android:exported="true"to MainActivity for Android 12+ compatibility
Previous Release
See v1.0.2 for the previous release notes.
v1.0.2 — Settings & Stability Release
Adirstat v1.0.2 — Settings & Stability Release
Release date: 2026-03-08
Version code: 3
Min SDK: API 24 (Android 7.0)
What's new
✅ All Settings items fully implemented
Every setting on the Settings screen is now wired end-to-end and persisted to DataStore — nothing is a stub anymore.
| Setting | Behaviour |
|---|---|
| Theme | Radio-button dialog — System Default / Light / Dark / Dynamic (Material You on Android 12+) |
| Minimum File Size | Radio-button dialog — Show All / 1 KB+ / 10 KB+ / 1 MB+ / 10 MB+ / 100 MB+ |
| Excluded Paths | Add/remove dialog — add arbitrary folder paths to skip during scans |
| Clear Scan Cache | Confirmation dialog → actually deletes all Room scan cache rows; Snackbar confirms |
| Scan History | Dialog listing every cached scan entry: partition path, total size, file count, scan date |
| Export Data | Writes a timestamped CSV to the Downloads folder; Snackbar on success or failure |
🐛 Bug fixes
| Bug | Fix |
|---|---|
| Double scan on treemap open | TreemapViewModel.loadTreemap() now has an idempotency guard — if the same volume is already scanning or has results loaded, the call is silently ignored |
| Dashboard shows "0 B" then fills | DashboardViewModel.loadDashboardData() now loads all data in parallel (async) and emits one final state update instead of two partial ones |
| Search rescans when navigating back | Removed the ON_RESUME lifecycle observer from SearchScreen that was calling refreshIndex every time the user returned to the screen |
| Settings "Clear Cache" did nothing | Now calls StorageRepository.clearAllScans() → scanCacheDao.deleteAllCache() for a real wipe |
Changed files
| File | Change |
|---|---|
StorageRepository.kt |
Added clearAllScans() and getAllScanSummaries() |
StorageRepositoryImpl.kt |
Implemented both new methods |
ScanCacheDao.kt |
Added getAllCaches() returning all cache rows |
SettingsViewModel.kt |
Injected StorageRepository + Context; real clearCache(), exportToCsv(), loadScanHistory() |
SettingsScreen.kt |
All dialogs wired — file size, excluded paths, history, export with Snackbar feedback |
TreemapViewModel.kt |
Idempotency guard in loadTreemap(); fixed refresh() to bypass guard correctly |
DashboardViewModel.kt |
Single parallel load instead of two-phase update |
SearchScreen.kt |
Removed DisposableEffect ON_RESUME observer |
app/build.gradle.kts |
Version bumped to 1.0.2 / versionCode 3 |
Downloads
| File | Description |
|---|---|
Adirstat-v1.0.2-release.apk |
Signed release APK (minified, resources shrunk) |
Upgrade notes
- No database migration required — schema unchanged
- DataStore preferences unchanged — settings from v1.0.1 carry over
- Cached scan results are preserved unless the user explicitly taps Clear Scan Cache
Adirstat v1.0.1
Adirstat v1.0.1
Release date: 2026-03-08
Highlights
- Scoped search now opens from scan screens only and searches within the active scanned location.
- Dashboard top bar now uses a larger logo-only brand treatment.
- Virtual app nodes use proper icons, cleaner titles, and more readable treemap grouping.
- Launcher icon now uses the provided logo with transparent adaptive background handling.
- Release builds now enable code shrinking and resource shrinking for a much smaller APK.
User-visible fixes
- Removed broken dashboard search entry points from the home screen.
- Fixed search indexing so scan-screen searches use the latest cached scan and keep the current path scope.
- Prevented long scan titles from wrapping in the top bar.
- Reduced tiny unlabeled treemap tiles by grouping them more aggressively into
Others. - Added visible App Info shortcuts for virtual app-storage rows.
Build notes
- App version:
1.0.1(versionCode2) - Optimized release APK output is dramatically smaller than the debug build thanks to R8 and resource shrinking.
Included artifacts
- Signed release APK for GitHub release attachment
- Updated debug APK copied to the device Downloads folder during validation

