Fixes #4018 This rearranges notify-mailer so we can give it CSV input and interpolate fields from that CSV. It removes the old-style JSON input so we don't have to support two different input styles. When multiple accounts have the same email address, their recipient data is consolidated under that address so they only receive a single email. The CSV data can be interpolated using the `range` operator in Golang templates. Because we're now operating on the resolved email addresses instead of purely on accounts, this PR also changes the checkpointing mode. Instead of a numeric start and end, it takes a pair of strings, and only sends to email addresses between those two strings. |
||
|---|---|---|
| .. | ||
| test_msg_body.txt | ||
| test_msg_recipients.csv | ||