Repository navigation
Conversation
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/executorch/24710
Note: Links to docs will display an error until the docs builds have been completed. ❌ 4 New Failures, 1 Unrelated FailureAs of commit bf96e77 with merge base 60a8b5f ( NEW FAILURES - The following jobs have failed:
BROKEN TRUNK - The following job failed but were present on the merge base:👉 Rebase onto the `viable/strict` branch to avoid these failures
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
This PR needs a
|
2381b16 to
7672819
Compare
7672819 to
cac1874
Compare
cac1874 to
ed688e0
Compare
|
@claude review effort=max |
|
Claude finished @rascani's task in 46m 26s —— View job Request Changes: the git-checked version stamps, registry/SBOM metadata and Detailed review of #24710 (effort=max)SummaryThis PR replaces the hard-coded Nothing blocks on its own. The main problems:
All 11 changed files were reviewed. I couldn't run Code Quality
Testing
RecommendationRequest Changes. Nothing blocks on its own, but three fixes should land before the first registry publish:
The rest are minor. Specific Comments
|
The component's version was version.txt plus a hand-bumped packaging revision (1.6.0~3), which nothing tied to what was being packaged. The generator now derives it from git and refuses stamps the checkout cannot back: a plain X.Y.Z needs HEAD at the vX.Y.Z tag, X.Y.Z-rc.N needs the vX.Y.Z-rcN tag, and an X.Y.Z~N respin needs HEAD after vX.Y.Z on release/X.Y with no changes since the tag outside examples/espressif/, .ci/, .github/ and docs/. Those three also refuse a checkout with changes to what the component ships: to tracked files, or untracked files where the generator globs sources, the flatbuffers submodule's headers included. Builds from any other commit pass --allow-dev-stamp and get X.Y.Z-dev.<UTC commit date>, which is never published. An ExecuTorch tree that is not the top of its own git checkout gets no stamp, so a copy inside another repository is never stamped from that repository's history. examples/espressif/test_version_stamp.sh checks these guards in a scratch repository, and CI runs it first. idf_component.yml gains the registry's repository, documentation (at the packaged commit), issues, discussion and tags fields, and its license now lists every license in the vendored code: ExecuTorch's BSD-3-Clause, FlatBuffers' Apache-2.0, and the LLVM (Apache-2.0 WITH LLVM-exception, NCSA) and musl (MIT) code in a few runtime and c10 headers. The component ships LLVM's LICENSE.TXT, whose legacy NCSA text array_ref.h refers to, next to FlatBuffers' license. sbom.yml with one sub-manifest each for FlatBuffers and c10 describes the vendored code for esp-idf-sbom, and CI validates them along with compote manifest lint. The component ships examples/hello_executorch, a project that runs the smoke model with the model and kernel bundle made at generation time by the component's own gen_kernels.py. The generator therefore needs ExecuTorch installed from the exact commit it packages, and checks that before it starts. The example depends on exactly this component version, since its bundle is made for it, through override_path. CI builds it that way and runs it on the ESP32-S3 emulator, and the consumer test also builds it as a registry user gets it, copied out of the packed archive without override_path so the pin resolves from the mirror. The component's README, which becomes its registry page, tells projects to depend on one exact version and commit dependencies.lock, since a bundle only fits the version it was made for. Authored with Claude Code.
ed688e0 to
bf96e77
Compare
The component's version was version.txt plus a hand-bumped packaging
revision (1.6.0
3), which nothing tied to what was being packaged. TheN respin needs HEAD after vX.Y.Z ongenerator now derives it from git and refuses stamps the checkout cannot
back: a plain X.Y.Z needs HEAD at the vX.Y.Z tag, X.Y.Z-rc.N needs the
vX.Y.Z-rcN tag, and an X.Y.Z
release/X.Y with no changes since the tag outside examples/espressif/,
.ci/, .github/ and docs/. Those three also refuse a checkout with changes
to what the component ships: to tracked files, or untracked files where
the generator globs sources, the flatbuffers submodule's headers
included. Builds from any other commit pass --allow-dev-stamp and get
X.Y.Z-dev., which is never published. An ExecuTorch
tree that is not the top of its own git checkout gets no stamp, so a
copy inside another repository is never stamped from that repository's
history. examples/espressif/test_version_stamp.sh checks these guards in
a scratch repository, and CI runs it first.
idf_component.yml gains the registry's repository, documentation (at the
packaged commit), issues, discussion and tags fields, and its license now
lists every license in the vendored code: ExecuTorch's BSD-3-Clause,
FlatBuffers' Apache-2.0, and the LLVM (Apache-2.0 WITH LLVM-exception,
NCSA) and musl (MIT) code in a few runtime and c10 headers. The component
ships LLVM's LICENSE.TXT, whose legacy NCSA text array_ref.h refers to,
next to FlatBuffers' license. sbom.yml with one sub-manifest each for
FlatBuffers and c10 describes the vendored code for esp-idf-sbom, and CI
validates them along with compote manifest lint.
The component ships examples/hello_executorch, a project that runs the
smoke model with the model and kernel bundle made at generation time by
the component's own gen_kernels.py. The generator therefore needs
ExecuTorch installed from the exact commit it packages, and checks that
before it starts. The example depends on exactly this component version,
since its bundle is made for it, through override_path. CI builds it
that way and runs it on the ESP32-S3 emulator, and the consumer test
also builds it as a registry user gets it, copied out of the packed
archive without override_path so the pin resolves from the mirror. The
component's README, which becomes its registry page, tells projects to
depend on one exact version and commit dependencies.lock, since a bundle
only fits the version it was made for.
Authored with Claude Code.