Skip to content

Commit 26f3690

Browse files
author
Dan Lynn
committed
Initial Linux Foundation project config
Signed-off-by: Dan Lynn <dan.lynn@fivetran.com>
1 parent 72bfc06 commit 26f3690

File tree

11 files changed

+232
-16
lines changed

11 files changed

+232
-16
lines changed

.github/pull_request_template.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
## Description
2+
3+
<!-- Describe your changes here -->
4+
5+
## Test Plan
6+
7+
<!-- How were these changes tested? -->
8+
9+
## Checklist
10+
11+
- [ ] I have run `make style` and fixed any issues
12+
- [ ] I have added tests for my changes (if applicable)
13+
- [ ] All existing tests pass (`make fast-test`)
14+
- [ ] My commits are signed off (`git commit -s`) per the [DCO](DCO)
15+
16+
<!-- See CONTRIBUTING.md for more details on the contribution process -->

.github/workflows/dco.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name: DCO
2+
3+
on:
4+
pull_request:
5+
branches: [main]
6+
7+
jobs:
8+
dco:
9+
name: DCO Check
10+
runs-on: ubuntu-latest
11+
steps:
12+
- uses: tim-actions/dco@master

CODE_OF_CONDUCT.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
# Code of Conduct
2+
3+
SQLMesh follows the [LF Projects Code of Conduct](https://lfprojects.org/policies/code-of-conduct/). All participants in the project are expected to abide by it.
4+
5+
If you believe someone is violating the code of conduct, please report it by following the instructions in the [LF Projects Code of Conduct](https://lfprojects.org/policies/code-of-conduct/).

CONTRIBUTING.md

Lines changed: 90 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,90 @@
1+
# Contributing to SQLMesh
2+
3+
## Welcome
4+
5+
SQLMesh is a project of the Linux Foundation. We welcome contributions from anyone — whether you're fixing a bug, improving documentation, or proposing a new feature.
6+
7+
## Technical Steering Committee (TSC)
8+
9+
The TSC is responsible for technical oversight of the SQLMesh project, including coordinating technical direction, approving contribution policies, and maintaining community norms.
10+
11+
Initial TSC voting members are the project's Maintainers:
12+
13+
| Name | GitHub Handle | Affiliation |
14+
|---------------------|---------------|----------------|
15+
| Alexander Butler | z3z1ma | Harness |
16+
| Alexander Filipchik | afilipchik | Cloud Kitchens |
17+
| Reid Hooper | rhooper9711 | Benzinga |
18+
| Yuki Kakegawa | StuffbyYuki | Jump.ai |
19+
| Toby Mao | tobymao | Fivetran |
20+
| Alex Wilde | alexminerv | Minerva |
21+
22+
23+
## Roles
24+
25+
**Contributors**: Anyone who contributes code, documentation, or other technical artifacts to the project.
26+
27+
**Maintainers**: Contributors who have earned the ability to modify source code, documentation, or other technical artifacts. A Contributor may become a Maintainer by majority approval of the TSC. A Maintainer may be removed by majority approval of the TSC.
28+
29+
## How to Contribute
30+
31+
1. Fork the repository on GitHub
32+
2. Create a branch for your changes
33+
3. Make your changes and commit them with a sign-off (see DCO section below)
34+
4. Submit a pull request against the `main` branch
35+
36+
File issues at [github.com/sqlmesh/sqlmesh/issues](https://github.com/sqlmesh/sqlmesh/issues).
37+
38+
## Developer Certificate of Origin (DCO)
39+
40+
All contributions must include a `Signed-off-by` line in the commit message per the [Developer Certificate of Origin](DCO). This certifies that you wrote the contribution or have the right to submit it under the project's open source license.
41+
42+
Use `git commit -s` to add the sign-off automatically:
43+
44+
```bash
45+
git commit -s -m "Your commit message"
46+
```
47+
48+
To fix a commit that is missing the sign-off:
49+
50+
```bash
51+
git commit --amend -s
52+
```
53+
54+
To add a sign-off to multiple commits:
55+
56+
```bash
57+
git rebase HEAD~N --signoff
58+
```
59+
60+
## Development Setup
61+
62+
See [docs/development.md](docs/development.md) for full setup instructions. Key commands:
63+
64+
```bash
65+
python -m venv .venv
66+
source .venv/bin/activate
67+
make install-dev
68+
make style # Run before submitting
69+
make fast-test # Quick test suite
70+
```
71+
72+
## Coding Standards
73+
74+
- Run `make style` before submitting a pull request
75+
- Follow existing code patterns and conventions in the codebase
76+
- New files should include an SPDX license header:
77+
```python
78+
# SPDX-License-Identifier: Apache-2.0
79+
```
80+
81+
## Pull Request Process
82+
83+
- Describe your changes clearly in the pull request description
84+
- Ensure all CI checks pass
85+
- Include a DCO sign-off on all commits (`git commit -s`)
86+
- Be responsive to review feedback from maintainers
87+
88+
## Licensing
89+
90+
Code contributions are licensed under the [Apache License 2.0](LICENSE). Documentation contributions are licensed under [Creative Commons Attribution 4.0 International (CC-BY-4.0)](https://creativecommons.org/licenses/by/4.0/). See the LICENSE file and the [technical charter](sqlmesh-technical-charter.pdf) for details.

DCO

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
Developer Certificate of Origin
2+
Version 1.1
3+
4+
Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
5+
6+
Everyone is permitted to copy and distribute verbatim copies of this
7+
license document, but changing it is not allowed.
8+
9+
10+
Developer's Certificate of Origin 1.1
11+
12+
By making a contribution to this project, I certify that:
13+
14+
(a) The contribution was created in whole or in part by me and I
15+
have the right to submit it under the open source license
16+
indicated in the file; or
17+
18+
(b) The contribution is based upon previous work that, to the best
19+
of my knowledge, is covered under an appropriate open source
20+
license and I have the right under that license to submit that
21+
work with modifications, whether created in whole or in part
22+
by me, under the same open source license (unless I am
23+
permitted to submit under a different license), as indicated
24+
in the file; or
25+
26+
(c) The contribution was provided directly to me by some other
27+
person who certified (a), (b) or (c) and I have not modified
28+
it.
29+
30+
(d) I understand and agree that this project and the contribution
31+
are public and that a record of the contribution (including all
32+
personal information I submit with it, including my sign-off) is
33+
maintained indefinitely and may be redistributed consistent with
34+
this project or the open source license(s) involved.

GOVERNANCE.md

Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
# SQLMesh Project Governance
2+
3+
## Overview
4+
5+
SQLMesh is a Series of LF Projects, LLC. The project is governed by its [Technical Charter](sqlmesh-technical-charter.pdf) and overseen by the Technical Steering Committee (TSC). SQLMesh is a project of the [Linux Foundation](https://www.linuxfoundation.org/).
6+
7+
## Technical Steering Committee
8+
9+
The TSC is responsible for all technical oversight of the project, including:
10+
11+
- Coordinating the technical direction of the project
12+
- Approving project or system proposals
13+
- Organizing sub-projects and removing sub-projects
14+
- Creating sub-committees or working groups to focus on cross-project technical issues
15+
- Appointing representatives to work with other open source or open standards communities
16+
- Establishing community norms, workflows, issuing releases, and security vulnerability reports
17+
- Approving and implementing policies for contribution requirements
18+
- Coordinating any marketing, events, or communications regarding the project
19+
20+
## TSC Composition
21+
22+
TSC voting members are initially the project's Maintainers as listed in [CONTRIBUTING.md](CONTRIBUTING.md). The TSC may elect a Chair from among its voting members. The Chair presides over TSC meetings and serves as the primary point of contact with the Linux Foundation.
23+
24+
## Decision Making
25+
26+
The project operates as a consensus-based community. When a formal vote is required:
27+
28+
- Each voting TSC member receives one vote
29+
- A quorum of 50% of voting members is required to conduct a vote
30+
- Decisions are made by a majority of those present when quorum is met
31+
- Electronic votes (e.g., via GitHub issues or mailing list) require a majority of all voting members to pass
32+
- Votes that do not meet quorum or remain unresolved may be referred to the Series Manager for resolution
33+
34+
## Charter Amendments
35+
36+
The technical charter may be amended by a two-thirds vote of the entire TSC, subject to approval by LF Projects, LLC.
37+
38+
## Reference
39+
40+
The full technical charter is available at [sqlmesh-technical-charter.pdf](sqlmesh-technical-charter.pdf).

LICENSE

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -186,7 +186,7 @@
186186
same "printed page" as the copyright notice for easier
187187
identification within third-party archives.
188188

189-
Copyright 2024 Tobiko Data Inc.
189+
Copyright Contributors to the SQLMesh project
190190

191191
Licensed under the Apache License, Version 2.0 (the "License");
192192
you may not use this file except in compliance with the License.

README.md

Lines changed: 14 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
<p align="center">
22
<img src="docs/readme/sqlmesh.png" alt="SQLMesh logo" width="50%" height="50%">
33
</p>
4+
<p align="center">SQLMesh is a project of the <a href="https://www.linuxfoundation.org/">Linux Foundation</a>.</p>
45

56
SQLMesh is a next-generation data transformation framework designed to ship data quickly, efficiently, and without error. Data teams can run and deploy data transformations written in SQL or Python with visibility and control at any size.
67

@@ -12,7 +13,7 @@ It is more than just a [dbt alternative](https://tobikodata.com/reduce_costs_wit
1213

1314
## Core Features
1415

15-
<img src="https://github.com/TobikoData/sqlmesh-public-assets/blob/main/vscode.gif?raw=true" alt="SQLMesh Plan Mode">
16+
<img src="https://github.com/sqlmesh/sqlmesh-public-assets/blob/main/vscode.gif?raw=true" alt="SQLMesh Plan Mode">
1617

1718
> Get instant SQL impact and context of your changes, both in the CLI and in the [SQLMesh VSCode Extension](https://sqlmesh.readthedocs.io/en/latest/guides/vscode/?h=vs+cod)
1819
@@ -126,14 +127,14 @@ outputs:
126127
<details>
127128
<summary><b>Level Up Your SQL</b></summary>
128129
Write SQL in any dialect and SQLMesh will transpile it to your target SQL dialect on the fly before sending it to the warehouse.
129-
<img src="https://github.com/TobikoData/sqlmesh/blob/main/docs/readme/transpile_example.png?raw=true" alt="Transpile Example">
130+
<img src="https://github.com/sqlmesh/sqlmesh/blob/main/docs/readme/transpile_example.png?raw=true" alt="Transpile Example">
130131
</details>
131132
132133
* Debug transformation errors *before* you run them in your warehouse in [10+ different SQL dialects](https://sqlmesh.readthedocs.io/en/stable/integrations/overview/#execution-engines)
133134
* Definitions using [simply SQL](https://sqlmesh.readthedocs.io/en/stable/concepts/models/sql_models/#sql-based-definition) (no need for redundant and confusing `Jinja` + `YAML`)
134135
* See impact of changes before you run them in your warehouse with column-level lineage
135136

136-
For more information, check out the [website](https://www.tobikodata.com/sqlmesh) and [documentation](https://sqlmesh.readthedocs.io/en/stable/).
137+
For more information, check out the [documentation](https://sqlmesh.readthedocs.io/en/stable/).
137138

138139
## Getting Started
139140
Install SQLMesh through [pypi](https://pypi.org/project/sqlmesh/) by running:
@@ -174,16 +175,17 @@ Follow the [crash course](https://sqlmesh.readthedocs.io/en/stable/examples/sqlm
174175
Follow this [example](https://sqlmesh.readthedocs.io/en/stable/examples/incremental_time_full_walkthrough/) to learn how to use SQLMesh in a full walkthrough.
175176

176177
## Join Our Community
177-
Together, we want to build data transformation without the waste. Connect with us in the following ways:
178+
Connect with us in the following ways:
178179

179-
* Join the [Tobiko Slack Community](https://tobikodata.com/slack) to ask questions, or just to say hi!
180-
* File an issue on our [GitHub](https://github.com/TobikoData/sqlmesh/issues/new)
181-
* Send us an email at [hello@tobikodata.com](mailto:hello@tobikodata.com) with your questions or feedback
182-
* Read our [blog](https://tobikodata.com/blog)
180+
* Join the [SQLMesh Slack Community](https://tobikodata.com/slack) to ask questions, or just to say hi!
181+
* File an issue on our [GitHub](https://github.com/sqlmesh/sqlmesh/issues/new)
183182

184-
## Contribution
185-
Contributions in the form of issues or pull requests (from fork) are greatly appreciated.
183+
## Contributing
184+
We welcome contributions! Please see [CONTRIBUTING.md](CONTRIBUTING.md) for guidelines on how to contribute, including our DCO sign-off requirement.
186185

187-
[Read more](https://sqlmesh.readthedocs.io/en/stable/development/) on how to contribute to SQLMesh open source.
186+
Please review our [Code of Conduct](CODE_OF_CONDUCT.md) and [Governance](GOVERNANCE.md) documents.
188187

189-
[Watch this video walkthrough](https://www.loom.com/share/2abd0d661c12459693fa155490633126?sid=b65c1c0f-8ef7-4036-ad19-3f85a3b87ff2) to see how our team contributes a feature to SQLMesh.
188+
[Read more](https://sqlmesh.readthedocs.io/en/stable/development/) on how to set up your development environment.
189+
190+
## License
191+
This project is licensed under the [Apache License 2.0](LICENSE). Documentation is licensed under [CC-BY-4.0](https://creativecommons.org/licenses/by/4.0/).

SECURITY.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
# Security Policy
2+
3+
## Reporting a Vulnerability
4+
5+
If you discover a security vulnerability in SQLMesh, please report it through [GitHub Security Advisories](https://github.com/sqlmesh/sqlmesh/security/advisories/new). Do not file a public issue for security vulnerabilities.
6+
7+
## Response
8+
9+
We will acknowledge receipt of your report within 72 hours and aim to provide an initial assessment within one week.
10+
11+
## Disclosure
12+
13+
We follow a coordinated disclosure process. We will work with you to understand and address the issue before any public disclosure.
14+
15+
## Supported Versions
16+
17+
Security fixes are generally applied to the latest release. Critical vulnerabilities may be backported to recent prior releases at the discretion of the maintainers.

pyproject.toml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name = "sqlmesh"
33
dynamic = ["version"]
44
description = "Next-generation data transformation framework"
55
readme = "README.md"
6-
authors = [{ name = "TobikoData Inc.", email = "engineering@tobikodata.com" }]
6+
authors = [{ name = "SQLMesh Contributors" }]
77
license = { file = "LICENSE" }
88
requires-python = ">= 3.9"
99
dependencies = [
@@ -154,8 +154,8 @@ sqlmesh_lsp = "sqlmesh.lsp.main:main"
154154
[project.urls]
155155
Homepage = "https://sqlmesh.com/"
156156
Documentation = "https://sqlmesh.readthedocs.io/en/stable/"
157-
Repository = "https://github.com/TobikoData/sqlmesh"
158-
Issues = "https://github.com/TobikoData/sqlmesh/issues"
157+
Repository = "https://github.com/sqlmesh/sqlmesh"
158+
Issues = "https://github.com/sqlmesh/sqlmesh/issues"
159159

160160
[build-system]
161161
requires = ["setuptools >= 61.0", "setuptools_scm"]

0 commit comments

Comments
 (0)