Add a lint to keep internal/external Vela versions in sync
@rascani is already working on this.
Since Jul 28, 2026.
- Dominant language
- Python
- Stars
- 5k
- Forks
- 1.2k
- Avg merge
- 2d 10h
- Merged PRs (30d)
- 581
Description
Problem
The Vela version is declared in three places that can drift apart, and currently do: fbcode/executorch/backends/arm/PACKAGE (internal override, 5.0.0._git_0f8edf7), backends/arm/requirements-arm-ethos-u.txt (5.1.0), and oss/pyproject.toml. Nothing keeps them consistent, so a silent mismatch is a latent "works here, breaks there."
What to do
Add a soft lint that checks the three pins against each other. It must be advisory, never blocking — the patched-5.0-vs-vanilla-5.1 gap is intentional today, and there are transient windows during an in-flight DiffTrain import where the files legitimately disagree. Normalize the two version grammars (Buck 5.0.0._git_… / v2026.05.0 vs pip 5.1.0 / 2026.5.0) and encode the allowed internal-vs-OSS exception (with a documented reason and tracking task). Because arm/PACKAGE is visible in open source, its drift from the OSS pin is also the natural signal that a Meta engineer should start an import — wire that as a notification.
Steps
- Parse and normalize the pins in the three files.
- Encode the allowed internal-vs-OSS exception (documented reason + tracking task).
- Make it advisory — warn, never block the DiffTrain or the merge queue.
- Emit an "import due" signal when
arm/PACKAGEdiverges from the OSS pin.
Done when
The three pins cannot silently diverge without a warning, and an intended divergence is documented rather than flagged as an error.
Notes
Many other internal consumers also pin Vela (see D109589808); converging all of them onto one shared pin is a separate migration, out of scope here.
cc @digantdesai @freddan80 @per @zingo @oscarandersson8218 @mansnils @Sebastian-Larsson @robell
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.