Edit

Bicep diagnostic code - BCP457

This diagnostic occurs when a version requirement is configured, but the running compiler's version can't be parsed for comparison.

Description

The installed Bicep CLI version "{runningVersion}" could not be parsed, so the "bicep.version" constraint "{constraint}" specified by the Bicep configuration "{configFile}" could not be checked.

Level

Warning

Solution

Use a compiler build with a version that Bicep can parse for comparison. Check the compiler used by the tool reporting the warning, especially if you use a custom build.

This warning means the requirement wasn't checked. It isn't evidence that the compiler satisfies it.

Examples

Consider a configuration with this requirement:

{
  "bicep": {
    "version": ">=1.2.0, <2.0.0"
  }
}

If a custom compiler reports a version such as custom-build, the compiler can't compare it with the range and reports BCP457. The version numbers illustrate the syntax, not release availability.

Don't change a valid requirement solely to hide this warning. Use a compiler with a parseable version, then check whether it satisfies the requirement.

An unsupported expression in bicep.version, such as ^1.2.0, is a different problem: it produces configuration error BCP273 rather than BCP457.

The diagnostic names the declaring configuration. Its source-file location is the start of the evaluated document, not necessarily the configuration property.

Next steps