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
Copy file name to clipboardExpand all lines: DEVELOPMENT.md
+57Lines changed: 57 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -47,3 +47,60 @@ The short step-by-step version is:
47
47
3. Add a breakpoint somewhere useful, such as [`launchRequest`](https://github.com/eclipse-cdt-cloud/cdt-gdb-adapter/blob/6ba0de8e466f4953501181f53ecdfb14c7988973/src/desktop/GDBTargetDebugSession.ts#L94)
48
48
4. Add `"debugServer": 4711` to the launch configuration in the extension development host. The `4711` is the port number that cdt-gdb-adapter is listening on.
49
49
5. Debug the C/C++ program in the extension development host.
50
+
51
+
## Releasing
52
+
53
+
### Prepare a release with a Pull Request
54
+
55
+
- Check if security scans require dependency updates in [package.json](./package.json).
56
+
See [here](https://github.com/eclipse-cdt-cloud/cdt-gdb-vscode/security/code-scanning).
57
+
- Update [CHANGELOG.md](./CHANGELOG.md).
58
+
- Make sure it contains a section with the new version at the top of the file.
59
+
If individual commits after the last release already added a new section,
60
+
then rename this section accordingly.
61
+
- Review the commit history since the last release and add any user facing changes which
62
+
haven't been added yet.
63
+
- Add references to issues/PRs where possible. Use the format of previous releases.
64
+
Putting the displayed issue number in backticks is important to avoid that a web
65
+
frontend automatically adds links. For example if referencing an issue/PR outside
66
+
this repository which has the same number like an issue in the`cdt-gdb-vscode` repository.
67
+
- Prefix issues from the sibling project `cdt-gdb-adapter` with their name if a change was
68
+
made in cdt-gd-vscode to resolve it.
69
+
- If an update of `cdt-gdb-adapter` is included, then add a section `Update to cdt-gdb-adapter vX.Y.Z`.
70
+
Include the release notes as listed in [`cdt-gdb-adapter` CHANGELOG](https://github.com/eclipse-cdt-cloud/cdt-gdb-adapter/blob/main/CHANGELOG.md).
71
+
Make sure to prefix issue and PR links correctly if they point to the`cdt-gdb-adapter`repository.
72
+
- Update the `version` entry in [package.json](./package.json) to the new version.
73
+
If the release only introduces defect fixes without significant feature changes,
74
+
then bump the third ("patch") version digit.
75
+
Bump the second ("minor") version digit when new features have been added.
76
+
Update the first ("major") version digit if there are changes that remove features
77
+
or significantly change existing behavior.
78
+
79
+
### Start the publishing
80
+
81
+
After the PR has been reviewed and merged, go to the GitHub [releases page](https://github.com/eclipse-cdt-cloud/cdt-gdb-vscode/releases):
82
+
83
+
- Click `Draft a new release`.
84
+
- Click the `Select Tag` dropdown and enter the new version in the form `vX.Y.Z`.
85
+
- Click the `Generate release notes` button. This inserts a release name based on the
86
+
selected tag. And creates a list of commits since the last release as release notes
87
+
that are shown on GitHub.
88
+
- If an update of `cdt-gdb-adapter` is included, then add a section `Update to cdt-gdb-adapter vX.Y.Z`.
89
+
Include the release notes as listed in [`cdt-gdb-adapter` CHANGELOG](https://github.com/eclipse-cdt-cloud/cdt-gdb-adapter/blob/main/CHANGELOG.md).
90
+
Make sure to prefix issue and PR links correctly if they point to the `cdt-gdb-adapter` repository.
91
+
- Select whether the release is a pre-release and/or if it is the latest release to show
92
+
on the GitHub repository page. Usually, no change of the defaults is required.
93
+
- Click the `Publish release` button. This creates a new release and pushes the defined tag.
94
+
The tag push triggers a GitHub action which builds, tests, uploads release artifacts to GitHub,
95
+
and finally pushes releases to the [Open VSX Registry](https://open-vsx.org/extension/eclipse-cdt/cdt-gdb-vscode)
96
+
and the [VS Code Marketplace](https://marketplace.visualstudio.com/items?itemName=eclipse-cdt.cdt-gdb-vscode).
97
+
It may take a few minutes for this and the release's asset list to complete, and for the extensions to show up
98
+
on the other registries.
99
+
100
+
**Note**:
101
+
102
+
- If CI should fail before the GitHub asset upload, you can try to rerun the failing GitHub action.
103
+
- Should one of the registry pushes fail while the other succeeds, you can try to rerun the failing jobs.
104
+
If more fixing is needed, you unfortunately may need to again bump the version number and repeat the entire process.
105
+
106
+
**Important**: Making a CDT GDB Debug Adapter release requires you to be a [committer](https://www.eclipse.org/membership/become-a-member/committer/).
0 commit comments