docs(releases): add v4.5.0 release notes and v4.4.1 patch notes#8263
Merged
steveruizok merged 6 commits intomainfrom Mar 18, 2026
Merged
docs(releases): add v4.5.0 release notes and v4.4.1 patch notes#8263steveruizok merged 6 commits intomainfrom
steveruizok merged 6 commits intomainfrom
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
4 Skipped Deployments
|
a206814 to
7988d6d
Compare
huppy-bot bot
pushed a commit
that referenced
this pull request
Mar 18, 2026
In order to publish the v4.5.0 release notes and record the v4.4.1 patch, this PR archives release notes and resets `next.mdx` for the next cycle. **v4.5.0.mdx** (new file): - Archived from `next.mdx` with full frontmatter, keywords, and GitHub release link - Featured sections: click-through on transparent image pixels (#7942), breaking `EmbedShapeUtil.configure()` change (#8034) - API changes: `Editor.getResizeScaleFactor()` (#8042), `TLImageAsset.pixelRatio` (#8163), `sanitizeSvg` (#7896), `experimental__onDropOnCanvas` (#7911), enum-to-const refactoring (#8084) - 6 improvements and 20 bug fixes from production **v4.4.0.mdx:** - Add v4.4.1 patch release section with tooltip positioning fix (#8171) - Add v4.4.1 to keywords **next.mdx:** - Reset with `last_version: v4.5.0` and empty content ### Change type - [x] `other` ### Code changes | Section | LOC change | | ------------- | ------------- | | Documentation | +128 / -107 |
1 task
github-merge-queue bot
pushed a commit
that referenced
this pull request
Mar 25, 2026
#8276) In order to stop docs-only hotfixes from triggering unwanted npm patch releases, this PR adds `yarn refresh-assets --force` before the `getAnyPackageDiff()` check in `publish-patch.ts`. ### Root cause PR #8204 added `.yarn/install-state.gz` to the CI cache. When Yarn determines that the install state hasn't changed (e.g. `node_modules` is already populated and no dependencies changed), it [skips lifecycle scripts](https://yarnpkg.com/advanced/lifecycle-scripts) including `postinstall` ([related discussion](yarnpkg/berry#5924)). This means the `postinstall` hook (`husky install && yarn refresh-assets`) never runs. Without `refresh-assets`, the gitignored asset directories in `@tldraw/assets` (`embed-icons/`, `fonts/`, `icons/`, `translations/`) don't exist on disk. The `getAnyPackageDiff()` guard runs `yarn pack` which produces a tarball missing these dirs (14 files), while the npm-published tarball has them (265 files) — always finding a diff, always publishing. **Before #8204 (working):** PR #8102 docs hotfix cherry-picked to v4.4.x — publish-patch skipped correctly, no version bump. **After #8204 (broken):** PRs #8263 and #8270 docs hotfixes cherry-picked to v4.5.x — both triggered unwanted npm publishes (v4.5.1 and v4.5.2). ### Why this approach Considered three options: 1. **Remove `install-state.gz` from cache** — doesn't actually help; Yarn skips postinstall based on dependency changes, not just the state file 2. **Add `refresh-assets` to the setup action** — overkill; lazyrepo already auto-runs it as a dependency of `build`, `build-types`, and `dev` 3. **Add `refresh-assets` to `publish-patch.ts`** — targeted fix matching what `trigger-sdk-hotfix.ts` already does (line 98) Option 3 is the right call. `publish-patch.ts` is the only workflow confirmed broken — everything else is protected by either lazyrepo's dependency graph or explicit `refresh-assets` calls in the workflow YAML. ### Change type - [x] `bugfix` ### Test plan Verified locally: 1. Removed asset dirs to simulate CI with warm cache (no postinstall) 2. `yarn pack` on `@tldraw/assets` → 14 files 3. Ran `yarn refresh-assets --force` 4. `yarn pack` again → 265 files On a release branch with only docs changes, `getAnyPackageDiff()` should now return `null` → "No packages have changed, skipping release" → no publish. ### Code changes | Section | LOC change | | -------------- | ---------- | | Config/tooling | +4 / -0 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
In order to publish the v4.5.0 release notes and record the v4.4.1 patch, this PR archives release notes and resets
next.mdxfor the next cycle.v4.5.0.mdx (new file):
next.mdxwith full frontmatter, keywords, and GitHub release linkEmbedShapeUtil.configure()change (Add EmbedShapeOptions to EmbedShapeUtil #8034)Editor.getResizeScaleFactor()(fix(tldraw): apply dynamic sizing when dragging shapes from toolbar #8042),TLImageAsset.pixelRatio(fix(images): use dual DPI baselines for correct pixelRatio on all platforms #8163),sanitizeSvg(feat(tldraw): add custom SVG sanitizer for external content #7896),experimental__onDropOnCanvas(feat(editor): add experimental onDropOnCanvas option #7911), enum-to-const refactoring (refactor(sdk): replace TypeScript enums with const objects for strip-types compatibility #8084)v4.4.0.mdx:
next.mdx:
last_version: v4.5.0and empty contentChange type
otherCode changes