Zulip 3.0:线程化开源团队聊天

2020-07-17 02:14:55

我们很兴奋地宣布发布Zulip Server3.0,其中包含数百个新功能和错误修复,以帮助分布式和远程团队保持高效和专注。

Zulip是一款开源的线程化团队聊天应用,全球有数千个团队在使用。Zulip独特的基于主题的线程化体验将实时聊天的即时性与电子邮件式线程化的异步效率相结合。

Zulip Server 3.0包含主要的视觉设计改进、显著的可扩展性和性能改进、一个新的徽标以及几个Zulip最受欢迎的功能,以帮助用户高效地阅读、浏览、搜索和返回他们的邮件。Zulip是100%免费的开源软件,附带16种语言的翻译版本。

Zulip3.0是我们有史以来最大的版本,自从12月份Zulip2.1发布以来,有超过4100个新的提交。总共有110人为Zulip3.0贡献了承诺,将Zulip服务器项目带给了619个不同的代码贡献者。Zulip有54个人贡献了100多个提交,拥有迄今为止所有团队聊天软件中最活跃的开源开发社区。

非常感谢在过去几个月里为Zulip做出贡献的每一个人,无论是通过编写代码和文档、报告问题、测试更改、翻译、在chat.zulip.org上发布反馈,还是仅仅是通过建议!如果没有成百上千的人回馈祖利普社区,我们就不能做到这一点。

今天标志着Zulip服务器的发布,但在过去的几个月里,服务器代码库之外也发生了许多令人兴奋的工作。重点包括:

由于持续的大流行改变了人们的工作方式,Zulip的使用量在2020年经历了非同寻常的增长。然而,听到用户讲述Zulip如何帮助他们远程工作、会议、教学和会议取得成功,我感到非常高兴。我们现在为数百个有价值的开源项目、非营利组织、研究团体和类似的非商业组织赞助免费的Zulip Cloud Standard托管。*新组织可以在注册流程中或在账单页面上申请。

Zulip Cloud已经为商业用户提供了60天的免费试用,以帮助确保预算冻结不会成为试验Zulip的障碍。*Zulip拥有强大的数据导入工具,可用于Slake、Matterost和Gitter。

Zulip有了新标识!它由两个聊天气泡组成,形成一个Z(在它们之间的负空间中有第二个Z!),它取代了我们在2013年创建的老化的“圆内绿色Z”标志。

我们的主域现在是https://zulip.com.。在接下来的几周里,我们将把组织从subdomain.zulipchat.com迁移到subdomain.zulip.com,注意避免破坏现有的API集成和固定链接。

适用于iOS和Android的Zulip移动应用程序修复了大量错误,并获得了用LaTeX显示数学公式等功能-这是许多组织经常要求的功能,这些组织进行机器学习或其他最好地用数学语言表达的工作。

今年我们有一个非常棒的谷歌代码之夏,有18名优秀的学生在他们的暑假里学习Zulip。在这里和我们的完整更改日志中宣传的许多功能都是由当前的GSOC学生或该计划的校友构建的。

因为这是一个如此巨大的版本,仅列出此版本中的数百个重要更改就会让我们的Changelog变得非常长。以下是一些亮点:

添加了对在流之间移动主题(或主题内的消息)的支持。到目前为止,这是我们最需要的功能。

重新设计了顶部导航栏/搜索区域,使其更加整洁并显示流描述。这是我们请求次数第二多的功能,去掉了Zulip最明显的UI疣。

添加了“最近话题”,这是一个用于浏览对话的有用的新界面。到目前为止,反馈非常积极,我们计划将此版本作为Zulip Server4.0的默认视图。

Zulip有一个创新的新功能,可以安排与全球参与者的会议。你可以使用日期选择器来写出Zulip将在每个读者自己的时区显示的时间,而不是做体操来向全球各地的观众清楚地传达会议时间。

此版本增加了对Ubuntu20.04焦点的支持,并终止了对Ubuntu16.04Xenial和Debian9Stretch的支持(这两个版本都基于Python3.5,将于9月发布)。有关升级操作系统的信息,请参阅我们的文档。

Zulip现在默认在新安装上使用PostgreSQL12,并支持PostgreSQL10-12。(以前,Zulip总是使用基础操作系统版本附带的任何PostgreSQL版本。)。此版本还添加了一个方便的新工具来升级PostgreSQL。

大量重大性能改进。Zulip的服务器到客户端推送系统的伸缩性是Zulip2.x的4倍,而且一些最常见的查询速度要快得多。对于像我们自己的Zulip开发社区这样拥有10,000多个用户帐户的组织来说,性能有了显著的提高。

我们将Django从1.11.x升级到最新的LTS系列2.2.x。我们仍然喜欢每个主要的Django版本都有我们没有意识到我们需要的伟大功能!

我们正在向仅有2位数字的新版本方案移动;下一个维护版本将是Zulip Server 3.1,下一个主要版本将是Zulip Server 4.0。

Zulip的rest API文档在内容和表示形式上都进行了重大修改。最重要的是,我们的自动化测试现在根据用于生成API文档的OpenAPI架构验证每个API请求、响应和示例。因为Zulip服务器拥有几乎100%的测试覆盖率,这确保了API文档始终与实现保持一致。

Zulip现在有一个详细的API ChangeLog,它准确地记录了每次API更改的引入时间。服务器设置API(比服务器版本更细粒度)中的zulip_feature_level字段与ChangeLog结合使用时,允许客户端应用程序确切知道任何给定的Zulip服务器支持什么。这将使开发人员(包括官方桌面、移动和终端客户端的开发人员)可以更轻松地直接根据API文档编写全功能的客户端应用程序,而无需调查服务器内部。

记录API为Zulip的API提供了一个自然的审计,以发现模糊的怪癖和错误,而这些问题和错误应该比记录的更好地清理。因此,此版本包含了数十个对Zulip API的更改,该API在多年来一直相当稳定。由于仔细的向后兼容性工作,这些应该不会造成任何干扰(6个月前发布的Zulip移动应用程序在此版本中未做任何修改!)。

Zulip桌面应用程序现在执行社交身份验证(Google、GitHub等)。通过外部浏览器,提高了安全性并提供了更愉快的单点登录体验。

添加了一个新的传入WebHookAPI,该API接受Slake的传入WebHooks API使用的格式的消息。这意味着一些与Slake集成但没有通用的外发WebHook功能的第三方产品现在可以很容易地与Zulip集成。

Zulip流行的SAML集成现在支持从SAML身份提供者发起的登录。

BigBlueButton加入Jitsi和Zoom,成为受支持的视频通话提供商。我们还重写了Zoom集成,以获得更好的OAuth用户体验。由于Google Hangout即将停产,Google Hangout视频通话集成功能已被删除。(它的替代品Google Meet没有为第三方应用程序提供类似的API来创建呼叫。)。

ErrBit、Grafana、Thinkst Canary和Prometheus Alertmanager的新原生集成,改进了GitHub、GitLab、Sentry、Taiga、Semaphore等集成。

Zulip现在根据操作系统的主题,使用Preferences-color-schema CSS属性来确定是默认为白天主题还是流行的夜间主题。

Zulip的通知设置UI已围绕直观的表格格式进行了重新设计,显示所有具有非默认设置的单独流。这使得它更容易配置,也是为订阅主题通知等即将到来的功能做重要准备。

添加了对可编程邮件保留策略的支持。长期以来,这一直是Zulip最受企业和隐私爱好者要求的功能之一。

Zulip现在有16种语言的完整或接近完整的翻译:汉语、捷克语、芬兰语、法语、德语、意大利语、日语、韩语、波斯语、葡萄牙语、罗马尼亚语、俄语、西班牙语、土耳其语和乌克兰语以及英语。另外8种语言有部分翻译,涵盖了项目中的大部分字符串:保加利亚语、加泰罗尼亚语、荷兰语、印地语、匈牙利语、印度尼西亚语、波兰语和瑞典语。

Zulip的遗漏邮件是Zulip核心体验中尚未国际化的最后部分之一,现在已经标记为需要翻译。

请参阅详细的更改日志,了解其他许多值得注意的改进,包括新功能、性能优化和错误修复。如果您管理的是Zulip服务器,我们建议您至少阅读顶部的新增功能列表,因为此版本中引入了许多有用的新设置,您可能希望利用这些设置。

我们强烈建议升级,因为此版本比以前的版本有很大改进。您可以按照升级说明照常升级。有关在升级之前需要了解的一些更改,请参阅ChangeLog的升级说明部分。

许多安装已经升级为候选版本,因此我们对此版本非常有信心。但是,如果您需要帮助,可以在chat.zulip.org上获得尽力而为的支持。您还可以从Zulip核心团队购买商业支持。

我想借此机会宣传几个回馈Zulip的机会:

加入chat.zulip.org开发人员社区,在那里我们部署最新的实验特性和设计改进。我们喜欢来自Zulip用户社区的反馈,并且有一些特别针对该目的的流。

翻译一下!我们很乐意让更多的语言达到100%。有关如何参与的信息,请参阅我们的翻译指南。

如果您想专业地参与Zulip,我们正在招聘工程师!有关我们正在寻找的工作的详细信息,请查看我们的工作页面。

再次感谢令人惊叹的全球Zulip开发社区使这成为可能!以下是此服务器版本的代码贡献者的摘要(按提交次数排序)。

$GIT SHORTLOG-s 2.1.0..3.0|Sort-nr 686 Steve Howell 617 Anders Kaseorg 516 Tim Abbott 231 Mateusz Mandera 197 Tejas Tank 178 Aman Agrawal 118 Rohitt Vashishtha 115 Alex Vandiver 111 Vishnu KS 109 Sahil Batra 103 Siddharth Varshney 83 Yash Rathore 76 Ryan Rehman Puneeth Chaganti 71 Arit Sharma 68 SiddharkHoodes 14 Greg Price 10 Vaibhavrajsingh2001 10 Chris Heald 9 Divyanshu Agrawal 7 Vaibhav Raj Singh 7 Graham Bleaney 5 Vinit Singh 5 Pemontto 5 Chris Bobbe 4 Udit107710 3 Ray Kraesig 3 Johannes Hochreiter 3 Eeshan Garg 2 Yashwant 2 Stefan Weil 2 Sebastian Morr 2 Sanskar Bajpai 2 sail9。2 Manav Mehta 2 João Maurício Carvalho 2 Imran Iqbal 2 Cyril Cohen 2 cestrell 2 anshgit101 1 xpac1985 1呼呼1 Wbert Adrian Castro Vera 1 vsvipul 1 Tom Daff 1 Tlazypanda 1 Tim 4月1日至Schneidereit 1 thoemie 1 stableApple 1 Sourabh Singh 1 Sara Gulotta 1 Sahil SilareDavid Wood 1 Dangraw 1 Brendon 1 BrainRecursion 1 Biraj 1 Bhanu Gupta 1 Arunikaydav42 1 apxwn 1 Ankita Bansal 1 Alex Dehnert 1 Alexandre Gigleux 1 Akash Nimare 1 Aditya Bansal 1 Abhinav