Steve Howell
f961408782
digest: Reduce queries using select_related().
...
We use the message a lot for the query modified
here, so I think it's worth taking the up-front
hit of getting bulkier objects to avoid O(N)
hops back to the database.
2018-11-14 23:24:06 -08:00
Steve Howell
51aa313833
test coverage: Add test_multiple_stream_senders().
...
This exercises a loop in digest.gather_hot_conversations().
2018-11-14 23:24:06 -08:00
Steve Howell
5a539d44b0
subject -> topic: Fix notification tests.
...
The URLs changed here are artificial, so we can convert
subject -> topic without breaking anything.
2018-11-14 23:24:06 -08:00
Steve Howell
8cf93a25c5
Use email_subject as var in test_notifications.
...
We change subject -> email_subject for all local vars
here, so it's easier to skip past this code if you
are sweeping subject -> topic.
2018-11-14 23:24:06 -08:00
Steve Howell
27d79352da
topic -> subject: Extract get_topic_from_message_info().
...
This changes files where it's safe to just assume caller
may use either "topic" or "subject", and we prefer "topic"
but support "subject".
2018-11-14 23:24:06 -08:00
Steve Howell
aa4e9cec2d
minor: Add a code comment and move two constants.
2018-11-14 23:24:06 -08:00
Steve Howell
b666a6bd6c
subject -> topic: Fix most of api_test_helpers.
...
We don't want to change anything that can end
up in docs yet, but for test setup, we can switch
to topic_name.
2018-11-14 23:24:06 -08:00
Steve Howell
ea26372083
hipchat: Make conversion work with UUID ids from Stride.
...
Normal hipchat exports use integer ids for their
users and "rooms," which we just borrowed during
conversion.
Atlassian Stride uses stride UUIDs for these instead, but otherwise
has the same export format.
We now introduce IdMapper to handle external ids
that aren't integer. The IdMapper will map UUID
ids to ints and remember them. For ints it just
leaves them alone.
Fixes #10805 .
2018-11-14 23:22:40 -08:00
Steve Howell
aff84cd1e9
hipchat: Skip attachments without paths.
...
This is a short term workaround. Some variants
of HipChat exports are missing `path`, and we just
punt for now.
2018-11-14 23:14:13 -08:00
Vishnu Ks
546fd5d60e
email log: Inline email CSS when generating emails.
...
This saves a step in the development cycle for iterating on the email
HTML and CSS.
2018-11-14 23:05:44 -08:00
Eeshan Garg
ab7d0de782
webhooks/github: Enable PM notifications for non-JSON payloads.
2018-11-14 22:35:57 -08:00
Eeshan Garg
d9958610a4
webhook_decorator: Support notifying bot owner on invalid JSON.
...
Our webhook-errors.log file is riddled with exceptions that are
logged when a webhook is incorrectly configured to send data in
a non-JSON format. To avoid this, api_key_only_webhook_view
now supports an additional argument, notify_bot_owner_on_invalid_json.
This argument, when True, will send a PM notification to the bot's
owner notifying them of the configuration issue.
2018-11-14 22:35:56 -08:00
Tim Abbott
67c3593b39
sessions: Add coverage exception for now.
2018-11-14 15:28:35 -08:00
Tim Abbott
ae6fc0a471
sessions: Resync session middleware from Django upstream.
...
Until we resolve https://github.com/zulip/zulip/issues/10832 , we will
need to maintain our own forked copy of Django's SessionMiddleware.
We apparently let this get out of date.
This fixes a few subtle bugs involving the user logout experience that
were throwing occasional exceptions (e.g. the UpdateError fix you can
see).
2018-11-14 15:16:12 -08:00
Eeshan Garg
41c0e9ba47
webhooks: Add ReviewBoard integration.
2018-11-12 16:11:32 -08:00
Steve Howell
a86e7fbd9f
subject -> topic: Fix message tests.
2018-11-12 15:47:11 -08:00
Steve Howell
394cd4c6b6
subject -> topic: Fix user group tests.
2018-11-12 15:47:11 -08:00
Steve Howell
ee9d321d9f
subject -> topic: Fix tornado tests.
2018-11-12 15:47:11 -08:00
Steve Howell
2fe78ffe21
subject -> topic: Fix widget tests.
2018-11-12 15:47:11 -08:00
Steve Howell
d86dd165da
gitter/slack/hipchat: Remove "subject" from conversions.
...
We (lexically) remove "subject" from the conversion code. The
`build_message` helper calls `set_topic_name` under the hood,
so things still have "subject" in the JSON.
There was good code coverage on `build_message`.
2018-11-12 15:47:11 -08:00
Steve Howell
710095920f
subject -> topic: Fix push notification tests.
...
We also make the topic name more clear.
2018-11-12 15:47:11 -08:00
Steve Howell
8e639543fb
subject -> topic: Fix webhook system tests.
2018-11-12 15:47:11 -08:00
Steve Howell
8f8ceab062
subject -> topic: Fix external tests.
2018-11-12 15:47:11 -08:00
Steve Howell
cd76d4c308
subject -> topic: Fix events tests.
2018-11-12 15:47:11 -08:00
Steve Howell
4b38260a27
tests: Fix message.subject references.
2018-11-12 15:47:11 -08:00
Steve Howell
630dd8ac1b
subject -> topic: Fix bugdown tests.
2018-11-12 15:47:11 -08:00
Steve Howell
1854ddbcd0
taiga tests: Use self.TOPIC instead of "subject".
2018-11-12 15:47:11 -08:00
Steve Howell
31e328c544
webhook tests: Replace SUBJECT with TOPIC.
2018-11-12 15:47:11 -08:00
Steve Howell
1fff890b71
webhooks: Change *_SUBJECT_TEMPLATE to *_TOPIC_TEMPLATE.
2018-11-12 15:47:11 -08:00
Steve Howell
ea98a44db3
webhooks: Replace SUBJECT_WITH_* with TOPIC_WITH_*.
2018-11-12 15:47:11 -08:00
Steve Howell
ced4d81856
Sweep tests for expected_subject -> expected_topic.
...
This is all in the webhooks tests, including some
docs for how to write those tests.
2018-11-12 15:47:11 -08:00
Steve Howell
3133998af9
test_messages: Fix a lot of subject -> topic_name.
2018-11-12 15:47:11 -08:00
Steve Howell
e55fc144b9
Add alias support to REQ helpers for subject/topic.
...
The alias support is generic here, and we use it for
migrating subject -> topic in REQ_topic().
2018-11-12 15:47:11 -08:00
Steve Howell
de6c08a842
Extract messages_for_topic().
2018-11-12 15:47:11 -08:00
Steve Howell
b667dff4bc
minor: Change wording in comment to avoid "subject".
...
We're trying to sweep "subject" out of the codebase,
even when it has nothing to do our legacy "subject"
field. The rewording here will prevent some linter
noise.
2018-11-12 15:47:11 -08:00
Steve Howell
c7515a853c
Use REQ_topic in update_message_backend().
...
Note that we now strip the topic in the converter.
We also strip it in the view handler, which is now
redundant, but I left it in as defensive code.
2018-11-12 15:47:11 -08:00
Steve Howell
3de1289d3e
Rename subject -> topic_name in update_message_backend().
2018-11-12 15:47:11 -08:00
Steve Howell
754795c0b7
Extract REQ_topic() helper.
...
For now we use it only in the send path, not the update
path.
2018-11-12 15:47:11 -08:00
Steve Howell
0a171bf9bf
Fix "prev_subject" with LEGACY_PREV_TOPIC.
...
I added `LEGACY_` prefix to the var, because
otherwise you'd have really confusing code
where you change the key from `PREV_TOPIC`
to "prev_topic".
2018-11-12 15:47:11 -08:00
Steve Howell
a49ba8c577
Extract user_message_exists_for_topic().
2018-11-12 15:47:11 -08:00
Steve Howell
39e5c61d4a
Extact MATCH_TOPIC constant.
2018-11-12 15:47:11 -08:00
Steve Howell
500fcbb5e3
messages: Update subject -> topic_name.
...
This fixes several local vars named "subject".
2018-11-12 15:47:11 -08:00
Steve Howell
f7f071b52f
minor: Fix subject -> topic in a comment.
2018-11-12 15:47:11 -08:00
Steve Howell
8981b65bbc
Extract topic_column_sa().
2018-11-12 15:47:11 -08:00
Steve Howell
b46fb5eaad
Rename subject_matches -> topic_matches.
...
This is always either a var or a SQL label,
so it's safe to change.
2018-11-12 15:47:11 -08:00
Steve Howell
bb959acbaf
Use modern huddle URLs in digest emails.
2018-11-12 12:01:09 -08:00
Steve Howell
e79e0018f7
Use modern PM URLs in digest emails.
2018-11-12 12:01:09 -08:00
Steve Howell
6a89446e80
tests: Add test for huddle digest urls.
2018-11-12 12:01:09 -08:00
Steve Howell
c08a3833e2
tests: Start to check urls in digest emails.
2018-11-12 12:01:09 -08:00
Roman Godov
aa3682f9fc
api: Add GET /user_groups documentation.
...
This documents our GET endpoint for interacting with Zulip's user
groups feature.
Fixes #10298 .
2018-11-08 22:19:30 -08:00