mirror of
https://github.com/grafana/grafana.git
synced 2024-11-24 09:50:29 -06:00
2.3 KiB
2.3 KiB
Pull Request Review Checklist
High level checks
- The pull request adds value and the impact of the change is in line with Frontend Style Guide.
- The pull request works the way it says it should do.
- The pull request does not increase the Angular code base.
We are in the process of migrating to React so any increment of Angular code is generally discouraged from. (there are a few exceptions)
- The pull request closes one issue if possible and does not fix unrelated issues within the same pull request.
- The pull request contains necessary tests.
Low level checks
- The pull request contains a title that explains the PR.
- The pull request contains necessary link(s) to issue(s).
- The pull request contains commits with commit messages that are small and understandable.
- The pull request does not contain magic strings or numbers that could be replaced with an
Enum
orconst
instead.
Bug specific checks
- The pull request contains only one commit if possible.
- The pull request contains
closes: #Issue
orfixes: #Issue
in pull request description.
Frontend specific checks
- The pull request does not increase the number of
implicit any
errors. - The pull request does not contain uses of
any
or{}
without comments describing why. - The pull request does not contain large React component that could easily be split into several smaller components.
- The pull request does not contain back end calls directly from components, use actions and Redux instead.
Redux specific checks (skip if pull request does not contain Redux changes)
- The pull request does not contain code that mutate state in reducers or thunks.
- The pull request uses helpers
actionCreatorFactory
andreducerFactory
instead of traditionalswitch statement
reducers in Redux. (Redux framework) - The pull request uses
reducerTester
to test reducers.(Redux framework) - The pull request does not contain code that access reducers state slice directly, instead the code uses state selectors to access state.