forked from TryGhost/Ghost
-
Notifications
You must be signed in to change notification settings - Fork 0
Sync with upstream Ghost v6.6.1 #23
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
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
no issue - dead code from a very old file-upload component rendering workaround that was needed with an early version of theme management UI
ref [GVA-383](https://linear.app/ghost/issue/GVA-383/adding-open-rate-to-transactional-emails-sent-by-ghost) Used incorrect setting in initial commit
ref https://linear.app/ghost/issue/BER-2913/port-sidebar - As part of creating the React app shell we needed to rebuild the app sidebar. This PR contains a basic implementation that allows navigation within the app and is structured properly. It lacks functions so that the PR is easier to reason about. **Missing features** - Search button is non-functional - New post button is non-functional - Post list views are limited to the built-in static ones (Drafts, Scheduled, Public) - Dark mode toggle is completely missing - Toggle sidebar function is missing - User menu is very basic and lacks all existing links - Member count is static (hardcoded to 1,000) - Ghost(Pro) "Upgrade" button is missing - Details like hover states, animations etc. are missing - Avatar profile image and initials are hardcoded --------- Co-authored-by: Jonatan Svennberg <jonatan.svennberg@gmail.com>
…st#25270) closes https://linear.app/ghost/issue/NY-690 - We retired the dashboard route in favor of analytics, but it was missed in a few places - This PR updates it in the design modal that shows up during site setup, as well as for users with permissions below admin - Now when those modals are closed they'll be redirected to /analytics instead of /dashboard (in the case of low-permission users, it actually falls back to something other than /analytics. For contributors, for example, it falls back to /posts. But that's elsewhere in the code) - Not user visible since /dashboard was redirecting to /analytics anyway, but more correct - in DesignModal, also switches from `window.location.hash` to `updateRoute` - Considered creating a constant for routes, but that seems like a larger lift than this ticket was meant for
This PR contains the following updates: | Package | Update | Change | |---|---|---| | ghost/traffic-analytics | patch | `1.0.19` -> `1.0.20` | --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - Only on Sunday and Saturday ( * * * * 0,6 ), Between 12:00 AM and 12:59 PM, only on Monday ( * 0-12 * * 1 ) in timezone Etc/UTC. 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Never, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/TryGhost/Ghost). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNTYuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE1Ni4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119--> Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
no issue In Ghost 6.0 the old Ember-powered dashboard was replaced with a React version but the dead code wasn't cleaned up. - updated `dashboard` route to redirect to the `stats-x` route without creating an unnecessary history entry - removed dashboard template and all of the unused components - removed dashboard-mocks service as that was only possible to enable via the old dashboard - removed usage of dashboard-mocks service from the dashboard-stats service
no_ref - Previously, `PRESERVE_ENV=true` would skip removing containers after each individual test, causing port allocation errors when running tests again. - Now it only preserves the final state after all tests complete, which is the intended debugging behavior.
ref https://linear.app/ghost/issue/BER-2933/fix-button-regressions - During to React port work we introduced a few regressions to buttons: `icon` buttons and icons sizing became off and borders got lost on outline buttons.
…#25266) * Renamed methods and variables for clarity * Reorganized code structure * Reduced redundant comments to make the test infrastructure easier to read and understand.
Ref https://linear.app/ghost/issue/BER-2916/remove-router-basepaths Removing the base path and updating all links and urls within the app to include the base path directly makes links and URLs work the same regardless of if the app is mounted in Ember or as a sub-routes in the new React admin shell.
TryGhost#25277) ref https://linear.app/ghost/issue/NY-712/improve-performance-of-verificationtrigger-queries For sites that are already verified for sending email, the `VerificationTrigger` is still running the `getSignupEvents` queries for every `MemberCreatedEvent`. These queries are unnecessary and expensive for larger sites, so this change removes the event handler entirely for sites that are already verified.
ref https://linear.app/ghost/issue/BER-2913/port-sidebar - General improvements on the React sidebars to match design standards and add missing functions. - Added missing menu items in user menu - Refined icons and colors
…d codebase, applied import sort linter (TryGhost#25284) - Moved i18n test to new e2e suite - Removed legacy page objects that are no longer needed - Simplified settings page by decoupling it in sections - Applied import sort linter on new e2e - This is the part of the cleanup effort to remove old E2E test infrastructure and use new one for the e2e tests. As we go through it, other parts of the suite are polished too.
…ryGhost#25289) ref https://linear.app/ghost/issue/BER-2937/improve-notification-grouping-by-adding-date-criteria - Grouped same-type notifications only when they occur within a short timeframe - Prevented unrelated notifications from being merged hours apart - Made grouped notifications feel timely and relevant
…host#25291) no_ref - Moved managers (Ghost, MySQL, Portal, Tinybird) into service-managers/subfolder for better code organization - It aligns better with Docker Compose terminology, and separates cleaner environment manager, compose from service managers
…ryGhost#25292) ref https://linear.app/ghost/issue/BER-2929 - we want to make these state syncing methods available to our in-development React admin shell which means we won't be able to pass them through as component props - added new `state-bridge` service and moved the methods there to make them easier to expose later on - this is a straight code shuffle, no functional changes have been made
ref https://linear.app/ghost/issue/NY-721/ - updated `emailAnalytics` config and defaults to have more tunability around alerts/logs - added new metric for tracking email analytics throughput (behind config) - added new console warning for delays in the open job (behind config) - updated logging to be more concise and specific This is laying the groundwork for better observability in our logs for monitoring the email analytics job. The new metric allows us to monitor the events/s throughput for sites in question - namely, for very large sites where they need to ingest 10ks of events, possibly within a few minutes. Previously we couldn't do this without a lot of manual math and searching in Elastic. NOTE: The lagging warning for email opens is a flawed measure. We currently only update the job timestamp _if we process events_ so if there was a legitimate period where there were no Mailgun events, this would be a false positive. As such, this is going to issue a warning for sites that have 1) low activity or 2) experience any kind of outage in the site/Mailgun. As such, it may be worth removing and skipping this, though we can try it out.
closes https://linear.app/ghost/issue/NY-707 - adds a labs flag to be used for features related to welcome emails
…yGhost#25295) ref https://linear.app/ghost/issue/BER-2937/improve-notification-grouping-by-adding-date-criteria - Extended grouping timeframe from 6h to 24h as it felt a bit too short for grouping
Ref https://linear.app/ghost/issue/BER-2916/remove-router-basepaths Moving the base path to a wrapping route and updating all links and urls within the app to use either relative paths or a base-path aware navigation hook makes links and URLs work the same regardless of if the app is mounted by itself within Ember or as a sub-routes in the new React admin shell. This also makes it easier for us to eventually update the base path from /activitypub to /network.
ref https://linear.app/ghost/issue/BER-2913/port-sidebar - Some of the functions in the current (Ember) sidebar had some discoverability problems (e.g. Help being too hidden in the user menu), while others were way too in your face (e.g. dark mode switch). - The user menu was lacking design details such as menu item icons and proper sizing/spacing. - Header and footer components were built inside the main component which made code readability harder. Now they have their own components. - `kbd` component for keyboard shortcuts were missing from Shade
ref https://linear.app/ghost/issue/BER-2943/topical-feed - Updated Discover to show "Top" plus selectable topic feeds - Kept global feed as "Top" and added topic tabs for exploration - Updated endpoints from `/feed/global` to `/feed/discover/top` and `/feed/discover/[topic]`
no issue - added `#ember-modal-wormhole` element outside of the `#ember-app` element so it doesn't get hidden when on React routes - updated Ember application template to render modals into the new `#ember-modal-wormhole` when it exists - if it doesn't exist, render into the app's `rootElement` to match previous behaviour and not break tests by rendering outside of the test root
ref https://linear.app/ghost/issue/BER-2943/discovery-feeds-by-topic - as we don't have data source for this topic, removing it from the list for now
…5301) Fixes https://linear.app/ghost/issue/BER-2944/support-local-development-with-a-custom-domain This adds a Vite plugin that dynamically resolves the Ghost site URL from the backend API, enabling local development to work when Ghost is configured with a custom domain. Previously, proxy was hard coded to localhost:2368.
ref https://linear.app/ghost/issue/BER-2913/port-sidebar - We didn't have an indication of the appearance mode in the current implementation. This PR adds a switch component to Shade and uses it in the new user menu for the dark mode button.
ref https://linear.app/ghost/issue/BER-2946 The recent basepath changes broke Header's page detection logic. This PR adds a `useCurrentPage` hook that uses `useMatches` to extract the current page segment from the route hierarchy, handling both `/activitypub` and empty basepaths. Similarly, the sidebar active states were broken because links used relative paths that didn't match the value of `location.pathname`. This was addressed by changing the `to` prop to absolute paths and updating `SidebarMenuLink` to prepend the correct base path.
ref https://linear.app/ghost/issue/BER-2946 - changelog v1.0.22..v1.0.23: [91c9e3b](TryGhost@ea02d2a)
Per discussion over in TryGhost#25282, I'm reformatting the concat unit tests to use 'shouldCompileToExpected'. But 'shouldCompileToExpected' doesn't take globals as an argument, and I need them for some tests. So... I added shouldCompileToExpectedWithGlobals, in handlebars.js. I opted to make it a separate helper, but it could have been an update to shouldCompileToExpected to give it an optional 4th argument. May revisit later.
ref https://linear.app/ghost/issue/BER-2913/port-sidebar - The Network icon was using a default Globe icon instead of the Fediverse/SocialWeb icon - The chevron icon was not animating when opening the posts view submenu
…Ghost#25310) ref https://linear.app/ghost/issue/BER-2929/ - added Ember instance initializer that makes our `state-bridge` service instance available on `window.EmberBridge.state` - updated the react shell's framework setup to use `window.EmberBridge.state.{onUpdate,onInvalidate,onDelete}` in the same way as apps mounted inside Ember via `AdminXComponent`
ref https://linear.app/ghost/issue/BER-2929/ - the sync methods that were moved from `AdminXComponent` to `state-bridge` were never individually tested, this adds some unit tests to verify the methods do what we expect and give us a place to add further side-effect tests as we need them
…5260) ref TryGhost#23361 --------- Co-authored-by: Cathy Sarisky <42299862+cathysarisky@users.noreply.github.com>
ref TryGhost#23361 --------- Co-authored-by: Cathy Sarisky <42299862+cathysarisky@users.noreply.github.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
no issue - `tokenProvider.verifyOTC` has an internal dependency on the `otcRef` being correct meaning we'd never reach the `INVALID_OTC_REF` condition - nothing changes for user-visible behaviour but this re-order does mean that logging can be more explicit about the type of error that has occurred ----- Co-authored-by: Steve Larson <9larsons@gmail.com>
ref https://linear.app/ghost/issue/BER-2977/ - during a refactor of `SingleUseTokenProvider` the time-since-first-usage check was extracted to a method but in doing so the pre-condition check for the token having been used was lost meaning all magic links had an effective lifetime of `validityAfterFirstUsage` (10 minutes) - restored pre-condition check and added missing test that would have caught this during the refactor
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Syncing fork to upstream release
v6.6.1.