Game Framework
Best Practices

Versioning Strategy

Follow semantic versioning best practices for predictable updates.

Semantic Versioning

MAJOR.MINOR.PATCH
2.1.3
  • Patch: Bug fixes (2.1.3 → 2.1.4)
  • Minor: New features (2.1.0 → 2.2.0)
  • Major: Breaking changes (2.0.0 → 3.0.0)

Version Incrementing

Patch Releases

# Bug fixes only
1.0.0 1.0.1

Minor Releases

# New features (backward compatible)
1.0.0 1.1.0

Major Releases

# Breaking changes
1.0.0 2.0.0

Pre-release Versions

# Development
version: 2.0.0-dev.1

# Beta
version: 2.0.0-beta.1

# Release candidate
version: 2.0.0-rc.1

Version Constraints

# Recommended: Caret
dependencies:
  package: ^1.2.3  # >=1.2.3 <2.0.0

# Exact (rarely needed)
dependencies:
  package: 1.2.3

# Range
dependencies:
  package: '>=1.0.0 <2.0.0'

Best Practices

  1. Start with 1.0.0 for stable releases
  2. Use 0.x.y for experimental packages
  3. Document breaking changes in CHANGELOG
  4. Deprecate before removing APIs
  5. Test thoroughly before major bumps

Tools

# Install cider
dart pub global activate cider

# Bump versions
cider bump patch
cider bump minor
cider bump major

Next Steps