[GH-ISSUE #6035] Windows MSI version numbers should all be valid 32-bit signed int numbers #12019

Open
opened 2026-08-05 01:32:09 -04:00 by saavagebueno · 0 comments
Owner

Originally created by @rgl on GitHub (Apr 30, 2026).
Original GitHub issue: https://github.com/netbirdio/netbird/issues/6035

Describe the problem

The latest MSI version is 0.70.4.25137956270 (as available in https://github.com/netbirdio/netbird/releases/tag/v0.70.4):

Image

But that last version number, the revision, it not a valid 32-bit signed integer. That means, we cannot parse it using PowerShell like:

[version]'0.70.4.2513795627'
Cannot convert value "0.70.4.2513795627" to type "System.Version". Error: "Value was either too large or too small for an Int32."
At line:1 char:1
+ [version]'0.70.4.2513795627'
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidArgument: (:) [], RuntimeException
    + FullyQualifiedErrorId : InvalidCastParseTargetInvocation

Expected behavior

I expected each the individual numbers of the version to be 32-bit signed int numbers, so it can be parsed using System.Version.

Originally created by @rgl on GitHub (Apr 30, 2026). Original GitHub issue: https://github.com/netbirdio/netbird/issues/6035 **Describe the problem** The latest MSI version is `0.70.4.25137956270` (as available in https://github.com/netbirdio/netbird/releases/tag/v0.70.4): <img width="1540" height="438" alt="Image" src="https://github.com/user-attachments/assets/47eeb9dd-8381-475c-82c1-9e4c68b604de" /> But that last version number, the revision, it not a valid 32-bit signed integer. That means, we cannot parse it using PowerShell like: ```powershell [version]'0.70.4.2513795627' Cannot convert value "0.70.4.2513795627" to type "System.Version". Error: "Value was either too large or too small for an Int32." At line:1 char:1 + [version]'0.70.4.2513795627' + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + CategoryInfo : InvalidArgument: (:) [], RuntimeException + FullyQualifiedErrorId : InvalidCastParseTargetInvocation ``` **Expected behavior** I expected each the individual numbers of the version to be 32-bit signed int numbers, so it can be parsed using [System.Version](https://learn.microsoft.com/en-us/dotnet/api/system.version?view=net-10.0).
saavagebueno added the triage-needed label 2026-08-05 01:32:09 -04:00
Sign in to join this conversation.
No Label triage-needed
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: DYNR/netbird#12019