Repository navigation
Commit bf96e77
committed
Stamp ESP-IDF component versions from git and add registry metadata
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.1 parent 29ecee2 commit bf96e77
12 files changed
Lines changed: 867 additions & 81 deletions
File tree
- .ci/scripts
- examples/espressif
- idf_component_smoke/main
- idf_component_template
- THIRD_PARTY_LICENSES
- examples/hello_executorch
- main
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
11 | 11 | | |
12 | 12 | | |
13 | 13 | | |
14 | | - | |
15 | | - | |
16 | | - | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
17 | 19 | | |
18 | 20 | | |
19 | 21 | | |
| |||
37 | 39 | | |
38 | 40 | | |
39 | 41 | | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
40 | 45 | | |
41 | 46 | | |
42 | 47 | | |
| |||
66 | 71 | | |
67 | 72 | | |
68 | 73 | | |
69 | | - | |
| 74 | + | |
70 | 75 | | |
| 76 | + | |
| 77 | + | |
71 | 78 | | |
72 | 79 | | |
73 | 80 | | |
| |||
261 | 268 | | |
262 | 269 | | |
263 | 270 | | |
| 271 | + | |
264 | 272 | | |
265 | | - | |
266 | | - | |
| 273 | + | |
267 | 274 | | |
268 | 275 | | |
269 | 276 | | |
| |||
349 | 356 | | |
350 | 357 | | |
351 | 358 | | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
352 | 364 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
16 | 16 | | |
17 | 17 | | |
18 | 18 | | |
19 | | - | |
| 19 | + | |
| 20 | + | |
20 | 21 | | |
21 | 22 | | |
22 | 23 | | |
| |||
83 | 84 | | |
84 | 85 | | |
85 | 86 | | |
86 | | - | |
| 87 | + | |
87 | 88 | | |
88 | | - | |
| 89 | + | |
89 | 90 | | |
90 | 91 | | |
91 | 92 | | |
| |||
164 | 165 | | |
165 | 166 | | |
166 | 167 | | |
167 | | - | |
| 168 | + | |
168 | 169 | | |
169 | 170 | | |
170 | 171 | | |
| |||
213 | 214 | | |
214 | 215 | | |
215 | 216 | | |
| 217 | + | |
| 218 | + | |
| 219 | + | |
| 220 | + | |
| 221 | + | |
| 222 | + | |
| 223 | + | |
| 224 | + | |
| 225 | + | |
| 226 | + | |
| 227 | + | |
| 228 | + | |
| 229 | + | |
| 230 | + | |
| 231 | + | |
| 232 | + | |
| 233 | + | |
| 234 | + | |
| 235 | + | |
| 236 | + | |
| 237 | + | |
216 | 238 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
18 | | - | |
| 18 | + | |
19 | 19 | | |
20 | 20 | | |
21 | 21 | | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
22 | 29 | | |
23 | 30 | | |
24 | 31 | | |
| |||
0 commit comments