Skip to content

[pull] main from tldraw:main#502

Merged
pull[bot] merged 2 commits intocode:mainfrom
tldraw:main
Apr 17, 2026
Merged

[pull] main from tldraw:main#502
pull[bot] merged 2 commits intocode:mainfrom
tldraw:main

Conversation

@pull
Copy link
Copy Markdown

@pull pull Bot commented Apr 17, 2026

See Commits and Changes for more details.


Created by pull[bot] (v2.0.0-alpha.4)

Can you help keep this open source service alive? 💖 Please sponsor : )

…8583)

`@formatjs/unplugin` with `ast: true` compiles `defineMessages()` output
into AST arrays at build time, so `.defaultMessage` returns `{type,
value}` objects instead of strings. `CLERK_ERROR_MESSAGES` was passing
these objects directly to `<h1>`/`<p>`/`<button>` in `ErrorPage`,
crashing React with "Objects are not valid as a React child". This
replaces the `.defaultMessage` references with hardcoded English
strings, matching the existing pattern in `main.tsx:13-18`
(`TOP_LEVEL_ERROR_MESSAGES`) which also sits outside `IntlWrapper` and
uses the same approach.

### Change type

- [x] `bugfix`

### Test plan

1. Deploy and trigger the Clerk error boundary (e.g. block Clerk's
domain)
2. Verify the error page renders correctly with "Unable to connect"
header

### Release notes

- Fix crash when Clerk authentication service is unavailable

### Code changes

| Section | LOC change |
| ------- | ---------- |
| Apps    | +4 / -3    |
)

In order to prevent `ReferenceError: Can't find variable:
OffscreenCanvas` in browsers without `OffscreenCanvas` support (older
Safari, some iOS — 2.2K events / 344 users in 90d), this PR adds an
early return in `preloadAlphaData`.

The degradation is already graceful — when alpha data isn't loaded,
`isImagePointTransparent` returns `false` (treats all pixels as opaque),
so no further changes are needed.

### Change type

- [x] `bugfix`

### Test plan

- Open tldraw in a browser without `OffscreenCanvas` support (e.g. older
Safari/iOS)
- Verify no console errors related to `OffscreenCanvas`
- Verify image shapes still work (clicking transparent areas selects the
shape, which is the expected fallback)

### Release notes

- Fix crash in browsers without `OffscreenCanvas` support (e.g. older
Safari)

### Code changes

| Section   | LOC change |
| --------- | ---------- |
| Core code | +1 / -0    |
@pull pull Bot locked and limited conversation to collaborators Apr 17, 2026
@pull pull Bot added the ⤵️ pull label Apr 17, 2026
@pull pull Bot merged commit a0990db into code:main Apr 17, 2026
@pull pull Bot had a problem deploying to deploy-production April 17, 2026 15:13 Failure
@pull pull Bot had a problem deploying to deploy-staging April 17, 2026 15:13 Failure
@pull pull Bot had a problem deploying to deploy-staging April 17, 2026 15:13 Error
@pull pull Bot had a problem deploying to vsce publish April 17, 2026 15:13 Failure
@pull pull Bot had a problem deploying to deploy-staging April 18, 2026 00:36 Failure
@pull pull Bot temporarily deployed to e2e-dotcom April 18, 2026 02:36 Inactive
@pull pull Bot had a problem deploying to deploy-staging April 19, 2026 00:40 Failure
@pull pull Bot temporarily deployed to e2e-dotcom April 19, 2026 02:37 Inactive
@pull pull Bot had a problem deploying to deploy-staging April 20, 2026 00:40 Failure
@pull pull Bot temporarily deployed to e2e-dotcom April 20, 2026 02:37 Inactive
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant