Commit Graph

1264 Commits

Author SHA1 Message Date
Tim Abbott cfd22c6832 zilencer: Clean up logic around mobile push notifications signup.
This fixes exceptions when sending PMs in development (where we were
trying to connect to the localhost push bouncer, which we weren't
authorized for, but even if we were, it wouldn't work, since there's
no APNS/GCM certs).

At the same time, we also set and order of operations that ensures one
has the opportunity to adjust the server URL before submitting
anything to us.
2018-05-05 16:42:00 -07:00
Tim Abbott 8a3522e8e4 docs: Update development docs for Debian support.
While we're at it, we also update some direct download links for
Debian/Ubuntu packages.
2018-05-05 11:08:07 -07:00
Tim Abbott 76fba19d20 docs: Add a basic guide on the current guest users implementation.
This will likely change pretty quickly as we build this feature; I
wrote this just to have a central place to keep track of what we'll
need to document when we ship this feature.
2018-05-04 10:27:40 -07:00
Tim Abbott 43098a6f7c zilencer: Add automated signup system for push notifications.
Based on an initial version by Rishi Gupta.

Fixes #7325.
2018-05-03 21:27:49 -07:00
Tim Abbott 16873cd1ff static: Remove unnecessary handlebars README. 2018-04-28 10:46:16 -07:00
Greg Price a70816c76e docs: Stop linking to specific versions of our docs entirely.
We started doing this for install docs in de2a2d0df, because `latest`
wasn't suitable and because I didn't know about readthedocs's `stable`
feature.  The result has been that even with a checklist item, we
don't reliably update the link.

Instead, use the special `stable` version identifier on readthedocs to
link automatically to the highest version it knows about.
2018-04-25 14:36:56 -07:00
Tim Abbott ec878d01ba docs: Document how to write email templates correctly. 2018-04-25 13:50:14 -07:00
Rishi Gupta 62d5166b7b docs: Add tools/inline-email-css to email subsystem doc. 2018-04-25 08:52:29 -07:00
Emilio Schadt b6f5ea0fd2 docs: Add README.md to zulip/docs to prevent reading on GitHub.
This should help avoid confusing about broken links.

Tweaked by tabbott to fix formatting and the linter.
2018-04-24 10:50:39 -07:00
Tim Abbott 1703e23980 templates: Move all core app templates into a subdirectory.
This should make it easier to find the templates that are actually
part of the core webapp, instead of having them all mixed together
with the portico pages.
2018-04-23 16:46:37 -07:00
Rishi Gupta cf735042b7 docs: Make minor fixes to mobile-push-notifications.html. 2018-04-23 12:37:29 -07:00
Tim Abbott 6bab4e0aad narrow: Fix narrowing behavior when loading a new tab.
In the very early days of Zulip, we didn't have unread counts; just
the pointer, and the correct behavior when opening a new tab was to
place you near the pointer.  That doesn't make any sense now that we
do have unread counts, and this corner case has been a wart for a long
time.

This commit does the main behavior change here.  However, there's a
bug we need to fix, where we might end up trying to pre-render a view
of the narrow based on the `all_msg_list` data before `all_msg_list`
is caught up).  We need to fix that bug before we can merge this; it
should be possible to determine that using `FetchStatus` on
`all_msg_list`, or with better performance by using the `unread_msgs`
structure to determine whether the message we should be selecting is
present locally.

Fixes #789.
Fixes #9070.
2018-04-22 21:33:17 -07:00
Tim Abbott f90b765824 docs: Document what's involved in doing your own push notifications.
We've had a few folks ask about this recently, and it seemed like it'd
be good to cover this a bit more explicitly.
2018-04-21 21:42:24 -07:00
Tim Abbott e25d6968a5 docs: Expand documentation on our other test suites.
This is long overdue, and I was actually kinda surprised how many of
these we have at this point :).

Fixes #7461.
2018-04-19 23:49:28 -07:00
Preston Hansen 76d6c71595 tests: Move zerver/fixtures to zerver/tests/fixtures for clarity.
Fixes #9153.
2018-04-19 21:50:17 -07:00
Tim Abbott e53c0fe273 docs: Further clarify privacy details for push notifications. 2018-04-19 14:20:57 -07:00
Tim Abbott f34b72b830 docs: Fix command for accessibility label. 2018-04-19 11:13:09 -07:00
Steve Howell ae92ec2b57 node docs: Simplify and fix node docs.
This is a first pass at fixing node docs.  This commit eliminates
some text that is either obsolete or just overly confusing, and
it fixes some of the code samples to reflect how the API has
evolved in the last couple years.  We also prominently tell
you how to run the tests.
2018-04-17 17:52:19 -07:00
Steve Howell fca5cec2af node tests: Remove features to output HTML to files.
I don't think anybody ever really used this feature, which I
developed but don't even use myself.  It kind of runs counter
to the minimalist approach of the rest of node tests.

I would eventually like to re-think the template tests altogether.
They're slow, and we could solve that somewhat by replacing
jsdon/jquery with an HTML parser library to verify structural
things.

It's also possible that we can just rely on our template linters
to catch the biggest class of errors (malformed tags) and let
code review do the rest.

And it's also possible that we should make a second attempt to
ramp up tooling on making it easy to verify templates, but it
doesn't have to be part of the node tests.  If we did that, we
would also potentially use tooling for Python-side templates.
2018-04-17 17:52:19 -07:00
Tim Abbott 4f1d3f302b docs: Fix a typo in the changelog. 2018-04-17 17:30:00 -07:00
Tim Abbott 1ec276b3a8 release: Update version strings following 1.8.0 release. 2018-04-17 17:12:20 -07:00
Tim Abbott a6a5636a32 Release Zulip server 1.8.0. 2018-04-17 16:59:07 -07:00
Tim Abbott 60fe92ff13 docs: Make some small tweaks to the changelog. 2018-04-17 13:36:35 -07:00
Tim Abbott 7e187676c6 docs: Update changelog discussion of uploads auth and trusty. 2018-04-17 13:19:34 -07:00
Greg Price dace7cacc8 docs changelog: Mention there are security fixes since 1.7.
Can't hurt to make this clear right in the 1.8 notes.
2018-04-16 18:37:55 -07:00
Greg Price 8630eb43b3 docs: Sort changelog entries for 1.8 into categories.
These aren't perfect -- in particular "core chat experience" can
probably be broken up -- but I think they help in making a quick skim
work for getting some sense of what the changes are.

This change just reorders and adds headings, with virtually no wording
changes.
2018-04-16 18:37:38 -07:00
Greg Price 21045d8cf0 prod docs: Call out more the need for a chained cert bundle.
This is kind of easy to gloss over, especially with the framing
as a "format"; surely if things work at all, the file format
must have been right, right?  It's really a bit more substantive
than that; say so and also add a bit more description.
2018-04-16 11:34:23 -07:00
Tim Abbott cc927774af docs: Add an initial document explaining our presence protocol. 2018-04-12 17:04:51 -07:00
Tim Abbott fea65cbb01 Update changelog and versions following Zulip Server 1.7.2. 2018-04-12 10:20:49 -07:00
Axel Tietje 8f984be457 docs: Fix typo in production docs. 2018-04-12 09:19:26 -07:00
Lyla Fischer d291def7a1 user-docs subsystem: Fix broken markdown. 2018-04-12 09:09:56 -07:00
Lyla Fischer 390eeaab5b help: Remove follow-steps doc macro. 2018-04-11 16:44:08 -07:00
Lyla Fischer 00255ad7c0 help: Remove the go-to-the macro. 2018-04-11 16:44:08 -07:00
Greg Price 6396b3aef7 docs/production: Make an editing pass through the SMTP doc.
In addition to many small edits for formatting and clarity, a few more
significant changes:

* In the main instructions, refer specifically to restarting the
  server and to testing that the config works.

* Add SendGrid to the recommended list, as it seems like people
  give it a somewhat stronger reputation these days than Mailgun.

* Discuss EMAIL_USE_TLS and EMAIL_PORT along with host, user, and
  password in the "free services" section.  Though those bullets feel
  kind of duplicative to me already.
2018-04-05 21:24:48 -07:00
Greg Price b9f1f9c0ae docs/production: Reorganize SMTP docs a bit.
Let's get right to the point of how to configure SMTP once you know
what you want.  That section is pretty short anyway; and we can have
a first step direct the reader to our suggestions if they don't know
what service they want to use.

Also adjust the hierarchy of the headings: group the various
alternative email services under one heading, and group
troubleshooting together under an independent heading.

Also correct what we say about EMAIL_PORT: the Django default is
apparently 25, so if the provider *does* use the usual port 587
then we'll need the port to be set.
2018-04-05 21:24:48 -07:00
Shubham Dhama d3627ab419 docs: Update new-feature-tutorial.
This updates the new-feature-tutorial for the recent changes done
in org settings subsystem.

Edited significantly by tabbott, mostly for grammar.
2018-04-05 15:51:51 -07:00
Tim Abbott 9156591406 docs: Update changelog through current master. 2018-04-03 12:54:04 -07:00
Aman Agrawal 38829032be docs: Correct broken link on gsoc-ideas.md.
Set correct link for summer-with-zulip.
2018-04-03 10:43:13 -07:00
Greg Price e792fc6c07 spelling: Correctly write "cannot".
None of these errors were user-facing; mainly in comments, plus
one bit of internal docs and a developer tool.
2018-04-02 15:36:31 -07:00
Tim Abbott a65f6288b6 docs: Fix a broken link to the Cloud9 documentation. 2018-04-01 22:13:38 -07:00
Puneeth Chaganti 986e55e5b0 docs: Move summer with Zulip doc from Dropbox paper to ReadTheDocs.
Originally authored mostly by Tim Abbott.
2018-04-01 22:11:45 -07:00
Anurag Sharma 1227857de6 hotkeys: Replace C with x for composing PM.
Pressing the 'x' key can now be used to compose a PM.
Pressing the 'C' key displays a modal that shows a deprecation notice.

Fixes #6548.
2018-04-01 16:13:05 -07:00
Shubham Dhama e04b8271ca org settings: Remove obsolete UI updating code for realtime sync.
In our new system for updating realm settings, we don't need to create
separate functions to update the input elements for each feature.
Most of the work is done automatically by
`settings_org.sync_realm_settings`.
2018-03-31 16:19:09 -07:00
Rohitt Vashishtha 115b633551 markdown-tests: Allow ignoring certain fixtures while developing.
Usually, to debug a small change, you have to remove some tests from JSON
because of lack of support for comments in JSON. This commit allows to
ignore some tests by setting `"ignore" : true` in the bugdown fixtures.

Also, since this is only for while developing, the complete test suite will
throw an error if we leave an 'ignored' test in a commit.
2018-03-28 17:35:47 -07:00
Balaji2198 e1eabe286a integrations: Add Gocd webhook integration.
Fixes #38.
2018-03-28 11:08:27 -07:00
Tim Abbott f262936c25 docs: Update changelog through current master. 2018-03-23 16:43:39 -07:00
sinwar 66b007acf0 docs: Replace SEND_ALL with ALWAYS_SEND_ALL_HOTSPOTS in hotspots. 2018-03-22 14:28:25 -07:00
sinwar 4e277bc4d7 docs: Remove unnecessary lines from oauth docs. 2018-03-22 12:49:06 -07:00
Akash Nimare 64bca56747 docs: Update screenshot tools. 2018-03-20 15:05:28 -07:00
gooca 64dac1bb2e Docs: Added "connect the zulip upstream repo" to more places. 2018-03-18 23:02:09 -07:00
Tim Abbott a3e60ed3b4 docs: Update setup docs for postgres extensions.
Fixes #8494.

Further work is required to properly support newer Ubuntu.
2018-03-16 13:45:13 -07:00
YJDave 93ee0aace7 stream settings: Allow realm admins to remove others from any stream.
This will allow realm admins to remove others from private stream to
which the realm administrator is not subscribed; this is important for
managing those streams, because previously nobody could remove users
from private streams that didn't have any realm administrators
subscribed.
2018-03-13 14:59:09 -07:00
YJDave 2031118545 stream settings: Allow realm admins to access all private stream subs.
This will allow realm admins to access subscribers of unsubscribed
private stream.  This is a preparatory commit for letting realm admins
remove those users.
2018-03-13 14:59:09 -07:00
YJDave 37f9d5c193 stream settings: Allow realm admins to update any stream name & description.
This will allow realm admins to update the names and descriptions of
private streams even if they are not subscribed, which fixes the buggy
behavior that previously nobody could(!).
2018-03-13 14:59:09 -07:00
Tim Abbott c7b560cdc2 docs: Clarify documentation of remote development environment. 2018-03-13 09:45:37 -07:00
feorlen 4631a2bfc3 Set REALM_HOSTS based on EXTERNAL_HOST if it is available.
Also update remote.md to recommend setting EXTERNAL_HOST in an environment
variable.

Fixes #8670
2018-03-13 09:45:37 -07:00
cg-cnu e1ab6ceccc docs: Clarify description by changing 'disrupting' to 'disturbing'. 2018-03-08 15:10:23 -08:00
Steve Howell f0d101edf5 pills: Streamline input pills (for user groups).
The main point of this change is to streamline the core
code for input pills, and we use also modify user groups.

The main change to input_pill.js is that you now
configure a function called `create_item_from_text`, and
that can return an arbitrary object, and it just needs
a field called `display_value`.

Other changes:
    * You now call `input.create(opts)` to create the
      widget.
    * There is no longer a cache, because we can
      write smarter code in typeahead `source` functions
      that exclude ids up front.
    * There is no value/optinalKey complexity, because
      the calling code can supply arbitrary objects and
      do their own external data management on the pill
      items.
    * We eliminate `prependPill`.
    * We eliminate `data`, `keys`, and `values`, and just
      have `items`.
2018-03-07 15:53:11 -08:00
Greg Price e022b9e7ea install docs: Cut SSL cert from requirements summary.
The summary already has a qualifier that basically says it shouldn't
matter for most people -- making it simultaneously the most
complicated bullet there, and among the least likely to matter.

And in fact, this requirement shouldn't matter for *anyone* when first
experimenting with Zulip.  If certbot won't work in a given admin's
environment, and the available ways to get a cert aren't convenient,
they can always let the installer generate a self-signed cert to get
going, and circle back to the issue later.

So, make that option clear in the main requirements text, and then
just cut the whole bullet from the summary.
2018-03-06 19:43:02 -08:00
Greg Price d99ec6426d install docs: Move requirements tl;dr to requirements doc.
This further reduces the wall of text on the install instructions.
Simultaneously it lightens up the pressure on this summary to be quite
so terse; expand a couple of items into multiple bullets (yet with
fewer words!) for greater readability.
2018-03-06 19:43:02 -08:00
Greg Price c1d5364077 install docs: Consolidate follow-up steps.
Now down to just 4 steps!

This version tries to prioritize: just two items that we really want
all admins to look at even if they aren't already mentally committed
to running a big production service and reading all the docs.
Namely, the two required in order to really try out Zulip effectively
with one's colleagues.
2018-03-06 19:43:02 -08:00
Greg Price 526e301177 install docs: Tighten "create organization" step.
The screenshots weren't doing much good without being embedded in the
text... and in fact, looking at them for I think the first time,
they're badly out of date with the app.  So cut them.

We might add screenshots later, but on the other hand if we do a good
job with the forms themselves, they should be superfluous.
2018-03-06 19:43:02 -08:00
Greg Price 4edc121b49 install docs: Move background details to after main flow too.
This further shortens the wall of text inside the instructions.

Note that thanks to embedded reST, we now have the power to provide
custom anchors at section headings!  Which in particular means this
link won't break if we later tweak the wording of this heading.
2018-03-06 19:43:02 -08:00
Greg Price 53f80336ee install docs: Consolidate troubleshooting at bottom.
This helps shorten the wall of text between the start of the
instructions and the end.  Conversely, now that there are fewer
followup steps, the troubleshooting section at the end isn't so
far away to point.
2018-03-06 19:43:02 -08:00
Greg Price 0505036965 install docs: Reduce prose in requirements bullets. 2018-03-06 19:43:02 -08:00
Greg Price f22712e8e8 install: Go straight through by default.
This flips the experimental `--express` option to be the default.

We retain the old behavior, where the script exits before
`initialize-database`, as an option `--no-init-db`; it might be useful
in e.g. a migration scenario (from a Zulip install elsewhere, or
another chat system) where the admin wants to set up the database
separately.

The install instructions are adjusted to match, getting shorter by two
steps and a bunch of words.  I think this opens up opportunities to
refactor the text to simplify things further, too, but leaving that
for another commit.

Also tweak the "production" test suite to match.
2018-03-06 19:43:02 -08:00
Shivam Gera baffcf0948 Fix: broken link zulip/zulipbot 2018-03-05 10:51:56 -08:00
Yago González 48709b4890 i18n: Add new terms to the Spanish translation guide. 2018-03-04 15:44:12 -08:00
cPhost 7f144b9b95 setup-non-vagrant: Document how to setup zulip dev env on cloud9.
Significantly tweaked by tabbott for instructional clarity.
2018-03-03 15:43:38 -08:00
knovokresch eb7a744639 docs: Extend troubleshooting guide to cover MacOS High Sierra issue.
Significantly tweaked by tabbott to provide more clarity about the
bug, and also link to this issue early in the MacOS requirements
sections.
2018-03-03 08:37:26 -08:00
Tim Abbott 4e32b5df00 settings: Rename functions for updating email/name change UI.
These functions no longer do a toggle.
2018-03-02 12:49:36 -08:00
sinwar 5e6649ba87 docs: change the dev login image.
It updates the image of developer login on localhost.
2018-02-28 13:50:13 -08:00
Vishnu Ks 8152532535 urls: Use /new endpoint for creating new realm.
This is just nicer-looking for potentially nontechnical users than
/create_realm.
2018-02-28 13:47:54 -08:00
Greg Price 49252c97d2 docs: Fix explanation of Debian LXC installation.
This didn't really make much sense - it presented a quickstart summary
of the instructions as an item in the list of differences from the
Ubuntu case, plus that quickstart only incorporated one of the two
actual differences so it didn't work anyway.  Given the networking
stuff, an actual quickstart isn't in the cards, so just cut that.

Also fix some small things while we're here.
2018-02-27 17:16:31 -08:00
Alicja Raszkowska f6f1236c71 translations: Improve Polish style guide.
Co-authored-by: AjgorXD <34320704+AjgorXD@users.noreply.github.com>
2018-02-27 14:56:33 -08:00
Tim Abbott db88634bcf docs: Better document how Debian LXC installation works.
This fixes an issue where users would try to setup LXC networking
before installing the LXC package.

Fixes #8503, thanks to @Shobitha-M for reporting.
2018-02-24 07:45:58 -08:00
Tim Abbott c732313c36 docs: Rename customize.html to settings.html.
This is a better description of what this is for.
2018-02-19 09:55:49 -08:00
Shivam Gera 2733c0551e docs: Add VT-X unavailability error 2018-02-18 08:09:55 -05:00
Aditya Bansal efe8545303 local-uploads: Start running authentication checks on file requests.
From here on we start to authenticate uploaded file request before
serving this files in production. This involves allowing NGINX to
pass on these file requests to Django for authentication and then
serve these files by making use on internal redirect requests having
x-accel-redirect field. The redirection on requests and loading
of x-accel-redirect param is handled by django-sendfile.

NOTE: This commit starts to authenticate these requests for Zulip
servers running platforms either Ubuntu Xenial (16.04) or above.

Fixes: #320 and #291 partially.
2018-02-16 05:06:37 +05:30
Tim Abbott be3d43bb46 lint: Add linter rule banning $.get and friends.
These are not allowed in our style guide.
2018-02-13 16:47:59 -08:00
Tim Abbott ddf83f65ce docs: Update dead references to puppet/zulip_internal.
This was renamed in the codebase to puppet/zulip_ops months ago.
2018-02-12 16:00:56 -08:00
Aman Agrawal 0db9f55924 Update versions for Vagrant and VirtualBox.
Update version of Vagrant from 1.8.6 to 2.0.2.
Update version of VirtualBox from 5.1.8 to 5.2.6.

We needed to update Vagrant because older versions have networking
problems on modern Macs, resulting in weird `apt` errors when
provisioning.

Commit message and some text tweaked by tabbott.
2018-02-12 15:46:59 -08:00
rht 4e0fc593cf docs: Remove u prefix from strings. 2018-02-05 12:11:33 -08:00
AmAnAgr 60dd3a7223 Correct broken links on gsoc-ideas.md 2018-02-05 10:41:49 -08:00
Balaji2198 f49d9d016f hotkeys: Add '>' as a hotkey for quote and reply to message.
Tweaked by tabbott to fix a few minor issues.

Fixes #8146.
2018-02-02 17:37:53 -08:00
Mukul Agrawal 2668af9abd translation: Add hindi translation guide.
Cleaned up by Akash Nimare.
2018-02-01 07:43:24 -08:00
Tim Abbott f64cf87d14 Update changelog through current master. 2018-01-31 18:05:14 -08:00
Tim Abbott 49a009eebc Update changelog through end of November.
This covers commits through 3be8e95d13.
2018-01-30 14:01:20 -08:00
Umair Khan 8700e8aeaf i18n: Retrieve mobile translations.
This commit also adds a tool to push translation sources to Transifex.
This tool makes sure that we don't push mobile source file. Mobile
source file is supposed to be handled from Zulip-Mobile repo.
2018-01-29 12:49:51 -08:00
Greg Price 68d5471045 docs: Add code-of-conduct to the main navigation tree.
This quiets the last of the warnings that Sphinx was giving us about
documents not being in any toctree, now that we've explicitly told it
with `:orphan:` about the documents we intentionally don't link there.
2018-01-24 14:37:17 -08:00
Greg Price e677a87fdd docs: Explicitly exclude gsoc-ideas from toctree.
This silences a warning.
2018-01-24 14:37:17 -08:00
Greg Price 644579c368 docs: Remove our forked RTD layout template.
Now that we have `eval_rst` and can explicitly exclude pages from the
toctree completely, we no longer need to set `includehidden`, and we
can return to using upstream's template.

(Meanwhile, our feature request upstream was successful!  See
rtfd/sphinx_rtd_theme#485, which upstream implemented just a week
after we requested it.  So that would have been another option.)

This reverts commit 11b8b8f48 "docs: Add rtd layout template."
2018-01-24 14:37:17 -08:00
Greg Price edfa3eabfd docs: Use `orphan` to directly exclude pages from toctree.
This is what the Sphinx docs recommend when you actually don't want
the page to be included in navigation:
  http://www.sphinx-doc.org/en/stable/markup/toctree.html
And now that we have `eval_rst`, we're able to take advantage of it!

One difference between doing this and the old way of making "hidden"
toctree entries is that with the latter, the "previous" and "next"
links at the bottom of each page would thread through the hidden
entries; which gets kind of confusing when they don't appear in the nav.
2018-01-24 14:37:17 -08:00
Greg Price a61e032a3b docs/contributing/mypy: Small wording fixes. 2018-01-24 14:37:17 -08:00
Greg Price 5a2b001c18 docs: Fix a bit of confusion over past vs. present.
The careful testing with dozens of realms was a discrete thing
that happened, not a general state that the tool was in;
certainly not the last state it was known to be in, as the rest
of the sentence explains how it hasn't been so carefully tested
since then.  So "as of" doesn't fit.
2018-01-24 14:37:17 -08:00
Greg Price da626c176f docs: ssl-certificates: 2017 is no longer the present.
Tweak this wording so it stays true and time-appropriate indefinitely.
2018-01-24 14:37:17 -08:00
Greg Price 6aa7a1b8d2 install docs: Document streamlined self-signed-cert flow.
This is easy now, so make it known to admins who are looking for a
fast path for a test install.

Also totally cut the painfully complicated steps for generating a
self-signed cert by hand.  Anyone who actually wants that can find a
hundred explanations on the Web, or can look at our script if they
want to specifically mirror how we do it (which is mercifully much
simpler than this.)
2018-01-23 18:08:52 -08:00
Greg Price c27f36a82a install: Rename generate-self-signed-cert.
This script generates one certificate.
2018-01-23 18:08:52 -08:00
Greg Price d258e48f3d install: Replace our generate-self-signed-certs script.
Take the core of the logic from how Debian generates the system's
/etc/ssl/certs/ssl-cert-snakeoil.pem ; that gives me more confidence
in the various config choices, and it also demonstrates a much cleaner
way to use the `openssl` tool.  Also replace the outer shell logic for
CLI and logging with a cleaner version.
2018-01-23 18:08:52 -08:00
Greg Price bd9340b4db docs: Warn on development version of install instructions. 2018-01-23 10:57:50 -08:00