Q74: How does Semantic Versioning (SemVer) work in package.json dependencies?

SemVer uses MAJOR.MINOR.PATCH format. Caret (^1.2.3) permits updates that do not modify the left-most non-zero digit. Tilde (~1.2.3) permits patch-level changes.

Key Takeaways
  • Version components: MAJOR (breaking), MINOR (features), PATCH (fixes).
  • ^ allows minor/patch updates; ~ restricts updates to patches.
Knowledge Check

Which symbol in package.json allows patch updates but blocks minor version bumps?