Hi there.
Thanks for your interest in Parsley and your will to contribute. You're welcome!
First thing: make sure you are using the latest official release.
Please ask questions on StackOverflow and be sure to include the parsley.js
tag. Please provide an example, starting for example from this jsfiddle
If you believe you have found a bug in parsley
, please provide an example, starting for example from this jsfiddle.
This makes it possible for you to be sure you have isolated the issue to a minimal case. It also makes it much easier for us to understand your issue. Sometimes the issue is completely different than what you would expect and only an actual example can lead to a solution.
To run tests locally:
npm install # needed only the very first time!
gulp test # runs tests in the console
# or to run them in the browser:
gulp test-browser # starts a local server
open test/runner.html # open in your favorite browser
Note: Parsley is written in EcmaScript 6.
Note: There's currently a test that fails on some system, a beer to you if you can fix that, see #1095
More tips general to any open source projects
Here are a few simple rules you'll have to follow in order to ease code reviews, discussions and PR merging.
-
You MUST follow Parsley coding standard. It basically follows these popular rules except that functions are followed by one space on Parsley. Use two spaces as tabs.
-
You MUST write / update tests for each code contribution you do
-
You MUST commit a passing test-suite
-
You SHOULD write documentation
-
You MUST NOT modify
/dist
. Changes are made only to/src
,/test
, etc...
Please, write commit messages that make sense, and rebase your branch before submitting your Pull Request.
One may ask you to squash your
commits
too. This is used to "clean" your Pull Request before merging it (we don't want
commits such as fix tests
, fix 2
, fix 3
, etc.). Good rule of thumb: the test-suite must pass at each commit point.
Also, while creating your Pull Request on GitHub, you MUST write a description which gives the context and/or explains why you are creating it.
Thank you!
Inspired by http://williamdurand.fr/2013/07/04/on-open-sourcing-libraries/