Over time
Waiting on a release
| Module | State | Version | Published | Unreleased commits |
Oldest days |
Managed files | Suggested next version |
|---|
No modules match that filter.
▸ Everything else
| Module | State | Version | Published | Unreleased commits |
Oldest days |
Managed files | Suggested next version |
|---|
Reading this
- Unreleased work — commits by a person sit on the default branch beyond the newest version tag. Consumers of the registry do not have them yet.
- Bot commits only — the default branch is ahead, but only by bot commits such as
chore: run avm pre-commit. Nothing is waiting on a release. - Fully released — the newest version tag sits on the tip of the default branch. Nothing at all is ahead, not even a bot commit.
- No version tag — the repository has no semver tag, so the Terraform registry has nothing to publish. Most of these are proposed modules that were never developed.
- Managed files — the version of
azure-verified-modules-managed-filesthe repository is pinned to. A lagging pin usually means an open pull request is holding the upgrade back. - Suggested next version — computed by comparing every
variableandoutputdeclaration at the newest tag against the default branch, field by field. AVM's SNFR17 bumps the minor version for a breaking change or a feature before 1.0.0, and the patch version only for a backward-compatible fix, so any interface change means a minor bump. Expand a row to see which fields moved and what each one means for existing callers.
Each altered declaration is compared field by field, so the page can say breaks callers rather than only that something moved. Setting nullable = false, adding a validation rule, or removing a default all reject input that used to be accepted. Changing a default alters deployed infrastructure with no configuration edit. Anything the comparison cannot rank is marked needs reading rather than guessed at, which is usually a rewritten validation rule or a large object type whose attributes moved.
The suggested version reads declarations, not commit messages. Comparing the interface at the tag against the default branch agreed with SNFR17 on all ten historical bumps tested, where reading commit subjects agreed on five. Its two disagreements with what maintainers actually shipped were both cases where a variable was added and released as a patch, which SNFR17 calls a minor bump. The comparison cannot see behaviour that changed without the interface changing, so it is evidence to weigh rather than a decision.
Each module's wait is measured from its oldest unreleased commit, shown in the Oldest days column. The card at the top reports the median across every module in the table, so half sit above that figure and half below.
Versions come from git tags rather than GitHub releases, because the Terraform registry publishes from tags. Three repositories carry a version tag with no matching release, and reading releases alone reports those as unpublished while the registry serves them.
Bot and human commits are separated by commit author, not by message. Subjects such as fix: grept apply appear under both, so the message cannot tell them apart. Almost every repository is ahead by at least one bot commit, because the AVM bot pushes to all of them daily.
The chart is the only part of this page that cannot be rebuilt. Every other number is recomputed from the GitHub API each morning, but the API only reports the present, so a day that goes unrecorded is lost for good. Those daily totals are committed to the repository. The per-module snapshot is not, because tomorrow's run reproduces it exactly.