You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2.1 KiB

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 tests (yarn test) and ESLint checks (yarn lint).