Add contribution guidelines
This commit is contained in:
parent
c67ccad74d
commit
0a406eab94
|
@ -43,6 +43,7 @@ doc/python-apiref.rst
|
||||||
doc/building-android-binary.rst
|
doc/building-android-binary.rst
|
||||||
doc/asio_http2.h.rst
|
doc/asio_http2.h.rst
|
||||||
doc/libnghttp2_asio.rst
|
doc/libnghttp2_asio.rst
|
||||||
|
doc/contribute.rst
|
||||||
python/setup.py
|
python/setup.py
|
||||||
python/dist
|
python/dist
|
||||||
python/MANIFEST
|
python/MANIFEST
|
||||||
|
|
|
@ -1150,3 +1150,7 @@ to hand over that patch/code to us. We will credit you for your
|
||||||
changes as far as possible, to give credit but also to keep a trace
|
changes as far as possible, to give credit but also to keep a trace
|
||||||
back to who made what changes. Please always provide us with your
|
back to who made what changes. Please always provide us with your
|
||||||
full real name when contributing!
|
full real name when contributing!
|
||||||
|
|
||||||
|
See `Contribution Guidelines
|
||||||
|
<https://nghttp2.org/documentation/contribute.html>`_ for more
|
||||||
|
details.
|
||||||
|
|
|
@ -597,6 +597,7 @@ AC_CONFIG_FILES([
|
||||||
doc/nghttp2.h.rst
|
doc/nghttp2.h.rst
|
||||||
doc/nghttp2ver.h.rst
|
doc/nghttp2ver.h.rst
|
||||||
doc/asio_http2.h.rst
|
doc/asio_http2.h.rst
|
||||||
|
doc/contribute.rst
|
||||||
contrib/Makefile
|
contrib/Makefile
|
||||||
])
|
])
|
||||||
AC_OUTPUT
|
AC_OUTPUT
|
||||||
|
|
|
@ -40,6 +40,7 @@ EXTRA_DIST = \
|
||||||
sources/libnghttp2_asio.rst \
|
sources/libnghttp2_asio.rst \
|
||||||
sources/python-apiref.rst \
|
sources/python-apiref.rst \
|
||||||
sources/building-android-binary.rst \
|
sources/building-android-binary.rst \
|
||||||
|
sources/contribute.rst \
|
||||||
_themes/sphinx_rtd_theme/footer.html \
|
_themes/sphinx_rtd_theme/footer.html \
|
||||||
_themes/sphinx_rtd_theme/theme.conf \
|
_themes/sphinx_rtd_theme/theme.conf \
|
||||||
_themes/sphinx_rtd_theme/layout_old.html \
|
_themes/sphinx_rtd_theme/layout_old.html \
|
||||||
|
|
|
@ -0,0 +1 @@
|
||||||
|
.. include:: @top_srcdir@/doc/sources/contribute.rst
|
|
@ -0,0 +1,57 @@
|
||||||
|
Contribution Guidelines
|
||||||
|
=======================
|
||||||
|
|
||||||
|
[This text was composed based on 1.2. License section of curl/libcurl
|
||||||
|
project.]
|
||||||
|
|
||||||
|
When contributing with code, you agree to put your changes and new
|
||||||
|
code under the same license nghttp2 is already using unless stated and
|
||||||
|
agreed otherwise.
|
||||||
|
|
||||||
|
When changing existing source code, you do not alter the copyright of
|
||||||
|
the original file(s). The copyright will still be owned by the
|
||||||
|
original creator(s) or those who have been assigned copyright by the
|
||||||
|
original author(s).
|
||||||
|
|
||||||
|
By submitting a patch to the nghttp2 project, you are assumed to have
|
||||||
|
the right to the code and to be allowed by your employer or whatever
|
||||||
|
to hand over that patch/code to us. We will credit you for your
|
||||||
|
changes as far as possible, to give credit but also to keep a trace
|
||||||
|
back to who made what changes. Please always provide us with your
|
||||||
|
full real name when contributing!
|
||||||
|
|
||||||
|
Coding style
|
||||||
|
------------
|
||||||
|
|
||||||
|
We use clang-format to format source code consistently. The
|
||||||
|
clang-format configuration file .clang-format is located at the root
|
||||||
|
directory. Since clang-format produces slightly different results
|
||||||
|
between versions, we currently use clang-format which comes with
|
||||||
|
clang-3.5.
|
||||||
|
|
||||||
|
To detect any violation to the coding style, we recommend to setup git
|
||||||
|
pre-commit hook to check coding style of the changes you introduced.
|
||||||
|
The pre-commit file is located at the root directory. Copy it under
|
||||||
|
.git/hooks and make sure that it is executable. The pre-commit script
|
||||||
|
uses clang-format-diff.py to detect any style errors. If it is not in
|
||||||
|
your PATH or it exists under different name (e.g.,
|
||||||
|
clang-format-diff-3.5 in debian), either add it to PATH variable or
|
||||||
|
add git option ``clangformatdiff.binary`` to point to the script.
|
||||||
|
|
||||||
|
For emacs users, integrating clang-format to emacs is very easy.
|
||||||
|
clang-format.el should come with clang distribution. If it is not
|
||||||
|
found, download it from `here
|
||||||
|
<https://llvm.org/svn/llvm-project/cfe/trunk/tools/clang-format/clang-format.el>`_.
|
||||||
|
And add these lines to your .emacs file:
|
||||||
|
|
||||||
|
.. code-block:: lisp
|
||||||
|
|
||||||
|
;; From
|
||||||
|
;; https://code.google.com/p/chromium/wiki/Emacs#Use_Google's_C++_style!
|
||||||
|
(load "/<path/to>/clang-format.el")
|
||||||
|
(add-hook 'c-mode-common-hook
|
||||||
|
(function (lambda () (local-set-key (kbd "TAB")
|
||||||
|
'clang-format-region))))
|
||||||
|
|
||||||
|
You can find other editor integration in
|
||||||
|
http://clang.llvm.org/docs/ClangFormat.html.
|
|
@ -17,6 +17,7 @@ Contents:
|
||||||
:maxdepth: 2
|
:maxdepth: 2
|
||||||
|
|
||||||
package_README
|
package_README
|
||||||
|
contribute
|
||||||
building-android-binary
|
building-android-binary
|
||||||
tutorial-client
|
tutorial-client
|
||||||
tutorial-server
|
tutorial-server
|
||||||
|
|
Loading…
Reference in New Issue