Skip to content

Releases: halo-dev/halo

2.21.0-beta.1

06 Jun 15:04
28a4a13
Compare
Choose a tag to compare
2.21.0-beta.1 Pre-release
Pre-release

⚠️ 提示

建议在升级到此版本前,先查阅 2.21.0 Alpha 版本的更新日志:

新特性

  • 重构 Console 端仪表盘,支持响应式布局、持久化配置,支持通过插件扩展小部件。 by @ruibaby in #7496

功能优化

  • 移除插件列表的时间字段,并在插件详情中显示安装时间。 by @ruibaby in #7494
  • 优化评论管理的 UI,支持查看评论的详细数据。 by @ruibaby in #7481

开发者相关

  • 提供根据分组获取和更新用户预设的 API。 by @JohnNiang in #7495

Full Changelog: v2.21.0-alpha.2...v2.21.0-beta.1

2.21.0-alpha.2

31 May 14:56
c6f19a2
Compare
Choose a tag to compare
2.21.0-alpha.2 Pre-release
Pre-release

⚠️ 提示

此版本为 2.21.0 的早期版本,不适用于生产环境。这个版本移除了一些过时 API 和一些不兼容改动,发布此版本的主要目的是为了可以让社区的插件和主题开发者提前适配。具体改动方案请查阅 v2.21.0-alpha.1 中的适配列表和破坏性更新列表。

新特性

  • 支持在初始化页面设置外部访问地址。 by @JohnNiang in #7488

问题修复

  • 修复 2.21.0-alpha.1 中 Console 的全局搜索样式问题。 by @ruibaby in #7485
  • 修复 2.21.0-alpha.1 中概览页面的外部访问地址异常提示的显示时机问题。 by @ruibaby in #7484
  • 修复当有已选择附件时,上传新附件导致所选附件状态异常的问题。 by @ruibaby in #7487
  • 修复 Console 的全局搜索能搜索出系统保留用户的问题。 by @ruibaby in #7486

Full Changelog: v2.21.0-alpha.1...v2.21.0-alpha.2

2.21.0-alpha.1

26 May 15:05
981d6d1
Compare
Choose a tag to compare
2.21.0-alpha.1 Pre-release
Pre-release

⚠️ 提示

此版本为 2.21.0 的早期版本,不适用于生产环境。这个版本移除了一些过时 API 和一些不兼容改动,发布此版本的主要目的是为了可以让社区的插件和主题开发者提前适配。具体改动方案请查阅下方的适配列表和破坏性更新列表。

从 2.21.0 开始,Halo 开发环境的最低运行环境为 Java 21。

新特性

功能优化

  • 编辑器支持为链接设置 搜索引擎忽略链接关系。 by @Nimbus3009 in #7444
  • 用户搜索支持根据邮箱地址。 by @liuyiwuqing in #7441
  • 优化 Console 和 UC 中数据列表的 UI 在不同尺寸设备下的表现。 by @ruibaby in #7383

问题修复

  • 修复因 Locale 解析错误导致无法访问页面的问题。 by @JohnNiang in #7458

依赖更新

开发者相关

适配列表

VEntity 组件

此版本为了优化使用 VEntity 组件渲染的数据列表样式,引入了新的 VEntityContainer 组件,适配方式为在所有 VEntity 组件外使用
VEntityContainer 组件包裹,以下是具体步骤和示例:

升级 ⁠@halo-dev/components 包至 2.21.0 版本:

# 临时地址,等待 2.21.0 正式发布之后,可改为 @halo-dev/[email protected]
pnpm i https://pkg.pr.new/@halo-dev/components@7383

示例:

<script lang="ts" setup>
import { VEntity, VEntityContainer } from "@halo-dev/components"
</script>

<template>
  <VEntityContainer>
    <VEntity />
    <VEntity />
  </VEntityContainer>
</template>

完整更改方式可参考:https://github.com/halo-dev/plugin-feed/pull/66/files

破坏性更新

  • 移除过时类 run.halo.app.extension.router.selector.FieldCriteriaPredicateConverter
    run.halo.app.extension.router.selector.LabelCriteriaPredicateConverter,推荐用
    run.halo.app.extension.router.selector.SelectorConverter 替代。
  • 移除过时类 run.halo.app.search.SearchParam,推荐用 run.halo.app.search.SearchOption 替代。
  • 移除过时类 run.halo.app.search.post.PostDocrun.halo.app.search.post.PostHit,推荐用
    run.halo.app.search.HaloDocument 替代。
  • 移除 Plugin 过时字段 spec.pluginClass,推荐在插件定义文件中移除此字段。
  • 移除 Plugin 过时字段 spec.website,推荐使用 spec.homepage 替代。
  • 移除 Plugin 过时字段 spec.require,推荐使用 spec.requires 替代。
  • 移除 SystemSetting.AuthProvider 过时字段 enabled,已经由 SystemSetting.AuthProviderstates 字段替代。
  • 移除 run.halo.app.extension.ExtensionMatcher 过时方法 getGvkgetLabelSelectorgetFieldSelector
  • 移动方法 run.halo.app.extension.MetadataOperator#metadataDeepEquals
    run.halo.app.extension.MetadataOperator#equals
  • 移除 run.halo.app.extension.router.QueryParamBuildUtil 过时方法 buildParametersFromType,推荐使用
    org.springdoc.core.fn.builders.operation.Builder#parameter 替代。
  • 移除 run.halo.app.extension.router.SortableRequest 过时方法 toPredicate,推荐使用
    run.halo.app.extension.router.SortableRequest#toListOptions 替代。
  • 移除 run.halo.app.extension.router.selector.SelectorUtil 过时方法 labelSelectorsToPredicate
    fieldSelectorToPredicatelabelAndFieldSelectorToPredicate,推荐使用
    run.halo.app.extension.router.selector.SelectorUtil#labelAndFieldSelectorToListOptions 替代。
  • 移除 run.halo.app.theme.finders.TagFinder 过时方法 list(Integer, Integer, Predicate, Predicate),推荐使用
    run.halo.app.theme.finders.TagFinder#list(Integer, Integer) 替代。
  • 移除 run.halo.app.plugin.BasePlugin 过时构造函数 BasePlugin(PluginWrapper),推荐使用 BasePlugin(PluginContext)
    替代。
  • 移除接口 GET&PUT /apis/api.console.halo.run/v1alpha1/plugins/{name}/config,推荐使用
    GET&PUT /apis/api.console.halo.run/v1alpha1/plugins/{name}/json-config 替代。
  • 移除接口 GET&PUT /apis/api.console.halo.run/v1alpha1/themes/{name}/config,推荐使用
    GET&PUT /apis/api.console.halo.run/v1alpha1/themes/{name}/json-config 替代。
  • 移除接口 POST /apis/api.halo.run/v1alpha1/indices/post,推荐使用 POST /apis/api.halo.run/v1alpha1/indices/-/search
    替代。
  • 移除接口 POST /apis/api.console.halo.run/v1alpha1/indices/post,推荐使用
    POST /apis/api.console.halo.run/v1alpha1/indices/-/rebuild 替代。

最后,请确保更新 plugin.yaml 中的 requires 字段为 >=2.21.0

Full Changelog: v2.20.21...v2.21.0-alpha.1

2.20.21 LTS

15 May 06:16
2ca731f
Compare
Choose a tag to compare

功能优化

  • 重构菜单项的拖动排序功能,增强使用体验。 by @ruibaby in #7423
  • 重构文章分类的拖动排序功能,增强使用体验。 by @ruibaby in #7424

问题修复

  • 修复文章详情页访问规则为 /?p={slug} 时无法访问的问题。 by @JohnNiang in #7430

开发者相关

  • 导出与编辑器扩展相关的类型定义。 by @ruibaby in #7425

文档

https://docs.halo.run

资源

适用于 2.0 的插件和主题可查阅:

Full Changelog: v2.20.20...v2.20.21

2.20.20 LTS

09 May 08:58
747ca05
Compare
Choose a tag to compare

功能优化

  • 标签管理界面支持根据文章量排序。 by @chengzhongxue in #7414
  • 登出页面支持通过 redirect_uri 参数自定义重定向位置。 by @JohnNiang in #7418

问题修复

  • 修复无法设置长度超过 72 个字符的密码的问题。 by @JohnNiang in #7407
  • 修复个人中心处可能出现登录设备查询异常的问题。 by @JohnNiang in #7408
  • 修复访问不存在的分类或者文章页面时始终抛出异常的问题。 by @JohnNiang in #7419

文档

https://docs.halo.run

资源

适用于 2.0 的插件和主题可查阅:

Full Changelog: v2.20.19...v2.20.20

2.20.19 LTS

27 Apr 04:32
0676551
Compare
Choose a tag to compare

新特性

  • 系统设置新增首选语言设置。 by @guqing in #7365
  • 文章访问路径支持设置 /categories/{categorySlug}/{postSlug} 的形式。 by @guqing in #7331

功能优化

  • 新建用户时支持设置多个角色。 by @ruibaby in #7381
  • 优化文章部分批量操作的执行性能。 by @ruibaby in #7378

问题修复

  • 修复在个人中心发布文章时可能产生重复生成的问题。 by @xz-xuezhe in #7313
  • 修复通过接口创建文章可能导致无法发布和删除的问题。 by @JohnNiang in #7321
  • 修复注册时未验证邮箱是否已被占用的问题。 by @JohnNiang in #7323
  • 修复编辑器在 Safari 浏览器中关于浮动工具栏和命令列表的样式问题。 by @ruibaby in #7328
  • 修复 Windows 下可能无法正常初始化的问题。 by @FoxInField in #7379

依赖更新

  • 升级构建工具 Gradle 至 8.13。 by @JohnNiang in #7387
  • 升级依赖 Spring Boot 至 3.4.5,同时解决可能无法登录的问题。 by @JohnNiang in #7386

开发者相关

文档

https://docs.halo.run

资源

适用于 2.0 的插件和主题可查阅:

Full Changelog: v2.20.18...v2.20.19

2.20.18 LTS

22 Mar 15:40
e2fd9ba
Compare
Choose a tag to compare

新特性

  • 支持上传附件至本地时总是随机命名文件名。 by @JohnNiang in #7301

问题修复

  • 升级依赖 Spring Boot 至 3.4.4 以修复大文件上传失败的问题。 by @JohnNiang in #7305

文档

https://docs.halo.run

资源

适用于 2.0 的插件和主题可查阅:

Full Changelog: v2.20.17...v2.20.18

2.20.17 LTS

13 Mar 10:25
6365382
Compare
Choose a tag to compare

功能优化

  • 支持禁用主题预览功能,但拥有主题管理权限的用户不受此功能影响。 by @guqing in #7277
  • 为登录相关的页面添加 Favicon。 by @ruibaby in #7288

问题修复

  • 解决日志中出现大量 InterruptedException 异常的问题。 by @JohnNiang in #7284
  • 撤回对插件类加载顺序的改动,这可能导致破坏性更新。 by @guqing in #7290

文档

https://docs.halo.run

资源

适用于 2.0 的插件和主题可查阅:

Full Changelog: v2.20.16...v2.20.17

2.20.16 LTS

10 Mar 15:29
4ad97cd
Compare
Choose a tag to compare

新特性

  • 个人中心的消息管理支持批量删除和批量标记为已读。 by @ruibaby in #7282
  • 支持在管理控制台禁用指定用户。 by @ruibaby in #7273
  • 支持批量撤销其他设备的登录状态。 by @ruibaby in #7268

功能优化

  • 默认启用虚拟线程,提升整体性能。 by @JohnNiang in #7261
  • 在两步验证配置界面添加设备丢失相关的提示。 by @ruibaby in #7272
  • 为页面的图片增加缩略图支持。 by @guqing in #7276
  • 仅对包含文章权限的用户生成作者页面。 by @guqing in #7279

问题修复

  • 解决在默认编辑器中上传文件失败的问题。 by @LIlGG in #7275
  • 解决默认编辑器中附件会重复上传的问题。 by @LIlGG in #7278
  • 修复开发模式下无法正常进入管理和个人中心页面的问题。 by @JohnNiang in #7281

开发者相关

  • 调整插件类的加载顺序使其遵循双亲委派机制,替代原先的 Plugin -> Dependent Plugin -> Halo 加载顺序。 by @guqing in #7258

文档

https://docs.halo.run

资源

适用于 2.0 的插件和主题可查阅:

Full Changelog: v2.20.15...v2.20.16

2.20.15 LTS

22 Feb 12:41
0cdd8d1
Compare
Choose a tag to compare

问题修复

  • 升级 R2DBC MySQL 依赖版本,修复数据库连接断开的问题。 by @JohnNiang in #7237

依赖更新

文档

https://docs.halo.run

资源

适用于 2.0 的插件和主题可查阅:

Full Changelog: v2.20.14...v2.20.15