aboutsummaryrefslogtreecommitdiffstatshomepage
Commit message (Collapse)AuthorAgeFilesLines
* chore(git): ignore artifact files苏向夜2026-01-191-0/+3
|
* chore: migrate repository from HsiangNianian to HydroRoll-Team (#68)苏向夜2026-01-191-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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.
| * Merge branch 'main' into chore/migrate-repository苏向夜2026-01-1941-2479/+4637
| |\ | |/ |/|
* | style: auto format and lint fix [skip ci]fu0504092026-01-191-1/+1
| |
* | chore(release): bump versionsgithub-actions[bot]2026-01-199-14/+22
| |
| * chore: migrate repository from HsiangNianian to HydroRoll-TeamBegonia, HE2026-01-184-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | - 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
* | chore(tauri): mark tauri crate as private苏向夜2026-01-191-0/+1
| |
* | ci(semifold): setup pnpm before versioning苏向夜2026-01-191-2/+11
| |
* | chore(semifold): remove lockfile post hook苏向夜2026-01-181-8/+0
| |
* | ci(build): disable failed targets苏向夜2026-01-181-8/+8
| |
* | ci(semifold): use nsis only on Windows platforms苏向夜2026-01-181-10/+4
| |
* | docs(readme): update tag svgs苏向夜2026-01-181-4/+4
| |
* | ci(semifold): unlock semifold ci苏向夜2026-01-181-9/+7
| |
* | Adopt Semifold CI and prepare 0.2.0-alpha pre-release (#62)简律纯2026-01-1820-2231/+2562
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Refer: http://semifold.noctisynth.org/ ## Summary by Sourcery Adopt Semifold-based release management and prepare the project for a 0.2.0-alpha pre-release across Rust and UI packages. New Features: - Introduce Semifold CI release workflow to orchestrate builds, publishing, and changelog management. - Add Semifold status workflow to report release status on pull requests. - Add workspace-level Node tooling and scripts to manage Tauri version bumping and project preparation. Enhancements: - Refactor GitHub Actions workflows for build, test, check, and lint to simplify pnpm usage, update action versions, and standardize artifact paths. - Move Rust profile configuration into a new Cargo workspace and add a pnpm workspace for the UI package. - Configure Semifold changelog and release metadata for Rust and Node packages, including alpha pre-release tagging. Build: - Replace the tag-triggered GitHub release workflow with a branch-based Semifold CI pipeline that builds artifacts for Linux, macOS, and Windows and uploads them for publishing. - Update CI action versions (checkout, setup-node, upload-artifact, download-artifact) and adjust Rust cache configuration and artifact locations. - Add root workspace package.json, pnpm-workspace.yaml, and pnpm overrides to centralize tooling and dependency management. CI: - Add a dedicated Semifold status GitHub Actions workflow for pull requests to main. - Update existing check, lint, test, and build workflows to align with the new workspace layout and artifact directories. Deployment: - Integrate Semifold configuration for automated publishing to crates.io and npm, including pre-checks, post-version hooks, and use of stored build artifacts in releases. Tests: - Adjust test workflow artifact paths to match the new target directory structure and workspace configuration. Chores: - Remove unused Python packaging files and old Node lockfiles that are no longer part of the build or release process.
| * | ci(semifold): re-triger workflows苏向夜2026-01-181-2/+1
| | |
| * | ci(semifold): enable pull request tests苏向夜2026-01-181-6/+9
| | |
| * | ci(semifold): imporve release targets苏向夜2026-01-181-2/+17
| | |
| * | ci(semifold): change os name苏向夜2026-01-182-3/+3
| | |
| * | ci(semifold): release ci苏向夜2026-01-181-3/+1
| | |
| * | ci(semifold): add test publish code苏向夜2026-01-182-7/+7
| | |
| * | ci(semifold): use duplicate artifact name苏向夜2026-01-182-4/+6
| | |
| * | ci(semifold): prepare for alpha release苏向夜2026-01-186-52/+53
| | |
| * | ci(semifold): remove stupid naming convention苏向夜2026-01-181-3/+0
| | |
| * | ci(semifold): add target to paths苏向夜2026-01-181-6/+6
| | |
| * | ci(semifold): use release path苏向夜2026-01-181-8/+7
| | |
| * | ci(semifold): fix artifact upload conditions苏向夜2026-01-182-30/+38
| | |
| * | ci(workspace): use root path as cwd苏向夜2026-01-182-12/+9
| | |
| * | chore: add tauri cli苏向夜2026-01-183-5/+127
| | |
| * | ci(semifold): upload artifacts苏向夜2026-01-181-2/+31
| | |
| * | chore: add tauri version bump script苏向夜2026-01-185-20/+401
| | |
| * | fix(build): fix pnpm build script苏向夜2026-01-184-65/+192
| | |
| * | ci(semifold): enable pr ci for test苏向夜2026-01-181-16/+18
| | |
| * | ci(pnpm): remove pnpm version and use corepack instead苏向夜2026-01-184-8/+0
| | |
| * | chore(ci): setup semifold苏向夜2026-01-1812-2196/+1855
|/ /
* | Merge pull request #61 from fu050409/ci/bump简律纯2026-01-184-20/+21
|\ \
| * | chore(ci): bump versions of actions苏向夜2026-01-184-20/+21
| | |
* | | feat(frontend): add instance editor modal with tabbed interfaceHsiangNianian2026-01-183-50/+464
|/ / | | | | | | | | | | | | | | | | | | | | | | | | - Create InstanceEditorModal.svelte with 4 tabs: * Info: Instance name, notes, metadata (created date, last played) * Version: Mod loader switcher and version display * Files: File browser for mods/resourcepacks/shaderpacks/saves/screenshots * Settings: Memory override and JVM arguments customization - Wire InstanceEditorModal to InstancesView with Edit button - Add FileInfo type definition to types/index.ts - Fix accessibility issues: proper button roles, keyboard events - All TypeScript and Svelte compilation errors resolved - Enable comprehensive per-instance configuration management
* | feat(frontend): add instance creation wizardHsiangNianian2026-01-182-41/+487
| | | | | | | | | | | | | | | | | | | | | | | | | | | | - Create multi-step InstanceCreationModal with version and mod loader selection - Step 1: Instance name input - Step 2: Minecraft version selection with search and filtering - Step 3: Mod loader choice (vanilla/Fabric/Forge) with version selection - Automatically installs vanilla version + mod loader during creation - Wire new modal to InstancesView, replace old simple creation dialog - Remove unused confirmCreate function This wizard integrates version management into instance creation workflow, streamlining the user experience by combining instance setup and version installation into a single guided process.
* | feat(backend): enhance instance management for editor supportHsiangNianian2026-01-183-6/+142
| | | | | | | | | | | | | | - Sync instance.version_id after start_game, install_fabric, install_forge - Add jvm_args_override and memory_override to Instance struct - Add file management commands: list_instance_directory, delete_instance_file, open_file_explorer - Support per-instance settings overrides (Java args, memory)
* | feat(migration): implement shared cache migration with SHA1 dedupHsiangNianian2026-01-183-4/+303
| | | | | | | | | | | | | | | | - Add migrate_to_shared_caches() with hard link preference - SHA1-based deduplication across all instances - Copy fallback for cross-filesystem scenarios - Auto-enable use_shared_caches after successful migration - UI shows statistics: moved files, hardlinks/copies, MB saved
* | fix(ci): improve pre-commit fmt hook configurationHsiangNianian2026-01-188-93/+409
| | | | | | | | | | | | - Add pass_filenames: false to fmt hook - Add -- separator for cargo fmt args - Manually format code with cargo fmt
* | delete: remove instance isolation tests for cleanupHsiangNianian2026-01-181-198/+0
| |
* | refactor: move version refresh logic to App.svelte and clean up GameState ↵HsiangNianian2026-01-182-11/+15
| | | | | | | | constructor
* | fix: complete Instance/Profile System isolation and state managementHsiangNianian2026-01-184-9/+273
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ## Overview Fixed critical multi-instance isolation bugs where versions, mod loaders, and instance state were not properly isolated between instances. These changes ensure full data isolation and consistent instance metadata. ## Bug Fixes - P0 (Critical Isolation Issues) ### 1. Backend: get_versions() command isolation - Problem: Used global app_data_dir instead of instance-specific game_dir - Fix: Added instance_id parameter, now queries instance.game_dir - Impact: Versions are now properly isolated per instance ### 2. Frontend: delete_version missing instanceId - Problem: Frontend passed only versionId, not instanceId - Fix: Updated VersionsView.svelte to pass instanceId parameter - Impact: Version deletion now targets correct instance ### 3. Frontend: get_version_metadata missing instanceId - Problem: Metadata queries didn't specify which instance to check - Fix: Updated VersionsView.svelte to pass instanceId parameter - Impact: Version info displayed per-instance correctly ### 4. Frontend: Instance switching doesn't refresh versions - Problem: Switching instances didn't reload version list - Fix: Added $effect hook in GameState to watch activeInstanceId changes - Impact: Version list auto-refreshes on instance switch ## Bug Fixes - P1 (State Synchronization) ### 5. Backend: install_fabric doesn't update Instance.mod_loader - Problem: Instance.mod_loader field wasn't updated after installation - Fix: Added instance_state.update_instance() call - Impact: Instance metadata stays in sync ### 6. Backend: install_forge doesn't update Instance.mod_loader - Problem: Instance.mod_loader field wasn't updated after installation - Fix: Added instance_state.update_instance() call - Impact: Instance metadata stays in sync ### 7. Backend: delete_version doesn't clean up Instance state - Problem: Deleting version didn't clear Instance.version_id or .mod_loader - Fix: Added cleanup logic to clear stale references - Impact: Instance state remains valid after deletion ## Testing - Added comprehensive integration tests in instance_isolation_tests.rs - Tests document 10 key scenarios for multi-instance isolation - All code compiles cleanly with no errors
* | Merge pull request #60 from HsiangNianian/dev简律纯2026-01-180-0/+0
|\ \
| * \ Merge pull request #59 from HsiangNianian/main简律纯2026-01-187-37/+179
| |\ \ | |/ / |/| |
* | | Merge pull request #57 from HsiangNianian/fix/critical-bugs简律纯2026-01-187-37/+179
|\ \ \
| | * \ Merge pull request #58 from HsiangNianian/main简律纯2026-01-1866-338/+7286
| | |\ \ | |_|/ / |/| | |
| * | | fix(java): handle build metadata and underscore formats in version parsingHsiangNianian2026-01-181-2/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update parse_java_version() to properly handle: - Build metadata (strip '+' and everything after) - Trailing garbage (strip '-' and everything after, e.g. -Ubuntu) - Underscore version separators (1.8.0_411 -> 1.8.0.411) This ensures Java versions are correctly parsed on all platforms: - Old format: 1.8.0_411 (Java 8 update 411) - New format: 21.0.3+13-Ubuntu (Java 21 with build metadata) - Short format: 17.0.1 (Java 17 update 1).
| * | | fix(manifest): add find_root_version for nested inheritance resolutionHsiangNianian2026-01-181-0/+37
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add find_root_version() function to walk the inheritance chain and find the root vanilla Minecraft version from a modded version (Fabric/Forge). This is useful for determining which vanilla version's client.jar should be used when launching modded versions, as modded versions inherit from vanilla versions but don't contain their own client.jar. The function follows the inheritsFrom field recursively until reaching a version without a parent (the root vanilla version).