pegjs/CONTRIBUTING.md
David Majda 9956b42392 Switch from Make to Gulp
The core of the transition is getting rid of Makefile and replacing it
with gulpfile.js. The rest is details (fixing dependencies, changing all
references to "make", etc.).

Target/task names mostly stay the same, so in most cases "gulp foo" does
what "make foo" did before. The only exceptions are "make browser" and
"make browserclean", which are now "gulp browser:build" and "gulp
browser:clean" (it feels more systematic).

Functionality is mostly unchanged (modulo Gulp clutter in the console),
but there are two small exceptions:

  gulp spec

    The reporter now displays just dots while previously it displayed
    spec descriptions. There is also a deprecation warning (most likely
    because I used an old version of gulp-jasmine in order to support
    Jasmine 1.x). I kept these issues unfixed because I plan to switch
    to Mocha soon (#409).

  gulp browser:build

    The copyright header is now added manually both to the development
    and minified build. Before, it was added only to the development
    build and the minified build relied on preserving it using "uglify
    --comments". This was broken since switching to //-style comments.

    There is now also an empty line between the header and the source
    code.

Fixes #444.
2016-10-11 11:53:25 +02:00

2.1 KiB
Raw Blame History

Contribution Guidelines

The best way to contribute to PEG.js is by using it and giving back useful feedback — reporting discovered bugs or requesting missing features.

You can also contribute code, but be advised that many patches end up being rejected, usually because the change doesnt fit the project or because of various implementation issues. In almost all cases its best to get in touch first before sending a patch.

Reporting Bugs

Report bugs using GitHub issues. Before submitting a bug report, please search existing reports to see if the bug wasnt reported already.

In the report, please describe:

  • Steps to reproduce the problem
  • Expected result(s)
  • Actual result(s)

In most cases, its also useful to include a minimal example (grammar + input) reproducing the problem.

Requesting Features

Request features using GitHub issues. Before submitting a feature request, please search existing requests to see if the feature wasnt requested already.

In the request, please describe:

  • How the feature should work
  • Use case(s) behind it

Contributing Code

Contribute code using GitHub pull requests. For non-trivial changes, first file a corresponding bug report or feature request. This will ensure the problem is separated from a solution.

Split your change into atomic commits with descriptive messages adhering to these conventions. Have a look in the commit history to see good examples.

When appropriate, add documentation and tests.

Before submitting, make sure your change passes the specs (gulp spec) and ESLint checks (gulp lint).