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: CONTRIBUTING.md
+15-4Lines changed: 15 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -234,7 +234,12 @@ Reviews requesting changes should have their changes addressed regardless of how
234
234
The specification versions are published to the [spec site](https://spec.openapis.org/oas) by creating an `vX.Y.Z-rel` branch where `src/oas.md` is renamed to the appropriate `versions/X.Y.Z.md` file and then merged to `main`.
235
235
This renaming on the `vX.Y.Z-rel` branch preserves the commit history for the published file on `main` when using `git log --follow` (as is the case for all older published files).
236
236
237
-
The steps for creating a `vX.Y.Z-rel` branch are:
237
+
Before you start check that you have:
238
+
239
+
- release notes
240
+
- approval by TSC vote for the content you are releasing
241
+
242
+
The steps for publishing a new specification version are:
238
243
239
244
1. Update `EDITORS.md` on `main`
240
245
2. Merge `main` into `dev` and `dev` into `vX.Y-dev` via PRs
@@ -245,18 +250,24 @@ The steps for creating a `vX.Y.Z-rel` branch are:
245
250
- open `deploy-preview/oas.html` in browser and verify correct formatting
246
251
- adjust and repeat until done
247
252
- merge changes to `src/oas.md` back into `vX.Y-dev` via PR
248
-
4. Create `vX.Y.Z-rel` from `vX.Y-dev` and adjust it
249
-
-`yarn adjust-release-branch` does this:
253
+
4. Create a branch `vX.Y.Z-rel` from `vX.Y-dev` and use `yarn adjust-release-branch` to adjust it.
254
+
-`yarn adjust-release-branch` does the following:
250
255
- copy file `src/oas.md` to `versions/X.Y.Z.md` and replace the release date placeholder `| TBD |` in the history table of Appendix A with the current date
251
256
- copy file `EDITORS.md` to `versions/X.Y.Z-editors.md`
252
257
- delete folder `src`
253
258
- delete version-specific files and folders from `tests/schema`
254
259
- file `schema.test.mjs`
255
260
- folders `pass` and `fail`
261
+
- the changes are now staged; use `git diff --cached` to review them (it is expected that a lot of files show as deleted)
262
+
- commit the changes
256
263
5. Merge `vX.Y.Z-rel` into `main` via PR
257
264
- this PR should only add files `versions/X.Y.Z.md` and `versions/X.Y.Z-editors.md`
265
+
6. Tag a release using GitHub's Releases feature; add the release notes as the description (don't autogenerate release notes).
266
+
7. Manually trigger the [`respec` workflow](https://github.com/OAI/OpenAPI-Specification/blob/main/.github/workflows/respec.yaml). This workflow:
267
+
- generates HTML renderings of the files in the `versions/` directory of the main branch on this repository
268
+
- opens a pull request on the [repository for the spec site](https://github.com/OAI/spec.openapis.org)
258
269
259
-
The HTML renderings of the specification versions are generated from the `versions` directory on `main` by manually triggering the [`respec` workflow](https://github.com/OAI/OpenAPI-Specification/blob/main/.github/workflows/respec.yaml), which generates a pull request for publishing the HTML renderings to the [spec site](https://spec.openapis.org).
270
+
When that pull request is merged, the specification is included on the [spec site](https://spec.openapis.org)
260
271
261
272
The release commands are implemented in
262
273
[`OAI/build-infra`](https://github.com/OAI/build-infra). If a command behaves
0 commit comments