Skip to content

Commit 0a01694

Browse files
authored
Update CONTRIBUTING.MD (#238)
* Update CONTRIBUTING.MD * Address comments * Update wording * Address comments
1 parent 0e1cb5c commit 0a01694

1 file changed

Lines changed: 118 additions & 19 deletions

File tree

CONTRIBUTING.md

Lines changed: 118 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,127 @@
1-
# How to Contribute
1+
# How to Contribute to the Google Ads API Client Library for Java
22

3-
We'd love to accept your patches and contributions to this project. There are
4-
just a few small guidelines you need to follow.
3+
## Overview: We Welcome Your Contributions
54

6-
## Contributor License Agreement
5+
Welcome and thank you for your interest in contributing to the Google Ads API Client Library for
6+
Java. Open source contributions are important to foster a vibrant developer community and help
7+
us provide a world-class developer experience. We value your contributions, no matter how small.
8+
Even small documentation fixes can go a long way in helping other developers use our API. Before
9+
contributing, please review the guidelines and best practices below.
710

8-
Contributions to this project must be accompanied by a Contributor License
9-
Agreement. You (or your employer) retain the copyright to your contribution;
10-
this simply gives us permission to use and redistribute your contributions as
11-
part of the project. Head over to <https://cla.developers.google.com/> to see
12-
your current agreements on file or to sign a new one.
11+
* [Providing Feedback](#providing-feedback)
12+
* [Feature Requests](#feature-requests)
13+
* [Bug Reports](#bug-reports)
14+
* [Contributing](#contributing)
15+
* [Contributor License Agreement (CLA)](#contributor-license-agreement-cla)
16+
* [How Libraries are Generated](#how-libraries-are-generated)
17+
* [Pull Request Submission Best Practices](#pull-request-submission-best-practices)
18+
* [Style Guidelines & Naming Conventions](#style-guidelines--naming-conventions)
19+
* [Claiming Requests](#claiming-requests)
20+
* [Testing](#testing)
21+
* [Community Guidelines](#community-guidelines)
1322

14-
You generally only need to submit a CLA once, so if you've already submitted one
15-
(even if it was for a different project), you probably don't need to do it
16-
again.
23+
## Providing Feedback
1724

18-
## Code reviews
25+
This repository is specifically for the Google Ads API Client Library for Java. If you have feedback
26+
related to the Google Ads API, please submit it by clicking the **Send feedback** button in the top right
27+
corner of [this page](https://developers.google.com/google-ads/api/support).
1928

20-
All submissions, including submissions by project members, require review. We
21-
use GitHub pull requests for this purpose. Consult
22-
[GitHub Help](https://help.github.com/articles/about-pull-requests/) for more
23-
information on using pull requests.
29+
### Feature Requests
30+
31+
We appreciate your feedback and encourage you to submit feature requests that
32+
will help improve this library.
33+
34+
If you see that someone has already created an issue that describes your proposed feature request,
35+
please upvote their idea to avoid duplicates and help our team prioritize feature requests.
36+
Github provides a similar issues search as you create new issues, which can help in this
37+
effort. In addition, if you have commentary or can build upon someone else’s idea, feel free to
38+
do so by adding a comment.
39+
40+
Please submit feature requests related to **this repository** by creating a new issue using
41+
the [Feature Request](https://github.com/googleads/google-ads-java/issues/new?assignees=&labels=enhancement&template=feature_request.md&title=)
42+
template.
43+
44+
### Bug Reports
45+
46+
We appreciate your feedback and encourage you to report bugs that will help
47+
improve this library.
48+
49+
If you see that someone has already created a bug that describes your bug, please upvote their
50+
issue to avoid duplicates and help our team prioritize feature requests. In addition, if you
51+
have additional commentary that can help us solve the issue, please add a comment with the
52+
relevant information. It may be helpful to provide the request and response logs associated
53+
with your bug.
54+
55+
Please submit bugs related to **this repository** by creating a new issue using the
56+
[Bug](https://github.com/googleads/google-ads-java/issues/new?assignees=&labels=bug&template=bug_report.md&title=)
57+
template.
58+
59+
**Please do not include any personal identifiable information or authorization/access data
60+
in any of the information you post.**
61+
62+
## Contributing
63+
64+
### Contributor License Agreement (CLA)
65+
66+
Contributions to this project must be accompanied by a Contributor License Agreement.
67+
You (or your employer) retain the copyright to your contribution; this simply gives us permission
68+
to use and redistribute your contributions as part of the project. Head over to
69+
https://cla.developers.google.com/ to see your current agreements on file or to sign a new one.
70+
71+
You generally only need to submit a CLA once, so if you've already submitted one (even if it was
72+
for a different project), you probably don't need to do it again.
73+
74+
### How Libraries are Generated
75+
76+
This section is intended to provide background regarding how we generate our client libraries so
77+
that you only submit pull requests that we will be able to use (we don’t want you wasting your
78+
time). We automatically generate the majority of our client library code from these
79+
[protocol buffers](https://github.com/googleapis/googleapis/tree/master/google/ads/googleads)
80+
that define the API. As a result, the names of certain methods and variables may be
81+
created automatically. Generated code is generally located in folders with the name of a
82+
version, such as v1 or v2. We will not be able to accept pull requests for open source
83+
improvements to the codebase related to generated code. Please share any feedback of this
84+
nature by [creating an issue](#providing-feedback) as we may be able to make fixes
85+
to the code generation process internally. We also welcome any pull requests related to
86+
this library not related to generated code.
87+
88+
### Pull Request Submission Best Practices
89+
90+
If your pull request does not address an existing issue, we suggest
91+
[creating an issue](#providing-feedback) outlining your proposed changes to
92+
ensure they align with the existing roadmap and are able to be accepted.
93+
When making a pull request, first make your own forked copy of this repository, make any changes
94+
on a separate branch of that forked copy, then submit the pull request from your new fork/branch.
95+
Consult
96+
[GitHub Help](https://help.github.com/en/github/collaborating-with-issues-and-pull-requests/about-pull-requests)
97+
for more information on using pull requests.
98+
99+
All submissions, including submissions by project members, require review. Upon receiving your
100+
pull request, our team will review the changes and may provide you with feedback, questions,
101+
or comments in order to maintain a high level of quality throughout this repository. We ask
102+
that you address feedback in a timely manner so that we can merge your changes into the main branch.
103+
104+
### Style Guidelines & Naming Conventions
105+
106+
Please conform your submitted code to Google’s official
107+
[style guide for Java](https://google.github.io/styleguide/javaguide.html).
108+
You can use this [style guide converter](https://github.com/google/google-java-format) to easily
109+
reformat your code to to comply with Google Style. In addition, please leave comments in your code
110+
in a manner consistent with other code in this repository.
111+
112+
### Claiming Requests
113+
114+
If you see a feature request or bug in the issues list for which you would like to submit a pull
115+
request, please let us know by “claiming” the request in the comments, and we can assign the
116+
issue to you. This will help to avoid duplicate work.
117+
118+
### Testing
119+
120+
If you make any changes to this codebase, ensure that all existing tests continue to pass.
121+
In addition, add tests that validate your changes to ensure that future changes do not break
122+
your new feature or bug fix.
24123

25124
## Community Guidelines
26125

27-
This project follows [Google's Open Source Community
28-
Guidelines](https://opensource.google.com/conduct/).
126+
This project follows
127+
[Google's Open Source Community Guidelines](https://opensource.google/conduct/).

0 commit comments

Comments
 (0)