Versioning
Foundry uses semantic versioning (Major.Minor.Patch) to manage app updates and communicate the impact of changes to users.
Version semantics
Section titled “Version semantics”| Component | When to increment | Example |
|---|---|---|
| Major | Breaking changes that may require user action (e.g., removed capabilities, changed data schemas, renamed workflow actions) | 1.0.0 → 2.0.0 |
| Minor | New features or capabilities added without breaking existing functionality | 1.0.0 → 1.1.0 |
| Patch | Bug fixes and minor improvements that don’t add new features | 1.0.0 → 1.0.1 |
Auto-update behavior
Section titled “Auto-update behavior”| Version change | Behavior |
|---|---|
| Minor or Patch | Automatically applied to all installations. Users do not need to take action. |
| Major | Users are notified of the available update and must manually accept it. This protects against unexpected breaking changes. |
Versioning for certified apps
Section titled “Versioning for certified apps”Certified apps published to the App Catalog follow the same versioning rules. When you publish an update:
- Minor and patch updates propagate automatically to all customers who have the app installed.
- Major updates require each customer to manually accept the update from their App Catalog.
Best practices
Section titled “Best practices”- Increment the major version when removing or renaming capabilities, changing collection schemas in incompatible ways, or altering workflow action signatures.
- Increment the minor version when adding new capabilities, new optional fields, or new workflow actions.
- Increment the patch version for bug fixes, documentation updates, and performance improvements.