Diagnostic development workflow¶
- Go to the section issues and select your task from the list. It is necessary to choose tasks that do not have an executor, i.e.
Assignees
is not specified (the block is on the right, almost under the heading). - If there is no task for diagnostics, then you need to create it by clicking the
New issue
button - Write in the comments to the task to the maintainers that you want to take the task to work. After your nickname appears in the task in the
Assignees
block, you can proceed. - You need to create a fork of the repository in
GitHub
, clone the repository to your computer and create a new feature branch (development by git flow). - If the fork has already been created earlier, then you need to update the
develop
branch from the primary repository. The easiest way to do this is as follows- The local repository has two remote repository addresses: yours and primary
- Get updates from both repositories
git fetch --progress "--all" --prune
- In the local repository, switch to the branch
develop
- Reset the branch state to the state of the primary repository (
git reset --hard
) - Pushin the branch to your remote repository
-
To create all the necessary files in the right places, you need to run the command
gradlew newDiagnostic --key="KeyDiagnostic"
, insteadKeyDiagnostic
you must specify the key of your diagnostic. Details in helpgradlew -q help --task newDiagnostic
. Parameters: -
--key
- Diagnostic key --nameRu
- Russian description--nameEn
- English description
At startup, a list of available diagnostic tags is displayed. You must enter 1-3 tags from the space separated ones.
- To develop
-
After completion of the development of diagnostics: it is necessary to check the changes (after testing), and also perform a number of service tasks.
To simplify, a special command has been created that can be run in the consolegradlew precommit
or from the Gradle taskbarprecommit
. Task includes subtasks Sub Commands -
check - checking and testing the entire project
- licenseFormat - set license block in java source files
-
updateJsonSchema - update the json schema of the configuration file
-
If everything is done correctly, you need to commit the changes and push to your remote repository.
- You need to create
Pull request
from your feature branch to thedevelop
branch of the primary repository and fill in the information in the description. - Before closing the
pull request
, the maintainers will check the code and make comments. Bug fixes must be done in the same feature branch, github will automatically add the changes to the generatedpull request
. - Closing a
pull request
confirms the completion of the task.