We have a regular problem where we have a plugin with branches eg like this:
| Branch |
Supports |
MOODLE_405_STABLE |
4.5 |
MOODLE_401_STABLE |
4.1 - 4.4 |
Lets say that right now 5.1 is out but this plugin doesn't support it yet. At some point in the future we will make a MOODLE_5xx_STABLE branch.
So HQ adds a new coding standard which is great, but that coding standard now applies retrospectively and breaks all the old builds. When we embark on an upgrade and explicitly add support for a new stable we expect to have to make changes to support new api, remove old apis as well as enforce new coding standards all together.
But if we are fixing a minor 2 line bug in existing supported stables that is currently green then we don't expect to find pages of new ci issues to fix on the spot.
We should be able to wire things up so that the new coding standard only applies to 5.1 and when we do a matrix build it applies the right version of standards to each stable branch.
We have a regular problem where we have a plugin with branches eg like this:
MOODLE_405_STABLEMOODLE_401_STABLELets say that right now 5.1 is out but this plugin doesn't support it yet. At some point in the future we will make a MOODLE_5xx_STABLE branch.
So HQ adds a new coding standard which is great, but that coding standard now applies retrospectively and breaks all the old builds. When we embark on an upgrade and explicitly add support for a new stable we expect to have to make changes to support new api, remove old apis as well as enforce new coding standards all together.
But if we are fixing a minor 2 line bug in existing supported stables that is currently green then we don't expect to find pages of new ci issues to fix on the spot.
We should be able to wire things up so that the new coding standard only applies to 5.1 and when we do a matrix build it applies the right version of standards to each stable branch.