diff --git a/.gitea/workflows/release.yml b/.gitea/workflows/release.yml index 74f3c4d..b6d11f1 100644 --- a/.gitea/workflows/release.yml +++ b/.gitea/workflows/release.yml @@ -53,7 +53,7 @@ jobs: cd "$WORK/src" dotnet publish src/ClaudeDo.App/ClaudeDo.App.csproj \ -c Release -r win-x64 --self-contained true \ - /p:Version=$VERSION -o out/app + /p:MinVerVersionOverride=$VERSION -o out/app - name: Publish ClaudeDo.Worker (win-x64, self-contained) env: @@ -65,7 +65,7 @@ jobs: cd "$WORK/src" dotnet publish src/ClaudeDo.Worker/ClaudeDo.Worker.csproj \ -c Release -r win-x64 --self-contained true \ - /p:Version=$VERSION -o out/worker + /p:MinVerVersionOverride=$VERSION -o out/worker - name: Publish ClaudeDo.Installer (win-x64, single-file, framework-dependent) env: @@ -80,7 +80,7 @@ jobs: # Target machines need .NET 8 Desktop Runtime (x64). dotnet publish src/ClaudeDo.Installer/ClaudeDo.Installer.csproj \ -c Release -r win-x64 --self-contained false \ - /p:Version=$VERSION /p:PublishSingleFile=true \ + /p:MinVerVersionOverride=$VERSION /p:PublishSingleFile=true \ -o out/installer - name: Package assets diff --git a/Directory.Build.props b/Directory.Build.props new file mode 100644 index 0000000..3245073 --- /dev/null +++ b/Directory.Build.props @@ -0,0 +1,8 @@ + + + v + + + + + diff --git a/src/ClaudeDo.App/Program.cs b/src/ClaudeDo.App/Program.cs index 2c07966..744e823 100644 --- a/src/ClaudeDo.App/Program.cs +++ b/src/ClaudeDo.App/Program.cs @@ -85,7 +85,10 @@ sealed class Program sc.AddSingleton(sp => { var releases = sp.GetRequiredService(); - var version = Assembly.GetEntryAssembly()?.GetName().Version?.ToString() ?? "0.0.0.0"; + var informational = Assembly.GetEntryAssembly()? + .GetCustomAttribute()?.InformationalVersion; + // Strip MinVer build metadata ("+sha") and any prerelease suffix for the update-compare. + var version = (informational ?? "0.0.0").Split('+')[0]; return new UpdateCheckService(releases, version); });