Zulip 服务器和 Web 应用程序。开源团队聊天可帮助团队保持高效和专注。
Go to file
Alex Vandiver cd530d627b uwsgi: Stop generating IOError and SIGPIPE on client close.
Clients that close their socket to nginx suddenly also cause nginx to close
its connection to uwsgi.  When uwsgi finishes computing the response,
it thus tries to write to a closed socket, and generates either
IOError or SIGPIPE failures.

Since these are caused by the _client_ closing the connection
suddenly, they are not actionable by the server.  At particularly high
volumes, this could represent some sort of server-side failure;
however, this is better detected by examining status codes at the
loadbalancer.  nginx uses the error code 499 for this occurrence:
https://httpstatuses.com/499

Stop uwsgi from generating this family of exception entirely, using
configuration for uwsgi[1]; it documents these errors as "(annoying),"
hinting at their general utility."

[1] https://uwsgi-docs.readthedocs.io/en/latest/Options.html#ignore-sigpipe
2020-07-31 10:40:09 -07:00
.circleci ci: Remove confused references to test-event-log. 2020-07-24 12:42:08 -07:00
.github ci: Remove confused references to test-event-log. 2020-07-24 12:42:08 -07:00
.tx cleanup: Delete trailing newlines. 2019-08-06 23:29:11 -07:00
analytics migrations: Upgrade migrations to remove duplicates in all Count tables. 2020-07-30 15:18:00 -07:00
confirmation python: Convert more percent formatting to Python 3.6 f-strings. 2020-06-14 23:27:22 -07:00
corporate support: Add functionality to approve sponsorship requests. 2020-07-24 17:55:38 -07:00
docs docs: Replace Digital Ocean with DigitalOcean. 2020-07-30 11:30:43 -07:00
frontend_tests sponsorship: Ensure that all the fields are filled in form. 2020-07-31 10:36:53 -07:00
locale i18n: Update translation data from Transifex. 2020-07-23 12:06:15 -07:00
pgroonga migrations: Escape more pedantically in pgroonga.0003_v2_api_upgrade. 2020-06-13 21:50:37 -07:00
puppet uwsgi: Stop generating IOError and SIGPIPE on client close. 2020-07-31 10:40:09 -07:00
requirements requirements: Downgrade pip to 20.1.1 due to pip-tools incompatibility. 2020-07-30 19:16:04 -07:00
scripts puppet: Generalize install-wal-g to be arbitrary tarballs. 2020-07-24 17:24:57 -07:00
static sponsorship: Ensure that all the fields are filled in form. 2020-07-31 10:36:53 -07:00
stubs pysa: Introduce sanitizers, models, and inline marking safe. 2020-06-11 12:57:49 -07:00
templates sponsorship: Ensure that all the fields are filled in form. 2020-07-31 10:36:53 -07:00
tools navbar: Rename tab_bar to message_view_header. 2020-07-30 16:23:13 -07:00
zerver markdown: Link the twitter response code docs inline. 2020-07-31 10:35:41 -07:00
zilencer database: Remove short_name from UserProfile. 2020-07-17 11:15:15 -07:00
zproject drafts: Add an API endpoint for fetching drafts. 2020-07-28 17:18:35 -07:00
zthumbor zthumbor: Rename thumbor.conf to thumbor_settings.py. 2020-07-06 18:44:58 -07:00
.browserslistrc webpack: Transpile JS code with Babel. 2019-07-22 17:55:32 -07:00
.codecov.yml codecov: Change threshold to use percentage syntax. 2019-07-20 14:37:04 -07:00
.editorconfig lint: Use Prettier for JSON files. 2020-07-24 09:42:56 -07:00
.eslintignore blueslip: Apply ESLint. 2019-11-01 12:13:59 -07:00
.eslintrc.json navbar: Rename tab_bar to message_view_header. 2020-07-30 16:23:13 -07:00
.gitattributes Revert "gitattributes: Mark yarn.lock as "binary", i.e. suppress diffs." 2019-05-20 19:31:14 -07:00
.gitignore tools: Move CI docker images files into tools/ci. 2020-06-29 16:31:43 -07:00
.gitlint lint: Allow revert commit messages in gitlint. 2018-02-13 09:21:01 -08:00
.isort.cfg requirements: Upgrade isort. 2020-06-26 22:50:01 -07:00
.mailmap mailmap: Give priority to Vishnu KS's zulip email. 2020-07-31 10:37:49 -07:00
.npmignore Add proxy notes to new README.dev.md troubleshooting section. 2016-03-29 21:54:05 -07:00
.prettierignore lint: Use Prettier for JSON files. 2020-07-24 09:42:56 -07:00
.pyre_configuration pysa: Add basic .pyre_configuration and taint.config for pysa. 2020-06-11 12:57:49 -07:00
.sonarcloud.properties tools: Configure Zulip to be scannable by SonarCloud. 2020-06-24 12:41:17 -07:00
.stylelintrc lint: Ban color names in CSS. 2019-01-22 15:33:18 -08:00
.yarnrc .yarnrc: Set ignore-scripts true. 2019-08-28 16:15:54 -07:00
babel.config.js js: Remove extra consecutive spaces. 2020-07-17 14:31:25 -07:00
CODE_OF_CONDUCT.md docs: Convert many http URLs to https. 2020-03-26 21:35:32 -07:00
CONTRIBUTING.md docs: Update most remaining references to zulipchat.com. 2020-06-08 18:10:45 -07:00
Dockerfile-postgresql base Zulip PostgreSQL Docker container on PGroonga official one 2019-12-30 10:20:25 -08:00
LICENSE docs: Bump copyright year. 2020-04-23 16:04:54 -07:00
manage.py python: Sort imports with isort. 2020-06-11 16:45:32 -07:00
mypy.ini zthumbor: Fix strict_optional errors. 2020-07-06 11:25:48 -07:00
NOTICE license: Move license application notice from LICENSE to NOTICE. 2018-10-02 12:04:44 -07:00
package.json js: Replace underscore with lodash and remove it from globals. 2020-07-26 16:12:06 -07:00
postcss.config.js js: Remove inner spacing from object literals. 2020-07-17 14:31:25 -07:00
prettier.config.js lint: Use Prettier for JSON files. 2020-07-24 09:42:56 -07:00
README.md docs: Replace Digital Ocean with DigitalOcean. 2020-07-30 11:30:43 -07:00
SECURITY.md docs: Create GitHub SECURITY.md file. 2020-06-25 15:23:22 -07:00
setup.cfg lint: Use standard setup.cfg configuration for pycodestyle. 2020-07-14 00:41:20 -07:00
tsconfig.json typescript: Enable strictNullChecks. 2020-07-28 11:01:35 -07:00
Vagrantfile vagrant: Remove uartmode1 woarkound. 2020-06-22 14:56:38 -07:00
version.py version: Update version for Zulip Desktop v5.4.0 release. 2020-07-31 10:36:12 -07:00
yarn.lock js: Replace underscore with lodash and remove it from globals. 2020-07-26 16:12:06 -07:00

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 500 contributors merging over 500 commits a month, Zulip is also the largest and fastest growing open source group chat project.

CircleCI branch Coverage Status Mypy coverage code style: prettier GitHub release 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.