Skip to content

Commit 1c13a1a

Browse files
authored
Update CHANGELOG.md for 9.3.1 (#824)
1 parent 33ec638 commit 1c13a1a

File tree

2 files changed

+34
-22
lines changed

2 files changed

+34
-22
lines changed

.claude/commands/update-changelog.md

Lines changed: 26 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -109,50 +109,58 @@ When a new version is released:
109109

110110
### For Regular Changelog Updates
111111

112-
1. **Determine the correct version tag to compare against**:
112+
1. **ALWAYS fetch latest changes first**:
113+
- **CRITICAL**: Run `git fetch origin main` to ensure you have the latest commits
114+
- The workspace may be behind origin/main, causing you to miss recently merged PRs
115+
- After fetching, use `origin/main` for all comparisons, NOT local `main` branch
116+
117+
2. **Determine the correct version tag to compare against**:
113118
- First, check the tag dates: `git log --tags --simplify-by-decoration --pretty="format:%ai %d" | head -10`
114119
- Find the latest version tag and its date
115-
- Compare main branch date to the tag date
116-
- If the tag is NEWER than main, it means main needs to be updated to include the tag's commits
120+
- Compare origin/main branch date to the tag date
121+
- If the tag is NEWER than origin/main, it means the branch needs to be updated to include the tag's commits
117122
- **CRITICAL**: Always use `git log TAG..BRANCH` to find commits that are in the tag but not in the branch, as the tag may be ahead
118123

119-
2. **Check commits and version boundaries**:
120-
- Run `git log --oneline LAST_TAG..main` to see commits since the last release
121-
- Also check `git log --oneline main..LAST_TAG` to see if the tag is ahead of main
124+
3. **Check commits and version boundaries**:
125+
- **IMPORTANT**: Use `origin/main` in all commands below, not local `main`
126+
- Run `git log --oneline LAST_TAG..origin/main` to see commits since the last release
127+
- Also check `git log --oneline origin/main..LAST_TAG` to see if the tag is ahead of origin/main
122128
- If the tag is ahead, entries in "Unreleased" section may actually belong to that tagged version
123-
- Identify which commits contain user-visible changes
124-
- Extract PR numbers and author information from commit messages
125-
- **Never ask the user for PR details** - get them from the git history
129+
- **Extract ALL PR numbers** from commit messages using grep: `git log --oneline LAST_TAG..origin/main | grep -oE "#[0-9]+" | sort -u`
130+
- For each PR number found, check if it's already in CHANGELOG.md using: `grep "PR #XXX" CHANGELOG.md`
131+
- Identify which commits contain user-visible changes (look for keywords like "Fix", "Add", "Feature", "Bug", etc.)
132+
- Extract author information from commit messages
133+
- **Never ask the user for PR details** - get them from the git history or use WebFetch on the PR URL
126134

127-
3. **Validate** that changes are user-visible (per the criteria above). If not user-visible, skip those commits.
135+
4. **Validate** that changes are user-visible (per the criteria above). If not user-visible, skip those commits.
128136

129-
4. **Read the current CHANGELOG.md** to understand the existing structure and formatting.
137+
5. **Read the current CHANGELOG.md** to understand the existing structure and formatting.
130138

131-
5. **Determine where entries should go**:
132-
- If the latest version tag is NEWER than main branch, move entries from "Unreleased" to that version section
133-
- If main is ahead of the latest tag, add new entries to "Unreleased"
139+
6. **Determine where entries should go**:
140+
- If the latest version tag is NEWER than origin/main branch, move entries from "Unreleased" to that version section
141+
- If origin/main is ahead of the latest tag, add new entries to "Unreleased"
134142
- Always verify the version date in CHANGELOG.md matches the actual tag date
135143

136-
6. **Add or move entries** to the appropriate section under appropriate category headings.
144+
7. **Add or move entries** to the appropriate section under appropriate category headings.
137145
- **CRITICAL**: When moving entries from "Unreleased" to a version section, merge them with existing entries under the same category heading
138146
- **NEVER create duplicate section headings** (e.g., don't create two "### Fixed" sections)
139147
- If the version section already has a category heading (e.g., "### Fixed"), add the moved entries to that existing section
140148
- Maintain the category order as defined above
141149

142-
7. **Verify formatting**:
150+
8. **Verify formatting**:
143151
- Bold description with period
144152
- Proper PR link
145153
- Proper author link
146154
- Consistent with existing entries
147155
- File ends with a newline character
148156

149-
8. **Run linting** after making changes:
157+
9. **Run linting** after making changes:
150158

151159
```bash
152160
yarn lint
153161
```
154162

155-
9. **Show the user** the added or moved entries and explain what was done.
163+
10. **Show the user** the added or moved entries and explain what was done.
156164

157165
### For Beta to Non-Beta Version Release
158166

CHANGELOG.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,19 @@
99

1010
## [Unreleased]
1111

12+
Changes since the last non-beta release.
13+
14+
## [v9.3.1] - November 9, 2025
15+
1216
### Fixed
1317

18+
- **Fixed NODE_ENV not being set when running shakapacker-dev-server**. [PR #823](https://github.com/shakacode/shakapacker/pull/823) by [Seifeldin7](https://github.com/Seifeldin7). Resolves [#802](https://github.com/shakacode/shakapacker/issues/802). The dev server now properly initializes NODE_ENV to match RAILS_ENV (or "production" by default), fixing webpack configurations that dynamically load environment-specific files.
1419
- Extended manifest merging for multiple client configurations to all environments. [PR #800](https://github.com/shakacode/shakapacker/pull/800) by [Judahmeek](https://github.com/Judahmeek).
1520

16-
Changes since the last non-beta release.
17-
1821
### Added
1922

2023
- **Support for `css_modules_export_mode` configuration option**. [PR #817](https://github.com/shakacode/shakapacker/pull/817) by [justin808](https://github.com/justin808). Adds `css_modules_export_mode` setting in `shakapacker.yml` to control CSS Modules export style. Set to `"named"` (default, v9+ behavior with true named exports) or `"default"` (v8 behavior with default export object). Allows teams to opt into v8-style exports for easier migration from v8 or when using TypeScript with strict type checking.
21-
- **`Configuration#data` public API method** with enhanced documentation and safety. [PR #820](https://github.com/shakacode/shakapacker/pull/820) by [justin808](https://github.com/justin808). The `Configuration#data` method is now part of the public Ruby API, providing stable access to raw configuration data. Returns a frozen hash with symbolized keys to prevent accidental mutations. Includes comprehensive test coverage and detailed RDoc documentation.
24+
- **`Configuration#data` public API method** with enhanced documentation and safety. [PR #818](https://github.com/shakacode/shakapacker/pull/818) by [justin808](https://github.com/justin808). The `Configuration#data` method is now part of the public Ruby API, providing stable access to raw configuration data. Returns a frozen hash with symbolized keys to prevent accidental mutations. Includes comprehensive test coverage and detailed RDoc documentation.
2225
- **Support for `javascript_transpiler: 'none'`** for completely custom webpack configurations. [PR #799](https://github.com/shakacode/shakapacker/pull/799) by [justin808](https://github.com/justin808). Allows users with custom webpack configs to skip Shakapacker's transpiler setup and validation by setting `javascript_transpiler: 'none'` in `shakapacker.yml`. Useful when managing transpilation entirely outside of Shakapacker's defaults.
2326

2427
## [v9.3.0] - November 2, 2025
@@ -727,7 +730,8 @@ Note: [Rubygem is 6.3.0.pre.rc.1](https://rubygems.org/gems/shakapacker/versions
727730

728731
See [CHANGELOG.md in rails/webpacker (up to v5.4.3)](https://github.com/rails/webpacker/blob/master/CHANGELOG.md)
729732

730-
[Unreleased]: https://github.com/shakacode/shakapacker/compare/v9.3.0...main
733+
[Unreleased]: https://github.com/shakacode/shakapacker/compare/v9.3.1...main
734+
[v9.3.1]: https://github.com/shakacode/shakapacker/compare/v9.3.0...v9.3.1
731735
[v9.3.0]: https://github.com/shakacode/shakapacker/compare/v9.2.0...v9.3.0
732736
[v9.2.0]: https://github.com/shakacode/shakapacker/compare/v9.1.0...v9.2.0
733737
[v9.1.0]: https://github.com/shakacode/shakapacker/compare/v9.0.0...v9.1.0

0 commit comments

Comments
 (0)