CalendarVersion

Calendar Versioning (CalVer) version string using date-based identifiers

API DesignBackward CompatibilitySoftware DevelopmentVersion ControlSemantic VersioningAPI LifecycleDeprecation

Properties

Name Type Description
version string Full CalVer version string (e.g., 2026-05-03, 2026.05)
year integer Full 4-digit year
month integer Month number (1-12)
day integer Day of month (1-31)
modifier string Optional modifier (e.g., dev, alpha, beta, rc)
format string CalVer format used for this version
releaseDate string ISO 8601 release date
View JSON Schema on GitHub

JSON Schema

versioning-protocols-calver-schema.json Raw ↑
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/versioning-protocols/refs/heads/main/json-schema/versioning-protocols-calver-schema.json",
  "title": "CalendarVersion",
  "description": "Calendar Versioning (CalVer) version string using date-based identifiers",
  "type": "object",
  "properties": {
    "version": {
      "type": "string",
      "description": "Full CalVer version string (e.g., 2026-05-03, 2026.05)",
      "example": "2026-05-03"
    },
    "year": {
      "type": "integer",
      "minimum": 2000,
      "description": "Full 4-digit year",
      "example": 2026
    },
    "month": {
      "type": "integer",
      "minimum": 1,
      "maximum": 12,
      "description": "Month number (1-12)",
      "example": 5
    },
    "day": {
      "type": "integer",
      "minimum": 1,
      "maximum": 31,
      "description": "Day of month (1-31)",
      "example": 3
    },
    "modifier": {
      "type": "string",
      "description": "Optional modifier (e.g., dev, alpha, beta, rc)",
      "example": "rc"
    },
    "format": {
      "type": "string",
      "enum": ["YYYY.MM.DD", "YYYY-MM-DD", "YYYY.MM", "YYYY"],
      "description": "CalVer format used for this version",
      "example": "YYYY-MM-DD"
    },
    "releaseDate": {
      "type": "string",
      "format": "date",
      "description": "ISO 8601 release date",
      "example": "2026-05-03"
    }
  },
  "required": ["version", "year"]
}