You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add a new version section at the top of [CHANGELOG.md](CHANGELOG.md) following this format:
70
+
71
+
```markdown
72
+
## v1.28.3
73
+
* Brief description of change 1
74
+
* Brief description of change 2 with PR reference (#123)
75
+
* feature: Description for new features
76
+
* fix: Description for bug fixes
77
+
```
78
+
79
+
Guidelines for changelog entries:
80
+
* Use present tense for descriptions
81
+
* Prefix feature additions with `feature:`
82
+
* Prefix bug fixes with `fix:`
83
+
* Include PR numbers when applicable using `(#123)` format
84
+
* List the most significant changes first
85
+
* Keep descriptions concise and user-focused
86
+
87
+
### 3. Product GUID Management
88
+
89
+
The `PRODUCT_GUID.txt` file in the root directory stores the version number and a unique GUID for Windows installer packages. **This is managed automatically by CMake** when you update the version:
90
+
91
+
**Automatic GUID Generation Process:**
92
+
1. When CMake runs, it checks if `PRODUCT_GUID.txt` exists
93
+
2. If the version in the file doesn't match `PROJECT_VERSION` in CMakeLists.txt, CMake automatically:
94
+
* Generates a new UUID using `scripts/generate_wix_guid.py`
95
+
* Updates `PRODUCT_GUID.txt` with the new version and GUID
96
+
3. The GUID is used for Windows WiX installer generation via `CPACK_WIX_PRODUCT_GUID`
97
+
98
+
**Manual GUID Update (Rarely Needed):**
99
+
If you need to manually generate a new GUID:
100
+
```bash
101
+
python3 scripts/generate_wix_guid.py
102
+
```
103
+
104
+
Then update `PRODUCT_GUID.txt` with:
105
+
```
106
+
<version>
107
+
<new-guid>
108
+
```
109
+
110
+
**Important Notes:**
111
+
* The PRODUCT_GUID should change with each version to ensure proper Windows installer upgrade behavior
112
+
* The automatic update happens during CMake configuration, so the file may change after running cmake
113
+
* Commit the updated `PRODUCT_GUID.txt` along with version changes
114
+
115
+
### 4. Version Update Checklist
116
+
117
+
When preparing a version release:
118
+
-[ ] Update version number in [CMakeLists.txt](CMakeLists.txt)
119
+
-[ ] Add new version section to [CHANGELOG.md](CHANGELOG.md) with all changes
120
+
-[ ] Run CMake to automatically update PRODUCT_GUID.txt
121
+
-[ ] Commit all version-related file changes together
122
+
-[ ] Create a git tag for the release: `git tag -a v1.28.3 -m "Release v1.28.3"`
123
+
-[ ] Verify the version is correctly reflected in build outputs
0 commit comments