DioxusLabs/dioxus · error · anyhow::Error
Version component {part} exceeds maximum value of 255
Error message
Version component {part} exceeds maximum value of 255 What it means
Range guard in wix_version: while converting the version string to WiX format, one of the first two components (major or minor) parsed as a number greater than 255. MSI ProductVersion fields only fit a single byte in those positions, so the version is rejected. The input at fault is the specific major/minor component named in the message.
Source
Thrown at packages/cli/src/bundler/windows.rs:949
/// Convert a semver version string to a WiX-compatible version.
fn wix_version(version: &str) -> Result<String> {
let version = version.split('-').next().unwrap_or(version);
let parts: Vec<&str> = version.split('.').collect();
if parts.len() < 2 || parts.len() > 4 {
bail!(
"Invalid version for MSI: '{}'. Expected format: major.minor.patch[.build]",
version
);
}
for (i, part) in parts.iter().enumerate() {
let num: u64 = part
.parse()
.with_context(|| format!("Invalid version component: '{part}'"))?;
match i {
0 | 1 if num > 255 => {
bail!("Version component {part} exceeds maximum value of 255");
}
2 | 3 if num > 65535 => {
bail!("Version component {part} exceeds maximum value of 65535");
}
_ => {}
}
}
let version_str = if parts.len() == 2 {
format!("{}.{}.0", parts[0], parts[1])
} else {
parts.join(".")
};
Ok(version_str)
}
/// The embedded WiX template.View on GitHub (pinned to 24f6a829df)
Solutions
- MSI version components are too large: keep the build component at 255 or below.
Defensive patterns
Strategy: validation
When it happens
Trigger: Thrown at packages/cli/src/bundler/windows.rs:949 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of DioxusLabs/dioxus@24f6a829df (2026-08-23).
Data as JSON: /api/errors/8348f38645be4b0d.
Report an issue: GitHub.