How to upgrade the definition version?
If you want to upgrade the current definition to a new version, use the following CHANGELOG.
How to proceed:
-
Take your current definition, and in
config.yml, check the version. -
Change the version in
config.ymlto a new version. -
Use the CHANGELOG and start making changes step by step from your current version to the newest version that is compatible with IXP.
-
Make one single change at a time.
-
Be sure to make the change for all the concerning files and their attributes before proceeding with the following change.
-
Each version contains information about changes and a structured description of affected files and their arguments.
-
Note that not every change is reflected in the files; some changes are only concerned with the behavior of certain definition aspects rather than syntax changes in the YAML files.
-
Lastly, check the new version against definition documentation to see if the arguments in the files are the same.
-
Zip the definition and upload it to the IXP for the last validation.
-
Done. Enjoy your upgraded version!
Example:
-
Current version: 0.23.3
-
New version: 0.24.7
-
In the
config.ymlchange the fieldversionfrom 0.23.3 to 0.24.7.
0.23.3 to 0.24.0
- In the CHANGELOG, find the first subsequent definition version to the current version, which is, in this case, 0.24.0.
- The breaking change alters the behaviour of
finalmilestones in a way that when such a milestone is reached, it stops the exercise (for synchronous exercises, all teams must reach it). This change does not alter the definition syntactically but can break exercises if allowed to be reached prematurely. - Check the usage of
finalmilestones. - If the behaviour is as intended, skip the change.
- Else, edit
finalmilestones usage according to expected behaviour. - If not skipped, check all the edited files against the structure in the definition documentation.
0.24.0 to 0.24.1
- In the CHANGELOG, find the first subsequent definition version to the current version, which is, in this case, 0.24.1.
- The change lies in adding a new optional field
delayfor questionnaires. The feature does not break syntax of the previous version of the definition. - Skip the change.
0.24.1 to 0.24.2
- In the CHANGELOG, find the first subsequent definition version to the current version, which is, in this case, 0.24.2.
- The change lies in adding optional activation of the performance overlay after exercise is finished. The feature does not break syntax of the previous version of the definition.
- Skip the change.
0.24.2 to 0.24.3
- In the CHANGELOG, find the first subsequent definition version to the current version, which is, in this case, 0.24.3.
- These changes lie in adding new fields to the
config.ymlto describe the definition. Except forname, these fields are optional. - Add
nameinto theconfig.yml. - Check all the edited files against the structure in the definition documentation.
0.24.3 to 0.24.4
- In the CHANGELOG, find the first subsequent definition version to the current version, which is, in this case, 0.24.4.
- The change lies in allowing empty answers in the free-form questions in the questionnaire. The feature does not break syntax of the previous version of the definition.
- Skip the change.
0.24.4 to 0.24.5
- In the CHANGELOG, find the first subsequent definition version to the current version, which is, in this case, 0.24.5.
- The change lies in adding an option to specify a whitelist for file types uploaded during the exercise. This feature also comes with a default whitelist. Please verify that the whitelist is sufficient. If not, follow the documentation instructions; if yes, then proceed.
- Skip the change.
0.24.5 to 0.24.6
- In the CHANGELOG, find the first subsequent definition version to the current version, which is, in this case, 0.24.6.
- The change lies in adding multiple new fields in common definitions, which serve for LLM features. The feature does not break syntax of the previous version of the definition.
- Skip the change.
0.24.6 to 0.24.7
- In the CHANGELOG, find the first subsequent definition version to the current version, which is, in this case, 0.24.7.
- The change adds a feature allowing explicit feedback on questionnaire correctness. The feature does not break syntax of the previous version of the definition.
- Skip the change.
Note
The validation process does not allow fields other than those mentioned in definition documentation. Before proceeding, please check that no definition file has extra fields. If it has, remove it, or the validation will fail.
- Create a new .zip archive and upload it to the IXP.
- The upload process will check the definition for errors.
You have successfully upgraded the definition version.