-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update Ghost to latest version #1
Commits on May 27, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 6ea2b8f - Browse repository at this point
Copy the full SHA 6ea2b8fView commit details -
Configuration menu - View commit details
-
Copy full SHA for ba7c659 - Browse repository at this point
Copy the full SHA ba7c659View commit details -
Configuration menu - View commit details
-
Copy full SHA for 6792261 - Browse repository at this point
Copy the full SHA 6792261View commit details
Commits on May 28, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 4b059e1 - Browse repository at this point
Copy the full SHA 4b059e1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c5ec9d - Browse repository at this point
Copy the full SHA 5c5ec9dView commit details -
Used a base64 encoded string for hmac secret (#20269)
We want to use a randomly generated 64 byte secret for the hmac, and utf8 encoding isn't nice to work with for this, so we're going to use a base64 string and decode it into a buffer for the secret.
Configuration menu - View commit details
-
Copy full SHA for 6a8ae57 - Browse repository at this point
Copy the full SHA 6a8ae57View commit details -
Added
show_subhead
column to newsletters table (#20268)refs MOM-152 Adds `show_subhead` column to newsletter table. False by default.
Configuration menu - View commit details
-
Copy full SHA for d799f2e - Browse repository at this point
Copy the full SHA d799f2eView commit details -
Corrected typos and wrong translations in SK language (#20241)
Got some code for us? Awesome 🎊! Please include a description of your change & check your PR against this list, thanks! - [ ] There's a clear use-case for this code change, explained below - [ ] Commit message has a short title & references relevant issues - [ ] The build will pass (run `yarn test:all` and `yarn lint`) We appreciate your contribution! --------- Co-authored-by: Ryan Feigenbaum <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for d5cf717 - Browse repository at this point
Copy the full SHA d5cf717View commit details -
Added sanitization for svg uploads (#20264)
ref https://linear.app/tryghost/issue/ENG-856 - svgs were not previously sanitized and could contain scripts
Configuration menu - View commit details
-
Copy full SHA for e6fcbf4 - Browse repository at this point
Copy the full SHA e6fcbf4View commit details -
Updated email newsletter spacing and font sizes (#20273)
REF MOM-146 - These styling changes are a general newsletter template improvement, and are also laying the groundwork for including a subhead in the newsletter header. Both the newsletter template as well as the newsletter preview in settings have been updated.
Configuration menu - View commit details
-
Copy full SHA for 3ad77bd - Browse repository at this point
Copy the full SHA 3ad77bdView commit details -
Added Sentry Session Replay in Ghost Admin (2/2) (#20263)
ref https://linear.app/tryghost/issue/SLO-128 - Sentry will record session replays when errors happen in Admin (Settings, Editor) to facilitate debugging - The recorded sessions mask sensitive information (input fields, media items, content in the editor, metrics in the dashboard)
Configuration menu - View commit details
-
Copy full SHA for 7617759 - Browse repository at this point
Copy the full SHA 7617759View commit details
Commits on May 29, 2024
-
Added
hasFeature
email template helper (#20271)refs https://ghost.slack.com/archives/C06TQR9SHSM/p1716816764653789?thread_ts=1716795330.737919&cid=C06TQR9SHSM MOM-158 - adds a new `hasFeature` helper for adding content behind a flag within Email Templates. - Usage: `{{#hasFeature 'flagname'}} <p>html behind flag</p> {{/hasFeature}}` - Added additional testing for testing the helpers
Configuration menu - View commit details
-
Copy full SHA for fb465e4 - Browse repository at this point
Copy the full SHA fb465e4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9099ab4 - Browse repository at this point
Copy the full SHA 9099ab4View commit details -
Added Subheads behind a flag (#20265)
refs MOM-152 MOM-148 MOM-151 - Added Subheads behind a flag + toggle in settings. - Removes Excerpt fields from post settings if flag is enabled. - Added subhead toggle in newsletter settings. - Loads of styling --------- Co-authored-by: Sanne de Vries <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for fddcf3f - Browse repository at this point
Copy the full SHA fddcf3fView commit details -
Added subhead to newsletter template (#20276)
REF MOM-146 - Added subhead to email template behind a flag and and wired it up to the subhead newsletter setting.
Configuration menu - View commit details
-
Copy full SHA for b0940f1 - Browse repository at this point
Copy the full SHA b0940f1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4ef1dd2 - Browse repository at this point
Copy the full SHA 4ef1dd2View commit details -
Split subhead feature into two feature flags (#20279)
REF MOM-119 - Split subhead feature flag into two: editorSubtitle and newsletterSubtitle - Updated UI copy, feature flag names and class names from subhead to subtitle
Configuration menu - View commit details
-
Copy full SHA for acac780 - Browse repository at this point
Copy the full SHA acac780View commit details -
Added '@' internal link shortcut to editor (#20272)
closes https://linear.app/tryghost/issue/MOM-83 - added additional labs flag to allow internal testing prior to private beta release - bumped Koenig packages containing support for @-link feature
Configuration menu - View commit details
-
Copy full SHA for 55015cc - Browse repository at this point
Copy the full SHA 55015ccView commit details -
Configuration menu - View commit details
-
Copy full SHA for d507c5c - Browse repository at this point
Copy the full SHA d507c5cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 65b929d - Browse repository at this point
Copy the full SHA 65b929dView commit details
Commits on May 30, 2024
-
Fixed flaky Portal test (#20286)
no issue - the signup flow tests check whether the benefits of the available tiers are rendering correctly. The test is based on a text match, which sometimes fails because of duplicate benefit descriptions - this fix makes the benefit descriptions less likely to be the same, by using a timestamp in the randomisation function
Configuration menu - View commit details
-
Copy full SHA for 46f0efe - Browse repository at this point
Copy the full SHA 46f0efeView commit details -
Configuration menu - View commit details
-
Copy full SHA for b14dfeb - Browse repository at this point
Copy the full SHA b14dfebView commit details -
Updated excerpt placeholder text from "subtitle" to "post excerpt" in… (
#20288) … the editor REF MOM-167
Configuration menu - View commit details
-
Copy full SHA for a323739 - Browse repository at this point
Copy the full SHA a323739View commit details -
Updated newsletter subtitle settings (#20289)
REF MOM-168 - Updated the settings order to reflect the newsletter order - Hid the subtitle setting if post title section is toggled off
Configuration menu - View commit details
-
Copy full SHA for a817075 - Browse repository at this point
Copy the full SHA a817075View commit details -
Synced newsletter preview in settings with newsletter template (#20290)
REF MOM-147 - Updated newsletter preview in settings to match the newsletter template - Updated spacing for a few edge-case newsletter template combinations
Configuration menu - View commit details
-
Copy full SHA for 6bc91a1 - Browse repository at this point
Copy the full SHA 6bc91a1View commit details -
Removed staff with 404 URLs from internal link searches
closes https://linear.app/tryghost/issue/MOM-172 - staff users with no posts won't have a front-end URL so it can be confusing for them to appear in the internal link search results within the editor - added filtering for `/404/` in staff URLs so we don't list unlinkable staff members
Configuration menu - View commit details
-
Copy full SHA for 4165a93 - Browse repository at this point
Copy the full SHA 4165a93View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3fdacb1 - Browse repository at this point
Copy the full SHA 3fdacb1View commit details -
no issue When enabled the URL inputs in the link toolbar and bookmark card will search for posts, pages, authors, and tags, allowing for faster link creation and less interruption to workflow. - moved internal linking feature from private to public beta
Configuration menu - View commit details
-
Copy full SHA for 2db35ab - Browse repository at this point
Copy the full SHA 2db35abView commit details -
Added
name
attribute to feature flag checkboxesno issue - added `name` prop to `<Toggle>` component that corresponds to the checkbox's `name` attribute - updated `<FeatureToggle>` to set the `name` prop on it's `<Toggle>` component to the feature flag that was passed in so all feature toggles get a useful name attribute without having to manually specify one
Configuration menu - View commit details
-
Copy full SHA for 1a1ca3e - Browse repository at this point
Copy the full SHA 1a1ca3eView commit details -
Aligned the subtitle font with the body font in the newsletter templa…
…te (#20296) REF MOM-146 - This ensures the body serif / sans-serif style is applied to the subtitle as well
Configuration menu - View commit details
-
Copy full SHA for e2b6d6c - Browse repository at this point
Copy the full SHA e2b6d6cView commit details -
Fixed "no results" state flashing in @-linking
closes https://linear.app/tryghost/issue/MOM-160 - return `undefined` early from `searchLinks` when the underlying task gets cancelled - bump `@tryghost/koenig-lexical` so it properly handles cancelled search promises
Configuration menu - View commit details
-
Copy full SHA for 2734a88 - Browse repository at this point
Copy the full SHA 2734a88View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4183169 - Browse repository at this point
Copy the full SHA 4183169View commit details -
🐛 Fixed admin error when trying to overwrite a default theme (#20299)
ref https://linear.app/tryghost/issue/ONC-57/trying-to-overwrite-the-default-source-theme-crashes-ghost - When attempting to overwrite a default theme (source or casper), admin would crash because this is not allowed by the API and the error was not handled - This fixes that by showing a modal with an error message when the user tries to overwrite a default theme, and instructs the user to rename the zip file
Configuration menu - View commit details
-
Copy full SHA for 680651a - Browse repository at this point
Copy the full SHA 680651aView commit details
Commits on May 31, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 46cb819 - Browse repository at this point
Copy the full SHA 46cb819View commit details -
Updated error message shown when trying to overwrite a default theme (#…
…20301) ref https://linear.app/tryghost/issue/ONC-57/trying-to-overwrite-the-default-source-theme-crashes-ghost - No functional change, just an update to the error message to follow our writing guidelines for error messages
Configuration menu - View commit details
-
Copy full SHA for 9891abd - Browse repository at this point
Copy the full SHA 9891abdView commit details
Commits on Jun 3, 2024
-
Added validation logic to in-editor subtitle (#20284)
closes https://linear.app/tryghost/issue/MOM-150 - use our validation engine to display an error state when >300 characters have been typed in the subtitle input field --------- Co-authored-by: Sanne de Vries <[email protected]> Co-authored-by: Kevin Ansfield <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 833ac83 - Browse repository at this point
Copy the full SHA 833ac83View commit details -
Fixed cursor movement across title/subtitle/editor
closes https://linear.app/tryghost/issue/MOM-175 - matches cursor behaviour on Up/Down/Left/Right/Tab/Enter to our previous behaviour when we only had the title and editor
Configuration menu - View commit details
-
Copy full SHA for 76a41d4 - Browse repository at this point
Copy the full SHA 76a41d4View commit details -
Fixed subtitle not fully collapsing for auto-expansion
closes https://linear.app/tryghost/issue/MOM-149 - our styles set all `textarea` elements to have a min-height of 100px which wasn't being overridden for our subtitle element meaning our auto-expand code was never able to fully collapse it to a single line
Configuration menu - View commit details
-
Copy full SHA for 1d4fedf - Browse repository at this point
Copy the full SHA 1d4fedfView commit details -
closes https://linear.app/tryghost/issue/MOM-176 - display TK next to subtitle field as per the title field - include subtitle TK in the pre-publish TK check
Configuration menu - View commit details
-
Copy full SHA for d94a4c5 - Browse repository at this point
Copy the full SHA d94a4c5View commit details -
Adjusted subtitle field styling
closes https://linear.app/tryghost/issue/MOM-181 closes https://linear.app/tryghost/issue/MOM-183 - adjusted subtitle font sizing to be more in harmony with body font - moved error to be underneath the divider line
Configuration menu - View commit details
-
Copy full SHA for 77afd0a - Browse repository at this point
Copy the full SHA 77afd0aView commit details -
Fixed subtitle error being sticky
closes https://linear.app/tryghost/issue/MOM-182 - we were seeing some odd behaviour with the validation engine when validating individual properties that meant our tracked property wasn't auto-updating on subtitle change after a body edit/autosave event - switched to a manually tracked property that's updated based on the validate call status
Configuration menu - View commit details
-
Copy full SHA for a8342e1 - Browse repository at this point
Copy the full SHA a8342e1View commit details -
Wired up subtitle in newsletter template
closes https://linear.app/tryghost/issue/MOM-173 - updated email renderer to add `post.customExcerpt` data - updated template to skip rendering subtitle when no custom excerpt is present - updated template to use actual custom excerpt
Configuration menu - View commit details
-
Copy full SHA for 72a00b5 - Browse repository at this point
Copy the full SHA 72a00b5View commit details
Commits on Jun 4, 2024
-
Replaced Array.at() for better browser compatibility (#20315)
fixes https://linear.app/tryghost/issue/SLO-125 - Array.at() has been introduced in ECMAScript 2022 and is currently not supported by older browsers, e.g. Safari < 15.4
Configuration menu - View commit details
-
Copy full SHA for 9b7f1be - Browse repository at this point
Copy the full SHA 9b7f1beView commit details -
Configuration menu - View commit details
-
Copy full SHA for ba2bbe7 - Browse repository at this point
Copy the full SHA ba2bbe7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 41f8ed6 - Browse repository at this point
Copy the full SHA 41f8ed6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9ab9a88 - Browse repository at this point
Copy the full SHA 9ab9a88View commit details -
Configuration menu - View commit details
-
Copy full SHA for f7de630 - Browse repository at this point
Copy the full SHA f7de630View commit details -
Configuration menu - View commit details
-
Copy full SHA for 417c83d - Browse repository at this point
Copy the full SHA 417c83dView commit details -
closes https://linear.app/tryghost/issue/MOM-188 - subtitle setting copy reflects the subtitle/excerpt terminology based on the subtitle-in-editor beta flag
Configuration menu - View commit details
-
Copy full SHA for fc7d9d1 - Browse repository at this point
Copy the full SHA fc7d9d1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 80e115f - Browse repository at this point
Copy the full SHA 80e115fView commit details -
Fixed offer not found case during Stripe checkout (#20322)
fixes https://linear.app/tryghost/issue/SLO-135 - handles edge cases when an invalid `offerId` is provided during Stripe checkout
Configuration menu - View commit details
-
Copy full SHA for d751d64 - Browse repository at this point
Copy the full SHA d751d64View commit details -
Renamed
show_subhead
toshow_subtitle
(#20320)closes https://linear.app/tryghost/issue/MOM-194 - whilst working on the feature our naming changed from "Subhead" to "Subtitle" - this rename of the newsletter design setting column brings naming back into a consistent state before public release
Configuration menu - View commit details
-
Copy full SHA for 952a89f - Browse repository at this point
Copy the full SHA 952a89fView commit details -
Refine subtitle typography in newsletters (#20321)
MOM-190 MOM-192 - The subtitle style (serif/sans) was tied to the body style which was misleading. It makes more sense to connect it to the title style both from the UX and the output POV. - Newsletter design preview was not updated according to subtitle styles. --------- Co-authored-by: Kevin Ansfield <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 0efec25 - Browse repository at this point
Copy the full SHA 0efec25View commit details -
Fixed ember concurrency cancellation errors (#20324)
fixes https://linear.app/tryghost/issue/SLO-121 fixes https://linear.app/tryghost/issue/SLO-138 fixes https://linear.app/tryghost/issue/SLO-139 fixes https://linear.app/tryghost/issue/SLO-140 fixes https://linear.app/tryghost/issue/SLO-141 fixes https://linear.app/tryghost/issue/SLO-142 - ember-concurrency prevents two executions of the same task from running at the same time - when a task is cancelled, the library raises an error by default - however, we don't need to surface that error as the cancellation of the second execution is intentional
Configuration menu - View commit details
-
Copy full SHA for 98b51b6 - Browse repository at this point
Copy the full SHA 98b51b6View commit details -
Added Admin acceptance test for post revision restoration
ref https://linear.app/tryghost/issue/ENG-1078 - adds required setup for acceptance testing post revisions - adds happy-path test for listing, previewing, and restoring a post revision
Configuration menu - View commit details
-
Copy full SHA for 36ba476 - Browse repository at this point
Copy the full SHA 36ba476View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3f93f5f - Browse repository at this point
Copy the full SHA 3f93f5fView commit details
Commits on Jun 5, 2024
-
🐛 Fixed
mailto:
not being recognised in internal-linking search (#2……0331) closes https://linear.app/tryghost/issue/MOM-195 - bumped Koenig packages with updated URL-matching
Configuration menu - View commit details
-
Copy full SHA for d40ef32 - Browse repository at this point
Copy the full SHA d40ef32View commit details -
Added custom excerpt to post revisions (#20323)
closes https://linear.app/tryghost/issue/MOM-170 When the subtitle field is included in the editor it creates a disconnect with post revisions if the underlying custom excerpt data is not included so we'd like to both preview and restore the subtitle when the in-editor subtitle field is enabled. - added `post_revisions.custom_excerpt` column to schema - added migration to add `post_revisions.custom_excerpt` to existing databases - added migration to populate `post_revisions.custom_excerpt` with the current `post.custom_excerpt` value from the associated record - ensures no data is inadvertently lost when restoring an old version - using current data matches what would have happened previously where custom_excerpt was never overwritten when restoring an old version - updated post revisions handling to accept the `custom_excerpt` field - updated Admin's revision preview and restoration to display and set the `custom_excerpt` field
Configuration menu - View commit details
-
Copy full SHA for b447a26 - Browse repository at this point
Copy the full SHA b447a26View commit details -
🐛 Fixed Slack integration using member content in excerpt (#20328)
- refs [ONC-63](https://linear.app/tryghost/issue/ONC-63/discordslack-webhook-integration) - fixes [#20304](#20304) When a post is published and sent to Slack via webhook, the excerpt generated could contain member content. This change ensures that the excerpt does not contain member content. This change also ensures that the author for the post is correctly shown in Slack
Configuration menu - View commit details
-
Copy full SHA for 0f283da - Browse repository at this point
Copy the full SHA 0f283daView commit details -
Added logging to track offer redemption (#20329)
refs [ONC-56](https://linear.app/tryghost/issue/ONC-56/support-escalation-re-offers-not-tracking) Added logging to track offer redemption logic to debug issue with offer redemptions tracking incorrectly
Configuration menu - View commit details
-
Copy full SHA for 7f92777 - Browse repository at this point
Copy the full SHA 7f92777View commit details -
Published Portal v2.37.8 (#20336)
no refs Published Portal v2.37.8 to include recent translations
Configuration menu - View commit details
-
Copy full SHA for bb43395 - Browse repository at this point
Copy the full SHA bb43395View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0470a4a - Browse repository at this point
Copy the full SHA 0470a4aView commit details -
Renamed subtitle to excerpt (#20334)
no issue We've settled on using "excerpt" naming in place of "subtitle" to better reflect the underlying property name and tie in with themes and historical usage. - added migration to rename the `show_subtitle` newsletter setting to `show_excerpt` - renamed all places in the codebase that referenced subtitle
Configuration menu - View commit details
-
Copy full SHA for 9ca1f3c - Browse repository at this point
Copy the full SHA 9ca1f3cView commit details -
🐛 Fixed default sort for the content API posts endpoint with included…
… relations (#20333) ref https://linear.app/tryghost/issue/CFR-31/ - when relations were included, erroneous logic resulted in the model's default sort being applied - the model default sort is not intended for the content API and needlessly slowed down responses - there's a change for users here that should be incredibly unlikely to be hit; default sort is `published_at desc` which will be secondarily sorted by `id desc` instead of `published_at desc, updated_at desc, id desc` This is a very significant performance improvement for content API requests with includes for sites with a significant amount of data, which will primarily impact those using Ghost as a CMS or theme {{#get}} helpers.
Configuration menu - View commit details
-
Copy full SHA for e49021b - Browse repository at this point
Copy the full SHA e49021bView commit details -
✨ Added newsletter design setting to display excerpt as subtitle
no issue Full details coming soon to https://ghost.org/changelog/ - when enabled in newsletter design settings a post's custom excerpt will be displayed as a subtitle in the email
Configuration menu - View commit details
-
Copy full SHA for 4a94b5e - Browse repository at this point
Copy the full SHA 4a94b5eView commit details -
✨ Added beta feature toggle for moving excerpt field into editor (#20341
) closes https://linear.app/tryghost/issue/MOM-179 Full details coming soon to https://ghost.org/changelog - Adds a toggle to labs setting that moves the excerpt input below the post title in the editor
Configuration menu - View commit details
-
Copy full SHA for a7a1166 - Browse repository at this point
Copy the full SHA a7a1166View commit details
Commits on Jun 6, 2024
-
Fix copy to "Post excerpt" in newsletter settings (#20344)
MOM-209 Currently if the "Show post excerpt inline" is on we show "Subtitle" in newsletter settings, it should always be "Post excerpt" to avoid confusion.
Configuration menu - View commit details
-
Copy full SHA for 909f2fa - Browse repository at this point
Copy the full SHA 909f2faView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5c29bb6 - Browse repository at this point
Copy the full SHA 5c29bb6View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3b6d3b1 - Browse repository at this point
Copy the full SHA 3b6d3b1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 16a0bf6 - Browse repository at this point
Copy the full SHA 16a0bf6View commit details -
Noop'ed the post_revisions.custom_excerpt population migration
no issue - the query can take a very long time to run on large sites causing problems during the upgrade process - impact from not populating the column: - only has an effect when the inline excerpt beta is enabled - when beta enabled, if a revision created before the upgrade is restored then the excerpt will be removed (will be visibly empty in preview before restoring, if any edit has occurred on the post after upgrading then it can still be recovered by restoring the later version or copy/pasting from the preview)
Configuration menu - View commit details
-
Copy full SHA for c8fc93e - Browse repository at this point
Copy the full SHA c8fc93eView commit details -
Added fallback to current excerpt when revision excerpt is null
no issue - following on from the removal of the `post_revisions.custom_excerpt` column population it was possible in some circumstances to lose your excerpt when restoring an old version - this change means when no custom_excerpt exists on a revision we both preview and restore the current custom_excerpt to avoid any data loss
Configuration menu - View commit details
-
Copy full SHA for 202fd7e - Browse repository at this point
Copy the full SHA 202fd7eView commit details -
Configuration menu - View commit details
-
Copy full SHA for bf1852a - Browse repository at this point
Copy the full SHA bf1852aView commit details -
Added documentation for link redirects (#20327)
no issue - No code changes, only documentation - Added detailed overview of everything that happens when a member clicks on a redirect link in an email, along with a `mermaid.js` sequence diagram
Configuration menu - View commit details
-
Copy full SHA for bd030c4 - Browse repository at this point
Copy the full SHA bd030c4View commit details -
Added selectRaw to permitted options for posts model (#20340)
ref https://linear.app/tryghost/issue/CFR-29/ - this allows our content api requests to omit fields we do not use, improving performance
Configuration menu - View commit details
-
Copy full SHA for 734ed0b - Browse repository at this point
Copy the full SHA 734ed0bView commit details -
Published signup-form v0.1.4 (#20346)
no refs Published signup-form v0.1.4 to include recently added translations
Configuration menu - View commit details
-
Copy full SHA for f2090fe - Browse repository at this point
Copy the full SHA f2090feView commit details -
Published comments-ui v0.16.2 (#20345)
no refs Published comments-ui v0.16.2 to include recently added translations
Configuration menu - View commit details
-
Copy full SHA for 58dcbe9 - Browse repository at this point
Copy the full SHA 58dcbe9View commit details -
Removed members caching cookies when no member is logged in (#20349)
ref https://linear.app/tryghost/issue/KTLO-58/dont-send-ghost-acess-cookies-if-no-member-is-logged-in - Currently when member's caching is enabled, but no member is logged in, we always send `ghost-access=null;` and `ghost-access-hmac=null;` cookies in the requests to `/members/api/member/`. This is done to clear the cookies, but an unintended consequence is that these requests can never be cached since there is a cookie in the response. - This PR removes the cookies from the requests when no member is logged in, the cookies will not be sent, allowing the requests to be cached - It also unsets the cookies when deleting a member's session, so that the cookies are not sent in the requests after the member logs out - This should improve the cache hit ratio with members caching enabled
Configuration menu - View commit details
-
Copy full SHA for 4a6d427 - Browse repository at this point
Copy the full SHA 4a6d427View commit details
Commits on Jun 7, 2024
-
Configuration menu - View commit details
-
Copy full SHA for fefb9ec - Browse repository at this point
Copy the full SHA fefb9ecView commit details
Commits on Jun 10, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 81b46c5 - Browse repository at this point
Copy the full SHA 81b46c5View commit details -
Configuration menu - View commit details
-
Copy full SHA for c641174 - Browse repository at this point
Copy the full SHA c641174View commit details -
Configuration menu - View commit details
-
Copy full SHA for 496f4fd - Browse repository at this point
Copy the full SHA 496f4fdView commit details -
Configuration menu - View commit details
-
Copy full SHA for 67d7aad - Browse repository at this point
Copy the full SHA 67d7aadView commit details -
Added updated_at index to the posts table (#20354)
ref https://linear.app/tryghost/issue/ONC-82 - added migration for adding a posts.updated_at index
Configuration menu - View commit details
-
Copy full SHA for 6dbbdff - Browse repository at this point
Copy the full SHA 6dbbdffView commit details -
Added searching indicator to internal linking popups (#20355)
closes https://linear.app/tryghost/issue/MOM-174 - bumps @tryghost/koenig-lexical to version that includes a spinner in search popups whilst a search is in progress
Configuration menu - View commit details
-
Copy full SHA for c1d1a89 - Browse repository at this point
Copy the full SHA c1d1a89View commit details -
🐛 Fixed cursor movement across fields in excerpt-in-editor beta
no issue - during the subtitle->excerpt rename some instances were missed resulting in the excerpt field element not being registered correctly - fixed mismatched action name and renamed remaining uses of "subtitle"
Configuration menu - View commit details
-
Copy full SHA for 14afe23 - Browse repository at this point
Copy the full SHA 14afe23View commit details -
Added posts.updated_at index to schema (#20357)
ref 6dbbdff - added index to schema
Configuration menu - View commit details
-
Copy full SHA for 3c247d9 - Browse repository at this point
Copy the full SHA 3c247d9View commit details -
Configuration menu - View commit details
-
Copy full SHA for 2ce8351 - Browse repository at this point
Copy the full SHA 2ce8351View commit details
Commits on Jun 11, 2024
-
Adjusted spacing and amount of text of newsletter latest posts (#20285)
ref DES-347 - adjusted title and excerpt length of latest posts in emails - as the layout is same (horizontal) on both desktop and mobile, truncateHtml() needed some update - now maxLength is expected to be larger than maxLengthMobile, because the mobile layout isn't stacked anymore - some spacing adjustment has been made as well
Configuration menu - View commit details
-
Copy full SHA for 9ef9203 - Browse repository at this point
Copy the full SHA 9ef9203View commit details -
Removed Sentry error on multiple request attempts (#20360)
refs https://linear.app/tryghost/issue/SLO-146 - this Sentry error is not a user-facing error - the request is retried if it fails the first time
Configuration menu - View commit details
-
Copy full SHA for fde40e9 - Browse repository at this point
Copy the full SHA fde40e9View commit details -
Configuration menu - View commit details
-
Copy full SHA for e93bdba - Browse repository at this point
Copy the full SHA e93bdbaView commit details -
Configuration menu - View commit details
-
Copy full SHA for a95291f - Browse repository at this point
Copy the full SHA a95291fView commit details -
Configuration menu - View commit details
-
Copy full SHA for f454aed - Browse repository at this point
Copy the full SHA f454aedView commit details -
Removed Sentry message on successful Lexical save (#20362)
fixes https://linear.app/tryghost/issue/SLO-147 - removed Sentry message when the Lexical save is slow but successful - bumped Sentry message to error level when the Lexical is slow and fails
Configuration menu - View commit details
-
Copy full SHA for 63c6748 - Browse repository at this point
Copy the full SHA 63c6748View commit details -
Added comments to data generator
ref ENG-1219 Includes a minor fix to ensure posts are published in the past, so that comments can be created after.
Configuration menu - View commit details
-
Copy full SHA for 0aa36b9 - Browse repository at this point
Copy the full SHA 0aa36b9View commit details -
Updated default comments from 5 to 20 (#20359)
ref MOM-135 MOM-211 MOM-213 - Bumped up the default comments count from 5 to 20 comments before pagination kicks in. - Moved the pagination (`Show X previous comments)` to bottom of the page (soon to be reworded to `Show x more comments`) - Updated tests and added a new helper for adding multiple comments easier.
Configuration menu - View commit details
-
Copy full SHA for bea074b - Browse repository at this point
Copy the full SHA bea074bView commit details -
Added improved Admin search behind labs flag (#20363)
ref https://linear.app/tryghost/issue/MOM-117 ref https://linear.app/tryghost/issue/MOM-70 - moved current search into new `search-provider` service and updated `search` service to use the provider service internally - added `search-provider-beta` service - uses `flexsearch` as the underlying index for each document so we have better indexing and matching compared to the naive exact-match search we had previously - adds `excerpt` matching for posts and pages - keeps results output the same as the original search provider - added `internalLinkingSearchImprovements` labs flag so we can test this internally before reaching our internal linking beta testers - updated `search` service to switch between providers based on labs flag
Configuration menu - View commit details
-
Copy full SHA for 54812dc - Browse repository at this point
Copy the full SHA 54812dcView commit details -
Updated Admin search acceptance test
ref #20363 - updated test to match the new labs flag name
Configuration menu - View commit details
-
Copy full SHA for 8ed4d1f - Browse repository at this point
Copy the full SHA 8ed4d1fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 5f0a161 - Browse repository at this point
Copy the full SHA 5f0a161View commit details -
Fixed missing URLs in improved search results
ref https://linear.app/tryghost/issue/MOM-117 - `url` was missing in the results objects that we generate from the underlying search results - updated service integration test with check for url presence - updated service integration test to also run against the beta search - added missing page factory to mirage setup - updated mirage post serializer to include a uniquely identifiable URL for unpublished posts
Configuration menu - View commit details
-
Copy full SHA for 9540b85 - Browse repository at this point
Copy the full SHA 9540b85View commit details -
Added bs (Bosnian) locale (#20251)
Comprehensive, context aware, Bosnian translations for all available strings. Informal addressing of users (as is widely accepted in Bosnia and Herzegovina). Co-authored-by: Ryan Feigenbaum <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for 6863e37 - Browse repository at this point
Copy the full SHA 6863e37View commit details -
Added Greek locale for comments, portal, signup-form, ghost. (#20361)
We have noticed some attempts at Greek translation with no follow-up from contributors. This is a complete translation with accurate file naming conventions. We are native speakers and professionals. Co-authored-by: Ryan Feigenbaum <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a00305c - Browse repository at this point
Copy the full SHA a00305cView commit details
Commits on Jun 12, 2024
-
Added content visibility feature flag (#20371)
ref MOM-221 - added new feature flag for content visibility.
Configuration menu - View commit details
-
Copy full SHA for 63d912b - Browse repository at this point
Copy the full SHA 63d912bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 14c4df4 - Browse repository at this point
Copy the full SHA 14c4df4View commit details -
Configuration menu - View commit details
-
Copy full SHA for c93fb84 - Browse repository at this point
Copy the full SHA c93fb84View commit details -
Configuration menu - View commit details
-
Copy full SHA for 03cb264 - Browse repository at this point
Copy the full SHA 03cb264View commit details -
Configuration menu - View commit details
-
Copy full SHA for a33ae00 - Browse repository at this point
Copy the full SHA a33ae00View commit details -
🐛 Fixed internal link search sometimes showing latest posts after pas…
…ting URL (#20374) no issue - bumps `@tryghost/koenig-lexical` to include a fix related to debounced searches overwriting our "Insert URL" state of the results popup
Configuration menu - View commit details
-
Copy full SHA for 238588c - Browse repository at this point
Copy the full SHA 238588cView commit details -
Configuration menu - View commit details
-
Copy full SHA for c54d3d8 - Browse repository at this point
Copy the full SHA c54d3d8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 7d6c91b - Browse repository at this point
Copy the full SHA 7d6c91bView commit details -
Fixed validation error handling before previewing a post (#20375)
fixes https://linear.app/tryghost/issue/SLO-143 - in the editor, if there is a validation error on a post (e.g. the excerpt is longer than 300 chars), a validation error is rendered as a red banner error. However, when clicking on Preview, this error was bypassed - additionally, we were throwing an undefined error when a validation error happened. This was unnecessary and caused hundreds of unhandled errors per week
Configuration menu - View commit details
-
Copy full SHA for d00b699 - Browse repository at this point
Copy the full SHA d00b699View commit details -
Updated documentation for LinkRedirects (#20378)
no issue - Reduced opacity in background rectangles to improve readability of the sequence diagram when rendered on Github
Configuration menu - View commit details
-
Copy full SHA for 7d5ff4d - Browse repository at this point
Copy the full SHA 7d5ff4dView commit details
Commits on Jun 13, 2024
-
Moved pagination button back to top in comments (#20379)
no issue - moving the pagination button back to the top since it's not needed now. - Will move it to bottom in future along with additional comments enhancements.
Configuration menu - View commit details
-
Copy full SHA for e1e31c5 - Browse repository at this point
Copy the full SHA e1e31c5View commit details -
Published new version of Comments-UI (#20380)
no issue - Bumped from 0.17.0 to 0.17.1
Configuration menu - View commit details
-
Copy full SHA for e615c36 - Browse repository at this point
Copy the full SHA e615c36View commit details -
Wired up contentVisibility flag to Koenig (#20382)
ref MOM-221 - wired up the contentVisibility flag to be passed to Koenig from Ghost / Admin.
Configuration menu - View commit details
-
Copy full SHA for b166718 - Browse repository at this point
Copy the full SHA b166718View commit details -
Configuration menu - View commit details
-
Copy full SHA for ebda61a - Browse repository at this point
Copy the full SHA ebda61aView commit details -
Ignored posthog-js and ember-concurrency cancellation errors in Sentry (
#20383) fixes https://linear.app/tryghost/issue/SLO-126 fixes https://linear.app/tryghost/issue/SLO-141 fixes https://linear.app/tryghost/issue/SLO-150 - during a session, posthog-js' rrweb extension can start throwing a lot of errors. These errors do not affect the application - similarly, ember-concurrency's task cancellation errors do not affect the application. Task in ember-concurrency are expected to be canceled. However, if they're cast to a Promise, they show up as unhandled Promise rejections as Promises do not have a concept of cancellation
Configuration menu - View commit details
-
Copy full SHA for 66f7911 - Browse repository at this point
Copy the full SHA 66f7911View commit details -
Fixed data generator not setting
posts.plaintext
valueno issue - without `plaintext` set the API will not add generated excerpts to responses
Configuration menu - View commit details
-
Copy full SHA for f9cc2be - Browse repository at this point
Copy the full SHA f9cc2beView commit details -
Improved search index request order
no issue - we weren't adding an `order` param to our posts/pages requests used to populate the search index which meant the default Admin API ordering was applied which isn't optimal for this use-case - switched to ordering by `updated_at` to use a simple order that has an optimised index in the database
Configuration menu - View commit details
-
Copy full SHA for 555a2a4 - Browse repository at this point
Copy the full SHA 555a2a4View commit details -
🐛 Fixed editor 'are you sure?' modal displaying when no user changes …
…occurred (#20370) ref https://linear.app/tryghost/issue/ENG-661 - added a dirty check to ignore the `direction` field from the lexical object; this is set dynamically and shouldn't be serialized, see facebook/lexical/issues/4998 - fixed a bug where the modal wouldn't display on leaving the editor if the post had no revisions (e.g. import); this could result in content being saved over published content with no user action - added Sentry logging for the modal We would sometimes see the "Are you sure?" modal pop up when opening a post in the editor and attempting to navigate away immediately, without any changes to the post. This appears to be an issue with the serialized Lexical data, which would change after loading into the editor, resulting in the scratch and model's lexical values to differ, making Admin think the user changed the content. Ideally we'll see a fix upstream (or fix it ourselves). We may need to revisit this if we experience other such situations. It's awfully difficult to be able to set a flag saying 'the editor is done loading', so this seems to be the best path for the moment. Testing is difficult because we don't actually load the new Lexical editor into e2e/acceptance tests. I've added a unit test that can at least simulate the editor state changing on editor load.
Configuration menu - View commit details
-
Copy full SHA for 59b304d - Browse repository at this point
Copy the full SHA 59b304dView commit details -
Removed excerpt from beta search provider
no issue - reverting this change for now as the benefit vs decreased result legibility wasn't high enough
Configuration menu - View commit details
-
Copy full SHA for 048b67e - Browse repository at this point
Copy the full SHA 048b67eView commit details -
Added improved search into internal linking beta
closes https://linear.app/tryghost/issue/MOM-117 closes https://linear.app/tryghost/issue/MOM-70 - updated flag handling to move the improved search into the `internalLinking` beta flag - removed now-unused `internalLinkingSearchImprovements` flag
Configuration menu - View commit details
-
Copy full SHA for 83ee649 - Browse repository at this point
Copy the full SHA 83ee649View commit details
Commits on Jun 14, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 710488e - Browse repository at this point
Copy the full SHA 710488eView commit details -
Configuration menu - View commit details
-
Copy full SHA for 158c1ae - Browse repository at this point
Copy the full SHA 158c1aeView commit details
Commits on Jun 17, 2024
-
Configuration menu - View commit details
-
Copy full SHA for cc9a0ee - Browse repository at this point
Copy the full SHA cc9a0eeView commit details -
Configuration menu - View commit details
-
Copy full SHA for 9b04cc2 - Browse repository at this point
Copy the full SHA 9b04cc2View commit details -
Configuration menu - View commit details
-
Copy full SHA for f856564 - Browse repository at this point
Copy the full SHA f856564View commit details -
Updated data-generator to create lexical rather than mobiledoc posts
closes https://linear.app/tryghost/issue/ONC-96 - better matches Ghost's current usage - avoids mismatch in expected data when `post_revisions` is populated in future
Configuration menu - View commit details
-
Copy full SHA for 428e10f - Browse repository at this point
Copy the full SHA 428e10fView commit details -
Configuration menu - View commit details
-
Copy full SHA for e5592aa - Browse repository at this point
Copy the full SHA e5592aaView commit details -
Configuration menu - View commit details
-
Copy full SHA for f636762 - Browse repository at this point
Copy the full SHA f636762View commit details -
🎨 Improved editor behavior to automatically update slug for draft pos…
…ts (#20388) ref https://linear.app/tryghost/issue/ENG-1211 - the post slug now re-generates based on the post title for draft posts unless manually set - updated unit tests to be a bit more comprehensive It's frequently the case that draft posts might have WIP titles. We would generate a post slug based on the title and never change it, so unless writers remembered to come back in to update it for their final post, it could look off to readers. This should make that a bit more intelligent. Going forward, we will change the slug unless we expect it to be a custom slug (user-set in the side panel). If the title is cleared out and saved, we will also reset it. We will only ever automatically generate & change the slug for draft posts.
Configuration menu - View commit details
-
Copy full SHA for d732f83 - Browse repository at this point
Copy the full SHA d732f83View commit details -
Removed .only from admin controller test (#20399)
ref d732f83 - removed .only that wasn't caught by linter
Configuration menu - View commit details
-
Copy full SHA for b53dfbb - Browse repository at this point
Copy the full SHA b53dfbbView commit details
Commits on Jun 18, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 4da6851 - Browse repository at this point
Copy the full SHA 4da6851View commit details -
Fixed shutdown signal compatibility issue with Node 20
fix https://linear.app/tryghost/issue/ENG-1250/fix-node-20-shutdown-signal-compatibility-issue - in Node 20, support for string-based arguments to `process.exit` are removed - we can just switch this to an anonymous function and call `.shutdown` directly, as we don't need to pass any integer codes to it
Configuration menu - View commit details
-
Copy full SHA for 4ff51f4 - Browse repository at this point
Copy the full SHA 4ff51f4View commit details -
Newsletter captions fix (#20396)
Fixes https://linear.app/tryghost/issue/DES-4/image-caption-size-in-email-newsletter. There were no styles defined for captions for cards beyond the featured image (bookmark, gallery, video), and we had no way of targeting those captions with CSS. They are now wrapped in a div with a specific class, which allows for more selective styling, and are styled similarly to the caption of the featured image.
Configuration menu - View commit details
-
Copy full SHA for f456494 - Browse repository at this point
Copy the full SHA f456494View commit details -
Updated borders in comments CTA box (#20274)
DES-189 Our use of borders makes it very difficult to style a theme that looks good with all states. Theme developers need a border to separate comments from the content, but the current comments output includes borders. It's possible to make it look ok in most of the time, but it's difficult to work with. This change updates borders from the comments CTA box with the following rules: - Logged out without comments: no borders - Logged out with comments: top border only - Logged in without comments: no borders - Logged in with comments: no borders
Configuration menu - View commit details
-
Copy full SHA for cd8a54d - Browse repository at this point
Copy the full SHA cd8a54dView commit details -
Fixed handling SVG files with missing tag
fix https://linear.app/tryghost/issue/SLO-151/[ghost]-cannot-read-properties-of-null-reading-attributes-an - in the event the file doesn't contain a tag, the code currently crashes because it tries to read `attributes from `undefined` - we can fix that by checking the first element exists before reading from it - also includes a breaking test
Configuration menu - View commit details
-
Copy full SHA for 9a40440 - Browse repository at this point
Copy the full SHA 9a40440View commit details -
Configuration menu - View commit details
-
Copy full SHA for e2ef5d3 - Browse repository at this point
Copy the full SHA e2ef5d3View commit details -
Configuration menu - View commit details
-
Copy full SHA for dbd4aa6 - Browse repository at this point
Copy the full SHA dbd4aa6View commit details -
Added Sentry logging for unsaved changes modal in admin (#20408)
ref https://linear.app/tryghost/issue/ONC-94 - adds Sentry logging for the unsaved changes modal in Admin (tags, members, collections) This will let us monitor for spikes in rates so we know if a change to Ghost has caused faulty logic in detecting dirty models.
Configuration menu - View commit details
-
Copy full SHA for 783984d - Browse repository at this point
Copy the full SHA 783984dView commit details
Commits on Jun 19, 2024
-
Fixed race condition when updating member's
last_seen_at
timestamp (#……20389) ref https://linear.app/tryghost/issue/ENG-1240/race-condition-when-updating-members-last-seen-at-timestamp When members click a link in an email, Ghost updates the member's `last_seen_at` timestamp, but it should only update the timestamp if the member hasn't yet been seen in the current day (based on the publication's timezone). Currently there is a race condition present where multiple simultaneous requests from the same member (if e.g. an email link checker is following all links in an email) can cause the `last_seen_at` timestamp to be updated multiple times in the same day for the same member. These additional queries add a significant load on Ghost and its database, which can contribute to the exhaustion of the connection pool and eventually requests may time out. The primary motivation for this change is to avoid that race condition by adding a lock to the member row, checking if `last_seen_at` has already been updated in the current day, and only updating it if it hasn't. Another beneficial side-effect of this change is that it avoids locking the `labels` and `newsletters` tables, which are locked when we update the `last_seen_at` timestamp in the `members` table currently. This should improve Ghost's ability to handle a large influx of requests to redirect endpoints (confirmed with load tests), which tend to happen immediately after a publisher sends an email.
Configuration menu - View commit details
-
Copy full SHA for 5154e8d - Browse repository at this point
Copy the full SHA 5154e8dView commit details -
Added custom headers to be passed to createQuery hook (#20402)
ref MOM-239 - for ActivityPub + Egg - allow custom headers to be passed to createQuery hook in Admin X. - this includes the ability to use it inside `createQueryWithId` hook. - Added testing
Configuration menu - View commit details
-
Copy full SHA for 9e1a70e - Browse repository at this point
Copy the full SHA 9e1a70eView commit details -
Removed ActivityPub backend from Ghost (#20410)
We are no longer going to run any ActivityPub logic inside of Ghost, instead we're moving to a separate service, so all of this code is now redundant.
Configuration menu - View commit details
-
Copy full SHA for 5acdafc - Browse repository at this point
Copy the full SHA 5acdafcView commit details -
Refined newsletter typography (#20406)
DES-459 The font size of subtitles/excerpts in newsletters was similar to the body font size which doesn't reflect the content hierarchy appropriately. Also, the spacing should be adjusted to represent that the title and the subtitle belong together.
Configuration menu - View commit details
-
Copy full SHA for 73a88d0 - Browse repository at this point
Copy the full SHA 73a88d0View commit details -
Fixed "What's new" notification for contributors (#20413)
DES-363 The "What's new" notification took up the whole width of the admin for contributors and it wasn't possible to interact with it.
Configuration menu - View commit details
-
Copy full SHA for 962365e - Browse repository at this point
Copy the full SHA 962365eView commit details -
Added Ghost2Ghost ActivityPub feature that uses mock API (#20411)
ref https://linear.app/tryghost/issue/MOM-108/ap-phase-two Added a WIP version of the Ghost-to-Ghost ActivityPub feature behind the feature flag. Enabling it will add a new item to the main sidebar nav that lets you interact with our ActivityPub mock API in the following ways: - Shows you the list of sites you follow - Shows you the list of sites that follow you - Shows you the articles published by sites you follow - Shows you activities (who followed you or liked your article) - Shows your liked articles Mock API can be easily updated to simulate working with different types of data and interactions.
Configuration menu - View commit details
-
Copy full SHA for cb2150f - Browse repository at this point
Copy the full SHA cb2150fView commit details -
Update Koenig packages (#20415)
[![Mend Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [@tryghost/kg-default-cards](https://togithub.com/TryGhost/Koenig/tree/master#readme) ([source](https://togithub.com/TryGhost/Koenig)) | [`10.0.5` -> `10.0.6`](https://renovatebot.com/diffs/npm/@tryghost%2fkg-default-cards/10.0.5/10.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tryghost%2fkg-default-cards/10.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tryghost%2fkg-default-cards/10.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tryghost%2fkg-default-cards/10.0.5/10.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tryghost%2fkg-default-cards/10.0.5/10.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tryghost/kg-default-nodes](https://togithub.com/TryGhost/Koenig/tree/main#readme) ([source](https://togithub.com/TryGhost/Koenig)) | [`1.1.2` -> `1.1.3`](https://renovatebot.com/diffs/npm/@tryghost%2fkg-default-nodes/1.1.2/1.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tryghost%2fkg-default-nodes/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tryghost%2fkg-default-nodes/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tryghost%2fkg-default-nodes/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tryghost%2fkg-default-nodes/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tryghost/kg-html-to-lexical](https://togithub.com/TryGhost/Koenig/tree/main#readme) ([source](https://togithub.com/TryGhost/Koenig)) | [`1.1.3` -> `1.1.4`](https://renovatebot.com/diffs/npm/@tryghost%2fkg-html-to-lexical/1.1.3/1.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tryghost%2fkg-html-to-lexical/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tryghost%2fkg-html-to-lexical/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tryghost%2fkg-html-to-lexical/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tryghost%2fkg-html-to-lexical/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tryghost/kg-lexical-html-renderer](https://togithub.com/TryGhost/Koenig/tree/main#readme) ([source](https://togithub.com/TryGhost/Koenig)) | [`1.1.3` -> `1.1.4`](https://renovatebot.com/diffs/npm/@tryghost%2fkg-lexical-html-renderer/1.1.3/1.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tryghost%2fkg-lexical-html-renderer/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tryghost%2fkg-lexical-html-renderer/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tryghost%2fkg-lexical-html-renderer/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tryghost%2fkg-lexical-html-renderer/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | | [@tryghost/koenig-lexical](https://togithub.com/TryGhost/Koenig/tree/master#readme) ([source](https://togithub.com/TryGhost/Koenig)) | [`1.2.6` -> `1.2.7`](https://renovatebot.com/diffs/npm/@tryghost%2fkoenig-lexical/1.2.6/1.2.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tryghost%2fkoenig-lexical/1.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tryghost%2fkoenig-lexical/1.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tryghost%2fkoenig-lexical/1.2.6/1.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tryghost%2fkoenig-lexical/1.2.6/1.2.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>TryGhost/Koenig (@​tryghost/kg-default-cards)</summary> ### [`v10.0.6`](https://togithub.com/TryGhost/Koenig/compare/@tryghost/[email protected]...@tryghost/[email protected]) [Compare Source](https://togithub.com/TryGhost/Koenig/compare/@tryghost/[email protected]...@tryghost/[email protected]) </details> --- ### Configuration 📅 **Schedule**: Branch creation - "every weekday" (UTC), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://togithub.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Mend Renovate](https://www.mend.io/free-developer-tools/renovate/). View repository job log [here](https://developer.mend.io/github/TryGhost/Ghost). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy40MTAuMSIsInVwZGF0ZWRJblZlciI6IjM3LjQxMC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Configuration menu - View commit details
-
Copy full SHA for ace8a2f - Browse repository at this point
Copy the full SHA ace8a2fView commit details -
✨ Added "@" shortcut to trigger internal linking search (beta)
no issue Typing "@" in the editor will immediately trigger an internal link search to make it faster to link to one of your articles. After typing "@" continue typing to search, results can be selected using Up/Down arrow keys or the mouse, then pressing Enter or clicking will insert the selected result's title pre-linked. Pressing Escape or moving the cursor out of the search box will cancel the search. - removed labs flag - updated Koenig feature flag for at-linking to use the same flag as our internal linking beta
Configuration menu - View commit details
-
Copy full SHA for a896e1c - Browse repository at this point
Copy the full SHA a896e1cView commit details -
Configuration menu - View commit details
-
Copy full SHA for f43cc93 - Browse repository at this point
Copy the full SHA f43cc93View commit details -
Configuration menu - View commit details
-
Copy full SHA for ae6e7d9 - Browse repository at this point
Copy the full SHA ae6e7d9View commit details -
Configuration menu - View commit details
-
Copy full SHA for a33378a - Browse repository at this point
Copy the full SHA a33378aView commit details -
Added OpenTelemetry instrumentation to Ghost backend (#20144)
This commit adds OpenTelemetry instrumentation to Ghost's backend, which allows us to view traces similar to what we see in Sentry Performance locally. OpenTelemetry is enabled if `NODE_ENV === 'development'` or if it is explicitly enabled via config with `opentelemetry:enabled`. It also adds a [Jaeger](https://www.jaegertracing.io/) container to Ghost's docker-compose file for viewing the traces. There's no setup required (beyond running `yarn docker:reset` to pickup the changes in the docker-compose file the first time — but this will also reset your DB so be careful). This will launch the Jaeger container, and you can view the UI to see the traces at `http://localhost:16686/search`.
Configuration menu - View commit details
-
Copy full SHA for 417c9c4 - Browse repository at this point
Copy the full SHA 417c9c4View commit details -
🐛 Fixed race condition when updating member's
last_seen_at
timestamp (#20389) ref https://linear.app/tryghost/issue/ENG-1240/race-condition-when-updating-members-last-seen-at-timestamp When members click a link in an email, Ghost updates the member's `last_seen_at` timestamp, but it should only update the timestamp if the member hasn't yet been seen in the current day (based on the publication's timezone). Currently there is a race condition present where multiple simultaneous requests from the same member (if e.g. an email link checker is following all links in an email) can cause the `last_seen_at` timestamp to be updated multiple times in the same day for the same member. These additional queries add a significant load on Ghost and its database, which can contribute to the exhaustion of the connection pool and eventually requests may time out. The primary motivation for this change is to avoid that race condition by adding a lock to the member row, checking if `last_seen_at` has already been updated in the current day, and only updating it if it hasn't. Another beneficial side-effect of this change is that it avoids locking the `labels` and `newsletters` tables, which are locked when we update the `last_seen_at` timestamp in the `members` table currently. This should improve Ghost's ability to handle a large influx of requests to redirect endpoints (confirmed with load tests), which tend to happen immediately after a publisher sends an email.
Configuration menu - View commit details
-
Copy full SHA for a8e1a70 - Browse repository at this point
Copy the full SHA a8e1a70View commit details -
Configuration menu - View commit details
-
Copy full SHA for 0c61e0c - Browse repository at this point
Copy the full SHA 0c61e0cView commit details -
Configuration menu - View commit details
-
Copy full SHA for be79f38 - Browse repository at this point
Copy the full SHA be79f38View commit details
Commits on Jun 20, 2024
-
🐛 Fixed dashboard appearing blank if members disabled before completi…
…ng onboarding closes https://linear.app/tryghost/issue/ONC-106 - moved onboarding display outside of the `isMembersEnabled` conditional block
Configuration menu - View commit details
-
Copy full SHA for 643b80a - Browse repository at this point
Copy the full SHA 643b80aView commit details -
Cleaned up onboardingChecklist GA labs flag
no issue - removed labs flag - removed labs flag conditionals - removed code related to old setup/done screen - fixed tests that weren't correctly running against the GA flag code
Configuration menu - View commit details
-
Copy full SHA for 524fe6e - Browse repository at this point
Copy the full SHA 524fe6eView commit details -
🐛 Fixed button URL suggestions not loading for contributors, editors …
…and authors (#20416) ref https://linear.app/tryghost/issue/SLO-127 - problem: when using a card with a button (Button, Email CTA, Header, Product), the Button URL suggestions fail to load for Contributors, Authors, and Editors - cause: Contributors, Authors and Editors don’t have permission to fetch offers, and this causes the entire list of button url suggestions to break - solution: if offers fail to fetch for any reason, the rest of the url suggestions for cards with a button is now still populated (i.e. offers URLs are ignored)
Configuration menu - View commit details
-
Copy full SHA for 1c972c7 - Browse repository at this point
Copy the full SHA 1c972c7View commit details -
✨ Moved internal linking feature out of beta
no issue Full details coming soon to https://ghost.org/changelog - Link toolbar and bookmark cards now let you search your existing posts/pages/tags/authors in addition to manually entering the URL - Typing "@" inside your content lets you quickly search and add a text link - Typing "@" on a blank paragraph provides a quick way to search and add a bookmark
Configuration menu - View commit details
-
Copy full SHA for 414b2ff - Browse repository at this point
Copy the full SHA 414b2ffView commit details -
🐛 Fixed inability to override accent color variable via code injection
closes https://linear.app/tryghost/issue/ONC-72 - moved output of the accent color style element before the site and post/page/tag code injection output
Configuration menu - View commit details
-
Copy full SHA for 5248fbd - Browse repository at this point
Copy the full SHA 5248fbdView commit details -
🐛 Fixed Bluesky URLs creating bookmarks rather than embeds (#20435)
closes #20028 It's fairly common practice for oembed providers to skip some of the "required" fields from the oembed spec such as `height` when it doesn't make sense for the embeddable content, this was the case with Bluesky embeds which return `height: null` - removed validation for `height` being present in the response for it to be recognised as an embed because we don't use it anywhere and the validation is blocking otherwise valid embeds
Configuration menu - View commit details
-
Copy full SHA for 3bc5eb8 - Browse repository at this point
Copy the full SHA 3bc5eb8View commit details -
🐛 Fixed bookmark creation for sites that block some user agents
closes https://linear.app/tryghost/issue/ENG-762 - nytimes.com and other sites return 403 responses when requests do not match typical browser user-agents - our bookmark fetching requests were using `Ghost(https://github.com/TryGhost/Ghost)` meaning bookmark creation failed for these user-agent-blocking sites - switched to using a standard browser user-agent string to avoid such blocks
Configuration menu - View commit details
-
Copy full SHA for 0b4e249 - Browse repository at this point
Copy the full SHA 0b4e249View commit details
Commits on Jun 21, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 4c8a780 - Browse repository at this point
Copy the full SHA 4c8a780View commit details -
Configuration menu - View commit details
-
Copy full SHA for b754513 - Browse repository at this point
Copy the full SHA b754513View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4fd28d4 - Browse repository at this point
Copy the full SHA 4fd28d4View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3600886 - Browse repository at this point
Copy the full SHA 3600886View commit details -
Configuration menu - View commit details
-
Copy full SHA for 478ac04 - Browse repository at this point
Copy the full SHA 478ac04View commit details -
Configuration menu - View commit details
-
Copy full SHA for 63a2157 - Browse repository at this point
Copy the full SHA 63a2157View commit details -
Configuration menu - View commit details
-
Copy full SHA for 4609b43 - Browse repository at this point
Copy the full SHA 4609b43View commit details -
Configuration menu - View commit details
-
Copy full SHA for bec0005 - Browse repository at this point
Copy the full SHA bec0005View commit details -
Lazyloaded OpenTelemetry packages to avoid boot time regression
- we don't want to load the Otel packages unless the instrumentation is enabled, because they dramatically increase the boot time (2x locally!)
Configuration menu - View commit details
-
Copy full SHA for 12cbb22 - Browse repository at this point
Copy the full SHA 12cbb22View commit details -
Configuration menu - View commit details
-
Copy full SHA for ccf2d22 - Browse repository at this point
Copy the full SHA ccf2d22View commit details -
Configuration menu - View commit details
-
Copy full SHA for a837cf0 - Browse repository at this point
Copy the full SHA a837cf0View commit details -
🐛 Fixed 500 errors when viewing posts in development mode
closes https://linear.app/tryghost/issue/ONC-115 - OpenTelemetry was throwing errors when viewing posts - disabled the instrumentation in development mode so it requires explicit config to enable
Configuration menu - View commit details
-
Copy full SHA for 5b2eaec - Browse repository at this point
Copy the full SHA 5b2eaecView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7dcc82b - Browse repository at this point
Copy the full SHA 7dcc82bView commit details
Commits on Jun 23, 2024
-
🐛 Fixed YouTube bookmark creation
#20445 - after switching to a browser-like user-agent, YouTube started responding with a "supported browsers" message rather than the actual video meaning bookmark creation failed - when trying other user-agents it was discovered that nytimes.com (why the user-agent was originally changed) had a problem with the github.com address in the user-agent. By switching to using https://ghost.org instead the request was allowed through fixing both YouTube and NYTimes embeds
Configuration menu - View commit details
-
Copy full SHA for 1593fd8 - Browse repository at this point
Copy the full SHA 1593fd8View commit details -
Configuration menu - View commit details
-
Copy full SHA for bfd7a26 - Browse repository at this point
Copy the full SHA bfd7a26View commit details
Commits on Jun 24, 2024
-
Configuration menu - View commit details
-
Copy full SHA for c1df0c9 - Browse repository at this point
Copy the full SHA c1df0c9View commit details -
Fixed handling objects as API input parameters
fix https://linear.app/tryghost/issue/SLO-155/paramsmap-is-not-a-function-an-unexpected-error-occurred-please-try - in the case you provide an object to the API, this code will throw an error because it can't map over an object - we can just assert that params should be an array and throw an error otherwise
Configuration menu - View commit details
-
Copy full SHA for d501319 - Browse repository at this point
Copy the full SHA d501319View commit details -
Configuration menu - View commit details
-
Copy full SHA for e0057fd - Browse repository at this point
Copy the full SHA e0057fdView commit details -
Added time field to slow get helper logging (#20427)
refs [CFR-36](https://linear.app/tryghost/issue/CFR-36/pull-out-response-time-from-ghost-logs-message-field-for-get-helper) Added time field to slow get helper logging to make it easier to query and filter on this value in elastic without having to parse the message field
Configuration menu - View commit details
-
Copy full SHA for 897481b - Browse repository at this point
Copy the full SHA 897481bView commit details -
Added composite index to posts table for type,status (#20437)
ref https://linear.app/tryghost/issue/CFR-35 - performance improvement intended for the content api/get helpers The posts table is shared by posts and pages and seldom is queried for both. It makes sense to add an index on type, and from the perspective of the content API, also on status as you're almost only ever querying for published posts or published pages.
Configuration menu - View commit details
-
Copy full SHA for 4f6842b - Browse repository at this point
Copy the full SHA 4f6842bView commit details -
Added config to hide labels from the signup card for contributors (#2…
…0429) ref https://linear.app/tryghost/issue/SLO-127 - problem: contributors see an empty list of labels in the Signup card, even if some exist - cause: contributors do not have permission to browse labels - solution: hide the label input entirely for contributors in the Signup card, based on the new `renderLabels` config parameter
Configuration menu - View commit details
-
Copy full SHA for b924027 - Browse repository at this point
Copy the full SHA b924027View commit details -
Prevented pages content api queries from returning mobiledoc or lexic…
…al fields (#20454) ref https://linear.app/tryghost/issue/CFR-43/ ref 9d9a421 We recently stopped `select *` from posts when making Content API requests. This is now being applied to the pages endpoint to help improve performance. These fields were already being stripped out in the output serializer, and they will now no longer be returned from the db at all, reducing the amount of data transferred.
Configuration menu - View commit details
-
Copy full SHA for b10b81b - Browse repository at this point
Copy the full SHA b10b81bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 725ebc3 - Browse repository at this point
Copy the full SHA 725ebc3View commit details -
Configuration menu - View commit details
-
Copy full SHA for b81839f - Browse repository at this point
Copy the full SHA b81839fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 79bc84c - Browse repository at this point
Copy the full SHA 79bc84cView commit details -
Configuration menu - View commit details
-
Copy full SHA for eed162e - Browse repository at this point
Copy the full SHA eed162eView commit details -
Added analytic events to internal linking feature
closes https://linear.app/tryghost/issue/MOM-77 closes https://linear.app/tryghost/issue/MOM-78 - bumps Koenig to support events - adds `siteUrl` pass-through to Koenig to allow differentiation between internal and external URLs
Configuration menu - View commit details
-
Copy full SHA for 21a2a82 - Browse repository at this point
Copy the full SHA 21a2a82View commit details
Commits on Jun 25, 2024
-
Reduced Sentry replays sample rate to 50% (#20458)
fixes https://linear.app/tryghost/issue/SLO-156 - we have reached our 10k replays per month quota in 20 days, by using a 100% error sampling rate - we would need a sampling rate < 0.64% to stay under the quota - from now on, we will be using a 50% error sampling rate to have a bit of margin, and have a rounder number that is easier to reason about (1 out of 2 error sessions are recorded in Sentry)
Configuration menu - View commit details
-
Copy full SHA for 516a2e1 - Browse repository at this point
Copy the full SHA 516a2e1View commit details -
Configuration menu - View commit details
-
Copy full SHA for 68dcec1 - Browse repository at this point
Copy the full SHA 68dcec1View commit details -
🎨 Updated editor toolbar and action button designs (#20405)
REF https://linear.app/tryghost/issue/MOM-238 - Updated feature image action button styles - Aligned button and tooltip styles with the rest of the editor - Updated `koenig-lexical` version to pull in new toolbar design
Configuration menu - View commit details
-
Copy full SHA for 0311331 - Browse repository at this point
Copy the full SHA 0311331View commit details
Commits on Jun 26, 2024
-
Configuration menu - View commit details
-
Copy full SHA for df16fe1 - Browse repository at this point
Copy the full SHA df16fe1View commit details -
Fixed flaky admin test in Publish+Send Flow (#20463)
ref ONC-109 - Attempt to fix flaky Admin test, "Publish flow members enabled can schedule publish+send" - Adjusted the time calculation to the nearest minute to avoid off-by-one minute errors - Added `waitFor` to ensure elements are present and stable before making assertions. - Rounded the new scheduled date and time to the nearest minute to maintain consistency - Included extra `waitFor` and `settled` calls to allow time for UI elements to fully load and reflect changes before assertions.
Configuration menu - View commit details
-
Copy full SHA for 6099a14 - Browse repository at this point
Copy the full SHA 6099a14View commit details -
Fixed TypeError when editor is focussed when not loaded
fix https://linear.app/tryghost/issue/SLO-162/typeerror-thiseditorapi-is-null - if the editor does not load for some reason (network issue), and the editor area is clicked, we throw an error because we don't protect against a null `editorAPI` - this adds that check
Configuration menu - View commit details
-
Copy full SHA for 6c07b1c - Browse repository at this point
Copy the full SHA 6c07b1cView commit details -
Excluded errors caused by browser power-saving settings
fix https://linear.app/tryghost/issue/SLO-164/error-aborterror-the-play-request-was-interrupted-because-video-only - in the case that the browser has power-saving settings enabled, we get an error in Sentry - this error does not affect the user experience, so it should be safe to ignore - this adds an exclusion to Sentry to ignore these errors
Configuration menu - View commit details
-
Copy full SHA for 5f5293c - Browse repository at this point
Copy the full SHA 5f5293cView commit details -
Updated frontend styles for bookmark card (#20468)
REF DES-263 - Added default white background color and sans-serif font to bookmark card
Configuration menu - View commit details
-
Copy full SHA for e34c360 - Browse repository at this point
Copy the full SHA e34c360View commit details -
Added more errors to Sentry exclusion list
fix https://linear.app/tryghost/issue/SLO-165/add-more-errors-to-allowlist - we don't want to capture Sentry errors for these because they are out of our control (like the user's internet connection dropping out)
Configuration menu - View commit details
-
Copy full SHA for dd39576 - Browse repository at this point
Copy the full SHA dd39576View commit details -
Moved error exclusion to correct place
- adding it to ignoreErrors is better than beforeSend because it's built for this purpose and we've just looking at the error message
Configuration menu - View commit details
-
Copy full SHA for 019f417 - Browse repository at this point
Copy the full SHA 019f417View commit details -
Extracted stats aggregation function to util
ref https://linear.app/tryghost/issue/SLO-168/rangeerror-maximum-call-stack-size-exceeded - this extracts a function to a util so we can unit test it - this function is about to be optimized but having unit tests allows us to make the change with confidence
Configuration menu - View commit details
-
Copy full SHA for 43bb83f - Browse repository at this point
Copy the full SHA 43bb83fView commit details -
Optimized stats aggregation code for Admin dashboard
fix https://linear.app/tryghost/issue/SLO-168/rangeerror-maximum-call-stack-size-exceeded - this code takes the API output and reduces it down to collect together stats per date - the current code is recursive, and we've seen errors with the recursion hitting a `RangeError: Maximum call stack size exceeded` error - as well as that, we're doing a lot of array concat'ing and cloning, which burns memory and CPU time - instead, we can just use `.reduce` - the new implementation is much faster than the existing one (1ms vs 85ms) and uses no recursion, so those errors should go away - I've also verified that the output is the same between the two functions
Configuration menu - View commit details
-
Copy full SHA for f250898 - Browse repository at this point
Copy the full SHA f250898View commit details -
Update Koenig packages (#20453)
closes https://linear.app/tryghost/issue/MOM-247 - includes a few fixes for errors we've seen in our reporting
Configuration menu - View commit details
-
Copy full SHA for dfc27b0 - Browse repository at this point
Copy the full SHA dfc27b0View commit details -
Improved performance fetching posts (#20460)
ref https://linear.app/tryghost/issue/ONC-111 - added composite index to posts_tags for post_id,tag_id for faster lookup - added composite index to posts for updated_at; this is commonly used by get helpers on the front end to display data like the latest posts In testing, this provided a very dramatic improvement for simple get helper requests like 'filter="id:-{{post.id}}+tag:sampleTag" limit="3"' which are by default sorted by updated_at desc. I'm not entirely clear why when sorting by published_at we do not need a composite index - so far it doesn't seem to be necessary. This should cover the primary cases for get helpers - the latest posts with a given tag or set of tags.
Configuration menu - View commit details
-
Copy full SHA for 2e593eb - Browse repository at this point
Copy the full SHA 2e593ebView commit details
Commits on Jun 27, 2024
-
Updated ActivityPub API root path (#20471)
ref https://linear.app/tryghost/issue/MOM-201 We will be proxying to `/.ghost/activitypub` rather than just `/activitypub`
Configuration menu - View commit details
-
Copy full SHA for 0cf3d4d - Browse repository at this point
Copy the full SHA 0cf3d4dView commit details -
Adjusted Sentry ignore list to cover more browser play errors
fix https://linear.app/tryghost/issue/SLO-172/error-aborterror-the-play-request-was-interrupted-because-the-media - there are a few error messages we can ignore here, as browsers output slightly different messages for various types of these errors, which don't affect the user
Configuration menu - View commit details
-
Copy full SHA for aa0110c - Browse repository at this point
Copy the full SHA aa0110cView commit details -
Removed request queue enablement flag (#20466)
refs [CFR-26](https://linear.app/tryghost/issue/CFR-26/remove-request-queue-config-flag) Removed request queue enablement flag and updated the logic so that the request queue is enabled when there is explicit configuration for it.
Configuration menu - View commit details
-
Copy full SHA for ecf52d4 - Browse repository at this point
Copy the full SHA ecf52d4View commit details -
- this is no longer used and causes a React warning because we end up passing it to a textarea
Configuration menu - View commit details
-
Copy full SHA for ad77cec - Browse repository at this point
Copy the full SHA ad77cecView commit details -
Added AbortError to list of excluded errors
fix https://linear.app/tryghost/issue/SLO-175/error-aborterror-the-operation-was-aborted - this error can occur when a user's browser navigates away mid-request, which causes the request to be aborted. However, we don't control this, nor do we particularly care, so we can just ignore it
Configuration menu - View commit details
-
Copy full SHA for f9a6610 - Browse repository at this point
Copy the full SHA f9a6610View commit details -
Added option param to skip distinct from count query for members API
ref https://linear.app/tryghost/issue/SLO-173/removed-distinct-from-member-count-query Performance of GET /members API can be improved by dropping the distinct from the total members count query. select count(distinct members.id) as aggregate from `members`; // 275ms select count(*) as aggregate from `members`; // 30ms In this case we know that the result set will always be unique.
Configuration menu - View commit details
-
Copy full SHA for 7bffe5b - Browse repository at this point
Copy the full SHA 7bffe5bView commit details -
Configuration menu - View commit details
-
Copy full SHA for 430a2ca - Browse repository at this point
Copy the full SHA 430a2caView commit details -
Added browser autoplay error to Sentry ignore list
fix https://linear.app/tryghost/issue/SLO-179/notallowederror-the-request-is-not-allowed-by-the-user-agent-or-the - this adds another browser error to the Sentry ignore list, as we don't have control over it, and it doesn't affect the user
Configuration menu - View commit details
-
Copy full SHA for 34b903a - Browse repository at this point
Copy the full SHA 34b903aView commit details -
🐛 Fixed default recipients setting not showing label filters (#20480)
fixes https://linear.app/tryghost/issue/SLO-171 - problem: when the Default Recipient setting is set to "Specific people" and is filtered by a label, we were not able to render the label correctly - cause: during the rendering, we look for labels by `id`, but they're stored by `slug` in the database setting `editor_default_email_recipients_filter` - solution: allow to look by the relevant key, by introducing a programmatic `key` to search for Before the fix: https://github.com/TryGhost/Ghost/assets/6225080/aed5fc31-6409-4986-aafe-557073c7f355 After the fix: https://github.com/TryGhost/Ghost/assets/6225080/f35b2607-5f22-42be-b1bb-92f35ccc9ab7
Configuration menu - View commit details
-
Copy full SHA for 5dfee47 - Browse repository at this point
Copy the full SHA 5dfee47View commit details
Commits on Jun 28, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 0d60c74 - Browse repository at this point
Copy the full SHA 0d60c74View commit details
Commits on Jul 1, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 41d8240 - Browse repository at this point
Copy the full SHA 41d8240View commit details -
Configuration menu - View commit details
-
Copy full SHA for f561f36 - Browse repository at this point
Copy the full SHA f561f36View commit details -
🐛 Fixed staff user modal not showing correct example URL
fix https://linear.app/tryghost/issue/ENG-928/regression-author-url-slug-preview-broken - simple change to append the slug to the end of the example hint - also added test
Configuration menu - View commit details
-
Copy full SHA for fa43066 - Browse repository at this point
Copy the full SHA fa43066View commit details -
Changed "commented" link in member feed to redirect to post
fix https://linear.app/tryghost/issue/ENG-1217/activity-log-link-for-comments-goes-to-wrong-place - the post analytics page does not contain any comments, so it's not the most intuitive location to point the user. Instead, we can send them to the frontend of the post, where they can view comments
Configuration menu - View commit details
-
Copy full SHA for 5f36bef - Browse repository at this point
Copy the full SHA 5f36befView commit details -
Center aligned feature image in email template (#20491)
REF DES-380 - Center aligned feature image in email template - Updated feature image css in editor to better display image overlay and improve caption spacing
Configuration menu - View commit details
-
Copy full SHA for 95a4895 - Browse repository at this point
Copy the full SHA 95a4895View commit details -
Unify "Save" and "Close" buttons in Settings (#20430)
DES-27 There are two patterns used in settings modals for action buttons: 1. [Cancel] and [Save & close] (sometimes it's [Cancel] and [OK], inconsistently) — example: Staff details, Tier details, Navigation, Recommendation 2. [Close] and [Save] — example: Design settings, Portal, Newsletter details etc. This is confusing and leaves people confused and uncertain about what's going to happen in one or the other case.
Configuration menu - View commit details
-
Copy full SHA for 6378d7d - Browse repository at this point
Copy the full SHA 6378d7dView commit details -
Cleaned up unused core dependencies
- analytics-node usage was removed a while back - juice is used by a different package now
Configuration menu - View commit details
-
Copy full SHA for a146709 - Browse repository at this point
Copy the full SHA a146709View commit details -
Updated copy for default recipients hint (#20496)
Fixes https://linear.app/tryghost/issue/DES-179/inappropriate-copy-in-default-recipient-settings The hint for _default recipients_ referenced the wrong setting. It now reflects the right one.
Configuration menu - View commit details
-
Copy full SHA for 09f2ccf - Browse repository at this point
Copy the full SHA 09f2ccfView commit details -
refs 6378d7d - the buttons have been renamed and split apart into separate ones
Configuration menu - View commit details
-
Copy full SHA for 60f37ed - Browse repository at this point
Copy the full SHA 60f37edView commit details -
Switched
faker
to@faker-js/faker
- `faker` was the original dependency but the maintainer ended up deleting the repo, so development continued in `@faker-js/faker` - we're already using that dependency, so we can make a few simple changes and remove the old dependency from our repo
Configuration menu - View commit details
-
Copy full SHA for fcb95ec - Browse repository at this point
Copy the full SHA fcb95ecView commit details -
🔒 Added timestamp to webhook signature hash (#20500)
refs [ENG-1238](https://linear.app/tryghost/issue/ENG-1238/🔒-webhook-signatures-dont-include-timestamp-in-the-signature) Added timestamp to the webhook signature hash to prevent replay attacks. This is a breaking change for webhook consumers as signature verification logic will need to be updated to account for the timestamp in the hash, for example: ```js const crypto = require('crypto'); // Webhook secret from Ghost Admin const WEBHOOK_SECRET = 'FOOBARBAZ' // Sample incoming webhook request object const req = { headers: { 'x-ghost-signature': 'sha256=fc9749d5b3333109bd779f65d4b1b891576bc5c92febea3b1d186a7f946d0745, t=1719842984367' }, body: { tag: { current: { id: '6682b8a8e10cc04306284330', name: 'test', slug: 'test', description: null, feature_image: null, visibility: 'public', og_image: null, og_title: null, og_description: null, twitter_image: null, twitter_title: null, twitter_description: null, meta_title: null, meta_description: null, codeinjection_head: null, codeinjection_foot: null, canonical_url: null, accent_color: null, created_at: '2024-07-01T14:09:44.000Z', updated_at: '2024-07-01T14:09:44.000Z', url: 'http://localhost:2368/404/' }, previous: {} } } }; // Get the request body as a JSON string const reqBodyJSON = JSON.stringify(req.body); // Extract the hash and timestamp from the x-ghost-signature header const {sha256: hash, t: timestamp} = req.headers['x-ghost-signature'] .split(', ') .map((x) => x.split('=')) .reduce((acc, [key, value]) => ({ ...acc, [key]: value }), {}) // Recreate the hash using the secret, request body, and timestamp and compare it to the hash from the header const isValid = crypto.createHmac('sha256', WEBHOOK_SECRET).update(`${reqBodyJSON}${timestamp}`).digest('hex') === hash if (isValid) { console.log('Valid signature!') } ```
Configuration menu - View commit details
-
Copy full SHA for c285b0a - Browse repository at this point
Copy the full SHA c285b0aView commit details -
Updated integration modals buttons (#20502)
DES-27 Updated buttons in integrations from [Cancel] and [Save & close] to [Close] and [Save] to be consistent with the rest of the Settings UI.
Configuration menu - View commit details
-
Copy full SHA for fca8941 - Browse repository at this point
Copy the full SHA fca8941View commit details -
🎨 Added 'Changed email address' event to Member Activity (#20493)
fixes https://linear.app/tryghost/issue/ENG-1256 - when a member changes their email address, surface it in Member Activity
Configuration menu - View commit details
-
Copy full SHA for 7f963e9 - Browse repository at this point
Copy the full SHA 7f963e9View commit details -
Improved performance in Admin Posts view (#20503)
ref https://linear.app/tryghost/issue/ONC-111 - changed posts fetching/display behavior to be client-side instead of server-side - admin will issue (potentially multiple) requests based on the desired status(es) - updated admin acceptance test for missing coverage I've pulled the sort from the database query as this triple sort performs very poorly at scale (taking ~4s+ past ~20k posts sometimes). Instead, we now split up the fetch to grab only one status at a time and use the front-end logic to handle displaying scheduled, then drafts, then published. This should result in a much more responsive view. We will separately change the default sort on the Admin API as that was the ultimate intent for this change.
Configuration menu - View commit details
-
Copy full SHA for 3d9d552 - Browse repository at this point
Copy the full SHA 3d9d552View commit details -
🐛 Fixed unwanted extra blank paragraphs when copy/pasting from Google…
… Docs (#20505) closes https://linear.app/tryghost/issue/ENG-1255 - updated Koenig packages including: - addition of `/preview` for public preview card - fix for HTML import from Google Docs - fix for embed thumbnails being cut off in email - fix for wide image card width on medium screens - multiple fixes for unhandled (but non user-visible) errors causing noise in console and error logging
Configuration menu - View commit details
-
Copy full SHA for 2fd9116 - Browse repository at this point
Copy the full SHA 2fd9116View commit details
Commits on Jul 2, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 90033ef - Browse repository at this point
Copy the full SHA 90033efView commit details -
🐛 Fixed unexpected leave confirmation after Cmd+S on member profile
fix https://linear.app/tryghost/issue/ENG-779/%F0%9F%90%9B-cmds-does-not-save-member-profile-changes - previously, pressing Cmd+S on a member profile would save the profile, but the dirty attributes weren't being cleaned, so the application would trigger the leave confirmation when exiting - now, we've fixed the code to keep a dynamic scratch member, - long term, we should get rid of the scratch model, but this still allows us to fix the bug for now
Configuration menu - View commit details
-
Copy full SHA for 186c6f3 - Browse repository at this point
Copy the full SHA 186c6f3View commit details -
Configuration menu - View commit details
-
Copy full SHA for 9522ef8 - Browse repository at this point
Copy the full SHA 9522ef8View commit details -
Configuration menu - View commit details
-
Copy full SHA for e6b1f8a - Browse repository at this point
Copy the full SHA e6b1f8aView commit details -
Configuration menu - View commit details
-
Copy full SHA for 62aad6f - Browse repository at this point
Copy the full SHA 62aad6fView commit details -
Configuration menu - View commit details
-
Copy full SHA for 04fdd2e - Browse repository at this point
Copy the full SHA 04fdd2eView commit details -
Optimized aggregating member attribution statistics
- the existing code creates a new moment instance, takes away some days and then formats the result - this is run for every entry of the member attribution stats, which means dashboards for big sites with a lot of attribution data become slow - this value doesn't change across each iteration of the filter, so we can just extract it out and calculate it once - this commit removes this code block from the flamegraph completely
Configuration menu - View commit details
-
Copy full SHA for 23075b7 - Browse repository at this point
Copy the full SHA 23075b7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 18719e2 - Browse repository at this point
Copy the full SHA 18719e2View commit details -
🐛 Fixed incorrect member subscription details in Admin (#20476)
fixes https://linear.app/tryghost/issue/ENG-642 - When a subscription is in the `canceled` state the corresponding Member has no access to the Ghost site. The only time a Member will continue to have access if their subscription is due to cancel at the period end is if it is still in an active state, which is one of `active` `trialing` `unpaid` or `past_due` - When a subscription is canceled immediately (i.e. before the end of the current billing period), we now render "Ended" without a date, because we don't store the cancellation date in the subscription object. We previously used "Ended {current_period_end}" which would sometimes lead to dates in the future - Bonus: refactored code and added unit tests --------- Co-authored-by: Sag <[email protected]>
Configuration menu - View commit details
-
Copy full SHA for a4107b8 - Browse repository at this point
Copy the full SHA a4107b8View commit details -
Configuration menu - View commit details
-
Copy full SHA for 92a84f7 - Browse repository at this point
Copy the full SHA 92a84f7View commit details -
Configuration menu - View commit details
-
Copy full SHA for 3618632 - Browse repository at this point
Copy the full SHA 3618632View commit details -
Revert "Improved performance in Admin Posts view (#20503)" (#20514)
ref https://linear.app/tryghost/issue/ONC-111 This reverts commit 3d9d552. This commit broke bulk post actions which we do not have tests for, so we will need to address that as well as add tests.
Configuration menu - View commit details
-
Copy full SHA for fe31ee3 - Browse repository at this point
Copy the full SHA fe31ee3View commit details -
Configuration menu - View commit details
-
Copy full SHA for a046ee3 - Browse repository at this point
Copy the full SHA a046ee3View commit details -
Added custom redirects ReDoS validation (#20515)
refs [ENG-709](https://linear.app/tryghost/issue/ENG-709/%F0%9F%90%9B-bad-redirects-causing-container-tear-down) Added validation to prevent RegEx's susceptible to ReDoS from being used with custom redirects. Also moved error details out of `context` and into `errorDetails` to be consistent with error logging elsewhere as well as fix issue in admin-x where blank screen would be shown when an error occurred during redirects upload (due to logic not accounting for `context` being an object)
Configuration menu - View commit details
-
Copy full SHA for b36c235 - Browse repository at this point
Copy the full SHA b36c235View commit details -
🐛 Fixed url decoding issue - URLs sent in emails containing a % can n…
…ow be updated(#20518) fixes https://linear.app/tryghost/issue/ENG-447/🐛-urls-sent-in-emails-containing-a-percent-can-not-be-updated URLs were decoded before making a search query to the db. This is the reason the `%2F` character gets converted to `/`. This decoding is not required.
Configuration menu - View commit details
-
Copy full SHA for bec6474 - Browse repository at this point
Copy the full SHA bec6474View commit details -
Configuration menu - View commit details
-
Copy full SHA for 31ea0ba - Browse repository at this point
Copy the full SHA 31ea0baView commit details -
Configuration menu - View commit details
-
Copy full SHA for 7fde766 - Browse repository at this point
Copy the full SHA 7fde766View commit details -
Configuration menu - View commit details
-
Copy full SHA for 8d33c9d - Browse repository at this point
Copy the full SHA 8d33c9dView commit details -
Revert "🐛 Fixed unexpected leave confirmation after Cmd+S on member p…
…rofile" This reverts commit 186c6f3.
Configuration menu - View commit details
-
Copy full SHA for 895e371 - Browse repository at this point
Copy the full SHA 895e371View commit details
Commits on Jul 3, 2024
-
Configuration menu - View commit details
-
Copy full SHA for 6c6d3b6 - Browse repository at this point
Copy the full SHA 6c6d3b6View commit details -
Configuration menu - View commit details
-
Copy full SHA for be77080 - Browse repository at this point
Copy the full SHA be77080View commit details -
🎨 Added 'Payment failed' subscription cancellation reason (#20527)
ref https://linear.app/tryghost/issue/ENG-1254 - we currently only store a cancellation reason when a member cancels manually in Portal - we now also store "Payment failed" when the cancellation is automatic due to several payment failures
Configuration menu - View commit details
-
Copy full SHA for 6e0b009 - Browse repository at this point
Copy the full SHA 6e0b009View commit details