If you would like to contribute enhancements or fixes, please do the following:
-
Fork the package repository and clone your fork to a local folder.
-
Run
npm install
in the project to setup all dependencies. -
Run
apm link --dev
to link your working folder as a development-mode-only package. (Testing) -
Run
git checkout -b my-awesome-branch
to create and checkout a separate branch for your work. (Tips) -
Hack away at the code, and don't forget to have fun. 👩💻
-
Check for lint errors with
npm run lint
or uselinter-eslint
within Atom. (Guidelines) -
Run
atom --dev path/to/cool-project
to test-drive your improvements. (Testing) -
Run the specs and verify they are all green. (Testing)
-
Commit the changes and push the topic branch to your fork on GitHub.
-
Make a pull request to the main repo here.
-
Welcome to the club! 🤸♀️
- The steps above had you checkout a separate branch. This is not strictly necessary. But it is strongly encouraged. The
master
branch might update before your commit is merged. In this case, you will need to rebase those changes into your own commit. Having a separate branch for your work greatly reduces the number of things that can go wrong in that process.
Please note that modifications should follow these coding guidelines:
-
Code should pass linting by
eslint
. In addition to checking for common bugs, the linter is used to enforce style requirements. -
Vertical whitespace helps readability, don’t be afraid to use it!
-
Running
apm link --dev
will link your working folder to Atom as a development-mode-only package. Atom will load this development version of the package instead of any regularly installed package, allowing you to test your code in a live environment. Useatom --dev some/project/folder
to start in developer mode. -
There are several ways to start the specs. Any of these will run the full test suite. Make sure the tests pass before submitting a pull request.
- Run
atom --test spec
in the command line. - Type
specs
in the Command Pallete and press Enter. - Click through the menus
View
->Developer
->Run
->Package Specs
- Press the hotkey Ctrl-Y or ⌘-Alt-Ctrl-P
- Run
If you have any questions during development you can join the #linter-plugin-dev
channel on Atom's Slack instance.
-
If given Maintainer status, you should create your branches directly off of the
atom-linter
repo instead of using a fork. This allows other maintainers to easily add additional commits to your branch for an open pull request. -
Project members with push access to the repository also have the permissions needed to release a new version. If there have been changes to the project and the team decides it is time for a new release, the process is to:
-
Update
CHANGELOG.md
with the plannedsemver
version number and a short bulleted list of major changes. Include pull request numbers if applicable. -
Update
package.json
with the new version number. -
Commit the changed
package.json
andCHANGELOG.md
to master -
Create a git tag for the new version and push it to GitHub * To create the (signed) tag:
git tag -s -m "vx.y.z" vx.y.z
* To push to GitHub:git push --follow-tags
-
Publish the package to the Atom package manager *
apm publish --tag vx.y.z
-
Thank you for helping out! 💕