xivlauncher-neo
xivlauncher-neo copied to clipboard
Where to store the "source of truth" launcher version?
Sould libxl, xlcmd, tauri, and vue all have the same version?
Should the version in the window title be the same or something different from them all?
I believe we've already decided that libxl is supposed to be completely decoupled from the UI, so at the very least libxl should have its own version. That would then require that everything else use a different version number since it can be updated independently.
All non-binary crates besides libxl could probably just be left at 0.0.0 indefinitely?
obligatory "I'm not goat"
The rust ecosystem adheres to semantic versioning afaiu and crates should follow that notion. Here are some writings about that and what contains a major/minor update.
https://doc.rust-lang.org/cargo/reference/manifest.html#the-version-field https://doc.rust-lang.org/cargo/reference/resolver.html https://doc.rust-lang.org/cargo/reference/semver.html https://github.com/rust-lang/rfcs/blob/master/text/1105-api-evolution.md
I think each crate should adhere to it and have its own versioning, depending on breaking/feature/fix updates.
The user faced version of the GUI app is, strictly speaking, independent of all that, but for ease of use I would tie that to the version of the gui - that should be the version field in tauri.conf.json
, I think? Hopefully that gets auto-sync with the version in package.json
and Cargo.toml
by tauri (but maybe not).