Commit Graph

1322 Commits

Author SHA1 Message Date
David Rosa Tamsen 11b8b8f483 docs: Add rtd layout template.
The readthedocs theme overrides a few settings in their layout template.
We might want to change some settings back to their default values.

This commit copies the original readthedocs layout file from
https://github.com/rtfd/sphinx_rtd_theme/blob/master/sphinx_rtd_theme/layout.html
to _templates/layout.html, and excludes it from lint and template checks.

Addresses #7417.
2017-11-22 10:59:14 -08:00
rht e169bb0954 zerver: Remove simplejson dependency.
Modified by tabbott to put the third-party code in a new file.

Fixes #6970.
2017-11-21 21:51:48 -08:00
rht bff736868e Generate custom-icon-webfont on each provision or update-prod-static.
Fixes #7354.
2017-11-20 16:36:49 -08:00
David Rosa Tamsen 327bb05733 docs: Make index page easy to find.
This commit adds an Index link to bottom of nav bar.

Fixes #7416.
2017-11-20 16:33:04 -08:00
Greg Price 0b543bfc0e docs: Rewrite certbot discussion, to enjoy the new automation.
This doesn't touch the main path through the install docs; that will
see a broader rewrite soon as we make outbound email optional for a
nascent server, make the hostname and admin email into mandatory
installer flags, and then radically simplify the instructions by
removing mandatory editing of `settings.py` and folding most of what's
left into the installer.
2017-11-20 15:52:07 -08:00
Harshit Bansal e75f0c1ee4 requirements: Rename requirements files.
This commit renames various source requirements files like `dev.txt`,
`mypy.txt` etc to `dev.in`, `mypy.in` etc and various locked requirements
files like `dev_lock.txt`, `mypy_lock.txt` etc to `dev.txt`, `mypy.txt`
etc. This will help in emphasizing to the user that *.in are actually
input to `update-locked-requirements` tool which should be run after
updating any of these.
2017-11-21 02:38:26 +05:30
Harshit Bansal 95b3f2e745 requirements: Add mypy.txt and docs.txt to locked requirements framework. 2017-11-21 02:38:26 +05:30
Tim Abbott e81b64d511 docs: Move remotedev docs to docs/development/ and fix links.
Thanks to SivagiriVisakan for pointing out the issues here; I ended up
redoing this since the doc really belongs in that directory.
2017-11-20 11:13:59 -08:00
Balaji2198 489feaf139 docs: Add a few more articles to subsystems TOC.
These are subsystems documentation, which was accidentally not listed
in the TOC.
2017-11-20 10:22:06 -08:00
Balaji2198 d6fb70e8dc docs: Move users.md to subsystems/ and give it a title.
Edited by tabbott to improve the users.md title and update the TOC in
this commit.
2017-11-20 10:21:53 -08:00
Balaji2198 1f43252903 docs: Update TOC in production to include SSL and email.
This adds a few missing entries to the TOC, which hadn't made sense
back when Zulip's ReadTheDocs didn't have the new collapsing feature.

Tweaked by tabbott to also give the SSL certificates doc an
appropriate title for its new role.
2017-11-20 10:21:02 -08:00
Balaji2198 c3ac9894a5 docs: Move migration-renumbering.md to subsystems/.
It belongs in that part of the documentation.  We also update the
links in docs/subsystems/schema-migrations.md.
2017-11-20 10:20:31 -08:00
Balaji2198 a5e605d73c docs: Delete brief-install-vagrant-dev.md
This was the old version of our installation docs, and hasn't been
used or updated in about a year.
2017-11-20 10:20:15 -08:00
Tommy Ip 02be1a11cc docs: Document Firefox's screenshot feature. 2017-11-20 10:01:13 -08:00
Tim Abbott 46ba76e245 Fix broken link to GitHub CONTRIBUTING guide. 2017-11-19 20:31:27 -08:00
David Rosa Tamsen a6510c4626 docs: Remove integration docs from tutorials/index.
Merged PR 7414 moved integration docs to /api, so
this commit updates tutorials/index.rst accordingly.
2017-11-17 18:44:54 -08:00
Tim Abbott b2637c8400 docs: Fix broken link due to integration guide migration. 2017-11-17 12:25:33 -08:00
derAnfaenger 73915a9631 docs: Move integration docs to /api. 2017-11-17 11:58:54 -08:00
David Rosa Tamsen 4906bc8e4a docs: Prevent readthedocs from overriding collapse_navigation setting.
Expand bullets "[+]" show up on locals instance, but they
do not show up online on readthedocs. The expand icon is valuable
to indicate that each section has more content.

The problem is readthedocs appends code to conf.py that overrides the
html_theme_options prior to a build. This commit prevents this from
happening so that collapse_navigation remains set to False.

In response to merged PR 7326.
2017-11-17 11:28:37 -08:00
Sarah 35e60d5e14 new-feature-tutorial: Add references to Django.
With some tweaks by tabbott to update links for our recent
documentation migration.

Fixes #670.
2017-11-16 22:57:31 -08:00
Tim Abbott 569cb1d2fb docs: Move readme-symlink symlink to be just called readme.
This name was always a little confusing.
2017-11-16 21:43:25 -08:00
Mohd Ali Rizwi 66d658d7f1 docs: Use `git clone -c` to set `git pull` to rebase by default.
This updates the developer documentation to recommend `git clone -c`
to set the git pull mode to be rebase by default in the repository
configuration.

The hope is that this will help minimize how often new contributors
end up accidentally messing up their PRs by using `git pull`.

Tweaked by tabbott to fix broken links and optimize the language.

Fixes: #7022.
2017-11-16 14:35:02 -08:00
KiranS 92caa4abab docs: Add more troubleshooting cases to Vagrant guide. 2017-11-16 14:12:38 -08:00
Rishi Gupta 549401ede4 docs: Update emoji.md to explain new naming scheme. 2017-11-16 14:05:49 -08:00
Tim Abbott cb4acf2aa4 docs: Lint rst files for trailing whitespace. 2017-11-16 13:20:50 -08:00
Tim Abbott bf77ad3a6e docs: Clean a few files of too-long lines.
We also document why the rest of them are still on the list.
2017-11-16 11:49:00 -08:00
Greg Price 011114397b docs: Fix some Markdown links missing a close-paren.
These were just introduced today.
2017-11-16 11:43:19 -08:00
Tim Abbott 6973f1d1ef docs: Fix unnecessary absolute links in docs/. 2017-11-16 11:39:59 -08:00
Tim Abbott 07c2b205a4 docs: Update absolute links to point to new URLs.
This should get test-documentation and test-help-documentation passing
again after we moved everything around in the last commit.

There are a lot more absolute links (generally in code comments) to
update, but they are lower-priority and can be done in a follow-up
pass.
2017-11-16 10:08:22 -08:00
David Rosa Tamsen 7072fa5b37 docs: Reorganize developer docs to improve navigation.
This commit helps reduce clutter on the navigation sidebar.
Creates new directories and moves relevant files into them.
Modifies index.rst, symlinks, and image paths accordingly.

This commit also enables expandable/collapsible navigation items,
renames files in docs/development and docs/production,
modifies /tools/test-documentation so that it overrides a theme setting,
Also updates links to other docs, file paths in the codebase that point
to developer documents, and files that should be excluded from lint tests.

Note that this commit does not update direct links to
zulip.readthedocs.io in the codebase; those will be resolved in an
upcoming follow-up commit (it'll be easier to verify all the links
once this is merged and ReadTheDocs is updated).

Fixes #5265.
2017-11-16 09:45:08 -08:00
Rishi Gupta c377db7d04 docs: Update intro text to index.rst. 2017-11-15 14:32:25 -08:00
derAnfaenger 5ef09bfcd4 docs: Move bot docs to /api.
With a few fixes for rendering bugs.  The rest will be in a follow-up
issue.
2017-11-15 09:58:29 -08:00
Rishi Gupta c019c1ba70 docs: Update chat-zulip-org.md. 2017-11-14 16:04:23 -08:00
Rishi Gupta df8e156e50 docs: Reorder sections in chat-zulip-org.md. 2017-11-14 16:04:23 -08:00
Rishi Gupta 87b470ff40 docs: Remove information on office hours and sprints.
Also removes references to meeting agendas that haven't been updated in
months.
2017-11-14 16:04:23 -08:00
Rishi Gupta ee2ea3750c docs: Split a CONTRIBUTING.md out of README.md.
Also contains a number of updates, additions, and deletions; this is
essentially a rewrite of the github landing page experience.
2017-11-14 16:04:23 -08:00
Rishi Gupta 7e9273bc31 docs: Stop recommending the dev environment in prod.md.
The dev environment has none of the onboarding that chat.zulip.org and the
prod install have.
2017-11-14 16:04:23 -08:00
Greg Price 415da352df prod install: Cut premature suggestion to configure auth backends.
The warning here means that the admin can't really act on this yet if
they want to disable email auth, which is likely among admins that
want to make any changes here.  And for admins who don't, this is an
extra thing to read and make a decision about before they can get a
server running.  See #6985.

Conversely, we already discuss auth backends right at the top of the
`prod-customize` doc, which is linked under "Next steps" at the end of
these instructions.

The warning about EmailAuthBackend is important; but we can move it to
the config file right next to the setting, and then it's available
right when it's actionable, which is if the admin is actually thinking
about changing the setting.
2017-11-14 15:57:39 -08:00
Tim Abbott f756f55145 docs: Rename docs/README.html to docs/documentation.html.
Since it's now the top-level documentation for our documentation
system in general, not just docs/, it deserves a more normal name.
2017-11-14 15:52:58 -08:00
Vishnu Ks 36f29764cb emails: Add option to forward mails send in dev env to external email.
Fixes #7085.
2017-11-14 15:27:29 -08:00
Eeshan Garg 4755ecae8a docs/dev-env: Recommend setting up lxc network config on Debian.
LXC on Debian does not ship with a default network config for
containers, so we now recommend setting up the lxc network config
manually.

Tweaked by tabbott to make these details much harder to miss.
2017-11-14 11:19:33 -08:00
Tim Abbott a047584d0b docs: Use parallelism when building docs.
This makes things significantly faster on a multiprocess machine.
2017-11-14 10:41:38 -08:00
Tim Abbott 01a8dd04d3 docs: Update our changelog. 2017-11-10 17:40:50 -08:00
Rishi Gupta b88ba90b30 docs: Make minor updates to chat-zulip-org.md. 2017-11-10 16:44:42 -08:00
Brock Whittaker 74d91bff22 input-pill: Add `onpillcreate` method. 2017-11-10 14:14:03 -08:00
Brock Whittaker 7b00736fa2 input-pill: Add "input_pill" class and documentation. 2017-11-10 14:14:03 -08:00
derAnfaenger 19bc55aa45 Fix various typos.
The typos and their corrections were found with the
aid of https://github.com/lucasdemarchi/codespell.
2017-11-09 16:26:38 +01:00
Steve Howell cdc1bf3d5e node test: Remove add_dependencies(). 2017-11-08 12:24:17 -08:00
David Rosa Tamsen dd10d30d1e docs: Add setting to conf.py to disable sticky_navigation
The left navigation bar defaults to "sticking" to the screen as you
scroll.  This commit adds the sticky_navigation setting to conf.py to
disable the default behavior.

This addresses part of #5265.
2017-11-07 16:48:15 -08:00
Rhea Parekh 34667e7b64 markdown_test_cases: Clean bugdown_matches_marked from the tex cases. 2017-11-07 11:55:25 -08:00
Rishi Gupta dec4b9ed93 remote dev: Add code and instructions for creating digital ocean droplets.
Mostly copied from the zulip/zulip-gci repository, but with some changes to
wordings and code cleanup for linters.
2017-11-06 12:20:39 -08:00
rht ada9979f51 docs: Use python 3 syntax for typing. 2017-11-04 19:58:05 -07:00
Tim Abbott ff2f55e8ba docs: Add some basic coverage of our mypy Python 3 situation. 2017-11-04 19:46:32 -07:00
Tim Abbott 671c3dea66 mypy: Fix type annotation style in webhook walkthrough. 2017-11-04 19:44:12 -07:00
Greg Price 909631b5a9 docs/oauth: Update for Google UI changes, and for zulipdev.com.
The control panel on the Google side doesn't seem to match the
instructions we have; it looks pretty 2017 to me, so I imagine
it's had a redesign since the instructions were written.

Also, in dev, EXTERNAL_HOST is now a port on zulipdev.com, not on
localhost.

Update these instructions for those developments, and edit lightly.
In dev, recommend setting in `dev_settings` instead of in
`prod_settings_template`; that feels to me a little more reflective of
the actual intent, and the effect should be equivalent.
2017-11-03 13:38:59 -07:00
Greg Price eafb82ab2e docs: Move docs on testing OAuth to their own page.
In some minutes of searching yesterday afternoon on the docs site,
I couldn't find docs on how to set up our OAuth integrations for
the dev environment -- even though I was pretty sure they should
be there somewhere, because I'd just been told that.  Wasn't until
I considered the problem fresh today, and grepped the docs source
instead, that I found them.

So, move them to a separate page so they're in the nav.
2017-11-03 13:38:59 -07:00
Greg Price b33d981d7b settings: Simplify setting ALLOWED_HOSTS, by handling EXTERNAL_HOST.
This means one fewer thing the admin typically needs to read, absorb,
and make a decision about at install time.

The one way this change could hypothetically cause trouble is if the
admin wants to keep subdomains of EXTERNAL_HOST out of ALLOWED_HOSTS.
But while the subdomains often won't exist as domain names, it's hard
to imagine the situation in which they would exist but be under
someone else's control, or be doing something other than serving
Zulip realms.
2017-11-03 13:38:59 -07:00
rht e51d98cd96 refactor: Remove usage of ModelReprMixin. 2017-11-02 11:01:47 -07:00
Tim Abbott 3ed707c225 docs: Add more detail on the apt upgrade process and postgres. 2017-10-31 18:11:54 -07:00
Rhea Parekh 6f029d487e tests: Change test_content to text_content in markdown_test_cases.
docs: Fix error in markdown documentation.
2017-10-31 08:51:49 -07:00
Greg Price eb55a3a1ba template context: Give better names to the URLs for the API.
The "subdomain" label is redundant, to the extent it's even
accurate -- this is really just the URL we want to display,
which may or may not involve a subdomain.  Similarly "external".

The former `external_api_path_subdomain` was never a path -- it's a
host, followed by a path, which together form a scheme-relative URL.
I'm not quite convinced that value is actually the right thing in
2 of the 3 places we use it, but fixing that can start by giving an
accurate name to the thing we have.
2017-10-30 18:29:29 -07:00
Greg Price 271a9f0da7 settings: Eliminate disused variable EXTERNAL_API_URI.
This was part of the logic to handle EXTERNAL_API_PATH varying.
But also it was already no longer used -- it was only ever passed
into template contexts, as `external_api_uri`, and it'd been
overtaken there by `external_api_uri_subdomain`.

So, update our dev docs to reflect that, and eliminate the variable.
2017-10-30 18:29:29 -07:00
Greg Price aeb69dfd61 template context: Eliminate now-constant variable `api_site_required`. 2017-10-30 18:29:29 -07:00
Jack Zhang fef828a037 compose: Add video link button, powered by Jitsi. 2017-10-30 17:13:47 -07:00
rht c4fcff7178 refactor: Replace super(.*self) with Python 3-specific super().
We change all the instances except for the `test_helpers.py`
TimeTrackingCursor monkey-patching, which actually needs to specify
the base class.
2017-10-30 14:30:25 -07:00
Tim Abbott 669517c450 docs: Clarify 1.6-and-below instructions for upgrade-zulip-from-git. 2017-10-29 12:41:32 -07:00
Rishi Gupta b7a9068724 mobile: Update docs and portico URLs to point to new Android app. 2017-10-28 15:27:29 -07:00
Tim Abbott 1cd017288d views: Fix imports of REQ/has_request_variables from the wrong place.
These were never in zerver/decorator.py, and so it makes sense to
import them zerver/lib/request.py, mostly for ease of finding things.
2017-10-27 15:07:31 -07:00
Tim Abbott 1a283434a8 docs: Clean up links for writing integration docs.
There's no need to have an empty redirect section at the bottom of
this page.
2017-10-26 15:14:11 -07:00
derAnfaenger ec17460c68 docs: Update preferred integration logo format to svg. 2017-10-26 15:06:07 -07:00
Tim Abbott 3e16b02f30 docs: Update release checklist following 1.7.0 release. 2017-10-26 13:53:21 -07:00
derAnfaenger 51f1281ee9 docs: Specify the updated bot StateHandler API. 2017-10-25 15:37:28 -07:00
derAnfaenger 81a6b0d72c docs: Update deprecated code in writing bots guide. 2017-10-25 15:29:08 -07:00
Tim Abbott a03f322028 version: Bump version following 1.7 release. 2017-10-25 10:37:51 -07:00
Tim Abbott ff6a502200 Release Zulip Server 1.7.0. 2017-10-25 09:27:39 -07:00
Tim Abbott 9cc561e442 docs: Update changelog with a few last entries for the 1.7 release. 2017-10-24 16:45:00 -07:00
Tim Abbott 730c77c7df docs: Document scripts/setup/generate-self-signed-certs.
And more generally clean up our non-LetsEncrypt SSL docs.

This should make it a bit easier to setup a Zulip server.
2017-10-24 13:48:14 -07:00
Tim Abbott 7fd7e054e1 docs: Fix broken link in changelog on ReadTheDocs. 2017-10-23 17:43:21 -07:00
Tim Abbott 8a32f012bf docs: Highlight notes on apt upgrades for perf. 2017-10-23 17:41:25 -07:00
Tim Abbott a174455ae1 docs: Document API super user bots a bit more in security model docs. 2017-10-23 17:37:38 -07:00
Tim Abbott e450d9ab8c docs: Document text_content field of our markdown test cases. 2017-10-20 16:08:16 -07:00
Tim Abbott 42d6defd40 docs: Update changelog for changes going into 1.7 release. 2017-10-20 15:39:53 -07:00
derAnfaenger 1b67652380 docs: Add explicit command to su to zulip from prod step 5 on. 2017-10-20 14:57:44 -07:00
Tim Abbott 0828b4ad90 docs: Add troubleshooting notice for `su zulip` as the zulip user. 2017-10-20 14:57:44 -07:00
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
Durga Akhil Mundroy 146dfa6f0b org-permissions: Add allow_edit_history organiztion setting.
This new setting controls whether or not users are allowed to see the
edit history in a Zulip organization.  It controls access through 2
key mechanisms:

* For long-ago edited messages, get_messages removes the edit history
  content from messages it sends to clients.

* For newly edited messages, clients are responsible for checking the
  setting and not saving the edit history data.  Since the webapp was
  the only client displaying it before this change, this just required
  some changes in message_events.js.

Significantly modified by tabbott to fix some logic bugs and add a
test.
2017-07-16 10:10:06 -07:00
Rohitt Vashishtha d31686b576 docs: Fix typos in git-guide.md. 2017-07-16 00:22:05 -07:00
Harshit Bansal ebdd8c9e3d emoji: Switch to using `emoji-datasource` npm package.
This commit does the following things:
* Instead of using a manual tool for downloading sprite sheets, use
  `emoji-datasource` npm package.
* Modify the `build_emoji` script to use sprite sheets from the npm
  package.

Bumps PROVISION_VERSION.

Fixes: #4730.
2017-07-13 21:52:01 -07:00
Harshit Bansal 420327b558 provision: Install NPM packages in the beginning of provisioning process.
NPM packages should be installed at the beginning of the provisioning
process so that later in the provisioning process if a script requires
any NPM package it can use it. Earlier, we were installing NPM packages
in the last as the installation process can fail due to network issues
but since we now retry in case the installation fails, they can be
installed safely at the beginning of the process as well just like apt
packages.
2017-07-13 21:52:01 -07:00
Tim Abbott 4e2b5bf200 docs: Document naming for schema migrations. 2017-07-10 16:03:16 -07:00
rht 8a50fbfa0b docs: Move ')' to the correct location. 2017-07-10 10:22:47 -07:00
Tim Abbott 6eca9a1fbf docs: Update recommendations of disk requirements.
Addresses part of #5724.
2017-07-07 12:58:42 -07:00
Tim Abbott 094c8fd812 docs: Update link to Zulip API bindings code. 2017-07-06 13:08:25 -07:00
Tim Abbott 32bc794a17 docs: Update link to contrib_bots README.md. 2017-07-06 12:37:02 -07:00
Jack Zhang 13a5c625ca docs: Add note for importing _() function in translating.md. 2017-07-05 12:01:59 -07:00
Vaida Plankyte d8ab716820 german.md: Use the singular 'they' pronoun. 2017-07-05 09:27:44 -07:00
Vaida Plankyte 18bf15cfed git-guide.md: Use the singular 'they' pronoun. 2017-07-05 09:27:44 -07:00
Vaida Plankyte 43a98b896b custom-apps.md: Use the singular 'they' pronoun. 2017-07-05 09:27:43 -07:00
Vaida Plankyte c52fc84fd0 bots-guide.md: Use the singular 'they' pronoun. 2017-07-05 11:33:42 +02:00
Vaida Plankyte 9bb0602ad4 docs: Add info on resolving merge conflicts to git-guide.md.
Fixes #5586.
2017-07-04 15:48:06 -07:00
Tim Abbott c2ee259987 settings: Simplify testing code for bool realm settings.
Now, when we add a new realm setting with the bool type, we don't need
to edit the tests at all.
2017-07-04 14:23:05 -07:00