Commit Graph

17053 Commits

Author SHA1 Message Date
Harshit Bansal fb3fda031d models: Add `emojiset` field to `UserProfile` model.
Includes a database migration.
2017-04-24 22:30:06 -07:00
Tim Abbott 1f0c4e5fb3 email mirror: Fix mypy annotation error. 2017-04-24 22:01:48 -07:00
Umair Khan 556264f3d7 reset_password: Modify password reset email if email is in wrong realm.
This fixes a confusing issue where a user might try resetting the
password for an email account that in part of a different Zulip
organization.

Is a useful early step towards making Zulip support reusing an email
in multiple realms.

Fixes: #4557.
2017-04-24 21:58:29 -07:00
Emilio Aburto L a8521dc988 docs: Update Docker development instructions to include chown.
This adds a command to change ownership of /srv/zulip to the zulip
user.
2017-04-24 21:40:44 -07:00
K.Kanakhin e3e52e7284 email-mirror: Move postfix email mirror integration to separate script.
This fixes a performance problem where we were previously starting up
a full Django process (~0.7s even on a fast machine) every time a new
email came in, potentially allowing users to accidentally DoS a Zulip
server.  Now, we just post over HTTPS, allowing the existing thread
pool support to do its job.

- Add script wrapper to communicate postfix pipe with django web server
  over HTTP(S). It uses shared_secret authentication mode.
- Add django view to process messages from email mirror server.
- Clean management command `email-mirror`. Left just functional
  for cron email processing.
- Add routes for new tornado view.
- Change pipe script in master process postfix config template
  based on updated script.
- Add tests.

Tweaked by tabbott to adjust the directory and set better defaults.

Fixes #2421.
2017-04-24 21:24:23 -07:00
Brock Whittaker ba51c077be Add assets for portico signin pages.
This adds some of the required assets for the portico signin pages such
as logos and validation signals.
2017-04-24 16:19:18 -07:00
Steve Howell 232e1e4006 minor: Tweak js-dep-visualizer configuration. 2017-04-24 14:46:34 -07:00
wangjames 744f4aa663 Fix modals dependency cycle.
This commit forces the files that create modals to create their own
modal closing function instead of creating all of them in the modals
file. These functions are then passed to the modals.close object. This
is intended to remove modals.js's dependencies on these other files.
2017-04-24 14:30:02 -07:00
Steve Howell c999bdf823 compose: Distinguish get_message_type() from composing().
We now only call compose_state.composing() in a boolean context,
where we simply care whether or not the compose box is open.  The
function now also returns true/false.

Callers who need to know the actual message type (e.g. "stream" or
"private") now call compose_state.get_message_type().
2017-04-24 12:42:06 -07:00
derAnfaenger 2adf641b72 Fix provisioning failing due to partial downloads.
'$COMMIT' was originally printed in '$COMMIT_FILE_PATH' before all
respective files were downloaded, meaning that this step
wouldn't be repeated if one download failed. This commit prints
'$COMMIT' only after all downloads were successful.
2017-04-22 21:16:11 -07:00
Tommy Ip a67ade2419 lint: Fix gitlint test due to non-deterministic git range.
This makes getting the commit SHA non time sensitive by using the
range provided by TravisCI.
2017-04-22 21:34:58 +01:00
Steve Howell 5ae284dcb1 Add topic_generator.js to the app. 2017-04-22 11:46:47 -07:00
Steve Howell d938afaedc Extract narrow.narrow_to_next_topic().
This borrows some code from a PR from Mahim Goyal.
2017-04-22 11:46:47 -07:00
Maxim Averin 73a1dd63d5 analytics: Refactor legacy 'zulip_internal' decorator.
Rename 'zulip_internal' decorator to 'require_server_admin', add
documentation for 'server_admin', explaining how to give permission
for ./activity page.

Fixes: #1463.
2017-04-22 11:42:02 -07:00
Tommy Ip 6ec32b37c3 lint: Fix lint rule error due to unordered list.
Tweaked to automatically sort by tabbott.
2017-04-22 11:38:36 -07:00
Eeshan Garg ce0f1453b9 webhooks: Filter specific BitBucket Git branches.
This is the last of the Git integrations that didn't have this
feature.

Fixes #4327.
2017-04-22 11:29:53 -07:00
Shayan Toqraee 534c951ec4 Add rtl.js library for detecting direction of text.
This comes complete with some documentation and node tests, and is a
key step towards implementing RTL support in Zulip.
2017-04-22 11:25:54 -07:00
Michael 854d70e7c6 test_events: Verify format of event dicts precisely.
This is basically just using the new check_dict_only everywhere, with
a few exceptions:
* New self.check_events_dict automatically adds the id field to avoid
  duplicating it ~80 times.
* Set log=False for many of the testing action functions to remove the
  timestamp field from their returned event dictionaries, since it's
  not needed and is the result of a deprecated log_event function.

Wasn't sure if the subscription_field list in do_test_subscribe_events
could contain optional arguments, so I left the call to check_dict on
along with a TODO.

Fixes: #1370.
2017-04-22 11:22:41 -07:00
hackerkid a768c94f9d requirements: Upgrade django-bitfield to 1.9.2. 2017-04-21 22:25:50 -07:00
Steve Howell ddbe877909 Add narrow.stream_topic(). 2017-04-21 21:59:22 -07:00
Steve Howell 6ddbf12376 Add topic_generator.get_next_topic(). 2017-04-21 21:59:22 -07:00
Steve Howell 079885770b Add unread.topic_has_any_unread(). 2017-04-21 21:59:22 -07:00
Steve Howell 4871b491f3 Add Dict.is_empty(). 2017-04-21 21:59:22 -07:00
Steve Howell b27180a645 Have next_topic() return stream/topic objects.
We now use "map" to have our inner generator of topics be
mapped to objects with both the stream and topic.  Thanks to
Mahim Goyal for helping with this design.
2017-04-21 21:59:22 -07:00
Steve Howell d332df8cc6 Add topic_generator.map(). 2017-04-21 21:59:22 -07:00
Aditya Bansal bdcddd35d0 tests: Add wrapper for client.logout in ZulipTestCase.
In this commit we add a logout wrapper so as to enable developers
to just do self.logout instead of doing a post request at API
endpoint for logout. This is achieved by adding a wrapper function
for the Django's client.logout contained in TestCase. We add this
by extending ZulipTestCase to have a logout function.
2017-04-21 21:45:55 -07:00
hackerkid cf001876d4 Increment provision version to upgrade python dependencies. 2017-04-21 18:13:58 -07:00
hackerkid 0689954373 requirements: Upgrade zope.interface to 4.4.0. 2017-04-21 18:13:58 -07:00
hackerkid 7db87a452c requirements: Upgrade typing to 3.6.1. 2017-04-21 18:13:58 -07:00
hackerkid 60d3346369 requirements: Upgrade SQLAlchemy to 1.1.9. 2017-04-21 18:13:58 -07:00
hackerkid 8ca2ed1ce2 requirements: Upgrade Werkzeug to 0.12.1. 2017-04-21 18:13:58 -07:00
hackerkid 05a5a8bc40 requirements: Upgrade tornado to 4.5.1. 2017-04-21 18:13:58 -07:00
hackerkid 0707c8a58b requirements: Upgrade tblib to 1.3.2. 2017-04-21 18:13:58 -07:00
hackerkid 8d6ed0419c requirements: Upgrade sphinx-rtd-theme to 0.2.4. 2017-04-21 18:13:58 -07:00
hackerkid 12367a7580 requirements: Upgrade Sphinx to 1.5.5. 2017-04-21 18:13:58 -07:00
hackerkid 2f6d191ab8 requirements: Upgrade Scrapy to 1.3.3. 2017-04-21 18:13:58 -07:00
hackerkid c5de115a51 requirements: Upgrade regex to 2017.4.5. 2017-04-21 18:13:58 -07:00
hackerkid c9ee2b0c25 requirements: Upgrade pytz to 2017.2. 2017-04-21 18:13:58 -07:00
hackerkid 97563b4061 requirements: Upgrade pyOpenSSL to 17.0.0. 2017-04-21 18:13:58 -07:00
hackerkid 1ff9d6a600 requirements: Upgrade pylibmc to 1.5.2. 2017-04-21 18:13:58 -07:00
hackerkid d8965691a4 requirements: Upgrade PyJWT to 1.5.0. 2017-04-21 18:13:58 -07:00
hackerkid f68f898fc5 requirements: Upgrade prompt_toolkit to 1.0.14. 2017-04-21 18:13:58 -07:00
hackerkid 6b94cdc6f0 requirements: Upgrade Pillow to 4.1.0. 2017-04-21 18:13:58 -07:00
hackerkid a9af3df67f requirements: Upgrade pbr to 3.0.0. 2017-04-21 18:13:58 -07:00
hackerkid 2929c15953 requirements: Upgrade oauthlib to 2.0.2. 2017-04-21 18:13:57 -07:00
hackerkid 5972679a50 requirements: Upgrade MarkupSafe to 1.0. 2017-04-21 18:13:57 -07:00
hackerkid 8b126cbb22 requirements: Upgrade Jinja2 to 2.9.6. 2017-04-21 18:13:57 -07:00
hackerkid 1600337e4e requirements: Upgrade ipython-genutils to 0.2.0. 2017-04-21 18:13:57 -07:00
hackerkid b2db6f05fd requirements: Upgrade fonttools to 3.10.0. 2017-04-21 18:13:57 -07:00
hackerkid 28c704db01 requirements: Upgrade Flask to 0.12.1. 2017-04-21 18:13:57 -07:00