List of notable breaking changes over time in OSConfig

While changes to behavior over time are reflected throughout documentation, release notes, etc. this article's purpose is to provide context for any major changes, particularly changes which require users/developers to modify their behavior.

Member names transition from PascalCase to camelCase in version 1.0.3

To align with Azure IoT DTDL guidance, some member names in the object model have changed from PascalCase to camelCase. This change applies to names below the module/component name. For example CommandRunner is unchanged, but its members (e.g., commandStatus) are in camel case.

Consider the old vs. new casing for the following example:

  • properties.reported.CommandRunner.CommandStatus.CommandId (old format)
  • properties.reported.CommandRunner.commandStatus.commandId (new format, note the lower case first character of commandStatus and commandId)

For users of preview/insiders builds this change went into effect in April 2022. For users of stable/prod builds the new behavior starts with version 1.0.3 (full version number 1.0.3.2022061604) published on June 28th 2022.

If you have existing scripts/workflows which interact with the OSConfig twin in IoT Hub (for example IoT Hub Configurations, Azure CLI scripts, Azure functions, etc.), these will need to be updated.

Next steps

For an overview of OSConfig scenarios and capabilities, see:

For specific practical examples, see: