Tim Abbott
e8eaec0a18
mypy: Fix various errors caught by removing cache_with_key.
2017-05-10 14:37:20 -07:00
Tim Abbott
a85c066722
confirmation: Fix race with invite and email change.
2017-05-10 14:31:24 -07:00
Tim Abbott
248785e66e
integrations: Fix missing links to non-webhook integrations.
...
Apparently help_content was attached to the wrong class.
Fixes #4744 .
2017-05-10 11:17:56 -07:00
Tim Abbott
9f7236eec1
message: Remove unused old gravatar_hash field from message dicts.
...
This was deprecated and replaced some 4 years ago.
2017-05-09 22:33:27 -07:00
Tim Abbott
e3505bd5ae
avatar: Fix memcached query loop fetching messages.
...
This fixes a major performance issue, where we would fetch
user_profile objects inside a code path that had already bulk-fetched
the necessary user objects.
Like the similar related changes we just made, the fix is to marshall
and pass the data into the avatar library directly.
2017-05-09 22:33:27 -07:00
Tim Abbott
0990246289
avatar: Fix memcached query loop fetching bots.
...
Similar to the related issue with users, the new avatar storage had
accidentally added database queries in a loop to this code path.
2017-05-09 22:33:27 -07:00
Tim Abbott
8e47dc73bd
avatar: Fix loop doing database queries in register.
...
Due to the refactoring of the avatar URL codepath that added realm IDs
to the URLs, we ended up calling `get_user_profile_by_email` inside
`get_avatar_url`, which in turns was called in a loop over all users
in a realm.
Needless to say, this resulted in a significant performance problem.
We fix this issue by passing in the data needed to compute the avatar
URL, rather than looking it up by email address.
2017-05-09 22:33:27 -07:00
Tim Abbott
676d4f32fc
avatar_url: Fix unnecessary database query.
...
If we have a user_profile object, there's no reason to fetch it again
from memcached.
2017-05-09 22:33:27 -07:00
Tim Abbott
c8b0ac0a05
avatar_hash: Extract user_avatar_path_from_ids.
2017-05-09 22:31:24 -07:00
Rohitt Vashishtha
0414ac6df5
bugdown: Convert GitHub image-preview urls to image urls.
...
This makes inline image previews work for links to image files' pages
on GitHub.
Fixes #4658 .
2017-05-09 11:22:37 -07:00
Umair Khan
4971b7ff9f
testing: Add errored tests to failed tests list.
...
Fixes : #4716 .
2017-05-09 09:36:59 -07:00
Steve Howell
3b2a3601c1
tests: Add ZulipTestCase.notification_bot().
2017-05-08 11:57:38 -07:00
Steve Howell
942db9b6c5
tests: Added ZulipTestCase.example_user() function.
...
The example_user() function is specifically designed for
AARON, hamlet, cordelia, and friends, and it allows a concise
way of using their built-in user profiles. Eventually, the
widespread use of example_user() should help us with refactorings
such as moving the tests users out of the "zulip.com" realm
and deprecating get_user_profile_by_email.
2017-05-08 11:57:38 -07:00
Aditya Bansal
0999a74ef7
pep8: Add compliance with rule E261 to unminify.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
724c6d384f
pep8: Add compliance with rule E261 to type_debug.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
76d28a7cc7
pep8: Add compliance with rule E261 to timeout.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
6ad22f4092
pep8: Add compliance with rule E261 to streams.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
babdb8dd64
pep8: Add compliance with rule E261 to statistics.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
df2b49af66
pep8: Add compliance with rule E261 to sessions.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
94b7e4de9e
pep8: Add compliance with rule E261 to rest.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
19adf85d00
pep8: Add compliance with rule E261 to request.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
f7f09df773
pep8: Add compliance with rule E261 to rate_limiter.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
e5bf7e81e6
pep8: Add compliance with rule E261 zerver/lib/queue.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
69cf11d786
pep8: Add compliance with rule E261 to push_notifications.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
d561c758cd
pep8: Add compliance with rule E261 to parallel.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
cbaace87cd
pep8: Add compliance with rule E261 to email_mirror.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
3687dcdb3f
pep8: Add compliance with rule E261 digest.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
0fc16273b9
pep8: Add compliance with rule E261 to ccache.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
101d334b80
pep8: Add compliance with rule E261 to camo.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
e7e7c1a3cd
pep8: Add compliance with rule E261 to cache_helpers.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
821be4519c
pep8: Add compliance with rule E261 to cache.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
1e61e734c8
pep8: Add compliance with rule E261 to bulk_create.py.
2017-05-07 23:21:50 -07:00
Aditya Bansal
c23901c3a8
pep8: Add compliance with rule E261 to fenced_code.py.
2017-05-07 23:21:50 -07:00
Rishi Gupta
8321bd3f92
notifications: Refactor missed message queue to use send_email.
...
This commit also changes the sender from "Zulip <NOREPLY_EMAIL_ADDRESS>" to
NOREPLY_EMAIL_ADDRESS when it is not set explicitly.
2017-05-05 14:38:25 -07:00
Rishi Gupta
fda65b3b37
missed messages: Change subject to always use the plural for Zulips.
...
Works better for threading in email clients.
2017-05-05 14:38:25 -07:00
Rishi Gupta
60e0bb3a04
send_email: Add reply_to argument to send_email.
...
django.core.mail.send_mail doesn't support reply_to, so we have to switch to
EmailMultiAlternatives.
2017-05-05 14:38:25 -07:00
Rishi Gupta
face3077df
email: Rename template_payload to context.
2017-05-05 14:38:25 -07:00
Rishi Gupta
6a8ed81439
send_email: Remove tags argument from send_future_email.
...
The tags argument was only being used by the Mandrill pathway, which is no
longer around.
2017-05-05 14:38:25 -07:00
Rishi Gupta
6b9f25a58a
Remove duplicated code between send_future_email and send_email pathway.
...
Note that this change restricts the context for any template that uses
send_future_email to be jsonable.
2017-05-05 14:38:25 -07:00
Rishi Gupta
68c172192b
email.py: Change recipients argument of send_future_email to to_email.
2017-05-05 14:38:25 -07:00
Rishi Gupta
0d4c1b0467
notifications: Move send_future_email to zerver/lib/send_email.py.
2017-05-05 14:38:25 -07:00
Rishi Gupta
d70e09b41d
notifications: Change sender arg of send_future_email to from_email.
...
This commit is a step towards the goal of replacing most of the
send_future_email pathway with a call to send_email.
Note that this commit changes the default value of sender from "Zulip
<NOREPLY_EMAIL_ADDRESS>" to "NOREPLY_EMAIL_ADDRESS". NOREPLY_EMAIL_ADDRESS
will soon be changed to have the Zulip in front.
2017-05-05 14:38:25 -07:00
Rishi Gupta
e46cbaffa2
email: Remove Mandrill pathways and dependency.
...
Everything it was doing (send_future_email) can now be done using
ScheduledJob.
2017-05-05 14:38:23 -07:00
Rishi Gupta
7741e099fc
notifications.py: Merge send_local_email_template_with_delay into callers.
...
Note that the correctness of this commit relies on the fact that
send_future_email also sets the sender to settings.NOREPLY_EMAIL_ADDRESS by
default (in the body of the function).
2017-05-05 14:20:32 -07:00
Rishi Gupta
a413b0dbad
notifications: Change send_future_email to take a template_prefix.
...
Also reorders the arguments a bit to better match
zerver.lib.send_email.send_email.
2017-05-05 14:20:32 -07:00
Rishi Gupta
cf38fd156b
digest.py: Merge send_digest_email into its callers.
...
Most of the functionality of send_digest_email is being standardized in
zerver.lib.notifications.send_future_email.
2017-05-05 14:20:32 -07:00
Rishi Gupta
925ee8c0f1
Add a send_email function that takes a template_prefix and context.
...
This commit replaces all uses of django.core.mail.send_mail with send_email,
other than in the password reset flow, since that code looks like it is just
a patch to Django's password reset code.
The send_email function is in a new file, since putting it in
zerver.lib.notifications would create an import loop with confirmation.models.
send_future_email will soon be moved into email.py as well.
2017-05-05 14:20:32 -07:00
Umair Khan
c62150c097
testing: Bounce redis key prefix per test.
...
This commit adds a prefix to the redis keys; this allows us
to easily bounce the redis cache before every test.
Fixes : #1212
2017-05-05 18:24:08 +05:00
Umair Khan
4d543217ba
cache: Take hash of KEY_PREFIX to limit key size.
...
Key size of Memcached records should be less than 256.
2017-05-05 18:23:40 +05:00
Rohitt Vashishtha
a2c1e10986
bugdown: Add domain-name to relative image-url in open graph data.
...
fixes #4608 .
2017-05-04 16:54:10 -07:00