Ghost/ghost/core/test/unit/server/services
Simon Backx 94e85dc09e
Reduced webhook calls when updating last_seen_at for email opens (#16008)
refs https://ghost.slack.com/archives/C02G9E68C/p1670960248186789

This reverts a change that was made here:

f4fdb4fa6c (r93071549),
but it still moved the original code to a new location in the
LastSeenAtUpdater

It includes a new E2E test to make sure timezones are supported
correctly.

- By not using Bookshelf, we no longer fire webhook calls
- By not using the member repository, we don't fetch and update the
member model and the labels relation in a forUpdate transaction, which
caused deadlock issues on the labels/members_labels tables which were
hard to resolve. Until now I was unable to find the other conflicting
transaction that caused this deadlock. Moving to raw knex (instead of
Bookshelf) and only updating the last_updated_at column should remove
the deadlock issue.

This removed the test for the email service wrapper, since it started
failing for an unknown reason and the test didn't make much sense (was
added earlier only to bump test threshold).
2022-12-14 17:50:42 +01:00
..
adapter-manager Added JSDoc to adapter options resolver 2022-09-06 17:51:57 +08:00
api-version-compatibility Increased Vary granularity for versioned requests 2022-09-28 14:48:43 +08:00
auth Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
custom-redirects Renamed redirects to custom-redirects 2022-09-14 13:24:17 -04:00
frontend-data-service Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
link-tracking Added endpoint for fixing newsletter links 2022-10-20 17:50:02 +05:30
mail Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
mega Added lexical post support to email renderer (#15767) 2022-11-04 11:19:40 +00:00
members Added member API for removing email from suppression list (#15867) 2022-11-23 14:41:00 +04:00
newsletters Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
notifications Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
permissions Removed defunct applyPublicRules code 2022-09-09 17:14:15 +01:00
posts Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
route-settings Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
settings Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
settings-helpers 🐛 Fixed sending emails from email domain that includes www subdomain (#15348) 2022-09-02 16:57:59 +02:00
staff Extracted sleep method to e2e framework module 2022-12-05 17:26:29 +07:00
stripe Removed apiVersions from test urlUtils 2022-09-09 13:32:30 +01:00
themes Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
url Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
users Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
webhooks Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
labs.test.js Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
limits.test.js Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
nft-oembed.test.js 🐛 Fixed OpenSea NFT OEmbeds (#15372) 2022-09-06 11:29:35 -04:00
slack.test.js Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00
xmlrpc.test.js Converted Ghost repo into a monorepo 2022-07-20 16:41:05 +02:00