Background/Context: Since we're having trouble finding volunteers for a subgroup, the thought was to try and make progress during a dedicated discussion session...
From the Subgroups page:
- Defining the mechanisms for communicating breaking changes when they occur.
- Educating/communicating to developers what constitutes a breaking change (beyond sharing the DR)
- Meet with representatives from dev teams to review what a breaking change is, and what to do when they happen. (or video, etc.)
See also: DR-000036 - Breaking Changes
Goal: Define the mechanisms for communicating breaking changes when they occur
Notes:
Two parts to this:
- How do we communicate what the TC considers breaking changes out to dev teams?
- How do dev teams raise awareness when they make breaking changes?
- When / how frequently do we need to communicate these changes? At release time? when the change is actually made? etc.
- Some ideas discussed include: release notes, wiki pages, slack messages, etc.
- Probably needs to be communicated sooner than release time so teams have time to react and make corresponding changes
- This should be considered in the context of application formalization and more frequent application releases.
- It may be difficult to get developers to participate in processes which are separate from the flower release cycle
- At one point the SOP was for teams making breaking changes to also create corresponding PRs in other team's repos when this happens.
- This may be easier in some cases than others
- I don't think this is followed very closely these days.
- Does tying this to the module release process make sense?
- It's discouraged for teams to arbitrarily make module releases outside of the flower release cycle, but there are explicit policies in place ATM
- It's unclear why this is the case.
- At what point in the release cycle do we need to get these things surfaced?
- We need to give folks sufficient time to make changes/adaptations.
- Presently, we often don't find these issue until a hosted reference env build fails.
- Suggestion: Communicate breaking changes when the PR is
created? merged? approved- At TAMU, when an issue is created, the expectation is set as to whether it will result in a patch release, minor release, major release, etc.
- Some teams (used to?) do this, it's not consistently done across the project ATM.
- The audience needs to be considered when communicating breaking changes...
- JIRAs/PRs may be acceptable for dev teams, but probably not for system operators/hosting providers/implementers/etc.
- Maybe different audiences have different requirements for timing and level of detail for these things.
- Release notes may be acceptable for some audiences (SysOps/ICs/etc.), but that's way too late for other dev teams.
- Some teams already leverage PR labels for indicating breaking changes: Examples:
- How are breaking changes communicated?
- A slack message to a certain list of channels (TBD), linking to the automated report.
- As a daily digest? Immediately?
- The timing of when breaking changes are made varies greatly from team to team. Some do it "as they go" throughout the release cycle. Others make the breaking changes but don't bump the interface version until the end of the release cycle.
- Standardizing on this and branching strategies would likely be very helpful, but also probably not an easy task.
- What is the reason for putting these processes/policies in place?
- In the past we've seen cases where breaking changes were made when many feel they shouldn't have (e.g. to fix a potential spelling mistake)
- It isn't necessarily the developers making the decision... Could be POs, or other stakeholders (member orgs / hosting providers / security team / etc.)
- We should consider discussing the topic of getting feedback prior to making breaking changes separately from this discussion
Still needing to be discussed:
- The suggestions so far are focused on dev-facing comms. What about the SysOps/ICs/etc.
- We should consider discussing the topic of getting feedback prior to making breaking changes separately from this discussion