aboutsummaryrefslogtreecommitdiff
path: root/docs/contributing.rst
blob: 35285ff1c6e7db1b4c81fb13c643b70b8a28ea67 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
Contributing
============

Contributor License Agreements
------------------------------

We'd love to accept your code patches! However, before we can take them, we
have to jump a couple of legal hurdles.

Please fill out either the individual or corporate Contributor License
Agreement.

* If you are an individual writing original source code and you're sure you
  own the intellectual property, then you'll need to sign an `individual CLA
  <https://developers.google.com/open-source/cla/individual>`_.
* If you work for a company that wants to allow you to contribute your work to
  oauth2client, then you'll need to sign a `corporate CLA
  <https://developers.google.com/open-source/cla/corporate>`_.

Follow either of the
two links above to access the appropriate CLA and instructions for how to sign
and return it. Once we receive it, we'll add you to the official list of
contributors and be able to accept your patches.

Before writing code, file an issue
----------------------------------

Use the `issue tracker <https://github.com/google/oauth2client/issues>`_ to
start the discussion. It is possible that someone else is already working on
your idea, your approach is not quite right, or that the functionality exists
already. The ticket you file in the issue tracker will be used to hash that
all out.

Fork oauth2client
-----------------

We will use github's mechanism for forking repositories and making pull
requests. Fork the repository, and make your changes in the forked repository.

Include tests
-------------

Be sure to add the relevant tests before making the pull request. Docs will be
updated automatically when we merge to ``master``, but you should also build
the docs yourself via ``tox -e docs`` and make sure they're readable.

Make the pull request
---------------------

Once you have made all your changes, tests, and updated the documentation,
make a pull request to move everything back into the main ``oauth2client``
repository. Be sure to reference the original issue in the pull request.
Expect some back-and-forth with regards to style and compliance of these
rules.