这不是愚人节玩笑,我们回来了: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 ,得到了近百万独立开发者和设计师的喜爱。

相关文章
|
存储 数据采集
时序逻辑电路的应用及其作用
一、什么时序逻辑电路 时序逻辑电路是一种电子电路,用于处理和存储时序信息。它通过使用时钟信号来控制电路的行为,以实现特定的功能。 时序逻辑电路通常由触发器和组合逻辑电路组成。触发器是一种存储器件,可以存储和传递电信号。组合逻辑电路则根据输入信号的组合产生输出信号。 时序逻辑电路的行为是根据时钟信号的变化来确定的。时钟信号是一个周期性的信号,用于同步电路的操作。在每个时钟周期中,电路根据输入信号和当前状态来计算输出信号,并在时钟信号的上升沿或下降沿时更新状态。 时序逻辑电路可以用于实现各种功能,如计数器、状态机、时序控制器等。它在数字系统中起着重要的作用,用于处理时序信息和控制电路的行为。 二、
1488 0
|
存储 弹性计算 文件存储
Windows容器使用阿里云NAS SMB文件系统做持久化存储目录
随着Windows容器逐渐普及和发展,Windows容器持久化存储以及容器间共享的需求越来越高涨。 本文介绍如何让Windows主机正确配置NAS SMB文件系统,支持Windows容器让Docker镜像使用挂载NAS SMB文件系统的子目录作为持久化存储目录。
8070 0
Windows容器使用阿里云NAS SMB文件系统做持久化存储目录
|
11月前
|
监控 安全 应用服务中间件
网站出现“SSL handshake failed“?SSL握手失败(525)的错误修复指南
本文详细解析了Cloudflare中常见的SSL握手失败(525)错误,从问题定义到根源分析,再到具体解决方案,提供了一站式修复指南。通过检查证书域名匹配、有效性及时钟同步等问题,结合Nginx/Apache配置调整与Cloudflare设置优化,帮助用户彻底解决525错误。同时,文章还提供了预防措施,如自动续期和SSL状态监控,确保网站长期稳定运行。跟随步骤操作,可有效避免SSL相关故障,保障网站安全访问。
8446 0
网站出现“SSL handshake failed“?SSL握手失败(525)的错误修复指南
|
1月前
|
缓存 Java API
从原理到落地:RAG 技术深度拆解与 Java 实战全攻略
RAG(检索增强生成)是解决大模型知识时效性差、易幻觉的核心方案:通过实时检索私有/外部数据,将其作为上下文输入大模型,实现准确、可更新的回答。相比微调,RAG成本低、上线快、维护简,是企业落地LLM的首选架构。
153 1
|
8月前
|
弹性计算 应用服务中间件
亲测:阿里云备案流程及操作步骤(图文教程)
阿里云备案共五步,最快2天成功。先提交材料至阿里云初审(1天内),通过后转交管局,用户完成工信部短信核验,最后等待管局审核(1-20天)。全程线上操作,简单高效。
2075 3
|
8月前
|
JSON 供应链 监控
1688商品详情API技术深度解析:从接口架构到数据融合实战
1688商品详情API(item_get接口)可通过商品ID获取标题、价格、库存、SKU等核心数据,适用于价格监控、供应链管理等场景。支持JSON格式返回,需企业认证。Python示例展示如何调用接口获取商品信息。
|
运维 供应链 监控
【云故事探索】NO.12:茶百道——奶茶上云,原生的更好喝
茶百道自2008年成立,从100家门店扩展至7000多家,年销量达8亿杯。2018年起,茶百道开启全国加盟,通过数字化转型,实现供应链、运营及营销的全面升级。借助阿里云技术,优化从前端到后端的业务流程,提升用户体验,降低运营成本,显著增强了市场竞争力。
|
运维 负载均衡 算法
“分布式基础概念”全面解析,让你秒懂分布式系统!【一】
该博客文章全面解析了分布式系统的基础概念,包括微服务架构、集群与分布式的区别、节点定义、远程调用、负载均衡、服务注册与发现、配置中心、服务熔断与降级以及API网关,帮助读者快速理解分布式系统的关键组成部分和工作原理。
“分布式基础概念”全面解析,让你秒懂分布式系统!【一】
|
安全 编译器 C语言
C语言常量的定义与使用的注意点
在 C 语言中,常量是在程序运行期间值不变的量,通过字面值、`#define` 或 `const` 关键字定义。字面常量直接在代码中表示固定值,如整数 `100`、浮点数 `3.14`、字符 `'A'` 和字符串 `"Hello, World!"`;`#define` 用于定义宏,如 `#define PI 3.14159`;`const` 则定义不可变变量,如 `const int daysInWeek = 7`。常量可用于数组大小、循环边界等场景,并能提升代码的可读性和可维护性。使用时需注意作用域、类型安全和命名,避免直接使用数字(魔法数字)。
1085 8
三大抽样分布——卡方分布、t分布、F分布
三大抽样分布——卡方分布、t分布、F分布

热门文章

最新文章