Commit Graph

345 Commits

Author SHA1 Message Date
Tim Abbott de5c1eb363 docs: Move glossary to bottom of architecture overview.
I think the old place where we had it broke up the flow.

Once this is about twice as long as it is currently, we should move it
to be its own document.
2016-10-11 16:44:39 -07:00
Sumana Harihareswara 7fee09458b Add starring to glossary. 2016-10-11 16:44:39 -07:00
Sumana Harihareswara f1593b243c docs: Add chevron and message editing to glossary. 2016-10-11 16:44:39 -07:00
Sumana Harihareswara d9c81dcfdd docs: Add recipient bar to usage assumptions/concepts.
Add start of glossary section.
2016-10-11 16:44:39 -07:00
Christie Koehler 952d91f60a docs: Fix broken image links on prod install page. 2016-10-11 15:19:43 -07:00
Supriya 598c7a506b docs/custom-apps: Fix spelling error. 2016-10-11 13:39:59 -07:00
Tim Abbott fec6527656 dev-overview: Document cloud server option. 2016-10-10 17:10:39 -07:00
zeddmaxx 1348b9dde3 dev-overview: Improve organization of installation overview page.
Fixes #1814.

[substantially tweaked by tabbott]
2016-10-10 17:06:59 -07:00
Bertrand Croq c705819f2d custom-apps docs: Fix stumulus typo. 2016-10-10 08:38:51 -07:00
Steve Howell 0bdc9fef5c Upgrade caspersjs to version 1.1.3. (w/acrefoot)
(Most of this work was done by acrefoot in an earlier branch.
I took over the branch to fix casper tests that were broken during
the upgrade (which were fixed in a different commit).  I also
made most of the changes to run-casper.)

This also upgrades phantomjs to 2.1.7.

The huge structural change here is that we no longer vendor casperjs
or download phantomjs with our own script.  Instead, we just use
casperjs and phantomjs from npm, via package.json.

Another thing that we do now is run casperjs tests individually, so
that we don't get strange test flakes from test interactions.  (Tests
can still influence each other in terms of changing data, since we
don't yet have code to clear the test database in between tests.)

A lot of this diff is just removing files and obsolete configurations.

The main new piece is in package.json, which causes npm to install the
new version.

Also, run-casper now runs files individually, as mentioned above.

We had vendored casperjs in the past.  I didn't bring over any of our
changes.  Some of the changes were performance-related (primarily
5fd58cf249), so the upgraded version may
be slower in some instances.  (I didn't do much measurement of that,
since most of our slowness when running tests is about the setup
environment, not casper itself.)  Any bug fixes that we may have
implemented in the past were either magically fixed by changes to
casper itself or by improvements we have made in the tests themselves
over the years.

Tim tested the Casper suite on his machine and running the full Casper
test suite is faster than it was before this change (1m30 vs. 1m50),
so we're at least not regressing overall performance.
2016-10-08 12:08:43 -07:00
Tim Abbott d0f295c77f docs: Clarify commit message portion of version control docs. 2016-10-05 19:28:21 -07:00
Tim Abbott 5357b286b2 docs: Fix typo in spelling of generate_secrets. 2016-10-05 17:47:14 -07:00
Rishi Gupta 777fcaa6a0 Add new organization type field to Realm objects.
Adds a new field org_type to Realm.  Defaults for restricted_to_domain
and invite_required are now controlled by org_type at time of realm
creation (see zerver.lib.actions.do_create_realm), rather than at the
database level.  Note that the backend defaults are all
org_type=corporate, since that matches the current assumptions in the
codebase, whereas the frontend default is org_type=community, since if
a user isn't sure they probably want community.

Since we will likely in the future enable/disable various
administrative features based on whether an organization is corporate
or community, we discuss those issues in the realm creation form.
Before we actually implement any such features, we'll want to make
sure users understand what type of organization they are a member of.

Choice of org_type (via radio button) has been added to the realm
creation flow and the realm creation management command, and the
open-realm option removed.

The database defaults have not been changed, which allows our testing code
to work unchanged.

[includes some HTML/CSS work by Brock Whittaker to make it look nice]
2016-10-05 17:01:46 -07:00
Tomasz Kolek 7df50cee34 docs: Fix paths in webhooks part of integration-guide.
We forgot to update the documentation when we rearranged the webhooks
tests to be split across several files.

[mostly rewritten by tabbott]
2016-10-04 20:09:58 -07:00
Tim Abbott 279f805448 run-dev: Automate passing --interface='' for vagrant environment.
Fixes #877.
2016-10-04 10:48:26 -07:00
sonali0901 4869e1b0b2 test-backend: Add convenience arguments to run subsets of the tests.
This optimizes the process of running individual or small groups of
backend tests (./tools/test-backend
zerver.tests.test_bugdown.FencedBlockPreprocessorTest.test_simple_quoting)
to allow the following syntaxes:

    ./tools/test-backend zerver/tests/test_bugdown.py
    ./tools/test-backend zerver.tests.test_bugdown.py
    ./tools/test-backend zerver/tests/test_bugdown
    ./tools/test-backend zerver.tests.test_bugdown
    ./tools/test-backend test_bugdown.py
    ./tools/test-backend test_bugdown
    ./tools/test-backend FencedBlockPreprocessorTest
    ./tools/test-backend FencedBlockPreprocessorTest.test_simple_quoting

Fixes #1670.
2016-09-28 11:52:05 -07:00
Tim Abbott 03bf8893e2 Remove legacy /api/v1/send_message endpoint.
This was the original way to send messages via the Zulip API in the
very early days of Zulip, but was replaced by the REST API back in
2013.

Fixes: #730.
2016-09-27 14:51:54 -07:00
Sahil Dua 058587da77 Remove extra new lines at the ends of Zulip authoried files.
Fixes #1627.

[tweaked by tabbott to avoid patching third-party modules, for now]
2016-09-26 21:05:24 -07:00
umkay 798e6faa9e provision: Use NVM to install node and npm.
NVM takes a specific node version and installs the node package and
a corresponding compatible npm package.

We use it in a somewhat hackish way to install node/npm globally with
a pinned version, since that's how we actually want to consume node in
our development environment.

Other details:
- Travis CI now is configured to use the version of node installed by
provision; the easiest way to do this was to sabotage the existing node
installation.
- jsdom is upgraded to a current version, which both requires recent
node and also is required for the tests to pass with recent node.
This fixes running the node tests on Xenial.

Fixes #1498.

[tweaked by tabbott]
2016-09-23 14:34:44 -07:00
Eklavya Sharma 2d3921e3e4 Add instructions for manually installing pgroonga. 2016-09-17 09:23:54 -07:00
sonali0901 15331ad9fa docs: Document invite-only streams are hidden from other users.
Fixes: #1756.
2016-09-14 10:06:10 -07:00
Tim Abbott cd0025f67f docs: Update roadmap with recently completed projects. 2016-09-12 14:56:08 -07:00
Tim Abbott b744a3a4d7 docs: Update changelog since 1.4.0 release. 2016-09-07 19:51:14 -07:00
Tim Abbott c9f9fb265e Update provision.py and Vagrantfile to support VMWare.
This adds support for using VMWare Fusion as the Vagrant provider,
which has better performance than Virtualbox at the price of being
nonfree (in all senses of the term).

We haven't done solid benchmarking as to how much faster it is than
the Virtualbox provider.
2016-09-07 19:30:48 -07:00
neurodynamic 91a1e8aebc Add note about the email_password setting 2016-08-28 13:29:51 -07:00
Steve Howell 65b884f44d docs: Explain how to re-build the table of contents. 2016-08-27 11:30:57 -07:00
Steve Howell c8e37f30d2 docs: Add "Custom Apps" to "Subsystem Documentation". 2016-08-27 11:30:57 -07:00
Steve Howell f5a1923cbf docs: Create "Custom Apps" document. 2016-08-27 11:30:57 -07:00
Kouhei Sutou 683f49aa99 Support full text search for all languages using pgroonga.
This adds support for using PGroonga to back the Zulip full-text
search feature.  Because built-in PostgreSQL full text search doesn't
support languages that don't put space between terms such as Japanese,
Chinese and so on. PGroonga supports all languages including Japanese
and Chinese.

Developers will need to re-provision when rebasing past this patch for
the tests to pass, since provision is what installs the PGroonga
package and extension.

PGroonga is enabled by default in development but not in production;
the hope is that after the PGroonga support is tested further, we can
enable it by default.

Fixes #615.

[docs and tests tweaked by tabbott]
2016-08-26 21:04:03 -07:00
Tim Abbott 1d0ae8b11c docs: Clarify that one should unpack in /root to install. 2016-08-26 11:56:12 -07:00
Tim Abbott b200c6cdc0 Move assets/ to live under static/.
This decreases the clutter in the root directory of the Zulip
repository.
2016-08-26 10:23:38 -07:00
Tim Abbott 9001bebf2f Move THIRDPARTY to docs/ subdirectory. 2016-08-25 20:02:42 -07:00
Rag Sagar ce1777b0cb Update update_realm view path and signature in the new feature tutorial. 2016-08-25 19:35:42 -07:00
Tim Abbott 7e4caf3a67 Release Zulip 1.4. 2016-08-25 10:49:00 -07:00
Tim Abbott fba93cb494 scripts: rename deploy-zulip-from-git to reference upgrading. 2016-08-25 10:48:59 -07:00
Tim Abbott 7f445be23d docs: Clean up headings for maintenance page. 2016-08-25 10:48:48 -07:00
Tim Abbott 54c5c989c9 docs: Fix some broken links in headings. 2016-08-25 10:41:00 -07:00
Tim Abbott c0799a9d09 docs: Fix docs for upgrading from a git repository. 2016-08-25 10:40:51 -07:00
Tim Abbott 9839d93362 docs: Clean up duplicated content in development overview. 2016-08-25 10:40:51 -07:00
Tim Abbott f6c4e46afe docs: Move README.dev.md into ReadTheDocs.
Fixes: #669.
2016-08-25 10:40:51 -07:00
Tim Abbott d876909b69 docs: Clean up development environment headings. 2016-08-25 10:40:51 -07:00
Tim Abbott 30b5c2a4c0 docs: Document the fact that 14.04->16.04 is not supported. 2016-08-25 10:40:51 -07:00
Tim Abbott f1a91c8028 docs: Document Zulip PPA is available for 16.04 as well. 2016-08-25 10:40:51 -07:00
Tim Abbott c5417e723b docs: Fix command sequence for retrying Zulip installation. 2016-08-25 10:40:51 -07:00
Tim Abbott c0975b03a5 docs: Document Ubuntu 16.04 support in production. 2016-08-25 10:40:51 -07:00
Tim Abbott c0e68d59cb docs: Rename status/debug page to troubleshooting. 2016-08-25 09:37:33 -07:00
Tim Abbott be4e806d60 docs: Collapse install steps 2 and 3 together. 2016-08-25 09:37:33 -07:00
Tim Abbott cd632faff6 docs: Clean up scrollbar in install docs. 2016-08-25 09:37:33 -07:00
Tim Abbott 8a82c29d21 docs: Move SSL docs to a dedicated page. 2016-08-25 09:37:33 -07:00
Tim Abbott 8086cc549f docs: Merge prod-auth-first-login into main installation page. 2016-08-25 09:37:33 -07:00
Tim Abbott 1d273b93da docs: Move screenshots to their own page. 2016-08-25 09:37:33 -07:00
Tim Abbott da0d9e716d docs: Move management docs to a better place and expand.
Now that a management command is not required to install Zulip, we can
bury the documentation on them a bit more.

Fixes: #551.
2016-08-25 09:37:33 -07:00
Christie Koehler 5a3db059d4 docs: Rewrite first time prod login docs to use new realm creation flow.
- Adds heading and reorganizes sections for improved clarity. Sections
  now ordered: Create user, grant admin access, default realm settings,
  changing realm settings, other manage.py commands, if you can't login.
- Adds screen shots of Zulip web interface.
2016-08-25 09:37:33 -07:00
Vishnu Ks a7ead9e99d settings: Eliminate ADMIN_DOMAIN for creating initial realm.
We now use `./manage.py generate_realm_creation_link` as the flow flow
for creating one's first realm.
2016-08-25 09:37:33 -07:00
Tim Abbott f7ede485d2 docs: Move subscribe step to start of install docs. 2016-08-24 21:04:10 -07:00
Christie Koehler 7d6541867b docs: Update Let's Encrypt CertBot install instructions. 2016-08-24 19:02:22 -07:00
Tim Abbott d09b07310d docs: Clean up and clarify documentation flow. 2016-08-24 19:02:18 -07:00
Christie Koehler 456da49b06 docs: Expand production install docs.
- Moves Let's Encrypt option for ssl certs above self-signed option.
  Updates Let's Excrypt instructions to user Certbot (new recommended
  method). Fixes #1426.
- Adds and updates headings for clarity.
- Adds new step 6 about configuring authentication (from
  prod-auth-first-login.html).
- Adds emphasis on using `su zulip`, `sudo -u zulip -i`, and `sudo -i`
  where appropriate. Fixes #1356.

Fixes #1245.
2016-08-24 19:02:11 -07:00
Tim Abbott cd0ef4ae5b prod-requirements: Remove unnecssary authentication section. 2016-08-24 16:34:00 -07:00
Tim Abbott 2c171df9b5 docs: Reorganize requirements page with server/credentials categories. 2016-08-24 16:32:06 -07:00
Christie Koehler b90f5537b0 docs: Improve production requirements doc.
- Adds headings and organizes for greater clarity.
- Adds some detail about each of the requirements.
2016-08-24 15:14:18 -07:00
Christie Koehler f1daf3d66a docs: Make headings consistent and use the imperative. 2016-08-24 15:02:14 -07:00
Christie Koehler 48ba0e3974 docs: Improve 'upgrading' section of prod-maintain-secure-upgrade page.
- Reformats bullets as regular paragraphs for improved readability.
- Adds headings to subsections to make them easier to read and linkable.
- Clarifies minor points throughout.
2016-08-24 15:01:32 -07:00
Christie Koehler 36b6184be2 docs: Improve navigation of prod-customize page.
- Add headings for each of the six major sections: integrations, streams
  and topics, notification settings, mobile and desktop apps, other
  great features, and enjoy your Zulip installation.
- Add links to each of these sections to top of page, with first and
  most important four formatted as a list.
2016-08-24 14:56:39 -07:00
Christie Koehler 58ee43c3f0 docs: Improve prod-health-check-debug page.
- Adds headings for 'supervisorctl' and 'troubleshooting'.
- Rearranges to include most important info at top: that Supervisor is
  used, a reminder to review components architecture, log location, link
  to troubleshooting services section, and a request to report any
  issues not already documented on this page.
2016-08-24 14:52:44 -07:00
Christie Koehler d4f0565c92 docs: Improve Zulip in Production page navigation and ToC.
Improves readability of ToC and makes pages more navigable by shortening
Zulip in Production page headings.
2016-08-24 14:48:11 -07:00
Christie Koehler 8782f6a198 docs: Improve navigation of prod-maintain-secure-upgrade page.
- Adds a heading for Upgrading and clarifies wording on Backups heading.
- Adds intro text with links to other sections.
2016-08-24 14:46:40 -07:00
Tim Abbott 7965320877 Update changelog for Zulip 1.4 release. 2016-08-24 14:26:53 -07:00
Steve Howell ba9e7e290d frontend: Extract dispatch_normal_event().
Extract dispatch_normal_event() from the inner
function dispatch_event() in get_events_success()
in server_events.js.  Also, alphabetize the cases in
the switch statement.  This starts to address #1541,
but see the discussion on the ticket for how we can
continue to clean up our event dispatching.
2016-08-22 20:18:02 -07:00
Steve Howell fd6ee7117f tests: Renamed AuthedTestCase to ZulipTestCase. 2016-08-22 19:07:44 -07:00
Steve Howell 29ba10dfdd docs: Add docs for Django backend tests. 2016-08-22 19:07:44 -07:00
Tim Abbott 95fbd5ba31 Update zulip.com/integrations link to point to zulipchat.com.
zulip.com will stop running at some point in the near future, and we
don't want these links to break.
2016-08-22 17:26:41 -07:00
Tim Abbott 602c7c69a9 lint: Document line length checking. 2016-08-19 12:08:22 -07:00
Steve Howell f6b332ecdb docs: Add linters.md to document our linters.
(Also, link to it from the testing docs.)
2016-08-19 11:55:52 -07:00
Steve Howell 479aa5b83d docs: Split out Django/Casper/Node testing docs. 2016-08-18 14:10:46 -07:00
Tim Abbott e1b5a0e000 docs: Add link to life of a request docs on URLs. 2016-08-18 12:41:38 -07:00
acrefoot 920e605e17 Add extensive views writing documentation.
[section on REQ substantially expanded by tabbott]

Fixes: #880.
2016-08-18 12:37:33 -07:00
Tim Abbott 74cdb4954c docs: Fix outdated security contact list. 2016-08-17 22:19:53 -07:00
Sumana Harihareswara f3abea0f1f doc: Add version number to Trusty in prod requirements. 2016-08-16 16:24:34 -07:00
Sumana Harihareswara 23aaca376e doc: Recommend provision stream for install help.
Adds a recommendation to the developer installation
documentation suggesting visiting the "provision" stream.

Fixes: #1537.
2016-08-16 16:22:20 -07:00
Tim Abbott b839db1f45 Expand pointer and unread counts guide. 2016-08-16 16:17:54 -07:00
Sumana Harihareswara 1a9f961bb4 doc: Add pointer and unread counts guide.
Tim's comments in #789 are useful to developers
in explaining message selection at browser load,
narrow, etc.
2016-08-16 16:15:38 -07:00
Taranjeet Singh d606b95242 zulip_tools.py: Move zulip_tools.py in scripts/lib.
This commit moves zulip_tools.py as part of cleaning the root directory
and organizing proejct into better directory structure.
2016-08-15 16:44:50 -07:00
Steve Howell 603352630b export: Update conversion docs. 2016-08-13 09:36:08 -07:00
Steve Howell fd77585a8c export: Add docs/conversion.md.
This is not hooked into anything yet.  After this weekend's
conversion, it will probably be worthwhile to take a second pass
at it!
2016-08-12 15:10:49 -07:00
Steve Howell cdd03dec4d Extract media queries to media.css.
Create `media.css` using media queries that had been at the bottom
of `zulip.css`, then update miscellaneous setttings/docs files.

I also add `.screen-medium-show` and `.screen-narrow-show` to
`media.css`, as they seem to be an important part of our
responsive design.

Fixes #1532.
2016-08-05 10:32:55 -07:00
acrefoot cf41629d80 docs: Fill gaps in New Feature Tuturial.
Adds some section headings, and provides a better example for the new
django migration system.
2016-08-04 16:02:08 -07:00
Christie Koehler 4c66bbc1ee integration guide: Move Hello World walkthrough to end. 2016-08-04 15:59:49 -07:00
Christie Koehler 6cf6341a49 integration guide: Improve readability and navigation. 2016-08-04 15:59:48 -07:00
Christie Koehler 4cd28e5e1f integration guide: Update Hello World walkthrough. 2016-08-04 15:59:28 -07:00
Tim Abbott 3fec3f122f docs: Add missing annotation to conf.py. 2016-08-04 15:57:03 -07:00
Tim Abbott 4a7e6e852f integration guide: Update documentation instructions. 2016-08-04 12:04:12 -07:00
Tim Abbott 6ab09064ac integration guide: Increase visibility level of hello world guide. 2016-08-04 11:55:19 -07:00
Tim Abbott 613781f034 integration guide: Swap created files above updated files. 2016-08-04 11:53:05 -07:00
Tim Abbott 0691832817 docs: Document new WEBHOOK_INTEGRATIONS API. 2016-08-04 11:52:28 -07:00
Tim Abbott 5f37485e7f docs: Improve integration guide link to writing documentation. 2016-08-04 11:49:17 -07:00
Tomasz Kolek 0e33b8bd4d Add integrations library.
Define Integration and WebhookIntegration classes.
Change webhook part of integration's guide.
Replace hardcoded webhook urls to generating
based on WEBHOOKS list.
2016-08-04 11:39:20 -07:00
Steve Howell f0c6af2285 Describe events/initial state in new-feature-tutorial.md. 2016-08-04 09:45:37 -07:00
Tim Abbott 03f6cb4b3e testing: Remove now-unnecessary istanbul install docs. 2016-08-04 09:43:05 -07:00
Sumana Harihareswara 2d43431ad9 Advertise Electron app in documentation. 2016-08-02 16:41:24 -07:00