version both programs at 2.0.0 (wire protocol v2)

Versioning scheme: MAJOR.MINOR.PATCH where MAJOR matches the wire
protocol version (no cross-major compat), MINOR is the main change
indicator, PATCH generally unused.

- gatunad: Cargo.toml version 2.0.0 (clap --version picks it up)
- gatuna: csproj Version 2.0.0, shown in form title + tray tooltip
- app.manifest: assemblyIdentity version 2.0.0.0
- Frame version rejection already in place (both sides reject != 2)
- README: document versioning scheme
This commit is contained in:
2026-08-13 09:18:34 +00:00
parent 7fa50dd4e4
commit ef3735764a
6 changed files with 26 additions and 4 deletions
+18
View File
@@ -181,6 +181,24 @@ gatuna/
└── PingTest.cs # PING/PONG network test with stats
```
## Versioning
Both programs use `MAJOR.MINOR.PATCH` where:
- **MAJOR** matches the wire protocol version. A v2.x program rejects any frame
with `version != 2`. No cross-major compatibility.
- **MINOR** is the main change indicator for features and fixes within a major
version.
- **PATCH** is reserved for bug fixes; generally unused.
Current version: **2.0.0** (wire protocol v2).
Check versions:
```sh
gatunad --version # Rust server
```
The Windows client shows its version in the title bar and tray tooltip.
## License
CC0 1.0 Universal. See [`LICENSE`](LICENSE).
+2 -1
View File
@@ -17,7 +17,8 @@ public partial class MainForm : Form
public MainForm()
{
Text = "gatuna";
var ver = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version!;
Text = $"gatuna {ver.Major}.{ver.Minor}";
Width = 520;
Height = 420;
FormBorderStyle = FormBorderStyle.FixedSingle;
+3 -1
View File
@@ -9,10 +9,12 @@ static class Program
var form = new MainForm();
var ver = System.Reflection.Assembly.GetExecutingAssembly().GetName().Version!;
using var tray = new NotifyIcon
{
Icon = SystemIcons.GetStockIcon(StockIconId.NetworkConnect, 32),
Text = "gatuna",
Text = $"gatuna {ver.Major}.{ver.Minor}",
Visible = true,
};
+1 -1
View File
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<assembly manifestVersion="1.0" xmlns="urn:schemas-microsoft-com:asm.v1">
<assemblyIdentity version="0.1.0.0" name="gatuna" />
<assemblyIdentity version="2.0.0.0" name="gatuna" />
<trustInfo xmlns="urn:schemas-microsoft-com:asm.v2">
<security>
<requestedPrivileges xmlns="urn:schemas-microsoft-com:asm.v3">
+1
View File
@@ -5,6 +5,7 @@
<TargetFramework>net8.0-windows</TargetFramework>
<AssemblyName>gatuna</AssemblyName>
<RootNamespace>gatuna</RootNamespace>
<Version>2.0.0</Version>
<Nullable>enable</Nullable>
<UseWindowsForms>true</UseWindowsForms>
<ImplicitUsings>enable</ImplicitUsings>
+1 -1
View File
@@ -1,6 +1,6 @@
[package]
name = "gatuna"
version = "0.1.0"
version = "2.0.0"
edition = "2021"
license = "CC0-1.0"