Skip to content

Commit

Permalink
W-12142616: Pull request template
Browse files Browse the repository at this point in the history
  • Loading branch information
MarinaKevorkyan committed Dec 5, 2022
1 parent a235b54 commit 00cb9e6
Showing 1 changed file with 48 additions and 0 deletions.
48 changes: 48 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
*Hi, thank you for your work. We understand that you want to merge your changes and move on from this issue, but we also want to maintain the safety, readability, and testability of our code. Because of this, we kindly ask that you confirm that you have fulfilled the prerequisites for each category of activity before merging your changes.*

### If the Pull Request has a dependency update:
- [ ] I have read the Release Notes for the new version (and intermediate versions if the jump would include more than one). Don't blindly trust that the dependency will honor SEMVER, always read carefully the release notes
- [ ] Java 8+ support is maintained
- [ ] The new version has no vulnerabilities
- [ ] A team member reviewed the Pull Request.
- [ ] No backward compatibility is broken.
- [ ] If it is a "provided" dependency, it has been checked that if it is suggested, the version number is the same.

### For ALL the Releases:
- [ ] There is a task in GUS for this change.
- [ ] The corresponding Release Notes have been written and shared with the documentation team.
- [ ] The new code has tests and they have before and after methods to be sure that you are working with a clean environment and that you are leaving the environment clean after they finish.
- [ ] If you are using reflection, create a test to call the methods you are invoking, this way, if there is a change in the API, the test will be able to detect it.
- [ ] If the project has a parent pom and modules, the release pipeline only uploads the modules, so, please, make sure that the parent was deployed in the repositories before considering this release finished.
- [ ] Notify in the Slack Channel that the release is complete, so the Docs team can merge the Documentation and Release Notes PR. The docs team always checks in Anypoint Exchange that the connector is released before merging the release notes.
- [ ] Check the pending Pull Requests in the project coming from Renovate to see if it is possible to update some dependencies. (For those that you cannot merge, follow the same procedure as for the [periodic renovate review process](https://confluence.internal.salesforce.com/display/CONNECTORS/MuleSoft+Connectivity+Infrastructure+Documentation#MuleSoftConnectivityInfrastructureDocumentation-RenovatePullRequests)).

**NOTE**: *The release process ends when you merge the pull request that updates the support branch to the new snapshot, please don't forget to do this.*

### Patch Version:
- [ ] The Pull Request has been peer-reviewed.
- [ ] No backward compatibility is broken.
- [ ] Documentation: (Required) Release Notes PR with compatibility table. Share it with the Docs team.

### Minor Version:
- [ ] Have a document with the specification of the release.
- [ ] Create a slack channel (eg: rl-conninfra-sftp-1.1.1-new-chiper) to coordinate the release of this version with the documentation team and the architects of our team (at least one week before the release). Share the spec doc with the docs team.
- [ ] The documentation fork has been done and has been updated with the changes related to the new functionalities.
- [ ] The pull request has been reviewed by a peer and the team leader.
- [ ] Public Documentation: Minor releases nearly always require a revision of the documentation because the release usually includes new features as well as bug fixes. Even if there are no user-facing changes, documentation has to be versioned for every minor release.
- [ ] (Required) Release Notes PR with compatibility table. Share it with the Docs team.
- [ ] (Likely required) Reference guide. Run the script and share the file with the Docs team.
- [ ] (Assess) Often a minor release impacts UI and examples, so the documentation (user guides, examples, troubleshooting guides) should be reviewed and updated accordingly. Notify the docs team if any updates are needed.

### Major Version:
- [ ] Have a document with the specification of the release.
- [ ] Create a slack channel (eg: rl-conninfra-sftp-2.0.0) to coordinate the release of this version with the documentation team and the architects of our team (at least one month before the release). Share the spec doc with the docs team.
- [ ] The documentation fork has been made and updated with the changes related to the new functionalities and possible compatibility problems with the previous version.
- [ ] The systems properties have been removed, detailing in the documentation the changes in the default behavior of the product.
- [ ] The TODO comments of the code have been reviewed
- [ ] A colleague, the team leader, and the team architect have reviewed the Pull Request.
- [ ] Public Documentation: Major releases break backward compatibility and should never be released without documentation, as this breaks the user experience.
- [ ] (Required) Upgrade and Migration Guide: Every major release must have a detailed upgrade guide (template) with information about what was changed and what steps the user has to take to ensure the connector works as expected. Share the details with the Docs team so they can update the guide.
- [ ] (Required) Release Notes PR with compatibility table. Share it with the docs team.
- [ ] (Required) Reference guide. Run the script and share the file with the Docs team.
- [ ] User guide updates, new screenshots or examples (if applicable), share the updates with the docs team.

0 comments on commit 00cb9e6

Please sign in to comment.