0
Fork 0
mirror of https://github.com/TryGhost/Ghost.git synced 2025-02-17 23:44:39 -05:00
Commit graph

40394 commits

Author SHA1 Message Date
Paul Davis
76ddb9611f
Add WordPress to migration tools (#22152)
no issue

This PR adds WordPress to the migration options, related tests, and
adjusts the close button to more closely match that of the Settings
screen under it.
2025-02-13 11:54:09 +00:00
Paul Davis
4ef04e4b6a
Add more terminations to external media inliner (#22147)
Builds on top of 9dd48f9d83

This adds more terminations, which means more URLs are matched. Also
added tests.
2025-02-13 11:39:06 +00:00
Sanne de Vries
aba1f24e53
Added email styles for CTA card (#22167)
Ref https://linear.app/ghost/issue/PLG-336/create-cta-card-email-design
2025-02-13 20:06:54 +09:00
Ghost CI
4ab99029db Merged v5.109.5 into main 2025-02-13 09:40:05 +00:00
Ghost CI
e0b4fce192 v5.109.5 2025-02-13 09:40:03 +00:00
Michael Barrett
fa5bd1bbe7
🐛 Fixed invalid routes.yaml filter preventing Ghost from booting (#22174)
refs
[ONC-776](https://linear.app/ghost/issue/ONC-776/invalid-routesyaml-nql-filter-can-prevent-ghost-from-booting)

If the `routes.yaml` has a definition containing a malformed filter,
i.e:

```yaml
collections:
  /foo/:
    permalink: /foo/
    template: foo
    filter: tags:-foo,-bar
```

(`tags:-foo,-bar` invalid because there should be a property directly
after the ',`)

then it is possible for the URL service to fail to start due to an
unhandled error being thrown when the filter is parsed during URL
generation.

This commit handles the error and returns `false` when the filter cannot
be parsed, allowing the URL service to still start
2025-02-13 09:22:16 +00:00
Michael Barrett
381c91bf1b
🐛 Fixed invalid routes.yaml filter preventing Ghost from booting (#22174)
refs
[ONC-776](https://linear.app/ghost/issue/ONC-776/invalid-routesyaml-nql-filter-can-prevent-ghost-from-booting)

If the `routes.yaml` has a definition containing a malformed filter,
i.e:

```yaml
collections:
  /foo/:
    permalink: /foo/
    template: foo
    filter: tags:-foo,-bar
```

(`tags:-foo,-bar` invalid because there should be a property directly
after the ',`)

then it is possible for the URL service to fail to start due to an
unhandled error being thrown when the filter is parsed during URL
generation.

This commit handles the error and returns `false` when the filter cannot
be parsed, allowing the URL service to still start
2025-02-13 09:14:46 +00:00
Daniel Lockyer
931ae3332e Improved performance of logging to stdout
refs 66cfc15628
refs be5ddf2587
ref https://linear.app/ghost/issue/ENG-2005/improve-stdout-logging-performance

- most of the technical context is in the 2 commits but this commit just
  bumps the packages so we can take advantage of the lovely improvements
2025-02-12 16:21:02 +01:00
Kevin Ansfield
da182544dc Removed Admin util methods and icons related to portal settings
no issue

- portal settings now lives in Admin-X-Settings so this code and icons were unused
2025-02-12 08:37:49 +00:00
Sodbileg Gansukh
784baa1fba
Fixed skeleton loader on ActivityPub inbox and feed screens (#22171)
no issues
2025-02-12 08:01:39 +00:00
Sanne de Vries
01a7a71e2c
Removed unused Portal code from Admin (#22170)
No ref
- Portal settings have moved to the Admin-X-Settings app but some of the
old Admin code was left hanging around
2025-02-12 07:14:44 +00:00
Daniel Lockyer
eceaab73f4 Refactored CI workflows for publishing packages
ref https://linear.app/ghost/issue/ENG-2003/drying-up-ciyml-changes-into-reusable-workflow

- majority of the changes here are just DRYing up the implementation so
  we don't have the same code split across many different jobs
- the change switches to utilizing a matrix because it's the cleanest
  way to get multiple jobs working
2025-02-12 07:32:06 +01:00
Sam Lord
a1e1a2fb60 Added better error handling for hCapthca
no issue

The errors returned by captcha validation shouldn't be visible to the
user, but should at least be accessible for the site owner.
2025-02-11 15:43:42 +00:00
Sam Lord
fc5363f07e Fixed Captcha when on non-enterprise plans
ref BAE-396
2025-02-11 15:43:42 +00:00
Michael Barrett
ec327badf9
Used new feed and inbox endpoints for feed and inbox view
refs https://linear.app/ghost/issue/AP-704

We also update the mutations to make sure that the query cache is correctly updated.

Co-authored-by: Fabien O'Carroll <fabien@allou.is>
2025-02-11 21:36:47 +07:00
renovate[bot]
4f8678f526 Update dependency html-validate to v8.29.0 2025-02-11 14:45:43 +01:00
Sanne de Vries
7c0b814c9e
Added frontend styles for CTA card (#22163)
Ref https://linear.app/ghost/issue/PLG-337/create-cta-card-web-design
2025-02-11 13:12:05 +00:00
renovate[bot]
8f28205042
Update dependency @hcaptcha/react-hcaptcha to v1.11.2 (#22161)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
|
[@hcaptcha/react-hcaptcha](https://redirect.github.com/hCaptcha/react-hcaptcha)
| [`1.11.1` ->
`1.11.2`](https://renovatebot.com/diffs/npm/@hcaptcha%2freact-hcaptcha/1.11.1/1.11.2)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@hcaptcha%2freact-hcaptcha/1.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@hcaptcha%2freact-hcaptcha/1.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@hcaptcha%2freact-hcaptcha/1.11.1/1.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@hcaptcha%2freact-hcaptcha/1.11.1/1.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>hCaptcha/react-hcaptcha
(@&#8203;hcaptcha/react-hcaptcha)</summary>

###
[`v1.11.2`](https://redirect.github.com/hCaptcha/react-hcaptcha/releases/tag/1.11.2)

[Compare
Source](https://redirect.github.com/hCaptcha/react-hcaptcha/compare/1.11.1...1.11.2)

#### What's Changed

- fix: Fix one captcha per container issue by
[@&#8203;zoryana94](https://redirect.github.com/zoryana94) in
[https://github.com/hCaptcha/react-hcaptcha/pull/251](https://redirect.github.com/hCaptcha/react-hcaptcha/pull/251)
- chore: Update Sentry docs by
[@&#8203;zoryana94](https://redirect.github.com/zoryana94) in
[https://github.com/hCaptcha/react-hcaptcha/pull/249](https://redirect.github.com/hCaptcha/react-hcaptcha/pull/249)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "* * * * 1-5" (UTC), Automerge - At
any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjM5LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-11 12:24:40 +00:00
Sodbileg Gansukh
d253d1ce32
Bumped ActivityPub version (#22159) 2025-02-11 09:27:39 +00:00
Sodbileg Gansukh
c36ab82325
Improved loading state of main screens in ActivityPub (#22158)
ref AP-654

- Improved the skeleton component of shadcn
- Used the skeleton component in the main five screens
- It minimizes the layout shift
2025-02-11 16:00:01 +08:00
Ghost CI
b2c08fc44a Merged v5.109.4 into main 2025-02-11 01:54:31 +00:00
Ghost CI
8aa5c2cab8 v5.109.4 2025-02-11 01:54:29 +00:00
Chris Raible
31e41054f3 Added metric logging for the JobQueueManager (#22157)
refs
https://linear.app/ghost/issue/ENG-1987/monitor-email-analytics-via-ghost-logging-in-some-form

- Since we decided not to fully roll out prometheus for metrics
collection, we need an alternative method to collect metrics from the
`JobQueueManager`
- This commit removes the prometheus-based metrics from the
`JobQueueManager` in favor of `@tryghost/metrics`
2025-02-10 17:35:34 -08:00
Chris Raible
734ad0c7a1 Reduced JobQueueManager polling logs (#22154)
ref
https://linear.app/ghost/issue/ENG-1989/disable-jobqueuemanager-logging-in-zuul

- The `JobQueueManager` generates a lot of logs that are useful for debugging, but they were all at log level `info`.
- This commit demotes these logs to the `debug` log level, which should
reduce the noise while making them easy to
re-enable if needed.
2025-02-10 17:35:28 -08:00
Chris Raible
2d019aef0d
Added metric logging for the JobQueueManager (#22157)
refs
https://linear.app/ghost/issue/ENG-1987/monitor-email-analytics-via-ghost-logging-in-some-form

- Since we decided not to fully roll out prometheus for metrics
collection, we need an alternative method to collect metrics from the
`JobQueueManager`
- This commit removes the prometheus-based metrics from the
`JobQueueManager` in favor of `@tryghost/metrics`
2025-02-10 16:17:09 -08:00
renovate[bot]
c870524072
Update dependency compression to v1.8.0 (#22156)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [compression](https://redirect.github.com/expressjs/compression) |
[`1.7.5` ->
`1.8.0`](https://renovatebot.com/diffs/npm/compression/1.7.5/1.8.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/compression/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/compression/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/compression/1.7.5/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/compression/1.7.5/1.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>expressjs/compression (compression)</summary>

###
[`v1.8.0`](https://redirect.github.com/expressjs/compression/blob/HEAD/HISTORY.md#180--2025-02-10)

[Compare
Source](https://redirect.github.com/expressjs/compression/compare/1.7.5...1.8.0)

\==================

-   Use `res.headersSent` when available
-   Replace `_implicitHeader` with `writeHead` property
-   add brotli support for versions of node that support it
- Add the enforceEncoding option for requests without `Accept-Encoding`
header

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "* * * * 1-5" (UTC), Automerge - At
any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjM5LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-02-10 22:25:23 +00:00
Chris Raible
9e0523fc7e
Reduced JobQueueManager polling logs (#22154)
ref
https://linear.app/ghost/issue/ENG-1989/disable-jobqueuemanager-logging-in-zuul

- The `JobQueueManager` generates a lot of logs that are useful for debugging, but they were all at log level `info`.
- This commit demotes these logs to the `debug` log level, which should
reduce the noise while making them easy to
re-enable if needed.
2025-02-10 22:12:03 +00:00
Peter Zimon
cf2ceb1aa3
Remove on load animation in ActivityPub (#22151)
ref https://linear.app/ghost/issue/AP-700/explore-ui-development-in-ap

Fixes a small style regression related to the [ActivityPub Shade
integration](2170ee8da3),
that adds an unnecessary animation on load
2025-02-10 16:30:27 +00:00
Àlex Rodríguez Bacardit
92205a8ec6
🌐 Updated Catalan translations (#21826)
no ref
2025-02-10 16:09:16 +00:00
Peter Zimon
2170ee8da3
ActivityPub Shade integration (#22150)
ref https://linear.app/ghost/issue/AP-700/explore-ui-development-in-ap

This PR is about integrating ActivityPub with the new design system, so that we can start using Shade in a real world application. In this early version the TailwindCSS config is taken from Shade but the custom styles of Shade and the AdminX Design System are merged. This is needed so that we can keep using the old components without breaking functionality.
2025-02-10 17:05:15 +01:00
Djordje Vlaisavljevic
1b789a476a Fixed certain images on Threads not showing
close https://linear.app/ghost/issue/AP-640/image-attachments-on-notes-from-threads-are-not-rendered

- Covered the case when `attachment.type` is `Image` and there is no `mediaType` set
- Made code easier to read.
2025-02-10 16:07:05 +01:00
Djordje Vlaisavljevic
8ea4a9c9e6 Fixed "Notifications" tab not having active state
close https://linear.app/ghost/issue/AP-738/fix-notifications-tab-not-having-active-state
2025-02-10 16:07:05 +01:00
Fabien O'Carroll
68b136ea66 Released @tryghost/sodo-search v1.5.3
Changelog for v1.5.2 -> 1.5.3:
  - Updated i18n translations
2025-02-10 11:53:47 +00:00
Fabien O'Carroll
c4d60193f4
Updated release process for Search and Comments UI (#22146)
ref https://github.com/TryGhost/Ghost/pull/22127

The update to the Portal release process has now been tested on main, it
would be good to get Search & Comments updated to the same process so
that it's easier to reason about releasing all of them.
2025-02-10 18:48:52 +07:00
Princi Vershwal
596dfd35f6
Added reposts on user's profile in Ghost Admin (#22143)
Refs https://linear.app/ghost/issue/AP-735

- When a user boosts/reposts something it should show up in their profile section in ghost in both feed and profile modal.
2025-02-10 10:08:05 +00:00
Fabien O'Carroll
c7b631b41f Released @tryghost/portal v2.49.2
Changelog for v2.49.1 -> 2.49.2:
  - Updated i18n translations
2025-02-10 07:46:26 +00:00
Fabien O'Carroll
5543cc51eb Reformatted the default config file
Since the release script for portal writes to this file, I wanted to just match
the JSON.stringify output so we don't get large diffs.
2025-02-10 07:38:57 +00:00
Fabien O'Carroll
1bdc11eee3 Added new release script for Portal
This will be used for search and comments too, but I want to start with just
one app to get things going. Key things the script does:

 - Enforces that we're not on main & have clean working dir
 - Creates a well structured commit message w/ basic changelog
 - Updates the package.json and default config

The script explicitly does not push anything to GitHub or to NPM, giving us
more control about the contents of the commit
2025-02-10 07:38:57 +00:00
Fabien O'Carroll
f25a6aef64 Added workflow for releasing @tryghost/portal
This uses the same approach that we have for admin-x-activitypub. When a
version bump for the @tryghost/portal package is commited to the `main` branch,
we will build the package and then publish it to npm, as well as purging the
jsdelivr cache of the last version.
2025-02-10 07:38:57 +00:00
Àlex Rodríguez Bacardit
f534b6458c
🌐 Updated Catalan translations (#21829)
no ref

Corrected typos and style. Added missing translations. Added coherent
style (tu vs vostè) across files.
2025-02-07 13:40:09 -06:00
Steve Larson
e2904dc0b5
Updated job queue readme (#22142)
ref https://linear.app/ghost/issue/ENG-1993/jobqueue-jobqueuemanager
2025-02-07 13:30:00 -06:00
Yovko Lambrev
0da164ba34
🌐 Updated Bulgarian translations (#22097)
no ref

Updates for bg/portal.json & bg/search.json
2025-02-07 13:25:52 -06:00
Michael Barrett
12305b5297
Cleaned up queries in admin-x-activitypub (#22139)
no refs

Clean up includes:

- Removing unused queries (`inbox`, `following`, `followers`)
- Renaming of query hooks to be consistent with other hooks
- Fixed `useProfile*ForUser` fns as these where using the incorrect
handle to setup the API client
- Refactored query keys to make mutations easier to reason about
- Fixed `follow` / `unfollow` mutations not working as expected
2025-02-07 19:15:13 +00:00
Steve Larson
5681e9442e
Added readme for email analytics service (#22140)
ref https://linear.app/ghost/issue/ENG-1991/email-analytics

Added readme documentation for the email analytics service.
2025-02-07 15:49:18 +00:00
Ghost CI
f367231230 v5.109.3 2025-02-07 15:07:50 +00:00
Chris Raible
bc37f87074
Updated @playwright/test to 1.50.1 (#22138)
no issue

- Updated @playwright/test to 1.50.1 in all packages that use playwright
2025-02-06 20:14:55 -08:00
Chris Raible
eb64fb3830
Fixed leftover state in invites browser tests (#22136)
no issue

- The invite tests were signing out as the owner user and then signing
in as a user with different privileges. At the end of the test, it was
left in this state, so the next file run by that playwright worker was
still logged in as a user with lower than owner privileges so e.g. the
settings couldn't be accessed.
- This change signs out from the newly created user and signs back in as
the owner user after each of the invites tests.
2025-02-06 17:46:11 -08:00
Chris Raible
659863a848
Adjusted docker package.json scripts for common use-cases (#22135)
no issue

- This commit includes a number of changes to the package.json scripts
for running Ghost in docker locally for development.
- In keeping with the pattern of `yarn docker:*` commands running actual
`docker compose` commands, I renamed `yarn docker:setup` to `yarn
setup:docker` since this is a script that runs locally, rather than in
docker
- Modified the `yarn docker <command>` script to remove `yarn`, so you
can now use this to run any arbitrary command in a disposable container
- Added `yarn docker:build` as a shortcut to build the container
- Added `yarn docker:shell` as a shortcut for launching a bash shell in
a disposable container
- Added `yarn docker:restart` command to stop and restart all background
services in detached mode
- Removed `yarn compose` script for the devcontainer setup, to avoid
confusion
2025-02-06 13:34:02 -08:00
Chris Raible
ebc75f79bf
Removed unused environment variable from compose.yml (#22134)
no issue

- I had plans to use this environment variable for the docker compose
setup, but haven't implemented anything with it yet — removing it for
now since it's not doing anything at the moment.
2025-02-06 13:05:40 -08:00
Djordje Vlaisavljevic
637db69ddd
Improved repost UI (#22129)
ref https://linear.app/ghost/issue/AP-706/add-repost-count-so-that-the-ui-can-display-the-count

- When you repost (or derepost) a post, the stats counter will now nicely animate into a larger (or smaller) number, with only the relevant digits animating and the others staying in place. We’re using a reusable hook for this.
- Updated stat counter numbers to also change the color when the post is liked or reposted by the currently logged in user
- Fixed like and post state not persisting when opening a post/note in the drawer without refreshing
- Bumped the package

---------

Co-authored-by: Michael Barrett <mike@ghost.org>
2025-02-06 20:35:47 +00:00