Holds data.json used for the Silverstripe CMS roadmap and support timeline and validates that its data is correct
The other files in the repository are for validating that data.json:
- has a validate JSON structure according to
data.schema.json - has validate support lengths according to the Silverstripe release policy
To validate data.json after updated it:
nvm use
npm install
npm run validate![IMPORTANT] Also review any
releaseDateExtra,supportEndsExtra, andstatusOverridevalues which may need to be updated.
Review the dates for the current version and other s to ensure they are correct. Most of the values will likely already be correct, though do double check them.
For the new minor version:
- set
releaseDateto todays date inYYYY-MM-DDformat
If the new minor has a "Standard" supportLength (i.e. is NOT the final minor in the major series):
- set
partialSupportto thereleaseDateof the next minor version inYYYY-MMformat - set
supportEndsto thereleaseDateof the next minor version,+6 monthsinYYYY-MMformat
If the new minor has an "Extended" supportLength (i.e. is the final minor in the major series):
- set
partialSupporttoreleaseDate,+1 year,+1 dayinYYYY-MM-DDformat - set
supportEndsandsupportEndsExtrato thereleaseDateandreleaseDateExtraof the major version two majors ahead e.g. for 6.4 this would be 8.0
For the prior minor version in the major series, which will have "Standard" supportLength:
- set
partialSupportto thereleaseDateof the new release inYYYY-MM-DDformat - set
supportEndsto thereleaseDateof the new version,+6 months,+1 dayinYYYY-MM-DDformat
![NOTE] The reason that
+1 dayis added in some situations is because of support commitments such as "6 months", and releases are made part way through a day e.g. at 10am. Adding+1 dayensures that the 6 month commitment is fullfilled, with a partial days worth of "bonus support" added
For final minor version two majors ago (e.g if 6.0 was just released, update 4.13), which will have "Extended" supportLength:
- set
supportEndsto thereleaseDateof the new version inYYYY-MM-DDformat - set
supportEndsExtratonull
Add in the subsequent minor versions for this major version series (e.g. if 6.0 was just released, add in 6.1, 6.2, 6.3, and 6.4)
For each of the new minor versions
- set
versionto the new version e.g. "6.1" - set
releaseDateto thereleaseDateof the prior version+6 months, with either "April" or "October" as the month inYYYY-MMformat. For the "x.1" version this must be "October" and may be as few as 3 months from the "x.0" release. - set
releaseDateExtratonull - set
featuresto[], unless we have already planned the roadmap for the new version and it is ready to be published
For each of the new minor verisons, except for the last one in the series:
- set
supportLengthto "Standard" - set
partialSupportto thereleaseDateof this version+6 months, inYYYY-MMformat - set
partialSupportExtratonull - set
supportEndsto thereleaseDateof this version+1 year, inYYYY-MMformat - set
supportEndsExtratonull
For the last minor version in the series
- set
supportLengthto "Extended" - set
partialSupportto thereleaseDateof this version+1 year, inYYYY-MMformat - set
partialSupportExtratonull - set
supportEndsto thereleaseDateof this version+2 years, inYYYY-MMformat - set
supportEndsExtrato thesupportEndsof this version+2 months, inYYYY-MMformat
Add the initial minor version of the next major series (e.g. if 6.0 was just released, add 7.0)
- set
versionto the new version e.g. "8.0" - set
supportLengthto "Standard" - set
releaseDateto thereleaseDateof the new version+2 years, with "April" as the month, inYYYY-MMformat - set
releaseDateExtrato thereleaseDateof the new version+2 years, with "June" as the month, inYYYY-MMformat - set
partialSupportto thereleaseDateof the new version+2 years, with "October" as the month, inYYYY-MMformat - set
partialSupportExtratonull - set
supportEndsto thereleaseDateof the new version+3 years, with "April" as the month, inYYYY-MMformat - set
supportEndsExtratonull - set
featuresto[]
For the final minor version one major ago (e.g if 6.0 was just released, update 5.4), which will have "Extended" supportLength:
- set
supportEndsto thereleaseDateof the next major version inYYYY-MMformat - set
supportEndsExtrato thereleaseDateExtraof the next major version inYYYY-MMformat