mirror of
https://github.com/rojo-rbx/rojo.git
synced 2026-10-22 21:41:37 +00:00
Update CHANGELOG for version 8.0.1 and add release command documentation
- Added new section for version 8.0.1 in CHANGELOG.md detailing enhancements to root install scripts, syncback management of .gitkeep files, and improvements to patch visualization and sync test reliability. - Introduced a new release command documentation file to guide version bumping, changelog updates, and release tagging processes.
This commit is contained in:
parent
ae25a27633
commit
82e480719e
3 changed files with 156 additions and 1 deletions
143
.cursor/commands/release.md
Normal file
143
.cursor/commands/release.md
Normal file
|
|
@ -0,0 +1,143 @@
|
|||
# /release - Version Bump and Tag Release
|
||||
|
||||
Bump the project version, update the changelog, commit, push, and tag a new release.
|
||||
|
||||
The user must provide the new version string (e.g. `8.0.1`). If not provided, ask for it before proceeding.
|
||||
|
||||
---
|
||||
|
||||
## Step 1: Pre-Flight — Submodule Check
|
||||
|
||||
Run these two commands and inspect the output:
|
||||
|
||||
```powershell
|
||||
git submodule status
|
||||
```
|
||||
|
||||
```powershell
|
||||
git submodule foreach "git status --short"
|
||||
```
|
||||
|
||||
**Verify ALL submodules are clean:**
|
||||
- No submodule prefixed with `+` (dirty) or `-` (uninitialized) in `git submodule status`
|
||||
- No uncommitted changes in any submodule from `git submodule foreach`
|
||||
|
||||
**If any submodule is dirty or uninitialized, STOP immediately.** Report which submodules have issues and do not proceed until the user resolves them.
|
||||
|
||||
**Ignore** `rbx-dom/aftman.toml` — it references the Atlas version but is not part of the release process.
|
||||
|
||||
---
|
||||
|
||||
## Step 2: Version Bump
|
||||
|
||||
Replace the old version with the new version in each of these files:
|
||||
|
||||
| File | What to change |
|
||||
|---|---|
|
||||
| `Cargo.toml` | `version = "X.Y.Z"` (line 3) |
|
||||
| `plugin/Version.txt` | Entire file content — must match `Cargo.toml` exactly (enforced by `build.rs`) |
|
||||
| `rokit.toml` | `atlas = "UserGeneratedLLC/rojo@X.Y.Z"` |
|
||||
|
||||
**Do NOT manually edit `Cargo.lock`.** It is auto-updated in the next step.
|
||||
|
||||
After editing the three files above, run:
|
||||
|
||||
```powershell
|
||||
cargo check
|
||||
```
|
||||
|
||||
This does two things:
|
||||
1. Auto-updates `Cargo.lock` with the new version
|
||||
2. Validates that `plugin/Version.txt` matches `Cargo.toml` (build.rs assertion — build will fail if mismatched)
|
||||
|
||||
**If `cargo check` fails, fix the issue before continuing.**
|
||||
|
||||
---
|
||||
|
||||
## Step 3: Update CHANGELOG.md
|
||||
|
||||
### 3a. Gather commit history
|
||||
|
||||
Run this to get all commits since the previous version tag (replace `vOLD` with the previous tag):
|
||||
|
||||
```powershell
|
||||
git log --oneline vOLD..HEAD
|
||||
```
|
||||
|
||||
### 3b. Write the release section
|
||||
|
||||
Insert a new version section between `## Unreleased` and the previous version's header. Format:
|
||||
|
||||
```markdown
|
||||
## Unreleased
|
||||
|
||||
## [X.Y.Z] (Month Dth, Year)
|
||||
|
||||
* Summary of change 1
|
||||
* Summary of change 2
|
||||
* ...
|
||||
|
||||
[X.Y.Z]: https://github.com/UserGeneratedLLC/rojo/releases/tag/vX.Y.Z
|
||||
```
|
||||
|
||||
**Guidelines for writing entries:**
|
||||
- Group related commits into single bullet points (don't list every commit separately)
|
||||
- Write user-facing descriptions, not raw commit messages
|
||||
- Use present tense ("Add", "Fix", "Improve", not "Added", "Fixed", "Improved")
|
||||
- Omit internal-only changes (CI tweaks, test refactors, snapshot updates) unless they affect behavior
|
||||
- Keep link definitions in ascending numeric order (per repo convention)
|
||||
|
||||
### 3c. Include a git summary
|
||||
|
||||
After the bullet points, add a collapsible section with the raw commit log so readers can see full detail:
|
||||
|
||||
```markdown
|
||||
<details>
|
||||
<summary>Full commit log</summary>
|
||||
|
||||
- `abc1234` Commit message one
|
||||
- `def5678` Commit message two
|
||||
- ...
|
||||
|
||||
</details>
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## Step 4: Commit, Push, Tag, Push Tag
|
||||
|
||||
Run these sequentially:
|
||||
|
||||
```powershell
|
||||
git add Cargo.toml Cargo.lock plugin/Version.txt rokit.toml CHANGELOG.md
|
||||
```
|
||||
|
||||
```powershell
|
||||
git commit -m "Bump version to X.Y.Z"
|
||||
```
|
||||
|
||||
```powershell
|
||||
git push
|
||||
```
|
||||
|
||||
```powershell
|
||||
git tag vX.Y.Z
|
||||
```
|
||||
|
||||
```powershell
|
||||
git push origin vX.Y.Z
|
||||
```
|
||||
|
||||
The tag push triggers `.github/workflows/release.yml` which creates a draft GitHub release and builds artifacts for all platforms.
|
||||
|
||||
---
|
||||
|
||||
## All Versioned Files (Reference)
|
||||
|
||||
| File | Role | Updated by |
|
||||
|---|---|---|
|
||||
| `Cargo.toml` | Crate version (source of truth) | Manual edit |
|
||||
| `Cargo.lock` | Lockfile version | `cargo check` (automatic) |
|
||||
| `plugin/Version.txt` | Plugin version, validated at build time | Manual edit |
|
||||
| `rokit.toml` | Toolchain manager reference | Manual edit |
|
||||
| `CHANGELOG.md` | Release notes | Manual edit |
|
||||
12
CHANGELOG.md
12
CHANGELOG.md
|
|
@ -31,6 +31,18 @@ Making a new release? Simply add the new header with the version and date undern
|
|||
|
||||
## Unreleased
|
||||
|
||||
## [8.0.1] (February 8th, 2026)
|
||||
|
||||
* Root install scripts now also build and install the VS Code/Cursor extension.
|
||||
* Syncback now manages `.gitkeep` files to preserve empty directories during filesystem writes.
|
||||
* Added Git-style change metadata and diff utilities to the plugin for richer patch visualization.
|
||||
* Refactored subtree highlight handling in PatchVisualizer and DomLabel components.
|
||||
* Improved two-way sync test reliability with polling helpers and macOS compatibility checks.
|
||||
* Fixed internal reference in ServeSession to reflect Atlas sync operation.
|
||||
* Standardized messageCursor redaction in snapshot test files.
|
||||
|
||||
[8.0.1]: https://github.com/UserGeneratedLLC/rojo/releases/tag/v8.0.1
|
||||
|
||||
## [8.0.0] (February 7th, 2026)
|
||||
|
||||
* Improved syncback performance by parallelizing filesystem writes using rayon. File writes and removals now run concurrently, while directory operations remain sequential to preserve ordering constraints.
|
||||
|
|
|
|||
2
rbx-dom
2
rbx-dom
|
|
@ -1 +1 @@
|
|||
Subproject commit 36722ce2bbf7aefca56489d4f58913060eccd568
|
||||
Subproject commit 188dc9da72de70452909b0c5f67d9a42c9dbad05
|
||||
Loading…
Add table
Add a link
Reference in a new issue