Zulip logo

Zulip

Open-source team chat with unique topic-based threading

Alternative to: slack, microsoft teams, discord


About Versions (100)

1.9.0

2018-11-07

1.9.0 — 2018-11-07

Highlights:

  • Support for Ubuntu bionic and Debian stretch (our first non-Ubuntu platform!). We expect to deprecate support for installing a new Zulip server on Ubuntu Trusty in the coming months, in preparation for Trusty’s end-of-life in April 2019.
  • New data import tools for HipChat and Gitter. The Slack importer is now out of beta.
  • Zulip Python process startup time is about 30% faster; this effort resulted in upstream contributions to fix significant performance bugs in django-bitfield, libthumbor, and pika.
  • You can now configure custom (organization-specific) fields for user profiles; Zulip can now serve as your organization’s employee directory.
  • Zulip now supports using Google Hangouts instead of Jitsi as the video chat provider.
  • Users can now configure email and mobile push notifications for all messages in a stream (useful for low-traffic streams/organizations), not just for messages mentioning them.
  • New stream settings control whether private stream subscribers can access history from before they joined, and allow configuring streams to only allow administrators to post.
  • Zulip now has experimental support for guest users (intended for use cases like contractors who the organization only wants to have access to a few streams).
  • New native integrations for Ansible Tower, Appveyor, Clubhouse, Netlify, and Zabbix; Zulip now has over 100 native integrations (in addition to hundreds more available via Zapier and IFTTT).
  • New translations for Ukrainian, Portuguese, Indonesian, Dutch, and Finnish. Zulip now has complete or nearly-complete translations for German, Spanish, French, Portuguese, Russian, Ukrainian, Czech, Finnish, and Turkish. Partial translations for Chinese, Dutch, Korean, Polish, Japanese, and Indonesian cover the majority of the total strings in the project.

Upgrade notes:

  • Zulip 1.9 contains a significant database migration that can take several minutes to run. The upgrade process automatically minimizes disruption by running this migration first, before beginning the user-facing downtime. However, if you’d like to watch the downtime phase of the upgrade closely, we recommend running them first manually and as well as the usual trick of doing an apt upgrade first.

Full feature changelog:

  • Added an organization setting for message deletion time limits.
  • Added an organization setting to control who can edit topics.
  • Added ctrl+K keyboard shortcut for getting to search (same as /, but works even when you’re inside compose).
  • Renamed the hotkey for starring a message to Ctrl+S.
  • Added the new SOCIAL_AUTH_SUBDOMAIN setting, which all servers using both GitHub authentication and hosting multiple Zulip organizations should set (see the docs for details).
  • Added automatic thumbnailing of images, powered by thumbor. The new THUMBOR_URL setting controls this feature; it is disabled by default in this release, because the mobile apps don’t support it yet.
  • Added documentation on alternative production deployment options.
  • Added Gitter and HipChat data import tools.
  • Added support for using both LDAPAuthBackend and EmailAuthBackend.
  • Added support for rendering message content written in right-to-left languages in a right-to-left style.
  • Added support for compose keyboard shortcuts in message edit UI.
  • Added a fast database index supporting the “Private messages” narrow.
  • Added a notification setting for whether to send “new login” emails.
  • Dramatically expanded our API documentation to cover many more endpoints.
  • Optimized the performance of loading Zulip in an organization with thousands of users and hundreds of bot users.
  • Optimized production release tarballs to save about 40MB of size.
  • Dropped support for the EmojiOne and Apple emoji sets, and added support for the Google modern emoji set.
  • Removed the “Delete streams” administration page; one can delete streams directly on “Manage streams”.
  • Removed support code for the (long-deprecated) legacy desktop app.
  • Fixed several bugs with progress bars when uploading files.
  • Fixed several bugs in manage.py register_server.
  • Fixed several minor real-time sync issues with stream settings.
  • Fixed some tricky corner cases with the webapp’s caching model and narrowing to the first unread message.
  • Fixed confusing intermediate states of group PMs online indicators.
  • Fixed several subtle unread count corner case bugs.
  • Fixed several installer issues to make it easier to Dockerize Zulip.
  • Fixed several subtle issues with both the LDAP/Active Direcotry integration and its documentation, making it much easier to setup.
  • Fixed several minor bugs and otherwise optimized search typeahead.
  • Fixed a bad nginx configuration interaction with servers that have misconfigured IPv6.
  • Fixed most of the caveats on the Slack data import tool.
  • Fixed memcached cache size issues for organizations over 10,000 users.
  • Zulip’s data export system has full support for all features, and tests to ensure that it stays that way.
  • Rewrote user documentation for dozens of integrations.
  • Rewrote the GitHub authentication backend (and more generally our python-social-auth integration) to make it easier to add new auth methods.
  • Upgraded to modern versions of most of our stale dependencies.
  • Updated our CSS toolchain to support hot module reloading.
  • Updated numerous pages within the /help/ site.
  • We no longer require re-authing to signup after trying to login with an OAuth authentication backend (GitHub or Google).
  • Made major improvements to the Help Center.
  • Improved system for configuring the S3 file uploads backend.
  • Improved emoji typeahead sorting.
  • Improved Zulip’s layout for windows with a width around 1024px.
  • Improved Zulip’s generic error handling behavior for webhooks.
  • Improved keyboard navigation of settings and popovers.
  • Renamed “Realm Filters” to “Linkifiers”, at least in the UI.
  • Converted several layered-checkbox settings to clearer dropdowns.
  • Cleaned up some legacy APIs still using email addresses.
  • Made arrow-key navigation work within right and left sidebar search.
  • Fixed performance issues of the right sidebar user list with 5000+ user accounts on a server.
  • Emails and several other onboarding strings are now tagged for translation.
  • Optimized the performance of importing Zulip by about 30%. This significantly decreases the load spike when restarting a Zulip server.
  • Optimized the performance of development provisioning; a no-op provision now completes in about 3.5s.
  • Migrated our static asset pipeline to webpack.
  • Our steady work on codebase quality and our automated test suite continues. Backend test coverage is now an incredible 98%.