Go to file
Alex Vandiver 0288002b84 models: Comment call to python2-esque `iteritems()`.
This method is called on a `bitfield.types.BitHandler` object, not a dict; as
such, it is not a runtime failure.

This was missed in 035ed93111 and adjacent commits because it was not
`six.iteritems()` but just a bare `iteritems()` -- having been added
after 9e3c3e14f5 moved all other calls from `iteritems()` to
`six.iteritems()`.

Comment on why this is not a leftover python2-ism.

Grep finds no other remaining callsites to `iteritems` or friends:
```
$ rg '\.iter\w+\(' -t py
zerver/lib/url_preview/preview.py
44:        content = next(response.iter_content(1000))

zerver/lib/email_notifications.py
49:    for link_info in fragment.iterlinks():

zerver/lib/push_notifications.py
508:        nested_levels = len(list(ol.iterancestors('ol')))

zerver/lib/bugdown/__init__.py
1364:            parsed = etree.iterparse(StringIO(rendered))

zerver/lib/bugdown/nested_code_blocks.py
47:                if parent.text is None and len(list(parent)) == 1 and len(list(parent.itertext())) == 1:
```
2020-05-28 15:56:00 -07:00
.circleci ci: Don't remove .coverage file & set empty suffix. 2020-05-27 17:54:54 -07:00
.github github: Suggest GIFs too in PR template. 2018-02-16 09:59:22 -08:00
.tx cleanup: Delete trailing newlines. 2019-08-06 23:29:11 -07:00
analytics requirements: Drop direct dependency on mock. 2020-05-26 11:40:42 -07:00
confirmation invitations: Revoke remaining invitations after user registers. 2020-05-27 15:37:16 -07:00
corporate free trial: Send users to /upgrade after realm creation. 2020-05-26 17:01:32 -07:00
docs docs: Fix typo in testing-with-node.md. 2020-05-28 18:55:40 +00:00
frontend_tests settings_bots: Explicitly ignore delete event from live updates. 2020-05-28 17:10:51 -04:00
locale i18n: Update translation data from Transifex. 2020-05-07 16:09:16 -07:00
pgroonga migrate: Improve do_batch_update escaping correctness with psycopg2.sql. 2020-05-04 09:33:03 -07:00
puppet puppet: Add nginx configuration for blog.zulip.org move. 2020-05-26 14:47:05 -07:00
requirements requirements: Upgrade boto to boto3. 2020-05-26 23:18:07 -07:00
scripts logging: Pass more format arguments to logging. 2020-05-26 11:42:23 -07:00
static minor: Remove outdated comment. 2020-05-28 14:56:47 -07:00
stubs mypy: Remove daemon mode. 2019-08-25 15:04:12 -07:00
templates docs: Replace support@zulipchat.com with support@zulip.com. 2020-05-28 08:14:30 +00:00
tools right sidebar: Remove "GROUP PMs" section. 2020-05-27 17:57:50 -07:00
zerver models: Comment call to python2-esque `iteritems()`. 2020-05-28 15:56:00 -07:00
zilencer actions: Merge do_change_is_admin and do_change_is_guest. 2020-05-25 16:17:10 -07:00
zproject settings: Support free_trial_days in the development environment. 2020-05-26 21:31:07 -07:00
zthumbor thumbor: Fix __file__ typo. 2020-04-12 11:23:03 -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 .editorconfig: Add .scss, .hbs; drop weirder rules. 2020-04-22 15:03:08 -07:00
.eslintignore blueslip: Apply ESLint. 2019-11-01 12:13:59 -07:00
.eslintrc.json eslintrc: Rework to extend eslint:recommended. 2020-05-26 23:33:40 -07:00
.gitattributes Revert "gitattributes: Mark yarn.lock as "binary", i.e. suppress diffs." 2019-05-20 19:31:14 -07:00
.gitignore i18n: Move static/locale back to locale. 2019-07-02 14:57:55 -07:00
.gitlint lint: Allow revert commit messages in gitlint. 2018-02-13 09:21:01 -08:00
.isort.cfg tornado: Fix logging of tornado activity level. 2018-04-17 15:59:01 -07:00
.mailmap mailmap: Add mailmap entry for Aman Agrawal. 2020-05-15 17:11:19 -07:00
.npmignore
.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
CODE_OF_CONDUCT.md docs: Convert many http URLs to https. 2020-03-26 21:35:32 -07:00
CONTRIBUTING.md docs: Convert many http URLs to https. 2020-03-26 21:35:32 -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
NOTICE license: Move license application notice from LICENSE to NOTICE. 2018-10-02 12:04:44 -07:00
README.md docs: Convert many http URLs to https. 2020-03-26 21:35:32 -07:00
Vagrantfile Revert "vagrant: Add NFS backend for file synchronization for OSX." 2019-08-12 16:04:00 -07:00
babel.config.js babel: Enable loose mode. 2020-02-05 11:52:52 -08:00
manage.py python: Modernize legacy Python 2 syntax with pyupgrade. 2020-04-09 16:43:22 -07:00
mypy.ini mypy: Add specific codes to type: ignore annotations. 2020-04-22 10:46:33 -07:00
package.json dependencies: Move zulip-js to devDependencies. 2020-05-14 00:30:35 -07:00
postcss.config.js webpack: Move CSS minification to optimization stage. 2019-09-02 21:58:13 -07:00
tsconfig.json tsconfig: Enable resolveJsonModule. 2020-05-26 23:33:40 -07:00
version.py dependencies: Install zulip-js npm package. 2020-05-13 10:25:10 -07:00
yarn.lock dependencies: Install zulip-js npm package. 2020-05-13 10:25:10 -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 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 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.