Spaces:
Sleeping
Sleeping
| # Releasing β version history process | |
| Every patch to the app gets a version bump and a git push. The curated | |
| `versions.json` is the single source of truth for the **π Version history** | |
| button shown at the bottom of the app. | |
| ## Versioning scheme | |
| `MAJOR.MINOR.PATCH` (semantic versioning): | |
| - **PATCH** (`0.1.0 β 0.1.1`) β bug fixes, small tweaks, no behaviour change for the user. | |
| - **MINOR** (`0.1.1 β 0.2.0`) β new feature or user-visible improvement, backwards compatible. | |
| - **MAJOR** (`0.x.y β 1.0.0`) β first stable release, or a breaking change to the workflow/inputs. | |
| ## Steps for each patch | |
| 1. Make the code change. | |
| 2. Prepend a new entry to the **top** of `versions.json` (newest first): | |
| ```json | |
| { | |
| "version": "0.1.1", | |
| "date": "YYYY-MM-DD", | |
| "notes": [ | |
| "Short, user-facing description of what changed and why." | |
| ] | |
| } | |
| ``` | |
| Write the notes for the person using the app, not for a developer reading the diff. | |
| 3. Commit with a message that matches the notes, prefixed with the version: | |
| ``` | |
| git add -A | |
| git commit -m "v0.1.1 β <one-line summary of the change>" | |
| git push | |
| ``` | |
| The commit message and the `versions.json` notes should tell the same story β the | |
| notes are what the user reads in the app, the commit is what appears in `git log`. | |