blob: 375735f6ce20ebc1b50a9f02e93ac0039c19bff2 [file] [log] [blame] [view]
Wenzel Jakob71c5d802016-04-14 21:42:51 +02001Thank you for your interest in this project! Please refer to the following
2sections on how to contribute code and bug reports.
3
4### Reporting bugs
5
6At the moment, this project is run in the spare time of a single person
7([Wenzel Jakob](http://rgl.epfl.ch/people/wjakob)) with very limited resources
8for issue tracker tickets. Thus, before submitting a question or bug report,
9please take a moment of your time and ensure that your issue isn't already
10discussed in the project documentation provided at
11[http://pybind11.readthedocs.org/en/latest](http://pybind11.readthedocs.org/en/latest).
12
13Assuming that you have identified a previously unknown problem or an important
14question, it's essential that you submit a self-contained and minimal piece of
15code that reproduces the problem. In other words: no external dependencies,
16isolate the function(s) that cause breakage, submit matched and complete C++
17and Python snippets that can be easily compiled and run on my end.
18
19## Pull requests
20Contributions are submitted, reviewed, and accepted using Github pull requests.
21Please refer to [this
22article](https://help.github.com/articles/using-pull-requests) for details and
23adhere to the following rules to make the process as smooth as possible:
24
25* Make a new branch for every feature you're working on.
26* Make small and clean pull requests that are easy to review but make sure they
27 do add value by themselves.
Jason Rhinelander79583b52016-08-28 14:26:50 -040028* Add tests for any new functionality and run the test suite (``make pytest``)
29 to ensure that no existing features break.
Wenzel Jakob71c5d802016-04-14 21:42:51 +020030* This project has a strong focus on providing general solutions using a
31 minimal amount of code, thus small pull requests are greatly preferred.
32
Wenzel Jakob15e0e442017-11-17 18:44:50 +010033### Licensing of contributions
Wenzel Jakob71c5d802016-04-14 21:42:51 +020034
35pybind11 is provided under a BSD-style license that can be found in the
36``LICENSE`` file. By using, distributing, or contributing to this project, you
37agree to the terms and conditions of this license.
Wenzel Jakob15e0e442017-11-17 18:44:50 +010038
39You are under no obligation whatsoever to provide any bug fixes, patches, or
40upgrades to the features, functionality or performance of the source code
41("Enhancements") to anyone; however, if you choose to make your Enhancements
42available either publicly, or directly to the author of this software, without
43imposing a separate written license agreement for such Enhancements, then you
44hereby grant the following license: a non-exclusive, royalty-free perpetual
45license to install, use, modify, prepare derivative works, incorporate into
46other computer software, distribute, and sublicense such enhancements or
47derivative works thereof, in binary and source code form.