Skip to content

Latest commit

 

History

History
108 lines (75 loc) · 3.12 KB

CONTRIBUTING.md

File metadata and controls

108 lines (75 loc) · 3.12 KB

How to become a contributor and submit your own code

Table of contents

Contributor License Agreements

We'd love to accept your sample apps and patches! 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 (CLA).

  • 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.
  • If you work for a company that wants to allow you to contribute your work, then you'll need to sign a corporate CLA.

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 be able to accept your pull requests.

Contributing a Patch

  1. Submit an issue describing your proposed change to the repo in question.
  2. The repo owner will respond to your issue promptly.
  3. If your proposed change is accepted, and you haven't already done so, sign a Contributor License Agreement (see details above).
  4. Fork the desired repo, develop and test your code changes.
  5. Ensure that your code adheres to the existing style in the code to which you are contributing.
  6. Ensure that your code has an appropriate set of tests which all pass.
  7. Title your pull request following Conventional Commits styling.
  8. Submit a pull request.

Before you begin

  1. Select or create a Cloud Platform project.
  2. Enable billing for your project.
  3. Enable the Generative Language API.
  4. Set up authentication with a service account so you can access the API from your local workstation.

You can use an API-key, but remember never to save it in your source files.

Development

Local install

Install the source in "editable" mode, with testing requirements:

pip install -e .[dev]

This "editable" mode lets you edit the source without needing to reinstall the package.

Testing

Use the builtin unittest package:

 python -m unittest

Or to debug, use:

nose2 --debugger

Type checking

Use pytype (configured in pyproject.toml)

pip install pytype
touch google/__init__.py   #  https://github.com/google/pytype/issues/464
pytype
rm google/__init__.py

Formatting:

Use black:

pip install black 
black .

Generate api reference

python docs/build_docs.py