1.6 KiB
1.6 KiB
OneLauncher-Cracked Development & Release Guidelines
1. Release Versioning Policy
- Suffix Progression: Every fix, rebuild, or update to an existing release MUST increment the cracked revision suffix monotonically:
- Example:
v2.8.0-c1->v2.8.0-c2->v2.8.0-c3
- Example:
- Tag Immutability: Never force-push or re-upload assets over an existing release tag. The in-launcher
CrackedVersionSemVer parser relies on strictly increasing revisions to detect and download updates. - Cargo.toml Version: When bumping the suffix, update the workspace
version = "2.8.0-c<N>"in the rootCargo.toml.
2. Remote Synchronization (Dual-Push)
- Primary Forgejo remote:
https://git.oiupoyt.space/oiupoyt/OneLauncher-Cracked.git(remote:forgejo) - GitHub remote:
https://github.com/oiupoyt/OneLauncher-Cracked.git(remote:origin) - Always push to both remotes:
git push origin <branch> --tags git push forgejo <branch> --tags
3. Build & Compiler Performance
- ThinLTO: Use
lto = "thin"withcodegen-units = 16anddebug = falsein[profile.release]. Do not uselto = "fat"(causes 10m+ single-threaded linking stalls). - Fast Linker: On Linux, use
clang -fuse-ld=lldconfigured in.cargo/config.toml. - Offline Mode & Skin Pipeline:
- Preserve
account_for_launchbypass inoneclient_auth. - Always verify
paths::all_skins_dirs()for multi-directory skin search. - Keep
--userPropertiesargument injection inoneclient_core/src/game/launch.rs. - Ensure TCP socket
flush()andshutdown()inskin_server.rsbefore connection termination.
- Preserve