Skip to content

Commit c47043f

Browse files
committed
docs/development: update spec stabilization instructions
1 parent 34a09a5 commit c47043f

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

docs/development.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -134,6 +134,7 @@ The changes that are required to achieve these effects are typically the followi
134134
- Rename `config/vX_Y_experimental` to `config/vX_Y`, and update the golang `package` statements
135135
- Drop `_experimental` from all imports in `config/vX_Y`
136136
- Update `MaxVersion` in `config/vX_Y/types/config.go` to delete the `PreRelease` field
137+
- Update `config/vX_Y/config.go` to update the comment block on `ParseCompatibleVersion`
137138
- Update `config/vX_Y/config_test.go` to test that the new stable version is valid and the old experimental version is invalid
138139
- Update the `Accept` header in `internal/resource/url.go` to specify the new spec version.
139140

@@ -142,9 +143,10 @@ The changes that are required to achieve these effects are typically the followi
142143
- Copy `config/vX_Y` into `config/vX_(Y+1)_experimental`, and update the golang `package` statements
143144
- Update all `config/vX_Y` imports in `config/vX_(Y+1)_experimental` to `config/vX_(Y+1)_experimental`
144145
- Update `config/vX_(Y+1)_experimental/types/config.go` to set `MaxVersion` to the correct major/minor versions with `PreRelease` set to `"experimental"`
145-
- Update `config/vX_(Y+1)_experimental/config.go` to point the `prev` import to the new stable `vX_Y` package
146+
- Update `config/vX_(Y+1)_experimental/config.go` to point the `prev` import to the new stable `vX_Y` package and update the comment block on `ParseCompatibleVersion`
146147
- Update `config/vX_(Y+1)_experimental/config_test.go` to test that the new stable version is invalid and the new experimental version is valid
147148
- Update `config/vX_(Y+1)_experimental/translate/translate.go` to translate from the previous stable version. Update the `old_types` import, delete all functions except `translateIgnition` and `Translate`, and ensure `translateIgnition` translates the entire `Ignition` struct.
149+
- Update `config/vX_(Y+1)_experimental/translate/translate_test.go` to point the `old` import to the new stable `vX_Y/types` package
148150
- Update `config/config.go` imports to point to the experimental version.
149151
- Update `config/config_test.go` to add the new experimental version to `TestConfigStructure`.
150152
- Update `generate` to generate the new stable and experimental versions, and rerun `generate`.
@@ -155,17 +157,17 @@ Next, all places that imported `config/vX_Y_experimental` should be updated to `
155157

156158
Update `tests/register/register.go` in the following ways:
157159

158-
- Add import `config/vX_Y`
159-
- Update import `config/vX_Y_experimental` to `config/vX_(Y+1)_experimental`
160-
- Add `config/vX_Y`'s identifier to `configVersions` in `Register()`
160+
- Add import `config/vX_Y/types`
161+
- Update import `config/vX_Y_experimental/types` to `config/vX_(Y+1)_experimental/types`
162+
- Add `config/vX_Y/types`'s identifier to `configVersions` in `Register()`
161163

162164
### Update the blackbox tests
163165

164166
Update the blackbox tests.
165167

166168
- Bump the invalid `-experimental` version in the relevant `VersionOnlyConfig` test in `tests/negative/general/config.go`.
167169
- Find all tests using `X.Y.0-experimental` and alter them to use `X.Y.0`.
168-
- Update the `Accept` header checks in `tests/servers.go` to specify the new spec version.
170+
- Update the `Accept` header checks in `tests/servers/servers.go` to specify the new spec version.
169171

170172
### Update docs
171173

@@ -176,6 +178,7 @@ Finally, update docs.
176178
- In `docs/configuration-vX_(Y+1)_experimental.md`, update the version of the experimental spec in the heading and the `ignition.version` field.
177179
- Add a section to `docs/migrating-configs.md`.
178180
- In `docs/specs.md`, update the list of stable and experimental spec versions (listing the latest stable release first) and update the table listing the Ignition release where a spec has been marked as stable.
181+
- Note the stabilization in `docs/release-notes.md`, following the format of previous stabilizations. Drop the `-exp` version suffix from any notes for the upcoming release.
179182

180183
### External Tests
181184

0 commit comments

Comments
 (0)