Commit Graph

4967 Commits (e446054813b9e5712d229f2f18448a53b9b62492)

Author SHA1 Message Date
guqing a15a9587b8
refactor: optimize user query using index (#5396)
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.13.x

#### What this PR does / why we need it:
使用索引机制优化用户查询以提高性能

#### Does this PR introduce a user-facing change?
```release-note
使用索引机制优化用户查询以提高性能
```
2024-02-27 08:45:12 +00:00
Ryan Wang b176c497fb
chore: update issue template (#5407)
#### What type of PR is this?

/kind improvement

#### What this PR does / why we need it:

移除 issue 模板中的 **在线站点地址** 输入框,在正常情况下,系统信息中已经包含了外部访问地址。

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-27 04:02:13 +00:00
Takagi 3eb9d165bf
pref: refactor default editor video block upload logic (#5302)
#### What type of PR is this?

/kind improvement
/area console
/area editor
/milestone 2.13.x

#### What this PR does / why we need it:

重构默认编辑器视频组件。使其支持上传、取消上传、从附件库选择、替换等功能。

#### How to test it?

直接拖动、复制或选择文件上传一个视频,查看是否显示上传进度条,取消、重试功能是否正常

#### Which issue(s) this PR fixes:

Fixes #5240 

#### Does this PR introduce a user-facing change?
```release-note
重构编辑器视频组件的上传逻辑,增加选择文件上传、上传进度条、取消、重试等机制。
```
2024-02-27 04:00:13 +00:00
John Niang b132597cac
Fix the problem of updating plugin extensions incorrectly (#5404)
#### What type of PR is this?

/kind bug
/area plugin
/area core
/milestone 2.13.x

#### What this PR does / why we need it:

Fix the problem of updating plugin extensions incorrectly.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/5394

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-26 08:36:11 +00:00
John Niang 348079d82e
Upgrade Spring Boot to 3.2.3 (#5402)
#### What type of PR is this?

/kind cleanup
/area core
/milestone 2.13.x

#### What this PR does / why we need it:

Upgrade Spring Boot to [3.2.3](https://github.com/spring-projects/spring-boot/releases/tag/v3.2.3).

#### Does this PR introduce a user-facing change?

```release-note
升级依赖 Spring Boot 至 3.2.3
```
2024-02-25 14:24:08 +00:00
John Niang b6edb0c4ca
Fix the problem of being unable to login when 2FA was enabled but TOTP was not configured (#5400)
#### What type of PR is this?

/kind bug
/area core
/milestone 2.13.x

#### What this PR does / why we need it:

This PR ignored `email verified` status while 2FA was enabled.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/5398

#### Does this PR introduce a user-facing change?

```release-note
修复开启两步验证但未配置 TOTP 可能无法登录的问题
```
2024-02-25 06:14:08 +00:00
guqing bf6bf8cd7c
refactor: add cache control for reverse proxy resources (#5392)
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.13.x

#### What this PR does / why we need it:
为插件静态代理资源增加缓存控制以减少不必要的请求

#### Which issue(s) this PR fixes:
Fixes #5357

#### Does this PR introduce a user-facing change?
```release-note
为插件静态代理资源增加缓存控制以减少不必要的请求
```
2024-02-23 09:30:41 +00:00
John Niang bbe79bac10
Provide extension points for authentication-related web filters (#5386)
#### What type of PR is this?

/kind feature
/area core
/area plugin
/milestone 2.13.x

#### What this PR does / why we need it:

See https://github.com/halo-dev/halo/issues/5379 for more.

This PR provides three extension points:

- FormLoginSecurityWebFilter
- AuthenticationSecurityWebFilter
- AnonymousAuthenticationSecurityWebFilter

which could be extended by plugins easily.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/5379

#### Special notes for your reviewer:

TBD.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-23 09:04:40 +00:00
MashiroT 50fbe37be8
feat: add support for force verify email during user registration (#5320)
#### What type of PR is this?

/kind feature
/kind improvement
/area core
/area console
/kind api-change

#### What this PR does / why we need it:
增加对用户注册时必须验证邮箱的支持

#### Which issue(s) this PR fixes:

Fixes #5016

#### Special notes for your reviewer:
`regRequireVerifyEmail` 为 `false` 时与现在的注册行为一致
为 `true` 时注册页显示验证码校验相关,注册成功后 `UserSpec.emailVerified` 即为 `true`
没有判断邮件通知是否开启,与现有的邮箱验证一致,如未开启则收不到邮件

#### Does this PR introduce a user-facing change?

```release-note
增加对用户注册时必须验证邮箱的支持
```
2024-02-22 09:44:06 +00:00
Ryan Wang 9e676712e4
chore: bump vue related packages version (#5384)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.13.x

#### What this PR does / why we need it:

升级 Vue 生态相关依赖至最新版本。

#### Does this PR introduce a user-facing change?

```release-note
升级 Vue 生态相关依赖至最新版本。
```
2024-02-22 03:12:07 +00:00
Ryan Wang 698bc30675
chore: bump axios version to 1.6.x (#5383)
#### What type of PR is this?

/area ui
/kind improvement
/milestone 2.13.x

#### What this PR does / why we need it:

升级 Axios 依赖版本至 1.6.x

#### Does this PR introduce a user-facing change?

```release-note
升级 Axios 依赖版本至 1.6.x
```
2024-02-21 04:22:27 +00:00
Ryan Wang 14da9c919c
chore: bump tiptap version to 2.2.3 (#5382)
#### What type of PR is this?

/kind improvement
/area ui
/milestone 2.13.x

#### What this PR does / why we need it:

升级 Tiptap 依赖至 https://github.com/ueberdosis/tiptap/releases/tag/v2.2.3

- https://github.com/ueberdosis/tiptap/releases/tag/v2.2.0

#### Special notes for your reviewer:

测试方式:

1. `./gradlew :ui:build`
2. 测试编辑器的已有功能是否正常。
3. 安装若干已有编辑器插件,测试插件的功能是否正常。

#### Does this PR introduce a user-facing change?

```release-note
升级 Tiptap 依赖至 [2.2.3](https://github.com/ueberdosis/tiptap/releases/tag/v2.2.3)。
```
2024-02-21 03:40:28 +00:00
Takagi ca4f705f2d
fix: resolve the issue of text editing not being effective before the table (#5365)
#### What type of PR is this?

/kind bug
/area editor
/area console

#### What this PR does / why we need it:

在 #5191 中对表格新增了如果可以左右滚动时,则显示阴影的特性。而根据 `prosemirror` 的数据流处理策略,在 `decorations` 中,state 是 new EditorState,但通过 `this.editor.view` 获取到的 view 为 old EditorView,进而导致使用了最新的坐标,并且使用其坐标通过旧版本的 view 中获取 DOM 而产生的错误。

本 PR 使用 `NodeView` 而不是 `decorations` 来重新处理表格阴影。

#### How to test it?

在默认富文本编辑器中新建一个表格。在表格前使用拼音输入文本,查看此文本能否被输入。
同时查看表格阴影是否存在

#### Which issue(s) this PR fixes:

Fixes #5352

#### Does this PR introduce a user-facing change?
```release-note
解决默认富文本编辑器表格前字符无法被编辑的问题。
```
2024-02-21 02:44:09 +00:00
Ryan Wang 50e954d297
fix: refine error message of the plugin already exists (#5376)
#### What type of PR is this?

/area core
/kind bug
/milestone 2.13.x

#### What this PR does / why we need it:

补全插件已存在错误提示的翻译。

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-20 15:34:08 +00:00
guqing 80e14e97d7
refactor: optimize old attachment query parameters using index (#5363)
#### What type of PR is this?
/kind improvement
/area core
/milestone 2.13.x

#### What this PR does / why we need it:
使用索引功能优化附件列表查询

#### Does this PR introduce a user-facing change?
```release-note
使用索引功能优化附件列表查询
```
2024-02-20 02:58:09 +00:00
John Niang 333422a0d4
Keep length of PAT stable (#5374)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.13.x

#### What this PR does / why we need it:

In fact, PAT is a JWT, which is very long. However, we put the claim `roles` into PAT, which will cause the length of PAT to increase as the `roles` information increases.

So, the current PR removes the claim `roles` from PAT, which ensures that the length of PAT becomes stable and we can update roles information for PAT at runtime.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/5366

#### Does this PR introduce a user-facing change?

```release-note
避免个人令牌长度随着角色信息增长
```
2024-02-20 02:48:08 +00:00
Takagi 27c98aec36
fix: fix the error when saving settings for posts in the uc (#5370)
#### What type of PR is this?

/kind bug
/area ui

#### What this PR does / why we need it:

在个人中心的文章功能中,点击设置时并不会重新获取最新的 Post 数据,进而导致点击保存时的 `version` 并非最新版本而报错。
此 PR 将在个人中心的文章页面点击设置时,额外增加一次获取最新的 Post 数据的请求,用于解决此问题。

#### How to test it?

1. 进入个人中心
2. 点击文章菜单
3. 点击右上角创建按钮
4. 在编辑器中随便输入内容
5. 点击保存
6. 修改文章的设置后点击保存。
7. 关闭设置框,再次打开设置框,然后点击保存。
8. 查看是否会出现无法保存的问题。

#### Which issue(s) this PR fixes:

Fixes #5344 

#### Does this PR introduce a user-facing change?
```release-note
解决个人中心文章设置时报错的问题
```
2024-02-20 02:36:07 +00:00
Ryan Wang 45d8391885
fix: fail to fetch correct user avatar (#5369)
#### What type of PR is this?

/area ui
/kind bug
/milestone 2.13.x

#### What this PR does / why we need it:

修复 Console 中用户头像无法正确获取的问题。

#### Which issue(s) this PR fixes:

Fixes #5368 

#### Special notes for your reviewer:

测试方式:

1. 创建若干用户,并为部分用户设置不同的头像。
2. 分别进入不同用户的个人资料页面,观察头像是否符合预期。

#### Does this PR introduce a user-facing change?

```release-note
修复 Console 中用户头像无法正确获取的问题。
```
2024-02-19 07:23:28 +00:00
John Niang 8156d9da8a
Move username-password authentication into security filter chain (#5348)
#### What type of PR is this?

/kind cleanup
/area core
/milestone 2.13.x

#### What this PR does / why we need it:

UsernamePasswordAuthenticator is a normal webfilter instead of authentication webfilter in security filter chain. There does not guarentee expected results due to different in execution order. So this PR changes UsernamePasswordAuthenticator to AuthenticationWebFilter for managing the filter by security filter chain.

By the way, these changes will not affect any plugins.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-18 08:46:15 +00:00
John Niang 94a51aba4f
Bump pnpm/action-setup version to 3.0.0 (#5364)
#### What type of PR is this?

/kind cleanup
/area core

#### What this PR does / why we need it:

See https://github.com/halo-dev/halo/pull/5340#issuecomment-1950965406 for more.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-18 08:40:15 +00:00
John Niang 07854c993f
Fix the problem of being unable to commit (#5362)
#### What type of PR is this?

/kind cleanup
/area core

#### What this PR does / why we need it:

The wrong `pre-commit` will prevent us from making a Git commit. The problem was caused by <https://github.com/halo-dev/halo/pull/5314>.

```bash
ui/.husky/pre-commit: line 4: cd: console: No such file or directory
husky - pre-commit hook exited with code 1 (error)
```

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-18 08:00:16 +00:00
John Niang 9178ad0e22
Refactor AdditionalWebFilter load (#5349)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.13.x

#### What this PR does / why we need it:

This PR creates AdditionalWebFilterChainProxy to call all additional filters instead of using SecurityWebFilterChain.

Please note that:
- the AdditionalWebFilterChainProxy should be executed before `org.springframework.security.web.server.WebFilterChainProxy`.
- I don't change `UsernamePasswordAuthenticator` because of <https://github.com/halo-dev/halo/pull/5348>. The authenticator should be in Security scope instead of a standalone webfilter.

See https://github.com/halo-dev/halo/issues/5300#issuecomment-1933436652 for more.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/5300

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-18 04:16:15 +00:00
owo caf3e66e8c
docs: update the branch name from `master` to `main` in contribution.md (#5359)
#### What type of PR is this?
/kind documentation


#### What this PR does / why we need it:

Prevent code contributors from being misled by outdated documentation(1.x).

#### Which issue(s) this PR fixes:

Fixes #5358

#### Special notes for your reviewer:


#### Does this PR introduce a user-facing change?


```release-note
NONE
```
2024-02-17 08:00:15 +00:00
owo 05e2682c4d
Improve traditional Chinese translation (#5353)
#### What type of PR is this?
/kind improvement

#### What this PR does / why we need it:
Correct some simplified Chinese characters that were not replaced in the yaml file of traditional Chinese.

#### Which issue(s) this PR fixes:

Fixes #3672

#### Special notes for your reviewer:
I have read the CONTRIBUTING file, but I'm not familiar with PR operations. If there's anything I can do to improve it, please let me know.

> By the way, the [contribution guidelines](https://github.com/halo-dev/halo/blob/master/CONTRIBUTING.md) provided in the PR template and README still use `master` as the main branch, which may cause some confusion for new contributors.

#### Does this PR introduce a user-facing change?


```release-note
NONE
```
2024-02-17 05:00:15 +00:00
Ryan Wang 8ce6ab6af2
chore: rename console to ui in some files (#5347)
#### What type of PR is this?

/area ui
/kind cleanup

#### What this PR does / why we need it:

Rename console to ui in some files,

Ref https://github.com/halo-dev/halo/pull/5314

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-07 14:40:08 +00:00
John Niang d2cee48946
Merge pull request #5341 from JohnNiang/chore/upgrade-to-openj9-21
Upgrade Halo runtime environment to JRE 21
2024-02-07 22:38:25 +08:00
John Niang fe3df4b2d7
Merge pull request #5340 from JohnNiang/chore/remove-warning-from-actions
Bump actions' versions for muting warning from GitHub workflow
2024-02-06 23:03:39 +08:00
John Niang 5fdf6c0af1 Upgrade to JDK/JRE 21 when building Docker image
Signed-off-by: John Niang <johnniang@foxmail.com>
2024-02-06 16:50:26 +08:00
John Niang 77a34c11d5 Bump actions' versions for muting warning from GitHub workflow
Signed-off-by: John Niang <johnniang@foxmail.com>
2024-02-06 15:57:26 +08:00
John Niang 2cf19a4581
Merge pull request #5314 from JohnNiang/refactor/console-as-subproject
Add Gradle build script for ui project
2024-02-06 14:22:58 +08:00
John Niang 0f9552d923 Do not execute :ui:build when application is not building
Signed-off-by: John Niang <johnniang@foxmail.com>
2024-02-06 10:37:14 +08:00
John Niang 29ec459eac Merge remote-tracking branch 'upstream/main' into refactor/console-as-subproject 2024-02-05 23:40:07 +08:00
guqing 7341f9de6c
chore: remove unnecessary indices build process for lucene on startup (#5332)
#### What type of PR is this?
/kind cleanup
/area core
/milestone 2.13.x

#### What this PR does / why we need it:
移除启动时不必要的搜索引擎索引构建步骤

#### Does this PR introduce a user-facing change?
```release-note
移除启动时不必要的搜索引擎索引构建步骤
```
2024-02-05 06:54:13 +00:00
guqing 06a44d05dc
fix: possible incorrect result set obtained by Gc synchronizer when sartup (#5325)
#### What type of PR is this?
/kind bug
/area core
/milestone 2.13.x

#### What this PR does / why we need it:
修复启动时 GcSynchronizer 没有精准过滤出所需数据导致内存占用会出现较高峰值的问题

#### Which issue(s) this PR fixes:
Fixes #5324

#### Does this PR introduce a user-facing change?
```release-note
修复启动时 GcSynchronizer 没有精准过滤出所需数据导致内存占用会出现较高峰值的问题
```
2024-02-05 06:31:13 +00:00
guqing dcef5d4157
fix: failure in data query due to reconciler triggered by uncommitted transaction (#5323)
#### What type of PR is this?
/kind bugfix
/milestone 2.12.x
/area core

#### What this PR does / why we need it:
修复事务未提交便触发控制器执行可能导致数据状态不正确的问题

**how to test it?**
1. 测试如 #5315 的问题是否还存在
2. 测试添加重名自定义模型对象会抛出异常且数据被回滚

#### Which issue(s) this PR fixes:
Fixes #5315

#### Does this PR introduce a user-facing change?
```release-note
修复事务未提交便触发控制器执行可能导致数据状态不正确的问题
```
2024-02-05 04:09:07 +00:00
John Niang a3772fab1b Add build script for ui project
Signed-off-by: John Niang <johnniang@foxmail.com>
2024-02-03 22:51:50 +08:00
John Niang 15f7fe2d4f Move folder console to ui 2024-02-02 22:22:51 +08:00
John Niang b4e196372d
Compatible with negative page number and size (#5311)
#### What type of PR is this?

/kind bug
/area core
/milestone 2.13.x

#### What this PR does / why we need it:

This PR makes Halo compatible with negative page number and size parameters to resolve <https://github.com/halo-dev/halo/issues/5298>.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/5298

#### Special notes for your reviewer:

Try to install [Hao theme](https://github.com/liuzhihang/halo-theme-hao/releases/tag/v1.4.7) and [Chirpy theme](https://github.com/AirboZH/halo-theme-chirpy/releases/tag/v1.3.3) and check the frontend pages.

#### Does this PR introduce a user-facing change?

```release-note
修复因限制分页参数导致部分主题页面无法正常渲染的问题。
```
2024-02-02 12:30:05 +00:00
John Niang 27db40f7f6
Support building Docker image with major version tag (#5304)
#### What type of PR is this?

/kind improvement
/area core
/milestone 2.13.x

#### What this PR does / why we need it:

This PR supports building Docker image with major version tag, e.g.: `halohub/halo:2`.

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/4976

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-02 08:38:33 +00:00
John Niang 5b93667d8f
Prepare for 2.13.0 development (#5299)
#### What type of PR is this?

/kind cleanup
/area core

#### What this PR does / why we need it:

This PR bumps version to 2.13.0-SNAPSHOT and corrects links of Halo in README.md.

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-02-01 07:11:40 +00:00
Ryan Wang e85a55e416
feat: add supports for ui permissions of notification reason type (#5286)
#### What type of PR is this?

/kind feature
/area core
/area console
/milestone 2.12.x

#### What this PR does / why we need it:

为通知类型设置添加 UI 权限判断。

#### Which issue(s) this PR fixes:

Fixes https://github.com/halo-dev/halo/issues/4728

#### Special notes for your reviewer:

#### Does this PR introduce a user-facing change?

```release-note
为通知类型设置添加 UI 权限判断。
```
2024-01-31 12:11:25 +00:00
Takagi dff6522d43
fix: preserve white spaces when parsing the default editor (#5292)
#### What type of PR is this?

/kind bug
/area editor
/area console
/milestone 2.12.x

#### What this PR does / why we need it:

在默认富文本编辑器解析文本时,使其保留空白符。

see https://prosemirror.net/docs/ref/#model.ParseOptions.preserveWhitespace

#### How to test it?

1. 输入一串文字,在其开始、结束、内容中分别键入空白字符。
2. 保存内容
3. 刷新页面,查看空白字符是否保留。

#### Which issue(s) this PR fixes:

Fixes #5260 

#### Does this PR introduce a user-facing change?
```release-note
解决默认富文本编辑器内容刷新后空白字符丢失的问题
```
2024-01-31 10:20:08 +00:00
John Niang 7543fb6346
Merge pull request #5291 from ruibaby/fix/pat-roles
fix: issue of non-template roles being displayed in personal token roles
2024-01-31 18:13:54 +08:00
John Niang e15923b2d4
Fix the problem of unable to enable/disable 2FA for non-admin users (#5290)
Signed-off-by: John Niang <johnniang@foxmail.com>
2024-01-31 15:44:41 +08:00
Ryan Wang 7e9f8128c3 fix: issue of non-template roles being displayed in personal token roles
Signed-off-by: Ryan Wang <i@ryanc.cc>
2024-01-31 15:42:57 +08:00
John Niang e8c6189cd0
Merge pull request #5282 from JohnNiang/chore/remove-sonar-scaning
Remove analyzing code step in test job
2024-01-30 16:55:49 +08:00
John Niang b4bf425a09 Remove analyzing code step in test job
Because we have enabled Automatic Analysis

Signed-off-by: John Niang <johnniang@foxmail.com>
2024-01-30 16:37:51 +08:00
John Niang c792cef52f
Merge pull request #5279 from guqing/bugfix/order-for-contributors
fix: the order of contributors for posts is not fixed
2024-01-30 16:27:07 +08:00
Ryan Wang 0b03ae075b
chore: change editor version to 2.12.0 (#5281)
#### What type of PR is this?

/area console
/kind improvement
/milestone 2.12.x

#### What this PR does / why we need it:

修改 `@halo-dev/richtext-editor` 的版本号,为发布 Halo 2.12 做准备。

#### Does this PR introduce a user-facing change?

```release-note
None
```
2024-01-30 07:53:54 +00:00
guqing a5b0e866bd fix: the order of contributors for posts is not fixed 2024-01-30 15:51:28 +08:00