Skip to content

[pull] main from TryGhost:main#1003

Merged
pull[bot] merged 12 commits intocode:mainfrom
TryGhost:main
Mar 24, 2026
Merged

[pull] main from TryGhost:main#1003
pull[bot] merged 12 commits intocode:mainfrom
TryGhost:main

Conversation

@pull
Copy link

@pull pull bot commented Mar 24, 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 : )

jonatansberg and others added 12 commits March 24, 2026 11:07
no ref

Some legacy sites incorrectly have object shaped shared views. This restores the previous fallback to [].
no ref
- Added transistor labs flag to cardConfig via useFeatureFlag
- Set visibilitySettings to 'none' to hide visibility panel in email
context
- Bumped @tryghost/koenig-lexical to 1.7.27
ref https://linear.app/ghost/issue/NY-1154/
- existing preview substitution was bolted-on to visibility gating,
which was inappropriate; it is now its own step

The intent of this change is to provide a pattern for subtituting
content in the Preview pane in Admin > Post Editor. In this case, we
substitute a user-specific iframe with a placeholder rather than using a
real user's uuid and display a real user's content.
## Summary
- migrate the portal donations browser coverage into top-level e2e as
portal-support.test.ts
- add the donation flow and page-object support needed to keep the new
tests readable
- remove the old ghost/core/test/e2e-browser/portal/donations.spec.js
coverage

## Testing
- cd e2e && yarn eslint helpers/pages/public/public-page.ts
helpers/pages/stripe/fake-checkout-page.ts helpers/pages/portal/index.ts
helpers/pages/portal/support-success-page.ts
helpers/pages/portal/notification-page.ts
helpers/playwright/flows/donations.ts helpers/playwright/flows/index.ts
helpers/services/settings/settings-service.ts
helpers/services/stripe/fake-stripe-server.ts
tests/public/portal-support.test.ts
- cd e2e && yarn test:types
- cd /Users/slars/dev/ghost/Ghost/e2e && GHOST_E2E_SKIP_BUILD=1 yarn
test tests/public/portal-support.test.ts
ref https://linear.app/ghost/issue/PLA-9/
- adds fake Stripe support for updating and deleting subscriptions in
top-level e2e
- adds a focused smoke test that exercises Ghost-driven subscription
price switching against the fake Stripe server
- extends the Portal signup page object so the test can select a
specific paid tier deterministically
ref
05e0954
- some card styles were still part of the newsletter styles.hbs not the
card-styles.hbs file
- wired up placeholder uuid for test emails
## Summary
- Migrated the subscription access / publish flow test from
`ghost/core/test/e2e-browser/` to
`e2e/tests/admin/posts/publish-flow.test.ts`
- Added `PublishFlow` page object to `PostEditorPage` for publish flow
locators
- Deleted the old
`ghost/core/test/e2e-browser/admin/site-settings.spec.js`
no-issue

Several callers (handle-image-sizes middleware, image-size service)
call exists() with a single path argument rather than separate
fileName + targetDir. S3Storage required both, causing path.posix.join
to throw on undefined. Made targetDir optional in exists() and
delete(), falling back to using fileName directly as the relative
path — matching LocalStorageBase's behavior.
ref https://linear.app/ghost/issue/PLA-9/
ref #26927
- migrated existing tier/subscription upgrade tests to /e2e/
no ref

Further iteration on welcome email customization. This PR enriches the
welcome email preview with realistic content (heading, paragraphs,
divider, image, button) so all design customization options have visible
effect. Fixes accessibility issues in the sidebar, wires up heading
font/weight and image corners settings, and fixes scroll behavior to
match the newsletter modal.

note: there's some slight overlap with changes in
#26926, so the last commit
([cb3d2fc](cb3d2fc))
drops some of the changes here (like the scroll fix) in favor of the
changes in the other PR to make merging everything easier. But the PRs
together cover everything listed above.
ref https://linear.app/ghost/issue/BER-3356

When members are filtered by fields like labels, tiers, subscription
status, or plan interval, up to two relevant columns are now appended
to the list so the filtered data is visible without opening each member.
The members list is converted from div-based grid layout to a proper
HTML table to support the variable column count.
@pull pull bot locked and limited conversation to collaborators Mar 24, 2026
@pull pull bot added the ⤵️ pull label Mar 24, 2026
@pull pull bot merged commit a241906 into code:main Mar 24, 2026
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.

5 participants