Skip to content
This repository has been archived by the owner on Dec 13, 2018. It is now read-only.

Making patches to Atom

bottledwalter edited this page May 5, 2016 · 1 revision

To streamline the process of getting a pull request accepted by GitHub, make sure to follow these steps.

  • Before you start, make sure that apm test succeeds on your machine with your local clone of [email protected]:atom/atom.git. You will need to run it with your changes, so it's best to make sure your environment is configured correctly before you start.
  • Run ./script/grunt lint to make sure your code lints cleanly according to GitHub's style rules. The linter doesn't catch everything, so you may still be asked to address style nits during code review.
  • Make sure you have good test coverage for your change.
  • When writing a test, be aware of [[https://github.com/atom/atom/blob/master/spec/spec-helper.coffee | spec-helper.coffee]], which does some global beforeEach()/afterEach() work. Some of the logic here may be unexpected, so look here if you're confused about the initial state when your test is run. (Atom also adds some custom matchers here in the addCustomMatchers() function.)
  • Test data (aka fixtures) go in [[https://github.com/atom/atom/tree/master/spec/fixtures | spec/fixtures]]. You may find some sample files there that are useful for your own tests.
  • Before you send your change out for review, make sure that apm test and ./script/grunt lint run cleanly. For additional confidence, run ATOM_INTEGRATION_TESTS_ENABLED=true apm test.
  • For the feature branch where your change will live, prefix it with your initials and a hyphen, such as bf-. (That's for bolinfest since Max Brunsfeld already claimed mb-.) GitHub uses this convention to figure out which feature branches they can cleanup later.