Codync
무료 오픈소스 1:1 대안, Grok Bot과 Muse 대신
개인 계정의 공개 저장소 소유자는 GitHub로 로그인해 운영자를 확인하고 소개를 직접 관리할 수 있습니다. 관리자 승인은 필요하지 않습니다.
로그인한 뒤 확인 파일을 만들어 이 저장소의 기본 브랜치에 30분 안에 커밋해 주세요. 다른 브랜치나 포크의 파일은 인정하지 않습니다. 파일을 올린 뒤 아래에서 확인하면 관리자 승인 없이 관리할 수 있습니다. 자격을 유지하려면 파일을 남겨 두세요.
로그인이 필요하면 로그인 화면으로 이동합니다. 로그인 후 이곳으로 돌아와 원하는 확인 버튼을 다시 눌러 주세요.
프로젝트 폴더에서 /nomorevibe verify를 실행하면 소유권을 확인하고 소개를 직접 관리할 수 있습니다.
1분 만에 확인하기메이커가 쓴 소개는 위의 한 줄이 전부입니다. 더 자세한 내용은 저장소 README에서 읽을 수 있습니다. 저장소 README ↗
README 전체를 불러오는 중입니다.
README 전문 보기 ↗Tests how well query engines run Substrait plans, and publishes the results.
Leaderboard: https://ibm.github.io/substrait-compliance/
Substrait is a cross-language format for query plans: one system produces a plan, another executes it. This repository holds shared test suites for Substrait consumers, the tooling to run them against an engine, and a public leaderboard with a page per engine showing what fails and why. New to the project? Start with the introduction.
Engines are scored on two things, run as Substrait plans through the engine's own Substrait consumer:
Overall is the average of the two. A pass rate is passed ÷ (total − skipped); see how engines are scored.
Each engine's page groups its failures by cause: gaps in its Substrait consumer, cases its own SQL also gets wrong, failing queries, and cases this repository cannot test yet. The engine's own SQL results are shown next to the scores, unscored, so a consumer gap can be told apart from a gap in the engine.
This repository's CI runs DuckDB (Substrait community extension) and Apache DataFusion weekly and whenever the suites or runners change. Other engines take part by pull request (below).
| Suite | What it is | Cases | On the leaderboard |
|---|---|---|---|
functions-substrait-0.107 | The Substrait project's function test cases (tests/cases at v0.107.0), with 55 documented fixes | 1,315 | Scored (Functions) |
tpch | TPC-H queries as Substrait 0.107.0 plans, scale factor 0.01, with expected outputs | 22 | Scored (TPC-H) |
functions-substrait-0.107-extended | Cases converted from this repository's earlier function suite, validated and verified | 2,278 | Reference |
tpch-substrait-0.81 | The same TPC-H queries in the older Substrait 0.81 encoding | 22 | Reference |
…-sql | The function suites run as the engine's own SQL | Reference |
CI checks every function case against the Substrait 0.107.0 function definitions. Details of each suite, its data and how expected results were produced: test-suites/README.md.
Run DataFusion against both scored suites, the way CI does (Python 3.11):
python3 -m venv .venv && source .venv/bin/activate
pip install -e sdk/python "datafusion==55.0.0" "substrait-extensions==0.107.0" "substrait-protobuf==0.107.0"
python scripts/run_function_compliance.py --engine datafusion --mode plan \
--suites-dir test-suites/functions-substrait-0.107/upstream \
--suite-name functions-substrait-0.107 --output out/datafusion-functions.json
python scripts/run_plan_compliance.py --engine datafusion \
--test-suite test-suites/tpch/metadata.yaml --output out/datafusion-tpch.json
python scripts/combine_engine_reports.py --engine DataFusion \
--functions functions-substrait-0.107=out/datafusion-functions.json \
--queries tpch=out/datafusion-tpch.json --output out/datafusion.json
The last command prints the engine's Overall, Functions and TPC-H scores, which match its leaderboard entry. The report files list every case with its result and the reason for any failure.
No hosted service is involved: you run the suites in your own CI and open a pull request.
functions-substrait-0.107 and tpch from main through a small adapter for your
engine. Engines without Python bindings use a command that runs one plan
(examples/leaderboard-adapter).submit-results.yml workflow, or by hand with
scripts/prepare_submission.py.Guide: submissions/README.md.
| Goal | Use |
|---|---|
| Appear on the leaderboard | The Python runners in scripts/ through an adapter for your engine, then a pull request (submissions/README.md) |
| Test your engine in its own test suite, in its own language | A language SDK: Java, Python, Rust, C++, Go, TypeScript, C# or Scala (sdk/README.md) |
| Path | Contents |
|---|---|
test-suites/ | The suites: function cases, TPC-H plans, data and expected outputs |
scripts/ | Runners, plan builder, validators, scoring and leaderboard generation |
sdk/ | Language SDKs and their shared conformance vectors |
submissions/ | How to submit results |
examples/ | Engine integrations: DuckDB (Java, C++), DataFusion (Python, Rust), Velox (C++, needs a Velox build), and the leaderboard adapter |
docs/ | Guides: introduction, scoring, CI workflows, benchmarking |
.github/workflows/ | CI: SDK builds, suite validation, engine runs, submission checks, publishing |
Contributions are welcome: test cases, engine adapters and submissions, SDK improvements and documentation. See CONTRIBUTING.md. Questions and problems go to GitHub Issues.
The project's governance, maintainers, code of conduct and security policy are in the repository root.
Apache License 2.0; see LICENSE. The function test cases in
test-suites/functions-substrait-0.107/upstream are from the Substrait project, also under
Apache 2.0.