Commit Graph

39421 Commits

Author SHA1 Message Date
renovate[bot]
d9a18a77a9 Update dependency webpack to v5.95.0 2024-09-30 08:52:06 +00:00
Daniel Lockyer
607dee288b Cleaned up branch triggers
- we don't use `arch` anymore, and `2.x` and `3.x` are ollldddddd, so
  we're not going to run CI on them
2024-09-30 09:38:28 +02:00
Daniel Lockyer
d86f94db2d Fixed looking up users with special username characters
- users like `renovate[bot]` have brackets in the username
- this breaks the command and it exits with `exit code 3.`
- to fix this, we can encode the username before passing it in
2024-09-30 09:38:28 +02:00
renovate[bot]
b4f2e03ae2 Update dependency nx to v19.8.2 2024-09-30 09:10:20 +02:00
Ghost CI
de82b6be61 v5.95.0 2024-09-27 15:05:25 +00:00
Ghost CI
b572c565b2 🎨 Updated Casper to v5.7.5 2024-09-27 15:05:25 +00:00
Hannah Wolfe
7ebb208549 Fixed browser/device missing data in tinybird
ref https://linear.app/tryghost/issue/ANAL-96/data-discrepancy-between-charts-when-filtering

- The top browser and device endpoints were pulling from the sources MV, that is filtered to not have same-source traffic
2024-09-27 14:30:42 +01:00
Hannah Wolfe
606fcbabe7 Added a set of tests for our tinybird setup
- TODO: make these run in CI
- Right now you run them by running `yarn tb` and then `./script/branch_and_test.sh`
- These are snapshot tests that check we get the desired result

Co-authored-by: alejandromav <hi@alejandromav.com>
2024-09-27 14:30:42 +01:00
Hannah Wolfe
e3268c8c59 Renamed hits to pageviews in tinybird
closes https://linear.app/tryghost/issue/ANAL-111/rename-hits-to-pageviews-inside-of-tinybird

- We currently have two concepts: visits (unique visits) and pageviews (also called hits)
- We want to standardise on this terminology, so inside tinybird, we're going to call hit "pageviews" to make it super clear what's happening
2024-09-27 14:30:42 +01:00
Cathy Sarisky
43b57aa53c
🐛🌐 Added missing locales to i18n.js (#21144)
- Apparently several PRs for new languages were merged without the
corresponding additions to i18n.js, which has caused new strings not to
be generated for those languages, and missing translations in the
frontend, even though we had them in the .json file.

- I've added language codes for all languages that had at least some
strings translated in i18n/locales, and have run yarn translate to
create missing strings and files for these languages.

New language codes for:
* Arabic
* Swiss German
* Greek
* Estonian
* Macedonian
* Serbian (Cyrillic)
* Thai
2024-09-27 14:07:51 +01:00
Chris Raible
a9ace11d9d
Removed OpenTelemetry (#21145)
no issue

- This commit removes all OpenTelemetry related code and dependencies
from Ghost.
- The initial implementation was done as a POC but it raised some
performance concerns with boot time, so we never actually enabled it
widely.
- We can revisit this in the future, but in the meantime it's just
adding unnecessary dependencies and bloating the codebase.
2024-09-26 16:18:49 -07:00
Chris Raible
046b06fe72
Refactored local revisions to avoid QuotaExceededErrors (#21128)
ref https://ghost-foundation.sentry.io/issues/5908152800/

- In the current state, we are maintaining an 'index' key for all
revisions in localStorage. This gives us quick and easy access to all
the revisions in localStorage, but it requires additional "bookkeeping"
to update the index each time we add/remove a key.
- In some obscure edge cases, this results in the `remove()` method
throwing a `QuotaExceededError` (since removing a revision also requires
updating the index with `localStorage.setItem()`). If the `remove()`
call fails, we are sort of stuck — the only way to reduce our storage
usage is to remove items, but if the `remove()` method throws errors, we
can't do that.
- This change removes the whole index concept, and instead loops over
all the keys in localStorage, filtering by the prefix to find all our
revisions. This makes the `keys()` method slightly more complex, as it
has to filter out keys in localStorage that aren't related to revisions,
but it simplifies saving and removing revisions.
- Critically, this also means that `remove()` should never throw a
`QuotaExceededError`, since it no longer needs to call
`localStorage.setItem()` — it now simply calls
`localStorage.removeItem()` for the revision, which should never fail.
2024-09-26 12:50:31 -07:00
Daniel Lockyer
75afbb4f2a Added missing if-statement to CI workflow
- without this, we're constantly purging the cache, which exceeds the
  rate limit afforded to us from jsdelivr
2024-09-26 19:51:07 +02:00
Kevin Ansfield
26f429be78 Shipped comments-ui@0.18.3 2024-09-26 17:56:28 +01:00
Sanne de Vries
5a251b5cac
Fixed comment form visual issues (#21138)
REF PLG-225
- When editing a comment, the form was not aligned correctly.
- The form has more height by default now even when not focused, to
increase engagement.
2024-09-26 18:35:01 +02:00
Fabien O'Carroll
146e702d93 Updated @tryghost/admin-x-activitypub to 0.1.0
This will test the release when we merge to main
2024-09-26 23:24:26 +07:00
Fabien O'Carroll
5f637af3cf Added workflow for deploying @tryghost/admin-x-activitypub
ref https://linear.app/tryghost/issue/AP-438

This will build and release the Admin X activitypub app when we bumb the
package.json version and push to `main`
2024-09-26 23:24:26 +07:00
Fabien O'Carroll
9bb1696329 Loaded AdminX activitypub app from jsdelivr in production
ref https://linear.app/tryghost/issue/AP-438

We want to keep development and test mode using the local build so we can have
feedback on our local changes.
2024-09-26 23:24:26 +07:00
Fabien O'Carroll
9884e2bb2c Allowed to load AdminX apps from custom url
ref https://linear.app/tryghost/issue/AP-438

This is going to allow us to load the activitypub package from the jsdelivr
cdn, which means we can release new versions without releasing the admin.
2024-09-26 23:24:26 +07:00
Fabien O'Carroll
d9a2b0e3a6 Removed private flag
This is necessary so that we can publish to npm
2024-09-26 23:24:26 +07:00
Hannah Wolfe
908ff731d6
Updated tinybird unsafe deploy script (#21135)
ref https://github.com/TryGhost/Ghost/pull/21092

- This updates the unsafe deploy script to be safer and more useful
2024-09-26 15:54:08 +01:00
Kevin Ansfield
21ecd9c2af Fixed tests failing with native stack traces due to blob.slice() calls
no issue

Either a node or macOS update resulted in our broken image upload tests causing native stack traces:

```
  #  /Users/kevin/.nvm/versions/node/v20.16.0/bin/node[8841]: static void node::Blob::ToSlice(const FunctionCallbackInfo<v8::Value> &) at ../src/node_blob.cc:248
  #  Assertion failed: args[1]->IsUint32()
```

- updated our `blob.slice()` calls to ensure the second argument is always an integer rather than possibly a float
2024-09-26 15:40:46 +01:00
Hannah Wolfe
68be1f95b1
Updated stats page to show visits instead of hits (#21133)
closes:
https://linear.app/tryghost/issue/ANAL-102/visits-on-tables-is-actually-displaying-pageviews

- The expectation is that the UI shows unique visits, not pageviews for
the breakdown charts
2024-09-26 14:50:30 +01:00
Daniel Lockyer
f19c01a11f Added workflow changes to support PR deploys to staging
ref https://linear.app/tryghost/issue/DEV-31/staging-deploys-of-feature-branchesprs

- we want the ability to ship a PR to staging, so we can test and QA
  without merging to `main`
- most of the infrastructure is already in place for this, so it's
  mostly a case of wiring it all up
- this commit will send a slightly different payload to the build
  process, to indicate it's coming from a PR
- I've also added a check that the user is a member of the org, so we
  don't get random builds from non-members
- to trigger this, we should be able to add the `deploy-to-staging`
  label and it Just Works :TM:
2024-09-26 15:38:35 +02:00
renovate[bot]
bec6371e5c Update tiptap monorepo to v2.7.4 2024-09-26 13:01:56 +00:00
WindTheWhisperer
5579f03fd5
🌐 Added Estonian translations (#21129)
This pull request adds Estonian (et) language translations to Ghost.

Translated files:
- comments.json
- ghost.json
- portal.json
- search.json
- signup-form.json

Changes:
- Created new 'et' folder in the locales directory
- Translated all strings from English to Estonian in the above files

I'm a native Estonian speaker, but if there are any questions about
specific translations, please let me know.

Thank you for considering this contribution to make Ghost more
accessible to Estonian-speaking users!

---------

Co-authored-by: Ronald Langeveld <hi@ronaldlangeveld.com>
2024-09-26 07:47:16 +00:00
Sérgio Spagnuolo
4bc353bab8
🌐 Added new Brazilian Portuguese new i18n strings (#21101)
Add pt-br (Brazilian Portuguese) translations for Portal and native
search strings.

---------

Co-authored-by: Ronald Langeveld <hi@ronaldlangeveld.com>
2024-09-26 05:35:00 +00:00
Mertcan GÖKGÖZ
4c5d1940db
🌐 Updated Turkish translation (#21110)
Türkçe(Turkish) language support has been updated.

---------

Co-authored-by: Ronald Langeveld <hi@ronaldlangeveld.com>
2024-09-26 14:23:28 +09:00
Stanislav Traykov
7454bb1bdc
🌐 Added Bulgarian translation for search (#21102)
Add initial translation for Bulgarian for the search interface.
2024-09-26 13:48:07 +09:00
Yovko Lambrev
076300a5eb
🌐 Bulgarian translation updates (Sep 2024) (#21062)
A needed update of the Bulgarian version. Fixing some errors. Made some
improvements. And some new strings were translated.

---------

Co-authored-by: Ronald Langeveld <hi@ronaldlangeveld.com>
2024-09-26 02:29:40 +00:00
Cathy Sarisky
c23dc8a973
🌐 German translations (#21050)
ref: https://forum.ghost.org/t/help-translate-ghost-beta/37461/113

thanks to thewolfofallstreetz on the Ghost forum
2024-09-26 11:25:12 +09:00
Chris Mitchell
706c7eda3c
🌐 Updated Gaelic portal / search translations (#21093)
Updated the Gaelic translation with the new portal and search strings.
2024-09-26 11:24:36 +09:00
Alexandre "Lekler" Rodrigues
186f87eecc
🌐 Update pt-BR translation of search.json (#21100)
Following commit #21055, the following updates were made:

Added translations for terms related to authors, posts, search, and
tags.
2024-09-26 11:23:59 +09:00
renovate[bot]
7b274497d2 Update tiptap monorepo to v2.7.3 2024-09-25 19:46:00 +00:00
Kevin Ansfield
4389140853 Shipped comments-ui@0.18.2 2024-09-25 16:19:58 +01:00
Sanne de Vries
68c3d99f15
Fixed various visual details in Comments UI (#21121)
REF PLG-225
- Updated placeholder text color to work in dark mode
- Fixed spacing for reply input field
- Changed comment input field styles
- Changed left border width from 3px to 1px
- Updated "Expertise" modal typography
- Updated CTA typography
2024-09-25 17:11:53 +02:00
Kevin Ansfield
175d76c831 Shipped comments-ui@0.18.1 2024-09-25 16:02:57 +01:00
renovate[bot]
3f0e4b4584 Update dependency mysql2 to v3.11.3 [SECURITY] 2024-09-25 15:02:44 +00:00
Kevin Ansfield
2bca5efcec Added reply button to comment replies
closes https://linear.app/tryghost/issue/PLG-221

- added `toggleParentReplyMode()` to comment component's props so clicking Reply on a reply opens the reply form on the top-level parent to emphasise we only support 1-level deep replies and avoid unexpected nesting
- adjusted conditional so "Reply" button is shown in `<CommentMenu>` when a parent is present (behind labs flag)
- updated `useLabs()` to always return an object so we don't need to add nullish checks everywhere

# Conflicts:
#	apps/comments-ui/test/e2e/actions.test.ts
2024-09-25 15:49:56 +01:00
renovate[bot]
7f6517fbe8 Update dependency mysql2 to v3.11.2 [SECURITY] 2024-09-25 14:38:19 +00:00
Kevin Ansfield
a996cde39d Fixed flaky member expertise test
no issue

- a change in browser version/dependency versions/playwright/something else has made this test flaky because the reply editor form loses focus when the expertise field gains focus (this doesn't happen in the browser) meaning when we get to our assertions the elements we care about are missing
- forcing focus back puts us into a known state for our assertions
2024-09-25 15:25:34 +01:00
renovate[bot]
1616acc20d Update dependency mysql2 to v3.11.1 [SECURITY] 2024-09-25 12:50:53 +00:00
Daniel Lockyer
9bcca5122a Increased parallelisation of Nx processes
refs https://nx.dev/recipes/running-tasks/run-tasks-in-parallel

- CI has 4 cores and our local machines are also very powerful, so we
  can just set the default parallelisation to higher than is currently
  set to make things run quicker
2024-09-25 14:36:55 +02:00
renovate[bot]
b6e5c0fe68 Update tiptap monorepo to v2.7.2 2024-09-25 12:13:09 +00:00
Djordje Vlaisavljevic
cad5e27de9 Fixed Article feature image not showing up in the feed
ref https://linear.app/tryghost/issue/AP-433/article-feature-image-not-showing-in-the-feed
2024-09-25 10:27:24 +01:00
Daniel Lockyer
eebd198027
Fixed requiring passing tests for canary builds
- this disappeared due to a regression in a previous commit
2024-09-25 10:29:19 +02:00
Daniel Lockyer
5a72c5ad91 Updated Nx to v19
refs https://github.com/nrwl/nx/releases/tag/19.8.0

- this commit updates Nx to v19
- we need to add some extra commands to the dev script to stop and
  restart the Nx daemon, so it's ready and running before we execute a
  bunch of Nx commands concurrently
- this also updates nx.json to the format needed for the latest version
2024-09-25 10:16:08 +02:00
Ronald Langeveld
052ef6971f
🐛 Fixed infinite loops in setFeatureImageCaption for deleted posts (#21081)
ref ONC-364

- Adds a condition to check whether the record is deleted or if deleting
is in progress before firing the `setFeatureImageCaption`.
- Adds tests. Managed to reproduce the issue using tests.
2024-09-25 08:02:38 +00:00
Daniel Lockyer
0187d6b6a2 Fixed versioning and npm visibility for internal apps
- these apps don't need to be published because they're internal and get
  compiled into Admin
- therefore, we can reset their versions back to 0.0.0 and remove the
  publishConfig block so we don't accidentally publish them
2024-09-25 09:09:06 +02:00
renovate[bot]
662d10077f Update dependency html-validate to v8.24.0 2024-09-25 08:23:04 +02:00