| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
| |
- Extract JavaError to dedicated error.rs module
- Add serde defaults for JavaInstallation optional fields
- Replace unwrap() with proper error propagation
- Add detailed logging for Java resolution priority chain
- Improve error mapping in validation (NotFound vs VerificationFailed)
Reviewed-by: Claude Sonnet 4.5
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Add CACHE_VERSION constant for cache format compatibility tracking
- Add MAX_CACHE_SIZE_BYTES limit (10 MB) to prevent unbounded cache growth
- Add cache_version field to JavaCatalog struct with default value
- Implement cache version validation in load_cached_catalog()
- Implement cache size enforcement in save_catalog_cache()
- Add cleanup_expired_caches() for background cache cleanup
- Add enforce_cache_size_limit() to validate cache file sizes
- Add is_cache_version_compatible() helper function
- Automatically clean up expired caches on load and clear operations
- Validate cache version before using cached data
Fixes:
- Cache expiration without automatic cleanup (now cleaned on load)
- Missing cache version control (now validates format compatibility)
- Unbounded cache size growth (now limited to 10 MB)
Reviewed-by: Claude 3.5 Sonnet
|
| |
|
|
|
|
|
|
|
|
|
|
| |
- Added support for detecting Java installations from SDKMAN! in `find_sdkman_java`.
- Improved `run_which_command_with_timeout` to handle command timeouts gracefully.
- Introduced a unified `JavaError` enum for consistent error handling across Java operations.
- Updated functions to return `Result` types instead of `Option` for better error reporting.
- Enhanced `load_cached_catalog` and `save_catalog_cache` to use `JavaError`.
- Refactored `fetch_java_catalog`, `fetch_java_release`, and `fetch_available_versions` to return `JavaError`.
- Improved validation functions to return detailed errors when checking Java installations.
- Added tests for version parsing and compatibility checks.
- Updated `resolve_java_for_launch` to handle instance-specific and global Java paths.
|
| |
|
|
|
|
|
|
|
|
|
| |
- Extract version compatibility check into shared validation function
- Remove duplicated version checking code across multiple modules
- Simplify Java detection timeout logic in detection.rs
- Expand vendor detection to support more JDK distributions (Dragonwell, Kona, Semeru, BiSheng, etc.)
- Refactor start_game to use priority-based Java resolution
- Improve error handling in Adoptium provider task collection
Reviewed-by: Claude Sonnet 4.5
|
| |
|
|
|
|
| |
Replace potentially panicking unwrap() call with expect() that includes a descriptive error message to aid debugging if the edge case occurs.
Reviewed-by: Claude Sonnet 4.5
|
| |
|
|
|
|
|
|
|
| |
- Add #[allow(dead_code)] attributes to utility functions
- Improve 64-bit detection with case-insensitive check
- Support aarch64 architecture in bitness detection
- Add TODO for future vendor expansion
Reviewed-by: Claude Sonnet 4.5
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Centralize strip_unc_prefix into java/mod.rs to eliminate duplication across detection.rs and validation.rs
- Remove unused JAVA_CHECK_TIMEOUT constant from validation.rs
- Implement actual timeout mechanism in run_which_command_with_timeout() using try_wait() loop
- Parallelize Adoptium API requests for better catalog fetch performance
Fixes:
- Multiple strip_unc_prefix implementations consolidated
- Timeout constant now properly enforced in which/where command execution
- Catalog fetching now uses concurrent tokio::spawn tasks instead of sequential await
Reviewed-by: Claude Sonnet 4.5
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Split monolithic java.rs (1089 lines) into focused modules
- detection: Java installation discovery
- validation: Version validation and requirements checking
- priority: Installation selection priority logic
- provider: Java download provider trait
- providers: Provider implementations (Adoptium)
- persistence: Cache and catalog management
- Add java_path_override field to Instance struct for per-instance Java configuration
- Export JavaInstallation at core module level
This refactoring improves maintainability and prepares for multi-vendor Java provider support.
Reviewed-by: Claude Sonnet 4.5
|
| |
|
|
| |
Reviewed-by: Claude-Sonnet-4.5
|
| | |
|
| | |
|
| | |
|
| | |
|
| |\ |
|
| | |
| |
| | |
Added a link to the full roadmap for the project.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
configurations
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| | |
installation
|
| | | |
|
| | | |
|
| |\| |
|
| | | |
|
| | | |
|
| | |\
| | |
| | |
| | | |
information (#71)
|
| | | | |
|
| | |\ \
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | |
| | | | |
## Summary by Sourcery
Refactor the UI project structure into a pnpm monorepo packages layout
and align tooling and automation with the new paths.
Enhancements:
- Reorganize the UI app from the root ui directory into packages/ui
within a pnpm workspace.
- Update pnpm workspace configuration to include all packages under
packages/*.
- Adjust paths in changeset configuration so the @dropout/ui package
resolves from packages/ui.
Build:
- Update pre-commit configuration paths and arguments to reflect the new
UI location and normalize hook argument formatting.
- Update Dependabot configuration so npm updates target /packages/ui
instead of /ui.
CI:
- Update GitHub Actions workflows to watch packages/** instead of ui/**
and to run frontend tasks from packages/ui.
- Update pnpm cache dependency paths in workflows to use the root
pnpm-lock.yaml.
- Simplify frontend install steps in test workflows to run from the
repository root.
Chores:
- Add a new index.html under packages/ui and remove the old
ui/index.html to match the new project layout.
|
| | | |/
| |/|
| | |
| | |
| | | |
information
Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
|
| | | | |
|
| | |/ |
|
| | | |
|
| | |\
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Recreated from #64
#64 includes non-linear commits that rebased from old version of main
branch which contains large files.
## Summary by Sourcery
Update project metadata and links for the new HydroRoll-Team repository
and bump versions for the alpha.1 pre-release.
New Features:
- Add changelog files for the Tauri app and UI packages documenting the
v0.2.0-alpha.1 release.
Enhancements:
- Bump Tauri and UI package versions from 0.2.0-alpha to 0.2.0-alpha.1
to reflect the new pre-release.
- Update repository URLs, API endpoints, and commit links to point to
the HydroRoll-Team/DropOut GitHub organization.
Documentation:
- Add release notes for v0.2.0-alpha.1 in separate changelog files for
the backend and UI.
|
| | | |\
| | |/
| |/| |
|
| | | | |
|
| | | | |
|
| | | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
- Updated repository URL in Cargo.toml
- Updated GitHub API endpoint in main.rs
- Updated commit links in HomeView.svelte
- Updated issue template links in config.yml
Reviewed-by: Claude Sonnet 4.5
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|
| | | | |
|