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.