Please read these guidelines before contributing to Json.NET:
- Question or Problem?
- Issues and Bugs
- Feature Requests
- Submitting a Pull Request
- Contributor License Agreement
If you have questions about how to use Json.NET, please read the Json.NET documentation or ask on Stack Overflow. There are thousands of Json.NET questions on Stack Overflow with the json.net tag.
GitHub issues are only for reporting bugs and feature requests, not questions or help.
If you find a bug in the source code or a mistake in the documentation, you can help by submitting an issue to the GitHub Repository. Even better you can submit a Pull Request with a fix.
When submitting an issue please include the following information:
- A description of the issue
- The JSON, classes, and Json.NET code related to the issue
- The exception message and stacktrace if an error was thrown
- If possible, please include code that reproduces the issue. DropBox or GitHub's Gist can be used to share large code samples, or you could submit a pull request with the issue reproduced in a new test.
The more information you include about the issue, the more likely it is to be fixed!
You can request a new feature by submitting an issue to the GitHub Repository. Before requesting a feature consider the following:
- Json.NET has many extensibility points, it is possible you can implement your feature today without modifying Json.NET
- Stability is important. Json.NET is used by thousands of other libraries and features that require large breaking changes are unlikely to be accepted
When submitting a pull request to the GitHub Repository make sure to do the following:
- Check that new and updated code follows Json.NET's existing code formatting and naming standard
- Run Json.NET's unit tests to ensure no existing functionality has been affected
- Write new unit tests to test your changes. All features and fixed bugs must have tests to verify they work
Read GitHub Help for more details about creating pull requests.
By contributing your code to Json.NET you grant James Newton-King a non-exclusive, irrevocable, worldwide, royalty-free, sublicenseable, transferable license under all of Your relevant intellectual property rights (including copyright, patent, and any other rights), to use, copy, prepare derivative works of, distribute and publicly perform and display the Contributions on any licensing terms, including without limitation: (a) open source licenses like the MIT license; and (b) binary, proprietary, or commercial licenses. Except for the licenses granted herein, You reserve all right, title, and interest in and to the Contribution.
You confirm that you are able to grant us these rights. You represent that You are legally entitled to grant the above license. If Your employer has rights to intellectual property that You create, You represent that You have received permission to make the Contributions on behalf of that employer, or that Your employer has waived such rights for the Contributions.
You represent that the Contributions are Your original works of authorship, and to Your knowledge, no other person claims, or has the right to claim, any right in any invention or patent related to the Contributions. You also represent that You are not legally obligated, whether by entering into an agreement or otherwise, in any way that conflicts with the terms of this license.
James Newton-King acknowledges that, except as explicitly described in this Agreement, any Contribution which you provide is on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING, WITHOUT LIMITATION, ANY WARRANTIES OR CONDITIONS OF TITLE, NON-INFRINGEMENT, MERCHANTABILITY, OR FITNESS FOR A PARTICULAR PURPOSE.