Go to file
Tim Abbott 7b2c9223e7 clean-npm-cache: Fix buggy garbage-collection logic.
We saw issues with /srv/zulip_npm_cache being cleaned incorrectly by
this tool in production (more correctly, we noticed broken symlinks to
those directories, even from the current deployment).  Print-debugging
showed that indeed older deployments were being ignored, because the
logic for `get_caches_in_use` was totally broken (this was sorta
masked because we also keep the last week's deployments).

The specific bug here turned out to be that we weren't passing the
`production` argument to generate_sha1sum_node_modules, but the
broader problem is that this logic isn't robust to changes in the
hashing algorithm.

Fix this by replacing the broken logic for trying to compute the
correct hash for that deployment with just checking the symlink inside
the deployment to let it self-report.

We can't easily do this same change for clean-venv-cache, because we
use multiple virtualenvs there.  But a similar change could be useful
for the emoji cache as well.

Fixes #8116.
2018-03-28 15:42:02 -07:00
.circleci travis: Cut webhook config pointing at zulipbot. 2018-01-31 11:07:38 -08:00
.github github: Suggest GIFs too in PR template. 2018-02-16 09:59:22 -08:00
.tx translation: Add configuration for a `zulip-test` Transifex project. 2018-02-15 13:38:09 -08:00
analytics mypy: Annotate stream_data in populate_analytics_db.py handle function. 2018-03-25 08:59:08 -07:00
confirmation create_realm: Refactor to deal ASAP with key record, not string. 2018-02-05 12:59:12 -08:00
corporate corporate: Remove unused imports (F401). 2017-11-07 16:37:04 -08:00
docs integrations: Add Gocd webhook integration. 2018-03-28 11:08:27 -07:00
frontend_tests Test maybe_load_newer_messages. 2018-03-28 09:13:46 -07:00
pgroonga py3: Remove all `from __future__ import unicode_literals`. 2017-10-17 23:07:42 -07:00
puppet puppet: Add Debian 9 package names to definitions. 2018-03-28 12:33:45 -07:00
requirements requirements: Upgrade mypy to 0.580. 2018-03-25 10:17:47 -07:00
scripts clean-npm-cache: Fix buggy garbage-collection logic. 2018-03-28 15:42:02 -07:00
static unread: Fix confusing aliasing of variable names. 2018-03-28 12:21:36 -07:00
templates integrations/rss: Recommend integrating RSS via Zapier. 2018-03-25 08:58:08 -07:00
tools mypy: Add explicit Optional for default=None parameters in various files. 2018-03-28 12:31:51 -07:00
zerver mypy: Add explicit Optional for default=None parameters in export.py. 2018-03-28 12:31:51 -07:00
zilencer populate_db: Pre-populate open graph cache to avoid network activity. 2018-03-27 16:42:59 -07:00
zproject styles: Rename dark.css to night_mode.css. 2018-03-28 10:42:28 -07:00
zthumbor mypy: Rewrite sign_is_valid in zthumbor helpers.py for None secret_key. 2018-03-25 08:59:08 -07:00
.codecov.yml Try to avoid codecov spam. 2017-12-29 07:23:26 -05:00
.editorconfig Editing (minor): Add .pyi to .editorconfig. 2017-12-18 07:35:58 -05:00
.eslintignore zulip_ops: Delete the long-disused `stats1.zulip.net` config and its dependencies. 2017-08-15 17:30:31 -07:00
.eslintrc.json ui scrollbar: Update perfect-scrollbar to 1.3.0. 2018-03-20 21:59:11 -07:00
.gitattributes gitattributes: Mark yarn.lock as "binary", i.e. suppress diffs. 2018-02-01 13:37:19 -08:00
.gitignore gitignore: Ignore a Transifex secrets file. 2018-02-15 13:38:09 -08:00
.gitlint lint: Allow revert commit messages in gitlint. 2018-02-13 09:21:01 -08:00
.isort.cfg python: Add settings for isort. 2017-11-14 12:31:14 -08:00
.npmignore
.travis.yml travis: Disable most suites in favor of CircleCI! 2018-01-31 11:10:03 -08:00
CODE_OF_CONDUCT.md repository: Add CODE_OF_CONDUCT.md. 2017-06-14 18:43:08 -07:00
CONTRIBUTING.md doc: Add blog link to CONTRIBUTING. 2018-02-09 12:04:28 -08:00
Dockerfile-dev Move Dockerfile to Dockerfile-dev. 2017-09-25 12:32:33 -07:00
LICENSE docs: Move license declaration from README.md to LICENSE. 2017-11-14 16:04:23 -08:00
README.md README: Include CircleCI build status badge. 2018-02-08 18:24:43 -08:00
Vagrantfile vagrant: Graciously fail when vagrant user can't write to /srv/zulip. 2018-03-20 22:20:50 -07:00
manage.py Remove `from __future__ import absolute_import`. 2017-10-17 22:59:42 -07:00
mypy.ini tools/mypy: Enforce a more explicit checking of Optional. 2018-03-28 12:31:51 -07:00
package.json Updated source-map-loader to 0.2.3. 2018-03-22 14:43:26 -07:00
version.py requirements: Upgrade mypy to 0.580. 2018-03-25 10:17:47 -07:00
yarn.lock Updated source-map-loader to 0.2.3. 2018-03-22 14:43:26 -07:00

README.md

Zulip overview

Zulip is a powerful, open source group chat application that combines the immediacy of real-time chat with the productivity benefits of threaded conversations. Zulip is used by open source projects, Fortune 500 companies, large standards bodies, and others who need a real-time chat system that allows users to easily process hundreds or thousands of messages a day. With over 300 contributors merging over 500 commits a month, Zulip is also the largest and fastest growing open source group chat project.

CircleCI Build Status Travis Build Status Coverage Status Mypy coverage docs Zulip chat Twitter

Getting started

Click on the appropriate link below. If nothing seems to apply, join us on the Zulip community server and tell us what's up!

You might be interested in:

You may also be interested in reading our blog or following us on twitter. Zulip is distributed under the Apache 2.0 license.