Skip to content

Latest commit

 

History

History
92 lines (63 loc) · 2.5 KB

File metadata and controls

92 lines (63 loc) · 2.5 KB

How to Contribute

We would love to accept your patches and contributions to this project.

Before you begin

Sign our Contributor License Agreement

Contributions to this project must be accompanied by a Contributor License Agreement (CLA). You (or your employer) retain the copyright to your contribution; this simply gives us permission to use and redistribute your contributions as part of the project.

If you or your current employer have already signed the Google CLA (even if it was for a different project), you probably don't need to do it again.

Visit https://cla.developers.google.com/ to see your current agreements or to sign a new one.

Review our Community Guidelines

This project follows Google's Open Source Community Guidelines.

Contribution process

Code reviews

All submissions, including submissions by project members, require review. We use GitHub pull requests for this purpose.

Recommended development setup

We recommend using Pixi for reproducible local development. The repository defines dedicated environments for tests and docs so contributors can run the same commands across Linux, macOS, and Windows.

Install Pixi by following the upstream installation instructions: https://pixi.sh/latest/

From the repository root, use:

pixi install -e tests
pixi install -e docs

The main development commands are:

pixi run -e tests pytest -q xee/ext_test.py
pixi run -e tests pytest -q xee/ext_integration_test.py
pixi run -e docs docs-build
pixi run -e docs docs-check

docs-build builds the HTML docs, while docs-check runs a stricter Sphinx build with warnings treated as errors.

Running tests

The Xee integration tests only pass on Xee branches (no forks). Please run the integration tests locally before sending a PR. To run the tests locally, authenticate using earthengine authenticate and run one of the following:

pixi run -e tests python -m unittest xee/ext_integration_test.py

or

pixi run -e tests python -m pytest xee/ext_integration_test.py

For regular unit tests, run:

pixi run -e tests pytest -q xee/ext_test.py

Before opening a PR, run at least:

pixi run -e tests pytest -q xee/ext_test.py
pixi run -e docs docs-check

If your change touches Earth Engine integration behavior and you are working on an Xee branch, also run the integration tests locally.