zulip/zerver
Alex Vandiver 4d98b0552e missedmessage_emails: Ensure forward progress.
maybe_send_batched_emails handles batches of emails from different
users at once; as it processes each user's batch, it enqueues messages
onto the `email_senders` queue.  If `handle_missedmessage_emails`
raises an exception when processing a single user's email, no events
are marked as handled -- including those that were already handled and
enqueued onto `email_senders`.  This results in an increasing number
of users being sent repeated emails about the same missed messages.

Catch and log any exceptions when handling an individual user's
events.  This guarantees forward progress, and that notifications are
sent at-most-once, not at-least-once.
2021-08-20 07:21:39 -07:00
..
data_import python: Remove locally dead code. 2021-08-19 01:51:37 -07:00
integration_fixtures/nagios tests: Add a test for fixtures for non-webhook integrations. 2021-04-28 08:16:51 -07:00
lib marketing_emails: Ask for user's consent at sign-up. 2021-08-20 06:43:26 -07:00
management management: Fix typing for management scripts. 2021-08-20 05:54:18 -07:00
migrations realm: Add datetime field for scheduled deletion of demo orgs. 2021-08-19 03:09:36 -07:00
openapi api_docs: Mention special value of realm_message_retention_days feild. 2021-08-20 06:35:35 -07:00
tests missedmessage_emails: Ensure forward progress. 2021-08-20 07:21:39 -07:00
tornado typing: Improve typing with assertions. 2021-08-20 05:54:19 -07:00
views marketing_emails: Ask for user's consent at sign-up. 2021-08-20 06:43:26 -07:00
webhooks typing: Fix function signatures. 2021-08-20 05:54:19 -07:00
worker missedmessage_emails: Ensure forward progress. 2021-08-20 07:21:39 -07:00
__init__.py django: Upgrade Zulip to Django 3.2 LTS. 2021-05-03 08:36:22 -07:00
apps.py caching: Make sender type optional for flush_cache. 2021-07-26 14:48:07 -07:00
context_processors.py auth: show _OR_ during login only when other methods are available. 2021-07-20 14:29:48 -07:00
decorator.py python: Remove default "utf8" argument for encode(), decode(). 2021-08-02 15:53:52 -07:00
filters.py typing: Fix function signatures. 2021-08-20 05:54:19 -07:00
forms.py marketing_emails: Ask for user's consent at sign-up. 2021-08-20 06:43:26 -07:00
logging_handlers.py logging_handlers: Remove STAGING_ERROR_NOTIFICATIONS setting. 2021-07-07 09:26:02 -07:00
middleware.py typing: Use assertions for responses when appropriate. 2021-08-20 06:02:56 -07:00
models.py realm: Add datetime field for scheduled deletion of demo orgs. 2021-08-19 03:09:36 -07:00
signals.py python: Convert deprecated Django ugettext alias to gettext. 2021-04-15 18:01:34 -07:00