Skip to content

chore: release core 0.7.46, server 0.8.58, cli 0.10.50 - #1198

Merged
vivek7405 merged 1 commit into
mainfrom
chore/release-asset-url
Jul 31, 2026
Merged

chore: release core 0.7.46, server 0.8.58, cli 0.10.50#1198
vivek7405 merged 1 commit into
mainfrom
chore/release-asset-url

Conversation

@vivek7405

Copy link
Copy Markdown
Collaborator

Releases the asset() helper (#1194, merged in #1197) across the three packages that carry it.

package version why it moves
@webjsdev/core 0.7.45 → 0.7.46 new asset() + setAssetUrlProvider exports
@webjsdev/server 0.8.57 → 0.8.58 resolveAssetUrl(), the dev-server provider install, the elision-fingerprint fix
@webjsdev/cli 0.10.49 → 0.10.50 the scaffold marks its own asset urls

Publish order

core must publish first, since server and cli both resolve asset from it. The publish loop sorts by the changelog date: ASC and tie-breaks on filename DESC, so equal timestamps would publish server before core. The generated timestamps are distinct and ordered coreservercli:

2026-07-31T00:58:50.293Z  changelog/core/0.7.46.md
2026-07-31T00:58:50.353Z  changelog/server/0.8.58.md
2026-07-31T00:58:50.412Z  changelog/cli/0.10.50.md

Dependency range

packages/server's @webjsdev/core range moves ^0.7.1^0.7.46. dev.js imports setAssetUrlProvider statically, so the old range was satisfied by every published core and none of them carried that export. npm could install a combination that dies at module load, and only publish ORDER was preventing it. This makes the coupling npm's problem instead. A release PR is the only branch where the version-bump hook permits this.

Verification

  • npm ci resolves the tightened range against the regenerated lockfile.
  • Changelogs are hook-generated by scripts/backfill-changelog.js, not hand-written.
  • Full npm test in a clean worktree install: the only failures are test/integration/blog-http.test.mjs, which fail identically at origin/main in the same worktree (verified by detaching and re-running). No regression from this commit.

Ships asset() (#1194), the opt-in helper that content-hashes a public/
asset url so a deploy that changes the file changes the url, and the
framework serves it immutable for a year.

Also raises packages/server's declared @webjsdev/core range from ^0.7.1
to ^0.7.46. dev.js imports setAssetUrlProvider statically and the
generated app imports asset, while the old range was satisfied by every
published core and none of them carried those exports, so npm could
happily install a combination that dies at module load. The release PR
is the only place this bump is legal, and it retires the stale range
that context.js's setCspNonceProvider has been relying on publish order
for since 0.7.1.
@vivek7405
vivek7405 merged commit eb592da into main Jul 31, 2026
10 checks passed
@vivek7405
vivek7405 deleted the chore/release-asset-url branch July 31, 2026 01:10
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.

1 participant