Skip to content

[Web] Bump tvmjs version to 0.26.0 and apache-tvm-ffi floor to >=0.1.13.post2 - #20093

Merged
spectrometerHBH merged 2 commits into
apache:v0.26.0from
MasterJH5574:tvm-dev/2026-08-05-web-bump
Aug 5, 2026
Merged

[Web] Bump tvmjs version to 0.26.0 and apache-tvm-ffi floor to >=0.1.13.post2#20093
spectrometerHBH merged 2 commits into
apache:v0.26.0from
MasterJH5574:tvm-dev/2026-08-05-web-bump

Conversation

@MasterJH5574

@MasterJH5574 MasterJH5574 commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

Bumping the tvmjs version from 0.26.0-dev0 to 0.26.0 for v0.26.0 release.

Also bumping the apache-tvm-ffi floor given the v0.13.0.post2 comes with abi breaking changes.

@MasterJH5574
MasterJH5574 changed the base branch from main to v0.26.0 August 5, 2026 15:00
@MasterJH5574 MasterJH5574 changed the title [Web] Bump tvmjs version to 0.26.0 on v0.26.0 [Web] Bump tvmjs version to 0.26.0 and apache-tvm-ffi floor to >=0.1.13.post2 Aug 5, 2026
@spectrometerHBH
spectrometerHBH merged commit f3bff33 into apache:v0.26.0 Aug 5, 2026
5 checks passed
tlopex pushed a commit that referenced this pull request Aug 5, 2026
The `v0.26.0` release branch has been cut and `main` now carries the
`v0.27.dev0` tag, so this opens the matching npm dev cycle.

`web/package.json` is the only version that `setuptools_scm` does not
derive from git tags — npm is a separate ecosystem — so it is bumped by
hand once per cycle. The release branch keeps `0.26.0` for the v0.26.0
release (#20093).

Note for the release timeline: while v0.26.0 is still in flight, any
cherry-pick from `main` to the release branch that touches
`web/package*` will conflict with this bump, so it may be preferable to
hold the merge until v0.26.0 has shipped.
tqchen pushed a commit that referenced this pull request Aug 5, 2026
The bundled `3rdparty/tvm-ffi` gitlink is at `v0.1.13-post2` (#20088),
so TVM compiles against post2 headers. The wheel does not bundle
`libtvm_ffi.so` — it is excluded from the auditwheel, delocate and
delvewheel repair commands in `pyproject.toml` — so the runtime library
is whatever the `apache-tvm-ffi` dependency resolves to at install time.
That makes this floor an ABI contract rather than a formality.

`ModuleObj::GetFunction` changed from `virtual Function` to `virtual
Optional<Function>` between `0.1.13` and `0.1.13.post2`
(apache/tvm-ffi#700, apache/tvm-ffi#701). That is a C++ vtable boundary
whose mangled symbol does not encode the return type, so pairing a
post2-compiled TVM with an older `libtvm_ffi.so` fails silently rather
than at link time, and there is no runtime version guard that would
catch it.

A plain `pip install` already resolves to post2 since pip picks the
newest match, so this is latent rather than universal; raising the floor
closes the pinned and constrained resolves that `>=0.1.13` still
permits. The same bump is included in #20093 for the v0.26.0 release
branch.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants