anymail / django-anymail

Django email backends and webhooks for Amazon SES, Brevo (Sendinblue), MailerSend, Mailgun, Mailjet, Postmark, Postal, Resend, SendGrid, SparkPost, Unisender Go and more
https://anymail.dev
BSD 3-Clause "New" or "Revised" License
1.65k stars 125 forks source link

Brevo: Rename SendinBlue to Brevo #364

Closed medmunds closed 5 months ago

medmunds commented 5 months ago

I've been rethinking my arguments in #321 about leaving "SendinBlue" in the code while calling it "Brevo" everywhere else. I now feel this creates more confusion (particularly with new users) than it avoids.

This PR renames "sendinblue" to "brevo" throughout the code, but maintains compatibility versions on the old names and URLs (with deprecation warnings).

The compatibility versions use the old esp_name, which means that settings names and other related features are also unchanged. So if you have EMAIL_BACKEND = "…⁠sendinblue.EmailBackend", Anymail will continue to look for SENDINBLUE_API_KEY in the settings. But when you update to EMAIL_BACKEND = "…⁠brevo.EmailBackend", you'll need to switch to BREVO_API_KEY at the same time.

I don't have any particular schedule for removing the deprecated compatibility versions. (They don't really add maintenance overhead.)

medmunds commented 5 months ago

[Split into two commits, which makes it possible to see the actual diffs in the renamed files before adding the compatibility versions on the original filenames: backends/sendinblue.py → backends/brevo.py; webhooks/sendinblue.py → webhooks/brevo.py]

medmunds commented 5 months ago

(Released in Anymail 10.3)