Skip to content

perf: speed up android device and image list flows#17

Merged
wasabeef merged 19 commits intomainfrom
perf-cache
Apr 14, 2026
Merged

perf: speed up android device and image list flows#17
wasabeef merged 19 commits intomainfrom
perf-cache

Conversation

@wasabeef
Copy link
Copy Markdown
Owner

@wasabeef wasabeef commented Apr 14, 2026

Summary

  • add session-level caching for Android device discovery, system images, and create-device dialog flows
  • reduce startup and refresh overhead with shared cache warming, lighter smart refreshes, and parallelized Android/iOS refresh paths
  • speed up Android running AVD detection and remove unused disk-cache writes from hot paths
  • keep fast paths aligned with empty-state UX and preserve discovery when one platform list is empty

Behavior Notes

  • Android SDK-backed lists now rely on session caches rather than refreshing disk-backed target cache files on hot paths
  • sdkmanager-backed parsing now uses --include_obsolete, so obsolete packages may appear in Android system image listings when the SDK reports them

Verification

  • cargo clippy --all-targets --all-features -- -D warnings
  • cargo check --tests
  • cargo check --all-targets
  • targeted performance and app-path tests were added or updated during implementation

Notes

  • local pre-push test hook is currently blocked by an environment issue in ccache (missing /opt/homebrew/opt/fmt/lib/libfmt.11.dylib), so branch push used --no-verify and CI is the authoritative full test signal

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions

This comment has been minimized.

@github-actions
Copy link
Copy Markdown

Code Metrics Report

Coverage Test Execution Time
68.5% 1m34s

Code coverage of files in pull request scope (57.6%)

Files Coverage
src/app/api_levels.rs 57.4%
src/app/background.rs 53.1%
src/app/create_device.rs 19.1%
src/app/input.rs 0.0%
src/app/mod.rs 26.9%
src/app/refresh.rs 39.8%
src/app/state/forms.rs 88.2%
src/managers/android/create.rs 40.0%
src/managers/android/discovery.rs 69.0%
src/managers/android/install.rs 57.2%
src/managers/android/lifecycle.rs 76.3%
src/managers/android/mod.rs 91.2%
src/managers/android/sdk.rs 93.3%
src/models/device_info/mod.rs 70.9%
src/models/device_info/priority.rs 67.3%
src/ui/dialogs/notifications.rs 97.6%

Reported by octocov

@wasabeef wasabeef merged commit aa8edfa into main Apr 14, 2026
6 checks passed
@wasabeef wasabeef deleted the perf-cache branch April 14, 2026 05:39
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant