# Version History All notable changes to the Zulip server are documented in this file. ### Unreleased - Added full support for translating the Zulip UI. - Added button to subscribe at bottom of stream narrows. - Added integration with CircleCI. - Added UI for marking all messages in a stream or topic as read. - Added new Attachment model to keep track of uploaded files. - Added caching of virtualenvs in development. - Added mypy static type annotations to about 20% of the Zulip Python codebase. - Added automated test of backend templates to test for regressions. - Added lots of detailed documentation on the Zulip development environment. - Added setting allowing only administrators to create new streams. - Fixed missing helper scripts for RabbitMQ Nagios plugins. - Fixed skipping forward to latest messages. - Migrated backend templates to the faster Jinja2 templating system. - Migrated development environment setup scripts to tools/setup/. - Simplified the API for writing new webhook integrations. - Removed most remaining javascript global variables. ### 1.3.12 - 2016-05-10 - CVE-2016-4426: Bot API keys were accessible to other users in the same realm. - CVE-2016-4427: Deactivated users could access messages if SSO was enabled. - Fixed a RabbitMQ configuration bug that resulted in reordered messages. - Added expansive test suite for authentication backends and decorators. - Added an option to logout_all_users to delete only sessions for deactivated users. ### 1.3.11 - 2016-05-02 - Moved email digest support into the default Zulip production configuration. - Added options for configuring Postgres, RabbitMQ, Redis, and memcached in settings.py. - Added documentation on using Hubot to integrate with useful services not yet integrated with Zulip directly (e.g. Google Hangouts). - Added new management command to test sending email from Zulip. - Added Codeship, Pingdom, Taiga, Teamcity, and Yo integrations. - Added Nagios plugins to the main distribution. - Added ability for realm administrators to manage custom emoji. - Added guide to writing new integrations. - Enabled camo image proxy to fix mixed-content warnings for http images. - Refactored the Zulip puppet modules to be more modular. - Refactored the Tornado event system, fixing old memory leaks. - Removed many old-style /json API endpoints - Implemented running queue processors multithreaded in development, decreasing RAM requirements for a Zulip development environment from ~1GB to ~300MB. - Fixed rerendering the complete buddy list whenever a user came back from idle, which was a significant performance issue in larger realms. - Fixed the disabling of desktop notifications from 1.3.7 for new users. - Fixed the (admin) create_user API enforcing restricted_to_domain, even if that setting was disabled for the realm. - Fixed bugs changing certain settings in administration pages. - Fixed collapsing messages in narrowed views. - Fixed 500 errors when uploading a non-image file as an avatar. - Fixed Jira integration incorrectly not @-mentioning assignee. ### 1.3.10 - 2016-01-21 - Added new integration for Travis CI. - Added settings option to control maximum file upload size. - Added support for running Zulip development environment in Docker. - Added easy configuration support for a remote postgres database. - Added extensive documentation on scalability, backups, and security. - Recent private message threads are now displayed expanded similar to the pre-existing recent topics feature. - Made it possible to set LDAP and EMAIL_HOST passwords in /etc/zulip/secrets.conf. - Improved the styling for the Administration page and added tabs. - Substantially improved loading performance on slow networks by enabling GZIP compression on more assets. - Changed the page title in narrowed views to include the current narrow. - Fixed several backend performance issues affecting very large realms. - Fixed bugs where draft compose content might be lost when reloading site. - Fixed support for disabling the "zulip" notifications stream. - Fixed missing step in postfix_localmail installation instructions. - Fixed several bugs/inconveniences in the production upgrade process. - Fixed realm restrictions for servers with a unique, open realm. - Substantially cleaned up console logging from run-dev.py. ### 1.3.9 - 2015-11-16 - Fixed buggy #! lines in upgrade scripts. ### 1.3.8 - 2015-11-15 - Added options to the Python api for working with untrusted server certificates. - Added a lot of documentation on the development environment and testing. - Added partial support for translating the Zulip UI. - Migrated installing Node dependencies to use npm. - Fixed LDAP integration breaking autocomplete of @-mentions. - Fixed admin panel reactivation/deactivation of bots. - Fixed inaccurate documentation for downloading the desktop apps. - Fixed various minor bugs in production installation process. - Fixed security issue where recent history on private streams might be visible to new users (to the Zulip team) who were invited with that private stream as one of their initial streams (https://github.com/zulip/zulip/issues/230). - Major preliminary progress towards supporting Python 3. ### 1.3.7 - 2015-10-19 - Turn off desktop and audible notifications for streams by default. - Added support for the LDAP authentication integration creating new users. - Added new endpoint to support Google auth on mobile. - Fixed desktop notifications in modern Firefox. - Fixed several installation issues for both production and development environments. - Improved documentation for outgoing SMTP and the email mirror integration.