...
Make sure that the Jira task is broken down into small piece(s) of work
Expand | ||
---|---|---|
| ||
The goal for all developers is to create Pull Requests that are easy to review. Avoid:
|
...
has a clear description, and then move it to
In Progress
Expand | ||
---|---|---|
| ||
Ideally the description in the Jira task is written in a way that it can be copied and pasted as the description of the Pull Request. This is very subjective, but the description should:
|
Unless you’re the person most familiar with the area of the codebase that you are changing, first discuss the changes with that person
Expand | ||
---|---|---|
| ||
There will always be improvements underway in the CHEFS code, and any new work must align with those improvements. The end goal of these improvements is code that is:
Information that everyone should be familiar with: |
If necessary, break the Jira task into smaller pieces of work
Expand | ||
---|---|---|
| ||
The goal for all developers is to create Pull Requests that are easy and fast to review. If a task contains a large amount of work, break it down into smaller stand-alone tasks. Jira subtasks are one way of recording this, and do allow the task to go through the various Jira swimlanes. |
Using the
type
from Conventional Commits, decide what the primary type of work is, such asfeat
for a new feature
Expand | ||
---|---|---|
| ||
|
Ensure that the
main
branch in your cloned fork is up to date
Expand | ||
---|---|---|
| ||
The
|
With an example Jira task
FORMS-1234
that is a newfeat
, create a branch off yourmain
with a name likefeat/1234-new-map-component
Expand | ||
---|---|---|
| ||
You can name the branch anything you want, but:
|
Crank out some code and tests (or tests and code, for TDD bonus points) and whatever documentation that needs to be created or updated
Periodically commit your work with messages like:
Code Block feat: FORMS-1234 new map component for dropping a pin Added a new map component that allows the user to drop a "pin" on the map, and the location is saved as both Lat/Lon or UTM coordinates.
Expand | ||
---|---|---|
| ||
It’s only a recommendation that “working” commit messages use this format - these commit messages will eventually be squashed, and it’s only the final commit message that must be in this format. It’s a good idea to always use this format to be familiar with how the final commit message must look.
|
Run the unit tests using
Terminal
→Run Task...
→Unit Tests
and check the test coverage of your new code
Expand | ||
---|---|---|
| ||
Test coverage reports appear in:
Refer to the backend unit test documentation for details on:
|
Publish your branch, for example using the “Publish” button in VS Code
Create a Pull Request for your branch, for example using “New pull request” in the GitHub web site
Do a self review (diff)
(somewhere above: limit size of change)
Run the deploy Action
test
Mark as ready for review
Add reviewers
Talk to reviewers
Keep up to date
Deploy Action
merge and message
Push Action
Undeploy Action
Code Climate / etc?
Jira: moving tickets, rewrite description
What is the intention of a PR review? Ship / Show / Ask. nitpicks. style guide. choose your battles
...