Ensure every JS variable has its own declaration in MusicBrainz's code
We use a tool called ESLint to find problems in our JavaScript code and ensure it has a consistent style. ESLint is configured to use "rules" which each check for a different problem in the code.
This task requires you to fix all problems detected by the one-var ESLint rule.
To invoke this rule and find a list of such problems, you must first navigate to the git checkout of musicbrainz-server in your terminal, and run:
./script/check_eslint_rule 'one-var: [warn, never]' root/
The output will tell you which files it detected problems in, including line numbers, alongside a description of the actual issue on each line.
For this task, you'll need to ensure every variable has its own separate var
, let
, or const
declaration. The warnings can be mostly fixed by passing the --fix
option to check_eslint_rule
:
./script/check_eslint_rule 'one-var: [warn, never]' root/ --fix
This isn't sufficient to finish the task, since the automatic fixing breaks other ESLint rules (like indent). You will have to review the automatic fixes to ensure they're compliant with our other ESLint rules. The easiest way is by using an IDE that supports ESLint directly or through a plugin, such as VS Code, IntelliJ, or Eclipse.
To complete the task, submit a pull request to our GitHub repository with a proper description mentioning the specific rule, and respond to any suggestions and requests by the MusicBrainz developers until the pull request is approved (you do not need to wait until it gets merged).