这不是愚人节玩笑,我们回来了:Typecho 1.2.0 发布!

简介: 这不是愚人节玩笑,我们回来了:Typecho 1.2.0 发布!

刚刚,Typecho 项目发起人祁宁在官方博客以开发者账号 @joyqi 发文宣布了 Typecho 1.2.0 正式版发布的消息 —— “这不是玩笑,我们回来了!”

image.png

image.png

此次正式版本的到来,是继去年 9 月份 Typecho 主线版本宣布回归后释出 v1.2.0-rc.1(Release Candidate 版本)的升级版。

Typecho 1.2.0 正式版重要改进

相比 v1.2.0-rc.1,全新的 Typecho 1.2.0 正式版有了不少重要的改进:

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

除了以上新改进的功能,正式版的版本号规则也有变化:新的版本号会采用常规的3组数字组成(如 1.2.0) ,适合小步快跑的开发模式。

此前由于采用大版本/时间版本的形式(如 1.1/17.10.30 代表在 2017 年 10 月 30 日发表的 1.1 版本,该版本号模仿了 ubuntu 的发行版,比较适合于每年固定日期发行固定版本的形式),与 Typecho 目前的开发状况不太符,因此新的版本号会采用常规的 3 组数字组成。

如 1.2.0,前面两部分是大的版本号,重要更新的时候会变化;最后一位适用于微小更新,针对一些微小的 bug 修复更新。新的版本规则可以让 Typecho 的版本发布更加灵活,小版本更新也可以更频繁。

“再见” PHP 5,“你好” PHP 7.2

据发起人祁宁介绍,Typecho “诞生”之初正值 PHP 5 流行的时代,当时 PHP 7 还是“新秀”,转眼间 PHP 8 都已经走上了舞台。因此,Typecho 要保持与时俱进,是时候做出改变了 —— Typecho 项目将整体转向 PHP 7,更确切的说是 PHP 7.2。

“更高的编程语言版本不仅能带来更好的执行效率,关键还能提高编程效率”。Typecho 项目整体转向 PHP 7.2 语言版本的原因,主要还是考虑到兼容性。当然对于用户来说,依旧建议你使用 PHP 7.4 或 PHP 8.0 等更新的 PHP 版本。

升级至 PHP 7.2 后的 Typecho 代码,将会有如下变化:

  • 类名全部由下划线风格转向反斜线的 namespace 风格

// 之前的代码

new Typecho_Widget_Helper_Form();

// 之后的代码

use Typecho\Widget\Helper\Form;

new Form();

  • 编码风格建议统一使用PSR-12
  • 更强的类型约束,所有的接口参数和返回值都将加上类型约束,所以大家在使用的时候也要更加注意规范。
  • 移除了大量过时/无用的代码。

目前,该项目的更新正在 dev 分支开发中,而 Typecho 命名空间的代码则基本已改造完成。得益于新设计的自动加载系统,老旧类命名和使用方法也将得到兼容,因此不必担心之前的插件和主题用不了。

全新的安装脚本

image.png

Typecho 1.2.0 正式版基于原生的 UI 组件开发了新的安装脚本,相比以往“代码乱飞”在界面上的改变代码可谓彻底重写。除了交互更加便捷,新安装脚本也支持在命令行通过环境变量静默安装,为后续改动创造了条件。

拥抱容器化

image.png

随着近年来微服务的强势崛起,微服务的基础容器化也早已走入寻常开发者的视野。无论是 k8s 还是 Docker,代码部署时针对容器化作出相应设计已成为基本需求。全新 Typecho 1.2.0 正式版在容器化方面也取得了很大的进步,目前官方容器已经正式推出:

Docker Hub: https://hub.docker.com/r/joyq...

Github: https://github.com/typecho/Do...

官方 Docker 镜像支持 PHP 7.3 PHP 7.4 PHP 8.0,且运行环境支持 FPM Apache Cli等模式,操作系统可选 debian 或者更小巧的 alpine。

Typecho 使用了 Github 的流水线做全自动化编译提交,除发布新版本时会自动编译以外,每晚也会自动发布一个 nightly 版本(目前只有这个版本,并非正式代码,建议测试使用),Dockerfile 的文档还在书写中。

Github Actions 等持续集成的工具让开发的发布测试工作更加高效,目前 Typecho 已设计了很多有趣的流水线。

关于 Typecho

Typecho 是由 type 和 echo 两个词合成,来自于开发团队的头脑风暴。

Typecho 是一款基于 PHP 7 开发构建的内核强健、扩展方便、体验友好、运行流畅的轻量级开源博客程序(前身是一款名为 Magike 的开源博客程序)。Typecho 在 GPLVersion 2 许可证下发行,可以运行在各种平台上,支持多种数据库(Mysql , PostgreSQL , SQLite)。

参考链接:https://joyqi.com/typecho/abo...

image.png

祁宁 Joyqi ,SegmentFault 思否创始人、CTO, 毕业于华中科技大学电信系,是华科 Dian 团队第 98 号成员。曾工作于阿里巴巴,在游戏公司担任技术架构师,在大学期间开发了开源博客系统 Typecho ,得到了近百万独立开发者和设计师的喜爱。

相关文章
|
6月前
|
移动开发 前端开发 JavaScript
童年回忆——开心消消乐(内含源码inscode一键运行)
童年回忆——开心消消乐(内含源码inscode一键运行)
|
6月前
|
存储 缓存 Unix
同事跳槽阿里,临走甩给一份上千页的Linux源码笔记,真香
UNIX操作系统以简单、-致、优雅的设计著称,这种真正非凡的特性使得UNIX系统在超过1/4世纪的时间里影响了整个世界。而且,正是由于Linux的蓬勃发展,发源于UNIX的思想才依然活力依旧,并在可预见的未来其发展势头会一直持续下去。
|
小程序 Windows
电脑可以刷微信朋友圈,这下能更好地摸鱼了?
电脑可以刷微信朋友圈,这下能更好地摸鱼了?
|
SQL JavaScript Java
搭建情人节表白网站(超详细过程,包教包会)
网站的搭建其实在七夕的时候就已经弄好了,只是当时不会搭建,然后就放了好几个月,偶然发现情人节快到了,遂重新搭建了这个网站,不过说实话除了网站还真想不出有啥能够体现程序员的特长,你说各种代码,c,c++,java即时给你做出不错的GUI界面,人家还不一定会打开,网站最容易了,有手(机)就行,下面是它的效果展示视频,觉得好的记得三连哦
423 0
搭建情人节表白网站(超详细过程,包教包会)
|
Web App开发 JavaScript 前端开发
【程序员的浪漫】七夕到了,还不快给你女朋友做一个专属chrome插件
【程序员的浪漫】七夕到了,还不快给你女朋友做一个专属chrome插件
151 0
【程序员的浪漫】七夕到了,还不快给你女朋友做一个专属chrome插件
|
SQL 缓存 Java
在项目中随手把haseMap改成了currenHaseMap差点被公司给开除了。
在项目中随手把haseMap改成了currenHaseMap差点被公司给开除了。
143 0
|
编译器 C++
【C/C++教程】关于C/C++那些坑爹的破事儿,你被坑了吗?
今天,就带大家看看C/C++里面究竟有多少不为人知的秘(keng)密(die)吧。可以测试一下,不看答案,自己能get到多少。
137 0
【C/C++教程】关于C/C++那些坑爹的破事儿,你被坑了吗?
|
程序员 C++
程序员如何和“美国时间”愉快的玩耍
  请原谅我这里标题党,其实本文只是想分享一下c++编程场景下如何解决“美国时间”与时间戳转换的经验,大家轻拍 :) # 时间戳与夏令时的宿怨   在程序的世界里,我们更喜欢和系统时间戳玩耍,因为全世界所有计算机的系统时间戳不会因各自时区设置差异而不同,而时间戳是自1970年1月1日到当下的秒数(实际上时间戳的数据类型是time_t,time_t在大多数c/cpp实现里是long类型)
4112 0
|
人工智能 运维 小程序
为何小程序上线了,他们的内心却留下遗憾? | 11月1号栖夜读
今天首篇文章,讲述了:出于多端投放和开放生态的考虑,闲鱼开始接入整个阿里小程序体系。闲鱼在9月份迅速上线了第一个小程序鱼塘小程序,由于刚接触不熟悉小程序体系,整体性能上有比较大的优化空间,主要表现在以下问题。
2772 0
|
Java API C#
『千举万变,其道一也』教你一招玩转阿里云
学会阿里云SDK的CommonRequest,一招玩转所有阿里云OpenAPI!
1869 0
下一篇
无影云桌面