Commit Graph

1138 Commits

Author SHA1 Message Date
Tim Abbott 216fbc2f79 docs: Fix a typo in installation docs. 2017-10-20 14:55:20 -07:00
Tim Abbott 54a2ef7b59 docs: Improve discussion of Ubuntu system updates. 2017-10-20 14:38:34 -07:00
Tim Abbott b511e9d0a9 docs: Recommend Xenial over Trusty for new installations. 2017-10-20 14:34:48 -07:00
Greg Price 12f8ec780e docs/expensive-migrations: Revise a bit for clarity.
Borrows some language from the paragraph in the changelog that
points to it.
2017-10-20 14:21:58 -07:00
Greg Price 50927c7cfd changelog: Revise a bit for clarity and formatting before 1.7 release.
This leaves most of the highlights untouched, to be revised
separately.
2017-10-20 14:04:27 -07:00
Tim Abbott 7c7e93cb43 docs: Improve discussion of legacy desktop app in changelog. 2017-10-20 12:11:06 -07:00
Nikhil Kumar Mishra 075158ec81 docs: Correct details about mobile and desktop codebases.
http://zulip.readthedocs.io/en/latest/architecture-overview.html
mentions "Our mobile clients are separate code repositories: Android
and React Native iOS app. " However Zulip Mobile is the official
mobile Zulip client supporting both iOS and Android.

Edited by tabbott to also fix confusion about the desktop.
2017-10-20 11:57:26 -07:00
Tim Abbott b6de7e3b90 docs: Mention system bot realm in multiple organization docs. 2017-10-20 09:57:16 -07:00
Tim Abbott b33d80707c docs: Document push notification redacting setting. 2017-10-19 18:17:35 -07:00
Alexis La Porte ec3b2072ce docs: Fix broken anchor links to troubleshooting section.
The Vagrant environment setup tutorial anchor links for the
Troubleshooting & Common Errors section don't work in GitHub flavored
markdown because the ampersand in the heading gets removed and the
resulting space is filled with a hyphen. (See here:
https://gist.github.com/asabaylus/3071099#gistcomment-1593627)

To make anchor links work with ReadTheDocs as well as with GitHub
markdown for the time being, this commit changes ampersand in the
heading to 'and'.

Fixes #7056.
2017-10-18 15:20:58 -07:00
rht a967ac5fa7 docs: Simplify install instruction for production environment. 2017-10-18 09:21:16 -07:00
rht a603a4f9f5 Remove `from __future__ import absolute_import`.
Except in:
- docs/writing-bots-guide.md, because bots are supposed to be Python 2
  compatible
- puppet/zulip_ops/files/zulip-ec2-configure-interfaces, because this
  script is still on python2.7
- tools/lint
- tools/linter_lib
- tools/lister.py

For the latter two, because they might be yanked away to a separate repo
for general use with other FLOSS projects.
2017-10-17 22:59:42 -07:00
Tim Abbott 88325c7e85 docs: Simplify discussion of sha256sums. 2017-10-17 22:16:37 -07:00
rht dceaa1d19a Add sha256sum integrity check to the release tarball.
This stems from the discussion at
https://chat.zulip.org/#narrow/stream/general/topic/signing.20the.20release
2017-10-17 22:15:14 -07:00
Tim Abbott 2648d595c1 Revert "docs: Fix broken anchor links in troubleshooting guide."
This reverts commit fa71f64adb.
2017-10-17 21:37:26 -07:00
Tim Abbott fa71f64adb docs: Fix broken anchor links in troubleshooting guide.
Fixes #7056.
2017-10-17 20:38:59 -07:00
Priscilla 22ade4f691 docs: Fix typo on "General user guide documentation".
"browsing" on line 11 was missing an "s".
2017-10-16 22:37:34 -07:00
Rishi Gupta 70cf4991da docs: Add notes on audience to user-docs.md. 2017-10-13 11:59:20 -07:00
Garvit Dewan b0235bc458 dependencies.md: Fix a typo. 2017-10-13 07:11:29 -07:00
Tim Abbott 498d061e5e docs/email: Document how to use a Gmail account with 2FA.
Fixes #6974.
2017-10-12 11:38:01 -07:00
Tim Abbott aaf1cf848a docs/email: Clarify discussion Django's EMAIL_HOST_PASSWORD.
This fixes the second part of #6974 about EMAIL_HOST_PASSWORD.
2017-10-12 11:31:06 -07:00
Greg Price 0b6bcc9c33 docs/dev-env: Explicitly recommend VirtualBox 5.1.8 exactly. 2017-10-09 20:43:12 -07:00
Greg Price 0691724836 passwords: Set default zxcvbn threshold to 10k guesses.
See the discussion in the revised docs for background and motivation,
and an explanation of why this value.
2017-10-08 15:48:44 -07:00
Greg Price a116303604 passwords: Express the quality threshold as guesses required.
The original "quality score" was invented purely for populating
our password-strength progress bar, and isn't expressed in terms
that are particularly meaningful.  For configuration and the core
accept/reject logic, it's better to use units that are readily
understood.  Switch to those.

I considered using "bits of entropy", defined loosely as the log
of this number, but both the zxcvbn paper and the linked CACM
article (which I recommend!) are written in terms of the number
of guesses.  And reading (most of) those two papers made me
less happy about referring to "entropy" in our terminology.
I already knew that notion was a little fuzzy if looked at
too closely, and I gained a better appreciation of how it's
contributed to confusion in discussing password policies and
to adoption of perverse policies that favor "Password1!" over
"derived unusual ravioli raft".  So, "guesses" it is.

And although the log is handy for some analysis purposes
(certainly for a graph like those in the zxcvbn paper), it adds
a layer of abstraction, and I think makes it harder to think
clearly about attacks, especially in the online setting.  So
just use the actual number, and if someone wants to set a
gigantic value, they will have the pleasure of seeing just
how many digits are involved.

(Thanks to @YJDave for a prototype that the code changes in this
 commit are based on.)
2017-10-08 15:48:44 -07:00
Tim Abbott 1ceaedb2c5 docs: Remove html_unescape.py.
This was just for 1-time use exported the original Zulip documentation.
2017-10-08 15:41:41 -07:00
Tim Abbott 630037967f docs: Stop linking to removed whitespace section of style guide.
We should probably just encourage linting for this.
2017-10-06 14:02:32 -07:00
Tim Abbott 0ac78cb14d code-style: Simplify discussion of third-party code. 2017-10-06 13:28:45 -07:00
Tim Abbott a632c8471d code-style: Improve state and logs discussion. 2017-10-06 13:26:13 -07:00
Tim Abbott e660faa225 docs: Remove code style section on jQuery global state.
I don't think anyone has tried to do this for a long time, since the
channel module makes it pretty clear how to do an ajax call.
2017-10-06 13:24:26 -07:00
Tim Abbott 0054fa17f1 docs: Simplify javascript var discussion.
We don't need as much as before, since it's enforced by the linter.
2017-10-06 13:24:06 -07:00
derAnfaenger 7ff697d053 linter: Add rule against using `pk` instead of `id`.
There's one exception here, for model._meta.pk.  To support this
nicely, we added this exclude-pattern feature.
2017-10-06 12:56:26 -07:00
derAnfaenger 64b8930225 linter: Add rules against improper shebangs. 2017-10-06 12:46:19 -07:00
derAnfaenger 71159fe19a code style guide: Remove obsolete space-around-bracket rule.
For .py files, our pep8 linter enforces this rule.
For .js files, eslint enforces this rule.
2017-10-06 12:46:12 -07:00
derAnfaenger c022b7a8fa linter: Add rule against using the `style` attribute.
This has a ton of exclude rules, for two reasons:

(1) We haven't been particularly systematic about avoiding unnecessary
inline style in the past, so there's a lot of code we need to fix.

(2) There are cases where one wants to dynamically compute style
rules. For the latter category, ideally we'd figure out a way to
exclude these automatically (e.g. checking for mustache tags in the
style tag).
2017-10-06 08:33:10 -07:00
Tim Abbott 930eef3caa tools: Add new script to sync translations.
We just learned we should be using the "onlytranslated" mode of
Transifex.  Since the command is getting a bit complex (and you need
to remember to run `makemessages` first), it makes sense to have a
tool for it.
2017-10-05 23:07:16 -07:00
Tim Abbott 26982ff55f puppet: Remove pageduty_nagios.pl.
This hasn't been used in like 4 years, and clutters the repo.
2017-10-05 18:46:09 -07:00
derAnfaenger 2cdde8b168 linter: Add rule against verbose $(document).ready() calls. 2017-10-05 10:11:34 -07:00
derAnfaenger 6b99022a02 linter: Add rule against using inline event handlers. 2017-10-05 10:08:40 -07:00
derAnfaenger c01981a65f linter: Extend no-space-before-bracket linting rule. 2017-10-05 10:05:27 -07:00
derAnfaenger c957d1857e code style guide: Update and remove outdated rules.
These are all enforced by our linters, and thus a source of clutter in
this code style guide.
2017-10-05 10:05:17 -07:00
Tim Abbott ab71c42ab8 docs: Update confusing changelog entry.
The original text meant to say "lost", not "last", but also was a bit
confusing anyway.
2017-10-05 09:32:02 -07:00
Joshua Pan a38d275aeb docs: Capitalize Zulip in changelog.md. 2017-10-05 09:24:09 -07:00
Tim Abbott de51eb9e7f docs: Update changelog and roadmap through present. 2017-10-04 22:39:49 -07:00
rht ac01b0c559 docs: Add type annotation.
Discovered while running the 2to3 type annotation.
2017-10-04 16:31:27 -07:00
Vishnu Ks 119157b205 docs: Update email testing section to include EmailLogBackEnd.
Rewritten by tabbott for extra clarity.
2017-10-04 14:44:58 -07:00
Tim Abbott 8d4f084623 code-style: Remove discussion of absolute_import.
It's no longer accurate on Python 3.
2017-10-04 14:09:05 -07:00
Tim Abbott b7974fc9f8 docs: Delete useless/wrong content from JavaScript code style.
One of these isn't true (not requiring braces) and the rest are
already handled by our linters.
2017-10-04 13:59:38 -07:00
Tim Abbott a001b8aef3 docs: Remove unnecessary CSS section from code style.
This is already handled by our linter, so no need to repeat it here.
2017-10-04 13:58:50 -07:00
Tim Abbott 4230871503 docs: Update code style guide for Python. 2017-10-04 13:53:06 -07:00
neiljp (Neil Pilgrim) dbc8415fa5 docs: typos in code-style.md; zephyr -> zerver. 2017-10-04 13:52:31 -07:00
Tim Abbott 4eafec12ac docs: Rewrite the intro to writing bots. 2017-10-04 12:22:02 -07:00
Tim Abbott 26dd1ab6a7 docs: Simplify the guide for running bots. 2017-10-04 12:11:27 -07:00
derAnfaenger 7a43ab00a2 running bots guide: Clarify bot's directory statement. 2017-10-04 11:49:22 -07:00
derAnfaenger 543500bab5 bots guides: Refactor layout.
This flattens the layout, shifts passages and unitizes headings to
use gerunds for the running and writing bots guides.
2017-10-04 11:49:22 -07:00
derAnfaenger b6106ca7ac running bots guide: Add cross-references to writing bots guide. 2017-10-04 11:49:21 -07:00
derAnfaenger 8449ea300b running bots guide: Shorten installation section. 2017-10-04 11:49:21 -07:00
derAnfaenger 6b879a2b04 docs: Split bots guide into running and writing guides. 2017-10-04 11:49:20 -07:00
Vishnu Ks 2267f09813 docs: Change place to ask help from mailing list to chat.zulip.org. 2017-10-04 08:20:29 -07:00
Tim Abbott 1b637658df docs: Add a section documenting the chat.zulip.org traffic level. 2017-10-03 15:41:46 -07:00
Tim Abbott c447e7530b docs: Update realms documentation for REALMS_HAVE_SUBDOMAINS removal. 2017-10-02 16:32:10 -07:00
Eeshan Garg 502e93a5d2 docs: Recommend check_send_stream_message for stream messages.
This commit updates various places where check_send_message had
been previously recommended to recommend check_send_stream_message
for sending messages to a public stream.
2017-10-02 15:27:26 -07:00
Tim Abbott 50eb94f7ee docs: Remove broken link to shell tips.
In theory, we could replace it, but it's not clear that's necessary.
2017-10-01 23:27:29 -07:00
Priscilla 7c0431a60f docs: Correct the instructions for re-running provision.
We apparently missed this when renaming provision.py to simply
provision.
2017-10-01 15:51:32 -07:00
rht e0f7b6f8ef docs: Remove the yarn.lock stutter.
Maybe someday someone will spot this err. However, the documentation is
clear in conveying its content even with the extra yarn.lock.
2017-09-30 09:16:46 -07:00
Alena Volkova e216801be8 docs: Fix a typo in version-control.md. 2017-09-29 18:04:07 -07:00
Greg Price 7e8bbda171 docs/logging: Update for the revised log format.
This accumulates several changes in recent commits: decimal point
rather than comma, compact log level, and logger names, the latter
abbreviated `zr` in the case of `zulip.request`.
2017-09-28 18:26:39 -07:00
Alena Volkova bcb9c76457 docs: Clarify who can collaborate in area label teams.
Collaboration in area label teams is only available to members of the
Zulip organization on GitHub. For non-members the related links are
not working, which can be confusing.  Address this by explaining the
links won't work and also that anyone can join.
2017-09-28 17:26:07 -07:00
Greg Price 85f7764ed4 docs/settings: Small tweaks for clarity. 2017-09-28 17:01:50 -07:00
Robert Hönig db5ed277d1 bots guide: Update outdated `run.py` to `zulip-run-bot`. 2017-09-28 11:10:09 -07:00
Robert Hönig a7d3355fd6 bots guide: Remove need to subscribe bots to streams.
Since 7878c70, bots don't need to to be subscribed to a
stream to be notified on @-mentions.
2017-09-28 11:10:09 -07:00
Greg Price 7b8f725707 APNs: Accept 1.6-format payloads in bouncer.
This is just enough of a quick fix to work with a stock Zulip 1.6
server.  We should really also make this robust to arbitrary input
from the remote Zulip server, even though it'll be a little tedious.
2017-09-28 10:01:16 -07:00
Tim Abbott 2317b63068 docs: Document narrowing reporting. 2017-09-27 19:47:45 -07:00
Tim Abbott 0744961afe docs: Add more comprehensive documentation on error reporting.
Fixes #2232.
2017-09-27 19:47:08 -07:00
rht 8aa8991caa docs: Remove import print_function. 2017-09-27 18:06:47 -07:00
Eeshan Garg bb34ba37b5 tools: Rename build_pygments_data.py -> build_pygments_data.
Dropping the file extension (.py) conforms to our naming
convention for such scripts.
2017-09-26 16:00:41 -07:00
Greg Price a9aa31ac96 docs: Fix lint in typing-indicators. 2017-09-26 13:57:03 -07:00
Steve Howell d6fb17c424 docs: Add typing-indicators.md. 2017-09-26 13:42:14 -07:00
Tim Abbott 3964a6e9a3 docs: Document the new transactional email logs. 2017-09-25 15:37:09 -07:00
Tim Abbott 14ef682a4e docs: Update emoji tooling documentation.
This is a start and fixes the most glaring problems from not updating
this documentation; I'd like Harshit to do a helpful pass on updating
this to cover some of the more subtle details about how our emoji
picker works, emoji aliases, etc.
2017-09-25 14:24:52 -07:00
rht 9bd3f772b7 Move Dockerfile to Dockerfile-dev.
Based on zulip#450, with commits restructured by Rein Zustand.
2017-09-25 12:32:33 -07:00
Tim Abbott a2243378ea settings: Set REALMS_HAVE_SUBDOMAINS by default.
This change means that almost every Zulip server out there will now be
using subdomains for every realm.  There are a few complications noted
in the release notes.
2017-09-25 06:52:32 -07:00
Kiran Shahdadpuri 3776e73db4 docs: Improve analytics onboarding documentation.
Tweaked by tabbott to reorganize the text a bit.
2017-09-25 06:23:30 -07:00
Eeshan Garg 390a1fec92 zulip_bots: Generate static files during provisioning.
This commit implements support for copying over static files
for all bots in the zulip_bots package to
static/generated/bots/ during provisioning. This directory
isn't tracked by Git. This allows us to have access to files
stored in an arbitrary zulip_bots package directory somewhere
on the system. For now, logo.* and doc.md files are copied over.

This commit should act as a starting point for extending our
macro-based Markdown framework to our bots/API packages'
documentation and eventually rendering these static files
alongside our webhooks' documentation.
2017-09-22 15:14:42 -07:00
Tim Abbott 3708f5708a upgrade: Include zulip::static_asset_compiler by default.
Since we've found that it's fairly frequent that we want to recommend
to developers that they upgrade to a version of Zulip from Git, it
makes sense to include that by default.
2017-09-22 11:38:20 -07:00
Tim Abbott 4da9e77096 docs: Expand documentation of provisioning.
Fixes #2668.
2017-09-22 11:23:17 -07:00
Tim Abbott b1f4c7308e docs: Fix a broken link in new documentation. 2017-09-22 11:23:17 -07:00
Tim Abbott 876fd95486 docs: Document how our dependencies are managed.
Fixes #5481.
2017-09-22 11:09:58 -07:00
Vishnu Ks 5db810b5d7 docs: Fix example code in mock section. 2017-09-19 16:56:56 -07:00
Vishnu Ks 14498d1407 docs: Use real method name instead of foo in mock section. 2017-09-19 16:56:56 -07:00
Vishnu Ks f4c69bb126 tools: Create tool for inlining email CSS during provision. 2017-09-16 07:17:48 -07:00
vbNETonIce 264dcb4e2d docs: Fix path to restart-server script. 2017-09-16 02:22:30 -07:00
zeneli 17d35af334 docs: Fix filename for new application view URL. 2017-09-16 00:38:32 -07:00
Robert Hönig fb39e884c8 docs: bots guide: Add section for writing tests. 2017-09-15 08:59:21 -07:00
Robert Hönig e01dede172 docs: bots guide: Make API subsection of developer tutorial. 2017-09-15 08:55:35 -07:00
Rishi Gupta 4a383544af hotspots: Rename and update click_to_reply. 2017-09-15 04:14:52 -07:00
Rishi Gupta 836a2c502e hotspots.js: Clean up icon positioning code.
Also will allow more fine-grained positioning.
2017-09-15 04:14:52 -07:00
Vishnu Ks fc59647a4a Vagrantfile: Provide a way to remove proxy from vagrant.
Fixes #5292
2017-09-15 03:55:32 -07:00
Robert Hönig 0941e27003 docs: Add docopt.org to shell understanding tips. 2017-09-15 01:40:59 -07:00
Eeshan Garg 0721fc851a meetings: Switch integrations meeting to Fridays 9 am (PST). 2017-09-14 10:18:15 -07:00
Supermanu 184bfe7cfd docs: Expand the french translation style guide.
As the french word organisation is used, the related line is excluded
from the linter spell check.
2017-09-14 08:35:51 -07:00
Vishnu Ks 9c70da1a78 docs: Remove misleading fullstop from vagrant plugin command. 2017-09-14 06:01:11 -07:00
Robert Hönig 29d512a4a8 docs: Move `zulip_bots` installation steps to new section. 2017-09-14 04:48:53 -07:00
Robert Hönig bc4627e61a docs: Add reference to zulip-bot-output script. 2017-09-14 04:48:10 -07:00
Robert Hönig 6bfbbaa0ce docs: Clarify zulip_bots repository install. 2017-09-14 04:48:10 -07:00
Robert Hönig 221afb1492 docs: Describe memcache flush with a 'normal permission' command. 2017-09-12 08:27:58 -07:00
Robert Hönig 52a55a37ad docs: Remove legacy Python2/3 compatibility code. 2017-09-12 06:35:29 -07:00
Robert Hönig 211fbdf59b docs: Add additional reason why mocking is useful. 2017-09-12 06:35:29 -07:00
rht 720d5d3bf4 Update roadmap.md. 2017-09-12 03:01:43 -07:00
Kir Chou 0b9bd6a510 Recommend virtualbox version should be a fixed version (fixes #6448) 2017-09-10 00:38:14 -07:00
Kir Chou 7c1802c8b1 docs: Change the start directory after `vagrant ssh` from ~ to /srv/zulip . 2017-09-10 16:35:11 +09:00
Robert Hönig e65ad533d0 docs: Add guide for mocking in tests. 2017-09-08 13:18:28 -07:00
Robert Hönig 25742c1199 Capitalize s in Terms of service.
A few strings used `Terms of service`
instead of `Terms of Service`. This change
makes the latter form consistent over the repo.
2017-09-06 09:49:19 -07:00
Robert Hönig 6120841876 docs: Update bots_guide.md.
This include various small changes to adapt
this document to the latest repo changes.
2017-09-06 09:48:04 -07:00
Tim Abbott 7f46056932 docs: Update documentation on push notifications. 2017-08-30 10:47:57 -07:00
Tim Abbott 6ef55145f5 travis: Merge the static-analysis build into backend.
[Tweaked by gnprice to leave the use of --linecoverage-report
unmodified for now.]
2017-08-29 15:42:01 -07:00
Tim Abbott e996579045 bots: Clean up supervisord documentation. 2017-08-29 09:56:56 -07:00
Robert Hönig 0c905e2f3c bots-guide.md: Describe Zulip Botserver setup with supervisord. 2017-08-29 09:56:56 -07:00
Supermanu 3be14833f0 docs: Add a french translation style guide. 2017-08-29 09:40:03 -07:00
Robert Hönig 5f220359bd bots-guide.md: Refactor Zulip Botserver guide.
Tweaked by tabbott to give greater priority to the explanation of what
it is.
2017-08-28 17:34:54 -07:00
Sarah e280a5f8e8 docs: Update new feature tutorial.
Update new feature tutorial to describe recent changes
to the backend and front end processes based on
refactoring.
2017-08-27 11:37:43 -07:00
rht 437b2a3146 Update "MacOS" text to "macOS" 2017-08-26 09:00:42 -07:00
Tim Abbott 69059dcac8 tests: Clean up subscribing from webhook tests. 2017-08-24 21:37:57 -07:00
Tim Abbott 1c9521a8d6 docs: Fix buggy relative documentation link. 2017-08-24 19:59:59 -07:00
Robert Hönig 18a080cd6c Don't handle json payload key errors inside webhooks.
Fixes first part of #6213.
2017-08-24 11:33:14 -07:00
Tim Abbott 30e1aada42 docs: Stop documenting how to create multiple organizations.
This documentation wasn't super helpful, since users will want
REALMS_HAVE_SUBDOMAINS.
2017-08-23 20:07:17 -07:00
Tim Abbott a6ab3269d2 docs: Clean up headings on new existing server instructions. 2017-08-23 15:11:23 -07:00
Tim Abbott a397e92fb3 docs: Fix problematic line-wrapping. 2017-08-23 15:10:35 -07:00
Hobson Lane a647f7bf9f docs: Add tips on installing on an existing server. 2017-08-23 14:53:14 -07:00
Vaida Plankyte 5549a9fc78 docs: Move template section from translating.md to html-templates.
Fixes #1649.
2017-08-23 13:43:29 -07:00
Umair Khan 8171b0ea25 i18n: Add unescape documentation. 2017-08-23 00:23:16 -07:00
Robert Hönig 1e4283aabf docs: Update bots-guide.md to reflect current APIs.
Tweaked by tabbott to do some line-wrapping and small edits.
2017-08-22 23:46:20 -07:00
Tim Abbott 8dff14430e tools: Remove old python 3 compatibility checker.
Now that we've migrated over to Python 3, this tool is no longer required.

Fixes #6217.
2017-08-22 14:58:59 -07:00
Robert Hönig 84a7350de6 docs: Clarify webhook-specific guides. 2017-08-22 10:38:48 -07:00
rht 80f4ba7a76 requirements: Replace py3_dev.txt with dev_lock.txt. 2017-08-22 10:10:57 -07:00
David Taylor 0ffc758129 Add 'category' to WebhookIntegration definition 2017-08-21 14:58:38 -07:00
Greg Price 78b41f375d py3: Revise and update shebang discussion in docs/shell-tips.
This keeps the examples in line with our actual codebase.

Also while I'm here revise it to explain the actual motivation for our
use of `env`, and to correct some subtle details -- it's actually the
kernel that interprets the shebang (as visible in e.g. a `strace` log),
not the shell, and when the program is executed as `./my_program.py`
the exact name including `./` is passed to the interpreter.
2017-08-16 17:54:43 -07:00
Greg Price a099e698e2 py3: Switch almost all shebang lines to use `python3`.
This causes `upgrade-zulip-from-git`, as well as a no-option run of
`tools/build-release-tarball`, to produce a Zulip install running
Python 3, rather than Python 2.  In particular this means that the
virtualenv we create, in which all application code runs, is Python 3.

One shebang line, on `zulip-ec2-configure-interfaces`, explicitly
keeps Python 2, and at least one external ops script, `wal-e`, also
still runs on Python 2.  See discussion on the respective previous
commits that made those explicit.  There may also be some other
third-party scripts we use, outside of this source tree and running
outside our virtualenv, that still run on Python 2.
2017-08-16 17:54:43 -07:00
Tim Abbott 4ce079b689 docs: Clean up release notes for the Zulip 1.7 release.
Now that we have the expensive migrations running automatically early
in the process, we can drop them to more of a footnote.
2017-08-16 13:28:05 -07:00
Tim Abbott d43f5ceeec database: Add database index for wildcard mentions. 2017-08-16 13:28:04 -07:00
Tim Abbott 8bb812c8a9 database: Add database index for alert words. 2017-08-16 12:39:01 -07:00
Robert Hönig a22f524fe1 Remove Zulip API licensing information. 2017-08-16 07:03:39 -07:00
Greg Price cd897b7a99 docs/prod*: Simplify core install instructions a bit by cutting /root/zulip .
This works fine in my testing -- I followed it on a fresh `trusty` VM,
after just getting SSL certs with our LetsEncrypt instructions, and
the install completed successfully.

And in the source tree, the only evidence I can find of a potential
remaining dependency on the `/root/zulip` path is the Nagios config in
`puppet/zulip_ops/`.  That's actually already broken, in that it
depends on `/root/zulip/api/`, so we'll have to sort that out;
and in any case, it doesn't matter to most people installing Zulip.

Add a mention that the install script will move the just-unpacked
directory out from under you.  While we're here, add a few words about
where the deployed code is laid out.

Text of those last words tweaked by tabbott.
2017-08-15 17:46:42 -07:00
Greg Price 71fa4dfa5d docs/prod*: Give clearer instructions for rolling back a deploy.
Also cut an obsolete mention of /root/zulip .
2017-08-15 17:41:07 -07:00
Greg Price e469578a55 py3: Fix up (almost) all script invocations to rely on shebangs.
This follows up on 207cf6302 from last year to clean up cases that
have apparently popped up since then.  Invoking the scripts directly
makes a cleaner command line in any case, and moreover is essential
to how we control running a Zulip install as either Python 2 or 3
(soon, how we always ensure it runs as Python 3.)

One exception: we're currently forcing `provision` in dev to run
Python 3, while still running both Python 2 and Python 3 jobs in CI.
We use a non-shebang invocation to do the forcing of Python 3.
2017-08-15 17:30:31 -07:00
Tim Abbott 4e7c56fff6 docs: Fix a buggy link to realm-admin-docs. 2017-08-15 17:23:18 -07:00
Tim Abbott 415d511469 docs: Mention a few highlights from settings.py. 2017-08-15 17:21:40 -07:00
Tim Abbott 330493707a docs: Improve install guide outgoing links. 2017-08-15 17:21:40 -07:00
Tim Abbott 771afd093c docs: Restructure install guide troubleshooting section. 2017-08-15 17:21:40 -07:00
Tim Abbott 634532b414 docs: Remove discussion of community organizations.
This significantly simplifies the page, and they don't exist anymore
anyway.
2017-08-15 17:21:40 -07:00
Tim Abbott 7582d0920d docs: Improve clarity of production install documentation for emails.
Based on #6094, this extracts email configuration as its own step.
2017-08-15 17:21:40 -07:00
Tim Abbott 4725afe99a settings: Move NOREPLY_EMAIL_ADDRESS to DEFAULT_SETTINGS.
Since we're auto-detecting the value anyway, there's no reason it
can't be moved to DEFAULT_SETTINGS.

This lets us remove some clutter from the installation documentation.
2017-08-15 17:21:40 -07:00
Tim Abbott 80a5ecf3c8 docs: Improve readability of the prod-email instructions. 2017-08-15 17:21:40 -07:00
Tim Abbott 2bfe93f290 docs: Move subscribe instructions to end of install instructions. 2017-08-15 16:53:55 -07:00
Tim Abbott 4525843681 docs: Clarify documentation on verifying push notifications.
This is based on discussion in #6100.
2017-08-15 11:25:30 -07:00
Tim Abbott 0cd287b3f5 mypy: Add documentation for requirements/mypy.txt. 2017-08-15 07:24:42 -07:00
Aaron Tse 363872bf46 docs: Correct incorrect description in event-systems.md. 2017-08-15 07:24:32 -07:00
Steve Howell 658ac782a2 Add page_params.unread_msgs.count.
This field is convenient for bankruptcy checks.  Clients could
calculate it from page_params.unread_msgs before this change, but
it would kind of a painful calculation.

To add count, we had to simplify the mypy annotations, which weren't
really accurate before.
2017-08-14 12:38:09 -07:00
Greg Price 6e9f8b90dc provision: Remove the last reference to `install-mypy`, and delete it.
This script has been redundant for some time now.
2017-08-10 18:00:19 -07:00
rht 761c11276f docs: Remove a redundant step in dev setup.
`mypy` is already installed in the previous step at Python 3 virtualenv
setup step.
2017-08-10 17:50:28 -07:00
Jack Zhang 9461f2f799 docs: Update /integrations links to new pushState routes.
Update Email, Beanstalk, Hubot, JIRA, and Trello integrations
links.

The Hubot integrations section (/integrations#hubot-integrations)
was removed  in an earlier redesign of /integrations. This commit
replaces the link with the hubot-scripts organization on
Github, which displays the comprehensive list of all integrations
available via Hubot.

Fixes #5875.
2017-08-10 10:21:53 -07:00
Steve Howell f9bd610a60 docs: Make it explicit that chat.zulip.org is a Zulip server.
It should be kind of obvious, but people tend to skim over
URLs.
2017-08-09 19:33:57 -07:00
Greg Price 98cef0ab48 py3: Augment all mentions of system Python packages to include Python 3.
In some of these contexts, we may still be *using* the Python 2
version, but at least this should eliminate running into
`ImportError`s one by one in scripts that run outside a virtualenv,
as we update their shebangs to refer to Python 3.

Several Python libraries we use don't come in Python 3 versions on
trusty: gevent, boto, twisted, django, django-tagging, whisper.
The latter two don't come in Python 3 versions even on xenial.
So some work required before we can actually switch the code that
relies on those libraries to run as Python 3 -- probably the best
solution will be to backport them all in our apt repo.  (All but
`whisper` are packaged in zesty; `whisper` upstream just grew Python 3
support this year.)
2017-08-09 14:07:05 -07:00
Steve Howell 2f775c3e0b node tests: Extract zrequire helper.
We are phasing out the following in tests:

    add_dependencies - this is just kind of a clunky UI
    require - normal JS requires cause test leaks

In order to plug require leaks, we are effectively doing what
we always have done inside of add_dependencies, which is to
keep track of which modules we have done `require` on, and
these get cleared between tests.

Now we just use `zrequire` every time we want to pull in real
code to our global namespace.
2017-08-09 12:32:09 -07:00
Vaida Plankyte b6da398e17 docs: Add bug report guidelines. 2017-08-09 11:38:46 -07:00
Greg Price d3a69da829 py3: Fix or remove (almost) all references to Python 2 venv in docs.
I think soon we'll put the Python 3 venv at `/srv/zulip-venv` and
make `/srv/zulip-py3-venv` just an alias to that (then remove the
alias too), but for now the old name is helpful for spotting places
that need an update.

The `/srv/zulip-venv` name still appears in codepaths used by Travis
tests.
2017-08-08 15:48:12 -07:00
rht b0e4233d3f Dev environment setup: default to Python 3.
From the line in tools/provision it should trickle to the rest of the
scripts. This works since almost all the python scripts have been linted
to be generic.

Proof that the setup is python3 only: with this commit, within the
vagrant container env, /srv/zulip-venv is no longer present and
`./tools/run-dev.py` runs just fine.

[gnprice: Added `rm -f` and warning message, and made small edits.]
2017-08-08 15:28:11 -07:00
Jack Zhang 4ba5b2f364 docs: Create hotspots subsystem documentation. 2017-08-05 18:32:37 -07:00
Pweaver (Paul Weaver) 1afaa67c7c deps: Change npm to yarn for reliablity, security, and speed. 2017-08-05 12:29:06 -07:00
Greg Price cc30226af0 deliver_email: When disabled, sleep forever rather than exit.
This makes supervisor see the service as cheerfully running
and let it alone, rather than constantly retry starting it.
Because the crash/restart loop means repeatedly spending a
couple of seconds loading Django and the app, separated by
brief periods while supervisor notices the crash and acts
on it, it was actually consuming about 30-50% CPU on the
zulipchat.com staging server.
2017-08-03 16:28:19 -07:00
Greg Price 2cc0689bcf api migration: Update the prod "Secure, maintain, and upgrade" doc. 2017-08-03 12:23:29 -07:00
Greg Price 8f73129d6a api migration: Update docs/directory-structure. 2017-08-03 12:23:29 -07:00
Greg Price fb9ffcd35a api: Update docs/integration-guide. 2017-07-31 21:25:13 -07:00
Tim Abbott 780dbe72d5 docs: Clean up new markdown test docs.
Thanks for Joshua Pan for the review!
2017-07-31 09:47:47 -07:00
Tim Abbott c638ea8d11 docs: Fix spelling of Travis CI. 2017-07-31 09:36:22 -07:00
Tim Abbott 1ffb791d0b docs: Further document the recommended Travis CI workflow. 2017-07-31 09:35:32 -07:00
Vaida Plankyte 9859264d56 docs: Emphasise Travis CI setup in dev env setup docs.
Fixes #5266.
2017-07-31 09:35:29 -07:00
Tim Abbott 0161671981 markdown: Document the new features of our markdown testing system.
This and the preceeding commits is significant progress towards
completing #1857.
2017-07-28 18:31:46 -07:00
Tim Abbott 4b7c23f133 markdown: Rename bugdown-data.json to a more reasonable name. 2017-07-28 17:54:01 -07:00
Tim Abbott 4f4d28477d markdown: Rename markdown.contains_bugdown.
This name was confusing, since "bugdown" doesn't exactly suggest
"backend markdown processor" to people.
2017-07-28 17:51:33 -07:00
Tim Abbott f834ae14bc docs: Update management command documentation. 2017-07-28 16:12:10 -07:00
Tim Abbott 470d0a481c docs: Update changelog through today. 2017-07-27 21:57:41 -07:00
Greg Price 98b1678d5d docs: Document how to make settings changes take effect.
The page at https://zulip.org/server.html reminds me that we didn't
have clear documentation of this point where we discuss configuring
the server.
2017-07-27 21:44:58 -07:00
Greg Price 76b62620d9 docs: Add a "production" overview page.
This pulls together what's covered in detail in several
longer pages, and gives us a page that can serve as a good
drop-in replacement for https://zulip.org/server.html .

Also tweak a couple of related bits for clarity and orthography.
2017-07-27 21:44:58 -07:00
Tim Abbott 7abcc1b274 docs: Add a brief document explaining management commands.
Fixes #1330.
2017-07-27 18:00:53 -07:00
Vaida Plankyte 282eb5585e docs: Add section explaining GitHub/Google auth for dev env. 2017-07-27 17:35:14 -07:00
Steve Howell e6e3bbb780 Add a "mentions" section to unread message ids. 2017-07-27 16:14:26 -07:00
Jason Michalski 4f0110e081 Add unread_msgs to the initial state data.
We are adding a new list of unread message ids grouped by
conversation to the queue registration result. This will allow
clients to show accurate unread badges without needing to load an
unbound number of historic messages.

Jason started this commit, and then Steve Howell finished it.

We only identify conversations using stream_id/user_id info;
we may need a subsequent version that includes things like
stream names and user emails/names for API clients that don't
have data structures to map ids -> attributes.
2017-07-27 16:14:25 -07:00
Steve Howell b588bc47fc Create zerver_usermessage_unread_message_id index.
This creates a partial index on UserMessage that lets us
find unread messages for particular user id.
2017-07-26 22:28:19 -07:00
Greg Price 9f62b402b5 install docs: Fix some small grammar and orthography issues.
After editing this file for the previous commit, I couldn't unsee
"low-traffic the".  So I fixed that, saw more issues, and then just
went through the page for everything that was similarly trivial to fix.
2017-07-25 17:35:39 -07:00
Greg Price 273533643a install docs: Say explicitly that Zulip should have its own (virtual) machine.
This is the main thing that https://zulip.org/server.html explains
that we don't yet in our main documentation tree.
2017-07-25 17:35:39 -07:00
Cynthia Lin 83993aa388 docs: Update user docs guide with new sidebar index. 2017-07-24 22:59:55 -07:00
Rishi Gupta 481c85fb48 settings: Update text in templates. 2017-07-24 17:33:14 -07:00
Shubham Gupta 205d0993ef docs: Updated troubleshooting guide for ssh connection errors.
Tweaked by tabbott to simplify the language a bit.

Fixes #5889.
2017-07-24 17:26:19 -07:00
Rishi Gupta 161f3c4e68 docs: Fix link to open accessibility issues. 2017-07-22 11:51:33 -07:00
Vishnu Ks 700e08da4a docs: Use get_user in mypy.md. 2017-07-20 16:50:23 -07:00
Greg Price 2ed02a0c5d gitignore: Anchor patterns that should be anchored. 2017-07-19 14:03:49 -07:00
Pweaver (Paul Weaver) d3ffc81726 Enable Hot Module Replacement in webpack.
This allow the webbpack dev server to properly reload JavaScript modules
while running in dev without restarting the server. We need to connect
to webpack-dev-server directly because SockJS doesn't support more than
one connection on the same host/port.
2017-07-18 11:02:05 -07:00
Tim Abbott 2317819e47 nginx: Use the Django 404 page for files under static/.
This elimintes the need for us to maintain duplicate copies of the
Zulip 404 error pages.

Fixes #5382.
2017-07-18 09:55:30 -07:00
Tim Abbott 5488ab4225 docs: Update links to python-zulip-api project.
We just renamed a bunch of files in that repository.
2017-07-18 00:07:17 -07:00
Rishi Gupta aa845e7f60 models: Replace ScheduledJob with ScheduledEmail.
ScheduledJob was written for much more generality than it ended up being
used for. Currently it is used by send_future_email, and nothing
else. Tailoring the model to emails in particular will make it easier to do
things like selectively clear emails when people unsubscribe from particular
email types, or seamlessly handle using the same email on multiple realms.
2017-07-17 16:05:38 -07:00