Skip to content

Lance Community Governance

The Lance community is run by volunteers in a collaborative and open way. Its governance is inspired by open source foundations and projects such as ASF, CNCF, and Substrait.

Governance Structure

The Lance community recognizes three tiers of participation:

Contributors

Everyone who has made a contribution to Lance is a contributor.

A "contribution" is not limited to code changes. Adopting Lance in personal or company projects, providing bug reports and feature requests, performing code reviews, organizing or planning community gatherings, giving talks, creating and assisting in branding and design, writing documentation, and many other activities are all counted as contributions.

All contributions, regardless of form, are valued and greatly appreciated. It is entirely possible to advance through the governance tiers without writing code.

Maintainers

A maintainer is a contributor who has made sustained and valuable contributions to the Lance community. Maintainers are recognized for their work and granted various rights to support their ongoing contributions. For more details of the activities, rights, roster and how to become a maintainer, see Maintainers.

Project Management Committee (PMC)

A PMC member is a maintainer who has demonstrated leadership in the project. The PMC guides the long-term direction, makes decisions on governance and project changes, and protects the Lance brand. For more details of the activities, rights, roster and how to become a PMC member, see PMC.

Roster Information

Maintainer and PMC rosters information follow these guidelines:

  • Ordering: People in the roster are listed in alphabetical order by last name
  • Self-Report: Personal information such as Affiliation and Ecosystem Roles is self-reported and updated at the individual's discretion.
  • Ecosystem Roles: This field documents the individual's involvement in other open source projects if any. It helps identify potential collaboration and integration pathways with the broader open source ecosystem.

Projects

This section details the projects maintained in the Lance community.

Core Projects

Core projects are the foundational repositories maintained by the Lance community with strict quality and release standards. Contributing Guidelines, Community Voting Process and Release Guidelines are all applicable to these projects.

Here is the list of current core projects:

Project Name Repository Contents
lance https://github.com/lance-format/lance Lance file and table format specification, Rust SDK (including Namespace Integration SDK), Python SDK, Java SDK, Website
lance-namespace https://github.com/lance-format/lance-namespace Lance namespace format specification, Rust/Python/Java Codegen SDKs, Java/Python Integration SDK
lance-python-docs https://github.com/lance-format/lance-python-docs Lance Python SDK generated docs and integration hook with readthedocs
lance-ray https://github.com/lance-format/lance-ray Ray integration for Lance
lance-spark https://github.com/lance-format/lance-spark Apache Spark connector for Lance

Subprojects

Subprojects are initiatives or repositories that extend Lance's functionality. They must align with Lance's overall mission and technical direction. New subprojects can be created with PMC approval.

Subprojects have relaxed requirements for contribution, where contributors may receive write access even if not maintainers.

Here is the list of current subprojects:

Project Name Repository Contents
lance-data-viewer https://github.com/lance-format/lance-data-viewer Read-only web interface for browsing Lance datasets
lance-duckdb https://github.com/lance-format/lance-duckdb DuckDB extension for Lance
lance-flink https://github.com/lance-format/lance-flink Apache Flink connector for Lance
lance-graph https://github.com/lance-format/lance-graph Cypher-capable graph query engine on top of Lance
lance-trino https://github.com/lance-format/lance-trino Trino connector for Lance
pglance https://github.com/lance-format/pglance PostgreSQL extension for Lance

Graduating a Subproject

The PMC can vote to promote a subproject to a core project once the subproject has demonstrated aspects including:

  • Proper repository setup including CI, issue tracking, contributing guide, etc.
  • Proper code standard enforcement including lint, testing, etc.
  • Automated release mechanism
  • Established production use cases
  • Community adoption outside the primary contributor
  • Consistent contributions from the community to add new features and fix bugs

Project License

All Lance projects hosted in the lance-format GitHub Organization are licensed under the Apache License 2.0.

External Integrations

We welcome and encourage Lance integrations in external projects. These integrations are valuable contributions to the Lance community and help expand the Lance ecosystem. When integrations are developed in external projects, the integration code and licensing should follow the guidelines and license of the external project.

Reporting Security Vulnerability

In case of any security vulnerability, please contact the PMC through the Lance Private Mailing List and refrain from public disclosure until the issue is resolved.

Reporting Harassment

The Lance community follows the Rust Community Code of Conduct. We are committed to providing a welcoming and inspiring community for all. Harassment of participants will not be tolerated. For such cases, please report to the Lance Private Mailing List.