Repository navigation
TEZ-4758: Add a buf configuration so Yetus bufcompat/buflint can run - #542
Conversation
f83e2b5 to
4b900cd
Compare
|
💔 -1 overall
This message was automatically generated. |
- Yetus runs buf at the repository root with no config, so every cross-file import
("imported file does not exist" for import "DAGApiRecords.proto") fails and bufcompat
votes -1 on the base branch before a patch is even applied. TEZ-4548 was the last proto
change and predates the check; TEZ-4757 is the first patch to hit it
- One module per main proto directory, so tez-dag can import tez-api and tez-runtime-internals;
the test fixture proto in tez-ext-service-tests is not a module, it has no compatibility contract
- breaking: WIRE. The payloads are internal wire messages; FILE would reject a same-number
int32 -> int64 widening that is wire-compatible
- lint: MINIMAL minus PACKAGE_DEFINED. No Tez proto declares a package, and adding one
renames every generated type and every message's fully-qualified name on the wire
- Verified with buf 1.50.0, the version Yetus rel/0.15.1 ships: build and lint clean on
master, breaking clean for TEZ-4757 against master
4b900cd to
e9c9144
Compare
|
💔 -1 overall
This message was automatically generated. |
|
The bufcompat -1 is structural for this PR and cannot go green here. Yetus's bufcompat_preapply runs buf build on the unpatched base branch before the patch is applied; master has no buf.yaml, so every cross-file import fails (imported file does not exist for import "DAGApiRecords.proto", a same-directory import) and the plugin votes -1 before this change is even considered. The check that does run on the patched tree is buflint, and it went from 28 errors to 0 on this PR — that's the config working. Verified locally with buf 1.73 (CI runs 1.68.2): buf build and buf lint clean on master; The unit failures are unrelated to a YAML file. |
makes sense, ack |
abstractdog
left a comment
There was a problem hiding this comment.
TestHistoryParser flakiness is not related, so this LGTM
Yetus runs buf at the repository root with no config, so every cross-file import ("imported file does not exist" for import "DAGApiRecords.proto") fails and bufcompat votes -1 on the base branch before a patch is even applied. TEZ-4548 was the last proto change and predates the check; TEZ-4757 is the first patch to hit it