Contribution process

Getting started

After familiarizing yourself with the documentation, the simplest way to get started is to:

  1. Setup your developer environment by following development guide.

  2. Either create a GitHub issuearrow-up-right or make a draft PR (following development guide) to get the ball rolling!

Decision making process

See governancearrow-up-right for more details here

We follow a process of lazy consensusarrow-up-right. If you believe you know what the project needs then just start development. As long as there is no active opposition and the PR has been approved by maintainers or CODEOWNERS, contributions will be merged.

We use our GitHub issuesarrow-up-right, and GitHub pull requestsarrow-up-right to communicate development ideas.

Note: There may not always a corresponding CODEOWNER for the affected code, in which case the responsibility falls on other maintainers or contributors with write access to review + merge the PR

Pull requests

Please submit a PRarrow-up-right to the master branch of the Feast repository once you are ready to submit your contribution. Code submission to Feast (including submission from project maintainers) require review and approval from maintainers or code owners.

PRs that are submitted by the general public need to be identified as ok-to-test. Once enabled, Prowarrow-up-right will run a range of tests to verify the submission, after which community members will help to review the pull request.

See also Making a pull request for other guidelines on making pull requests in Feast.

RFCs and Architecture Decision Records

For substantial changes (new features, architecture changes, removing features), we use an RFC process. See the governance documentarrow-up-right for details.

Once an RFC is finalized and approved, it should be recorded as an Architecture Decision Record (ADR) in the docs/adr/ directory. This ensures that architectural decisions are version-controlled alongside the codebase and easily accessible to all contributors.

To add a finalized RFC as an ADR:

  1. Copy the ADR templatearrow-up-right to a new file with the next sequential number.

  2. Summarize the RFC's context, decision, and consequences.

  3. Submit a pull request with the new ADR.

Resources

Last updated

Was this helpful?