开发日志

安全更新:Typecho 1.2.1

此版本主要是一个安全更新,建议所有用户升级。

XSS 漏洞

主要是 #1535, #1539, #1545, #1560 这几个 ISSUE 提到的错误。由于参数和对提交数据的过滤不严,造成了站点会被攻击者利用的漏洞。此次修复后你可以安全地打开已经被攻击者污染的评论数据,当然我们建议你删除它们。

对 MySQL 的 SSL 支持

在某些运行环境中你可能需要通过 SSL 来连接 MySQL 数据库,目前我们已经加上了这一支持

更多的小更新

  1. 对 PHP 8.1 的更多支持
  2. 其它 Bug 修复

感谢各位贡献者的无私工作。具体更新请见:https://github.com/typecho/typecho/releases/tag/v1.2.1

这不是玩笑,我们回来了:Typecho 1.2.0

是的,你没有看错,经过漫长的等待,我们终于发布了 Typecho 1.2.0 正式版。这个版本的开发经历了如此长的时间,以至于我无法一次性列出这么长的详细改进列表。

除了修复了很多bug以外,我们重要的改进有如下几点:

  1. 新的编辑器实时预览自动跟随效果,以及主题内预览功能
  2. 后台界面对移动端的适配
  3. 新的安装程序
  4. 进入 PHP 7.2 时代,以及对 PHP 8 的更好支持
  5. 容器化的更好支持

除了新功能,大家也可以发现我们的版本号规则有变化。新的版本号会采用常规的3组数字组成,比如1.2.0。它适合小步快跑的开发模式,具体的解释可以看这篇文章

这个小小的软件记录了我们很多人生命中最美好的时光,大家用它在缤纷多彩的互联网上留下自己的印记。快乐,伤痛,成长,迷惘,时间无情地流过,我们却让它有了意义。这时我们再回头来看 Typecho 的名称组成:轻击键盘,静候回音。在你写下文字的时候,涟漪已然产生。

而于我来说,十多年前键盘敲下的第一行代码,也不知不觉产生了这么大的回响。在这春回大地之际,感怀之余,未免又对未来心生希望起来。让我们大声宣布,Typecho 回来了!

Typecho 1.1(17.10.30) 正式版发布

注意:由于 17.10.29 版本存在一个时区的错误,我们修复后,重新发布了 17.10.30 版本

正如预告的那样,Typecho 1.1 的正式版在本周末正式发布。我们在 Beta 版的基础上又修复了几个小的错误,主要是对时区和夏令时的支持。1.1版的大的改进如下所示:

  1. 修复两个高危的漏洞(XMLRPC的和安装文件的),大家在升级时请覆盖原有的根目录下的install.php文件
  2. 新增了备份功能
  3. 新增了若干的插件钩子和特性
  4. 修正了上一个版本以来的大量错误
  5. 新增了Mysqli适配器
  6. 增加夏令时支持
  7. 修正了反垃圾的措施,自带的反垃圾方法已经能够挡掉绝大部分机器人了
  8. 替换了 Markdown 解析引擎,保证预览与实际效果严格一致

为了保证大家的 install.php 都能更新,我们在升级之前又加入了自动安全检查机制,帮助你检查相关文件是否已经更新完毕。请大家继续反馈你的想法和建议

Typecho 1.1(17.10.24) Beta版发布

相比于上一个版本做了大量的易用性修复

  1. 修复两个高危的漏洞(XMLRPC的和安装文件的),大家在升级时请覆盖原有的根目录下的install.php文件
  2. 新增了备份功能
  3. 新增了若干的插件钩子和特性
  4. 修正了上一个版本以来的大量错误
  5. 新增了Mysqli适配器
  6. 增加夏令时支持
  7. 修正了反垃圾的措施,自带的反垃圾方法已经能够挡掉绝大部分机器人了

这是正式版发布之前的最后一个Beta版,由于包含了一些高危漏洞的修复,所以我们将加快正式版发布的步伐。也许还会发布一个RC版,而如果版本足够稳定,我们将跳过RC版。

另外值得注意的是,Typecho的新版本对PHP环境的最低要求已经提高到5.4,在PHP 7已经逐渐普及的今天,是时候升级你老旧的PHP版本了。

我们将继续收集Bug并改进此版本,请随时报告你在使用过程中遇到的问题,当然这是一个测试版,不建议你在正式环境中使用。

一次关于Typecho的分享

在经历了漫长的蛰伏期以后,Typecho 的新版开发脚步也越来越快。从 2007 年毕业开始到现在,这款程序陪伴了我人生最美好的10年,其中有很多值得分享的事情,于是我在 SegmentFault 上开了一次分享专场,以直播的形式跟大家交流一二,由于直播也需要流量成本,因此必须设置成收费的,我特意准备了一些限量的折扣票

https://segmentfault.com/l/1500000010496163?c=9b751d9f047fc6c23c94863745109e50

这次分享的主要内容是

  1. 一些开发中的趣事
  2. 技术的演进思路
  3. 二次开发的一些介绍和经验
  4. 今后的开发计划