Ghost/test/unit
Kevin Ansfield 76c1b60a4d
Added schema+migration for email_{batches,recipients} tables (#12192)
no issue

We want to store a list of recipients for each bulk email so that we have a consistent set of data that background processing/sending jobs can work from without worrying about moving large data sets around or member data changing mid-send.

- `email_batches` table acts as a join table with status for email<->email_recipient
  - stores a provider-specific ID that we get back when submitting a batch for sending to the bulk email provider
  - `status` allows for batch-specific status updates and picking up where we left off when submitting batches if needed
  - explicitly tying a list of email recipients to a batch allows for partial retries
- `email_recipients` table acts as a join table for email<->member
  - `member_id` does not have a foreign key constraint because members can be deleted but does have an index so that we can efficiently query which emails a member has received
  - stores static copies of the member info present at the time of sending an email for consistency in background jobs and auditing/historical data
2020-09-14 12:21:58 +01:00
..
adapters Moved core/server/lib/url-utils to core/shared/url-utils (#11856) 2020-05-28 11:57:02 +01:00
api Added Location header to API's POST request responses (#12186) 2020-09-14 22:33:37 +12:00
apps 🐛 Fixed private blogging exposing 404 and robots (#11922) 2020-06-16 11:42:32 +01:00
data Added schema+migration for email_{batches,recipients} tables (#12192) 2020-09-14 12:21:58 +01:00
helpers Updated tests that were stubbing old ghost_head/ghost_foot settings keys 2020-07-01 17:58:12 +01:00
lib Extracted promise libs and history into @tryghost/promise 2020-08-11 18:44:21 +01:00
models Skipped separate count query in .findPage() for limit="all" requests 2020-08-27 01:09:07 +01:00
server 🐛 Readded missing server.start event 2020-08-11 10:09:24 +01:00
services Extracted core/server/lib/security to @tryghost/security package 2020-08-11 14:06:50 +01:00
shared/config Updated tests locations and added linting of core/shared (#11872) 2020-06-01 22:06:50 +01:00
web Replaced constants file with @tryghost/constants 2020-08-11 12:51:16 +01:00