zulip/zerver/tornado
Shanu 7f196967ad event_queue: Remove internal fields being leaked to the API.
A few internal fields used for tracking which types of notifications
have already been sent for a given message, like `hander_id` and the
`push_notified` bundle of fields were being incorrectly included in
message events delivered to clients clients.

One could argue these fields might be useful hints to clients, but
because notifications can be triggered later on via
`missedmessage_hook`, they have no useful purpose in the API.

This commit move these extended event field on a `internal_data`
object within the event object, and delete this field in `contents()`
for call points that would serve data to clients.

Tweaked by tabbott to provide a cleaner interface.

We're not bumping API_FEATURE_LEVEL because these fields have always
been documented as being present only due to a bug, so no clients
should be expecting or relying on them.

Fixes: #15947.
2021-02-14 21:42:19 -08:00
..
__init__.py
application.py python: Reformat with Black, except quotes. 2021-02-12 13:11:19 -08:00
autoreload.py python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
descriptors.py python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
django_api.py python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
event_queue.py event_queue: Remove internal fields being leaked to the API. 2021-02-14 21:42:19 -08:00
exceptions.py python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
handlers.py python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
ioloop_logging.py python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00
sharding.py python: Reformat with Black, except quotes. 2021-02-12 13:11:19 -08:00
views.py python: Normalize quotes with Black. 2021-02-12 13:11:19 -08:00