medmunds
6ef1349b65
GitHub doesn't like Sphinx directives in rst
2016-03-09 19:30:34 -08:00
medmunds
1e80c3ec37
Invert unsupported-features setting
...
Change from UNSUPPORTED_FEATURE_ERRORS
(default True) to IGNORE_UNSUPPORTED_FEATURES
(default False). Parallels IGNORE_RECIPIENT_STATUS.
2016-03-09 18:47:42 -08:00
medmunds
20c6350140
Update (almost) all the docs
2016-03-09 18:37:11 -08:00
medmunds
8f0f2d3d83
Use RTD Sphinx theme for local doc builds
2016-03-07 19:21:28 -08:00
medmunds
921dd5d0d6
Fork from Djrill and rename to "anymail"
2016-02-27 11:16:04 -08:00
medmunds
f95d5d66dc
Avoid weak ref to local signal receiver in webhook tests.
...
Webhook tests define a local signal receiver function,
so connect it using the `weak=False` option to set
a good example.
(This isn't technically needed in the tests: the test receivers
are only connected while their definitions are still in scope,
so they couldn't possibly be garbage collected. But it doesn't
hurt, and it's good practice in case the test code gets copied.)
Also update the webhook docs to have a direct link to
Django's "listening to signals" info.
2016-02-04 12:14:01 -08:00
medmunds
79eaac42c4
Handle Mandrill sync event webhooks
...
Fixes #108
2016-02-03 19:29:26 -08:00
medmunds
5d4440ef5d
Open v2.1 development
...
[ci skip]
2015-12-02 20:06:32 -08:00
medmunds
ed77987552
Docs: couple more release notes
2015-12-02 18:39:08 -08:00
medmunds
7706a5d39f
Docs: 2.0 upgrade guide, release notes
2015-12-02 18:25:26 -08:00
medmunds
d496555813
Docs: remove pre-2.0 versionadded/versionchanged
...
(Cut the old-version clutter)
2015-12-02 17:06:15 -08:00
medmunds
265c7460e0
Support Django 1.9 release
2015-12-02 16:59:34 -08:00
medmunds
02641b0959
Improve send_at docs
...
* Try to clear up timezones
* Note requirement for funded account
2015-12-02 16:52:42 -08:00
medmunds
d82d425aa8
Clean up mandrill_reponse docs
...
Document mandrill_response as an attribute
(not just a generic topic).
2015-12-02 16:18:57 -08:00
medmunds
9971c1780f
Document MANDRILL_API_URL
2015-12-02 16:10:29 -08:00
medmunds
aa46fadb48
Clean up global MANDRILL_SETTINGS
...
* Clean up Djrill backend __init__
* Fold MANDRILL_SUBACCOUNT into
global_settings logic
* Add some missing override tests
* Update docs
2015-12-02 15:58:23 -08:00
medmunds
fe1e2d1ae5
Refactor backend
...
* Break apart massive _send call
* Try to facilitate subclassing
* Centralize fail_silently handling during _send
* Include original EmailMessage as exception attr
2015-12-02 12:41:26 -08:00
medmunds
b8cdc6ce82
Cleanup Djrill exceptions
...
* Add common base DjrillException
* Simplify backend by moving logic
to describe errors into base DjrillException
* Add NotSerializableForMandrillError
for JSON serialization errors
2015-12-02 10:52:20 -08:00
medmunds
d14b87c910
Raise error for invalid/rejected recipients
...
Raise new MandrillRecipientsRefused exception
when Mandrill returns 'reject' or 'invalid' status
for *all* recipients of a message.
(Similar to Django's SMTP email backend raising
SMTPRecipientsRefused.)
Add setting MANDRILL_IGNORE_RECIPIENT_STATUS
to override the new exception.
Trap JSON parsing errors in Mandrill API response,
and raise MandrillAPIError for them. (Helps with #93.)
Closes #80 .
Closes #81 .
2015-12-01 13:26:21 -08:00
medmunds
3a6e0ebb30
Clean up session sharing
...
* Test cases
* Fix premature session.close when caller
is managing email backend connection
* Ensure session closed correct in exceptions
* Changelog
(Also fixes bug where JSON serialization errors
didn't respect fail_silently.)
2015-11-30 16:50:58 -08:00
medmunds
942a6df8c3
Drop unintended json date encoding
2015-11-29 14:42:12 -08:00
medmunds
699216ba00
Drop legacy DjrillBackendHTTPError exception
2015-11-29 12:55:16 -08:00
medmunds
209f9573ff
Drop legacy DjrillMessage class
2015-11-29 12:37:00 -08:00
William Hector
7179734a08
Allow global_merge_vars to be merged in with the per message dict, with keys in the latter taking precedent.
...
Update the docs accordingly.
2015-07-14 05:57:12 +01:00
William Hector
883b23362c
Allow Mandrill specific options to be set globally in the settings file.
...
This is useful to set options such as tracking_domain etc per instance when using subaccounts with Mandrill.
2015-07-12 01:19:59 +01:00
medmunds
da260de1a0
Drop support for Django 1.3, Python 2.6 and 3.2.
...
* Shrink the Travis test matrix
* Remove a lot of backported test code
* Update requirements in setup.py
* Update docs
Closes #79
2015-05-14 11:39:57 -07:00
medmunds
99ac099081
Remove DjrillAdminSite
...
Closes #78
2015-05-14 11:00:52 -07:00
medmunds
a658e12595
2.0 development branch
2015-05-14 10:10:42 -07:00
medmunds
1d086f85f4
Close out 1.4 dev
...
Master is now 1.5.0-dev (to avoid accidents),
but the 1.4 branch is expected to be the end
of the 1.x line.
2.0 development will begin on a separate branch soon.
2015-05-13 20:18:11 -07:00
medmunds
ef0051dd36
Docs: point to Django stable docs
...
Avoid pointing Djrill users toward Django dev docs.
[ci skip]
2015-05-13 18:56:15 -07:00
medmunds
c83aee0bf2
Update the docs copyright year
...
(Didn't realize we had a docs copyright year.)
2015-05-13 18:47:18 -07:00
medmunds
46dea8d595
Fix missing Sphinx labels
...
(So we don't send would-be Djrill contributors
to Django's "Contributors Guide".)
2015-05-13 18:46:07 -07:00
medmunds
7c46bc7d96
Add troubleshooting docs
2015-05-13 18:03:28 -07:00
medmunds
651292fd24
Note Django DEFAULT_FROM_EMAIL in docs.
...
Ref https://github.com/brack3t/Djrill/issues/69#issuecomment-74062569
2015-05-13 17:58:55 -07:00
medmunds
6d94e94736
Live API tests
...
Addresses #41 .
(Still need to add a Mandrill test key to the Travis config.)
2015-05-13 16:27:38 -07:00
medmunds
00ddd2f4f6
Improve MandrillAPIError.__str__
...
* Include formatted response from Mandrill API (if any)
* Clean up recipient address(es)
2015-05-13 15:43:54 -07:00
medmunds
6798b72b8b
Fewer backticks and bullets in upcoming-changes docs
...
(was hard to read with RTD's formatting)
2015-05-12 19:00:55 -07:00
medmunds
fd75c4b24d
Deprecate DjrillBackendHTTPError
2015-05-12 18:27:29 -07:00
medmunds
8d274e7b16
Deprecate DjrillMessage
2015-05-12 16:14:58 -07:00
medmunds
80895316f1
Deprecate DjrillAdminSite
2015-05-12 15:56:30 -07:00
medmunds
cc56b96efa
Improve and document JSON serialization for Mandrill API
...
* Add some context to exceptions on unserializable
values (addresses #89 ).
* Document need to format merge data
(into something JSON-serializable).
* Add RemovedInDjrill2 DeprecationWarning.
* Deprecate blanket date/datetime serialization.
2015-05-12 13:29:52 -07:00
medmunds
adfc9f4a47
Django 1.8 release
2015-05-11 17:07:02 -07:00
medmunds
d91e2c2f91
Adopt semver
...
Djrill's been practicing semver since 1.0; make it official now.
2015-05-11 17:00:32 -07:00
medmunds
d23a1bf4a1
Bump tests to Django 1.8b1
2015-02-25 16:31:35 -08:00
medmunds
bbc2e06091
Support Django 1.8 reply_to param.
2015-02-25 16:30:02 -08:00
medmunds
8ab36d2cd0
Django 1.8 alpha 1 support
...
* Test on Python 2.7, 3.4, pypy.
* Call super.setUpClass in DjrillAdminTests.
https://docs.djangoproject.com/en/dev/releases/1.8/#overriding-setupclass-teardownclass-in-test-cases
Also clear up some new PendingDeprecationWarnings, where
the changes can easily remain compatible back to Django 1.3:
* Remove deprecated django.conf.urls.patterns.
(And match Django recommendations in our docs.)
https://docs.djangoproject.com/en/dev/releases/1.8/#django-conf-urls-patterns
* Remove deprecated SimpleTestCase.urls.
(We've already back-ported @override_settings
for testing older Django versions.)
https://docs.djangoproject.com/en/dev/releases/1.8/#django-test-simpletestcase-urls
2015-01-16 16:17:31 -08:00
medmunds
00a0a1fde6
Open v1.4 dev.
...
[ci skip]
2015-01-16 14:06:57 -08:00
medmunds
d714d35920
Release notes for 1.3.
...
[ci skip]
2015-01-16 13:56:46 -08:00
medmunds
76e29c0845
Support merge_language option.
...
Closes #84 .
2015-01-16 13:48:39 -08:00
medmunds
11961b57e5
Use real Response object in DjrillBackendMockAPITestCase tests.
...
(Improves testing accuracy around API response encoding.)
* Add `six` as test dependency (six.BytesIO, six.b)
* Change MockResponse content to bytes (because HTTP responses
are bytes, not strings)
2015-01-16 13:18:17 -08:00