- Make sure the problem you're addressing is reproducible.
- Use http://jsbin.com or http://jsfiddle.net to provide a test page.
- Indicate what browsers the issue can be reproduced in. Note: IE Compatibilty mode issues will not be addressed. Make sure you test in a real browser!
- What version of the plug-in is the issue reproducible in. Is it reproducible after updating to the latest version.
Documentation issues are also tracked at the jQuery Validation issue tracker. Pull Requests to improve the docs are welcome at the jQuery Validation docs repository, though.
IMPORTANT NOTE ABOUT EMAIL VALIDATION. As of version 1.12.0 this plugin is using the same regular expression that the HTML5 specification suggests for browsers to use. We will follow their lead and use the same check. If you think the specification is wrong, please report the issue to them. If you have different requirements, consider using a custom method.
Thanks for contributing! Here's a few guidelines to help your contribution get landed.
- Make sure the problem you're addressing is reproducible. Use jsbin.com or jsfiddle.net to provide a test page.
- Follow the jQuery style guide
- Add or update unit tests along with your patch. Run the unit tests in at least one browser (see below).
- Run
grunt
(see below) to check for linting and a few other issues. - Describe the change in your commit message and reference the ticket, like this: "Demos: Fixed delegate bug for dynamic-totals demo. Fixes #51". If you're adding a new localization file, use something like this: "Localization: Added croatian (HR) localization"
- Install NodeJS.
- Install the Grunt CLI To install by running
npm install -g grunt-cli
. More details are available on their website http://gruntjs.com/getting-started. - Install the NPM dependencies by running
npm install
. - The build can now be called by running
grunt
.
If you've wrote custom methods that you'd like to contribute to additional-methods.js:
- Create a branch
- Add the method as a new file in
src/additional
- (Optional) Add translations to
src/localization
- Send a pull request to the master branch.
To run unit tests, you should have a local webserver installed and pointing at your workspace. Then open http://localhost/jquery-validation/test
to run the unit tests. Start with one browser while developing the fix, then run against others before committing. Usually latest Chrome, Firefox, Safari and Opera and a few IEs.
Please report documentation issues at the jQuery Validation issue tracker. In case your pull request implements or changes public API it would be a plus you would provide a pull request against the jQuery Validation docs repository.
To run JSHint and other tools, use grunt
.