Commit Graph

13966 Commits

Author SHA1 Message Date
Christie Koehler 3913db9022 docs: Simplify hierarchy of dev setup docs.
Based on feedback from first-time contributors, this commit simplifies
the number of paths available for finding the dev setup directions you
need. Setup instructions are now organized into Recommended (Vagrant)
and Advanced (non-Vagrant).

In order to get the ToC to display correctly, I've combined all the
advanced, non-Vagrant methods into one page. I've left the old pages
intact, with a note that the content has been moved and link to the new
page. This is in case folks have linked directly to those pages.

The advanced setup directions still need to be cleaned up, but this is a
start.
2016-11-29 14:13:09 -08:00
Tim Abbott 07565c4a3e Revert "Fix race conditions in Admin casper tests."
This reverts commit aa5a7bc659.
2016-11-29 09:50:56 -08:00
Tommy Ip 844e32ccc5 tools: Remove deprecated generate-activity-metrics.py.
The script uses hardcoded hostnames that do not exist anymore,
its functionality is available through directly querying the Zulip
database.
2016-11-29 09:27:59 -08:00
Tim Abbott ff03ad40d2 .eslintrc: Replace spaces with tabs. 2016-11-29 08:59:32 -08:00
Arpith Siromoney f7dc2f33cd Change name of eslintrc file to .eslintrc.json
Currently it does this for the eslintrc files in zulip,
zulip/frontend_tests and static/js

This commit also fixes json style issues (quotes)
2016-11-29 08:58:39 -08:00
Umair Khan cd19a3d870 docs: Fix manual installation instructions.
The previous version didn't correctly handle permissions around the
virtualenvs.
2016-11-29 08:56:20 -08:00
Umair Khan aa5a7bc659 Fix race conditions in Admin casper tests. 2016-11-29 08:53:27 -08:00
Rafid Aslam 41bd88d5ed pep8: Fix E301 pep8 violations.
Fix "E301: expected (1 or 2) blank line" pep8 violations.
2016-11-29 08:51:44 -08:00
Rafid Aslam 7a2282986a pep8: Fix E225 pep8 violations. 2016-11-28 15:21:15 -08:00
Christie Koehler f036a59b4f Move details about configuring a proxy. 2016-11-27 17:06:41 -08:00
Christie Koehler 8b67210ce5 Simplify dev env setup overview. 2016-11-27 16:58:19 -08:00
sylvan1 443cf92640 mypy: Change Generator[None, None, None] to Iterator[None].
Fixes #1648.
2016-11-27 10:42:16 -08:00
Stanley Zheng b162969841 docker: Revert Docker development to original instructions.
There were issues with reproducing the Docker build with the latest
docker file and instructions.
2016-11-27 10:15:37 -08:00
Calvin Lee 5c262d3557 tests: Add tests for creating a new stream with a description
Modify backend test of create_streams_if_needed so that the newly
created streams have descriptions.

Modify casperjs test of filling out stream_creation_form so that
the newly created stream has a description.

Fixes: #2428.
2016-11-27 09:45:38 -08:00
Arpith Siromoney e2270f5499 Tighten eslint rules with zero errors to airbnb values.
block-scoped-vars, guard-for-in, radix and valid-typeof are eslint
rules that were set to warning in the eslintrc. Since there
are no errors, they have been toggled to the appropriate values
from the airbnb style guide.
2016-11-27 08:12:35 -08:00
Umair Khan 287eb2cd49 provisioning: Add version warning for Vagrant 1.8.7.
Vagrant 1.8.7 is not supported due to broken curl, see
https://github.com/mitchellh/vagrant/issues/7997 for reference.
2016-11-26 23:08:43 -08:00
Tim Abbott 3d1bcb05e1 tornado: Move event_queue.py to zerver/tornado/.
Fixes #729.
2016-11-26 22:29:28 -08:00
Tim Abbott 1fcf2ff525 tornado: Move zerver.tornadoviews to zerver.tornado.views.
This furthers the overall goal of moving all the Tornado-specific code
to zerver/tornado/.
2016-11-26 22:29:28 -08:00
Tim Abbott 169d404579 tornado: Move zerver.lib.handlers into zerver.tornado.handlers.
This cleans up the confusingly duplicated file names, while also
moving more of the Tornado-specific code under zerver/tornado/.
2016-11-26 22:29:28 -08:00
Tim Abbott d75f49b119 tornado: Move descriptor dict management code to handlers.py. 2016-11-26 22:29:28 -08:00
Tim Abbott 282f74609c tornado: Move socket code to zerver/tornado/. 2016-11-26 22:29:27 -08:00
K.Kanakhin 050768643d tornado: Add tests for sending messages with websockets.
- Add base tornado test case class.
- Add test for websocket connection.
- Add test for websocket authentication.
- Add test for sending private message with websocket.
- Add test for sending stream message with websocket.

Fixes #2230
2016-11-26 22:29:26 -08:00
Tim Abbott f2782971e0 tornado: Clean up AsyncDjangoHandler Python style. 2016-11-26 22:05:04 -08:00
Tim Abbott b83361bcfc tornado: Extract create_tornado_application helper. 2016-11-26 21:43:13 -08:00
Tim Abbott 9e9066f77a tornado: Extract AsyncDjangoHandler to its own file. 2016-11-26 21:43:11 -08:00
Tim Abbott 8739f4d9f1 tornado: Move tornado_ioloop_logging to new zerver/tornado tree. 2016-11-26 21:24:05 -08:00
Tim Abbott 6b42b12768 twitter-search-bot: Line-wrap very long lines. 2016-11-26 21:24:05 -08:00
Tomasz Kolek b7dfcadf33 Document ZULIP SITE param in twitter bots. 2016-11-26 19:30:45 -08:00
Tomasz Kolek 9636d89de1 Add documentation for changing SITE param in jenkins configuration. 2016-11-26 19:30:45 -08:00
Tomasz Kolek 6d36eb00b6 integrations: Change default ZULIP_SITE to https://zulip.example.com.
Modified:
    asana
    basecamp
    codebase
    git
    jira
    svn
    trac
2016-11-26 19:30:32 -08:00
Tomasz Kolek 2c252de311 Add documentation for changing SITE param in perforce configuration. 2016-11-26 19:24:24 -08:00
Tim Abbott a28b20b845 docs: Improve documentation around re-provisioning.
Fixes #1967.
2016-11-26 19:21:18 -08:00
Tim Abbott eea59c1c9c docs: Add RTD link badge. 2016-11-26 19:10:39 -08:00
Tim Abbott 4f98b73d5e requirements: Document anti-recommendation of t2 style instances.
If your instance runs out of CPU credits, it will result in a nasty
outage.

Fixes #1605.
2016-11-26 19:06:45 -08:00
Anders Kaseorg 78d6c3d7e9 install: Fix RabbitMQ node name if RabbitMQ is not installed.
This indirectly causes the RabbitMQ node name for new Zulip
installations to default to zulip@localhost, which would eliminate the
persistent problems we have had

Fixes #194, #465, #1375, #1751.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2016-11-26 18:54:29 -08:00
Anders Kaseorg 092fe4fecb puppet: Write rabbitmq-env.conf before installing rabbitmq-server
Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2016-11-26 18:54:12 -08:00
Tim Abbott 843ad8a947 models: Fix s/text_type/Text/ merge regression. 2016-11-26 18:46:31 -08:00
Michael Cordover 4047c7d3c4 docs: Add code of conduct. 2016-11-26 18:40:16 -08:00
Arpith Siromoney 001847ac5b Add backend support for emoji reactions.
This commit adds the following:

1. A reaction model that consists of a user, a message and an emoji that
are unique together (a user cannot react to a particular message more
than once with the same emoji)
2. A reaction event that looks like:
    {
        'type': 'reaction',
	'op': 'add',
	'message_id': 3,
	'emoji_name': 'doge',
	'user': {
	    'user_id': 1,
            'email': 'hamlet@zulip.com',
            'full_name': 'King Hamlet'
	}
    }
3. A new API endpoint, /reactions, that accepts POST requests to add a
reaction to a message
4. A migration to add the new model to the database
5. Tests that check that
   (a) Invalid requests cannot be made
   (b) The reaction event body contains all the info
   (c) The reaction event is sent to the appropriate users
   (d) Reacting more than once fails

It is still missing important features like removing emoji and
fetching them alongside messages.
2016-11-26 18:10:21 -08:00
Tim Abbott 92d1b6d6da run-dev: Fix regression ignoring --interface argument.
When we migrated run-dev.py from Twisted to Tornado a few weeks ago,
the --interface argument wasn't properly ported and thus was ignored.

This restores the original functionality of defaulting to only
listening on localhost.

Ideally, we'd replace the vagrant/zulipdev user check with something
that just checks whether a special file that is created by the
Vagrant/remote-dev-vm creation process exists; that would be more
robust.
2016-11-26 17:23:31 -08:00
Calvin Lee 4e5c4c5ffb streams: Add support for setting stream description during creation.
Add new box for stream description in the stream creation form,
modify backend so its contents end up as the stream description.

Fixes: #2283.
2016-11-26 16:55:35 -08:00
Calvin Lee b8d7f8008a streams: move the invite_only field into the stream_dict argument.
Refactor list_to_streams and create_streams_if_needed.  The
stream_dict now has a "invite_only" key, which is mapped to
a boolean.
2016-11-26 16:52:40 -08:00
Calvin Lee 8461cc411e streams: refactor stream creation code path.
Refactor list_to_streams and create_streams_if_needed to take a list
of dictionaries, instead of a list of stream names.  This is
preparation for being able to pass additional arguments into the
stream creation process.

An important note: This removes a set of validation code from the
start of add_subscriptions_backend; doing so is correct because
list_to_streams has that same validation code already.

[with some tweaks by tabbott for clarity]
2016-11-26 16:48:59 -08:00
Tim Abbott 308069d828 test_templates: Fix missing hubot_lozenges_dict. 2016-11-26 16:19:35 -08:00
Tomasz Kolek a79acf854f docs: Automate creation of Hubot documentation lozenges.
This removes a bunch of semi-duplicated code.
2016-11-26 15:27:54 -08:00
Rishi Gupta 4b183cd526 domain migration: Remove several instances of get_realm.
Remove the easy to remove instances of get_realm.
2016-11-26 15:19:56 -08:00
Umair Khan 0536aeba4d Django 1.10: Use same cache prefix for JS tests.
Previously, the key prefix was based on the process id due to which
the JS tests couldn't properly flush user profiles from the cache as
our application spans over multiple processes. This problem becomes
apparent when in json_change_settings view after changing the user_profile
the tornado views continue to get the cached user profile corresponding
to their process id.
2016-11-26 15:10:50 -08:00
Umair Khan ea688620b3 Django 1.10: Remove cleanupconfirmation management command.
According to this ece9d64d34 commit, the
confirmations are never deleted.
2016-11-26 15:04:20 -08:00
Umair Khan 671c45524b Django 1.10: Use new app discovery system.
'django.db.models.loading' is removed due to which both
'django.db.models.get_app' and 'django.db.models.get_models' are removed.

See https://docs.djangoproject.com/en/1.10/releases/1.9/#features-removed-in-1-9
2016-11-26 15:04:20 -08:00
Umair Khan c8fa25ab88 Django 1.10: Update session hash when password is changed.
Ref: https://docs.djangoproject.com/en/1.10/topics/auth/default/#session-invalidation-on-password-change for details.
2016-11-26 15:04:17 -08:00