Skip to content

chore(post-images): Bump satori to 0.25.0 (#125) - #209

Open
bbornino wants to merge 1 commit into
playfulprogramming:mainfrom
bbornino:fix/125-satori-upgrade
Open

chore(post-images): Bump satori to 0.25.0 (#125)#209
bbornino wants to merge 1 commit into
playfulprogramming:mainfrom
bbornino:fix/125-satori-upgrade

Conversation

@bbornino

Copy link
Copy Markdown
Contributor

Closes #125.

Summary

Bumps satori from 0.13.2 to 0.25.0 in packages/post-images.

Investigation

#125 describes the blurred code snippet in the banner background
(packages/post-images/src/layouts/banner.ts's code() function,
two stacked <pre> tags with filter: blur(1px)) going blank after
upgrading satori — with before/after screenshots on the issue.

I could not reproduce that regression against this repo:

  • Diffed satori's source directly between 0.13.2 and 0.25.0 across
    handler/presets.ts, text/processor.ts, builder/text.ts,
    handler/compute.ts, and text/index.ts (the files that own
    <pre> defaults, white-space handling, and glyph/path rendering).
    Nothing in that range touches whitespace collapsing or pre text
    rendering in a way that would blank it out — the real changes are
    Yoga API updates (box-sizing, position: static/contents), text-decoration
    (skip-ink, double lines), text-indent, and a word-wrap tweak unrelated
    to pre.
  • With satori bumped to 0.25.0 locally, the existing banner.test.ts
    and link-preview.test.ts snapshot tests pass unmodified against
    their existing golden PNGs (generated on 0.13.2).
  • Manually rendered the banner with both the existing mock post data
    and a longer, realistic multi-line TypeScript/JSX code sample (to
    stress wrapping/overflow) — code renders fully and correctly in
    both cases.
  • tsc --noEmit is clean with the new satori types.

No other code changes were needed in banner.ts or index.ts's
satori() call — grepped the rest of the monorepo and packages/post-images
is the only place satori is referenced or version-pinned.

Open question: since the issue's screenshots show a real blank
render, it's possible the bug was already fixed in an intermediate
satori release between 0.13.2 and 0.25.0, or that it depended on
post content/environment specifics not present in our test fixtures.
Flagging this rather than closing it as unreproducible outright —
worth a second pair of eyes/screenshots if it resurfaces.

Changes

  • packages/post-images/package.json — satori 0.13.20.25.0
  • pnpm-lock.yaml — updated accordingly
  • packages/post-images/tests/banner.test.ts — new regression test
    rendering longer, multi-line code (imports, JSX, multi-line functions)
    through the banner layout, checked against a new golden
    tests/banner-long-code.png, generated from the current (0.25.0)
    output and confirmed correct by eye. Gives permanent coverage for
    this bug shape rather than a one-off manual check.

Test plan

  • pnpm test:unit (lint, knip, publint, sherif, vitest across all
    NX projects) — clean
  • pnpm run build:all — clean
  • pnpm run prettier — clean (only pre-existing warning on
    .claude/settings.local.json, unrelated to this change)
  • Manually inspected banner-long-code.png and the existing
    banner.png/link-preview.png renders by eye

Investigated the playfulprogramming#125 regression (code text disappearing from the
banner background on newer satori). Diffed satori's source between
0.13.2 and 0.25.0 across text/whitespace handling and found nothing
that would explain it; the existing banner/link-preview snapshot
tests and a manual render with longer multi-line code both pass
unmodified on 0.25.0. Added a regression test with longer, realistic
code content as coverage for this bug shape going forward.
@coderabbitai

coderabbitai Bot commented Aug 23, 2026

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: e2b04a3a-500d-441b-ba5b-eef41adfc023


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

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.

Update vercel/satori to the latest version

1 participant