{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":126178683,"defaultBranch":"main","name":"halo","ownerLogin":"halo-dev","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2018-03-21T12:56:52.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/48195280?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1718361370.0","currentOid":""},"activityList":{"items":[{"before":"b445b505be6c13fade8a3e1e8c895f95ed2658db","after":"a94596a9f8b09d18c76fbc64c5155c4a040f3339","ref":"refs/heads/main","pushedAt":"2024-06-19T16:11:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"Add support for publishing events among plugins (#6081)\n\n#### What type of PR is this?\r\n\r\n/kind feature\r\n/area core\r\n/area plugin\r\n\r\n#### What this PR does / why we need it:\r\n\r\nThis PR enhance usage of SharedEvent annotation to add support for publishing events among plugins.\r\n\r\n#### How to test?\r\n\r\n1. Clone repository https://github.com/halo-dev/plugin-starter\r\n2. Change build.gradle as following:\r\n\r\n\t```gradle\r\n\tdependencies {\r\n\t implementation platform('run.halo.tools.platform:plugin:2.17.0-SNAPSHOT')\r\n\t```\r\n\r\n3. Change StarterPlugin as following:\r\n\r\n\t```java\r\n\t@Component\r\n\tpublic class StarterPlugin extends BasePlugin {\r\n\t\r\n\t private final ApplicationContext appContext;\r\n\t\r\n\t public StarterPlugin(PluginContext pluginContext, ApplicationContext appContext) {\r\n\t super(pluginContext);\r\n\t this.appContext = appContext;\r\n\t }\r\n\t\r\n\t @Override\r\n\t public void start() {\r\n\t appContext.publishEvent(new PostDeletedEvent(this, \"fake-plugin\"));\r\n\t }\r\n\t\r\n\t @Override\r\n\t public void stop() {\r\n\t }\r\n\r\n\t @EventListener(PostDeletedEvent.class)\r\n\t public void onApplicationEvent(PostDeletedEvent event) {\r\n\t System.out.println(\"Post deleted event received in plugin: \" + event.getName());\r\n\t }\r\n\t}\r\n\t```\r\n4. Add a listener to Halo core\r\n```java\r\n\t @EventListener(PostDeletedEvent.class)\r\n\t public void onApplicationEvent(PostDeletedEvent event) {\r\n\t System.out.println(\"Post deleted event received in core: \" + event.getName());\r\n\t }\r\n```\r\n5. Build plugin and install plugin\r\n6. Enable the plugin and see the result\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\nNone\r\n```","shortMessageHtmlLink":"Add support for publishing events among plugins (#6081)"}},{"before":"0f87ed8370f8e9b40026ca86ba8c6c94a4b5c6d7","after":"b445b505be6c13fade8a3e1e8c895f95ed2658db","ref":"refs/heads/main","pushedAt":"2024-06-19T10:55:00.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"feat: add import and export theme configuration (#6071)\n\n#### What type of PR is this?\r\n\r\n/kind feature\r\n/area ui\r\n/milestone 2.17.x\r\n\r\n#### What this PR does / why we need it:\r\n\r\n为主题增加导入及导出配置的功能。\r\n\r\n\"image\"\r\n\r\n#### How to test it?\r\n\r\n测试主题导入及导出功能是否正常可用。\r\n测试当前主题下的不同版本导入导出后数据是否正常。\r\n测试在当前主题下使用其他主题导出的配置是否会报错。\r\n\r\n#### Which issue(s) this PR fixes:\r\n\r\nFixes #1073 \r\n\r\n#### Does this PR introduce a user-facing change?\r\n```release-note\r\n为单个主题配置增加导入与导出的功能。\r\n```","shortMessageHtmlLink":"feat: add import and export theme configuration (#6071)"}},{"before":"f9ef47355b2f9cc9e813e63c9ecb474ab4fd6f0a","after":"e8fcdb2375149a9872fb059db51e678e70852785","ref":"refs/heads/wan92hen-patch-1","pushedAt":"2024-06-19T07:56:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"wan92hen","name":"BugKing","path":"/wan92hen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/27671436?s=80&v=4"},"commit":{"message":"去除视频链接中的额外参数","shortMessageHtmlLink":"去除视频链接中的额外参数"}},{"before":"c956533160d0b6805528a6306f4b30602f2bd1a5","after":"0f87ed8370f8e9b40026ca86ba8c6c94a4b5c6d7","ref":"refs/heads/main","pushedAt":"2024-06-19T07:54:57.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"docs: add image linked to video in README.md (#6084)\n\n#### What type of PR is this?\r\n\r\n\r\n#### What this PR does / why we need it:\r\n\r\n#### Which issue(s) this PR fixes:\r\n\r\nFixes #\r\n\r\n#### Special notes for your reviewer:\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n\r\n```release-note\r\n```","shortMessageHtmlLink":"docs: add image linked to video in README.md (#6084)"}},{"before":"1ea72808c7c53956a593f19bc2ef69beabaa475e","after":"f9ef47355b2f9cc9e813e63c9ecb474ab4fd6f0a","ref":"refs/heads/wan92hen-patch-1","pushedAt":"2024-06-19T07:45:26.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"ruibaby","name":"Ryan Wang","path":"/ruibaby","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/21301288?s=80&v=4"},"commit":{"message":"Update image\n\nSigned-off-by: Ryan Wang ","shortMessageHtmlLink":"Update image"}},{"before":"1e37768b358450a37271ee19fa8bae2bd6cca723","after":"c956533160d0b6805528a6306f4b30602f2bd1a5","ref":"refs/heads/main","pushedAt":"2024-06-18T06:02:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"pref: default code block indentation from Tab to 2 Spaces in editor (#6090)\n\n#### What type of PR is this?\r\n\r\n/kind improvement\r\n/area editor\r\n/milestone 2.17.x\r\n\r\n#### What this PR does / why we need it:\r\n\r\n将默认编辑器中代码块的缩进由一个制表符(\\t),更改为两个空格` {2}`。\r\n\r\n#### How to test it?\r\n\r\n测试使用 `Tab` 即 `Shift + Tab` 缩进时,是否每次缩进两个空格而不是一个制表符。\r\n\r\n#### Does this PR introduce a user-facing change?\r\n```release-note\r\n优化默认编辑器代码块缩进为两个空格。\r\n```","shortMessageHtmlLink":"pref: default code block indentation from Tab to 2 Spaces in editor (#…"}},{"before":"10f31572587a1929a6aea7f8372c5efa3b33921d","after":"1e37768b358450a37271ee19fa8bae2bd6cca723","ref":"refs/heads/main","pushedAt":"2024-06-18T06:00:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"pref: improve code block styling in editor (#6089)\n\n#### What type of PR is this?\r\n\r\n/kind improvement\r\n/area editor\r\n\r\n#### What this PR does / why we need it:\r\n\r\n优化编辑器代码块样式。\r\n\r\nbefore:\r\n\r\n\"image\"\r\n\r\nafter:\r\n\r\n\"image\"\r\n\r\n#### How to test it?\r\n\r\n测试复制功能是否正常。\r\n\r\n#### Does this PR introduce a user-facing change?\r\n```release-note\r\n优化默认编辑器代码块样式\r\n```","shortMessageHtmlLink":"pref: improve code block styling in editor (#6089)"}},{"before":"3076838f36fba6eb34be9d438e6d6418037f205d","after":"10f31572587a1929a6aea7f8372c5efa3b33921d","ref":"refs/heads/main","pushedAt":"2024-06-17T13:48:50.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"fix: ensure pasted content auto-generates title id (#6059)\n\n#### What type of PR is this?\r\n\r\n/kind bug\r\n/area editor\r\n/milestone 2.17.x\r\n\r\n#### What this PR does / why we need it:\r\n\r\n当前在编辑器中粘贴内容后,如果不修改任意标题或新增标题,则无法为当前标题自动生成标题 ID,进而导致锚点失效。\r\n\r\n本 PR 将在编辑器触发内容更改后,如果是粘贴的内容,则直接触发生成标题 ID。\r\n\r\n#### How to test it?\r\n\r\n新建一篇文章并粘贴一段带标题的内容后直接发布。\r\n\r\n查看发布后的文章是否可以在主题端使用锚点跳转。\r\n\r\n#### Which issue(s) this PR fixes:\r\n\r\nFixes #6056 \r\n\r\n#### Does this PR introduce a user-facing change?\r\n```release-note\r\n解决在默认编辑器中粘贴的内容无法生成标题 ID 的问题\r\n```","shortMessageHtmlLink":"fix: ensure pasted content auto-generates title id (#6059)"}},{"before":null,"after":"1ea72808c7c53956a593f19bc2ef69beabaa475e","ref":"refs/heads/wan92hen-patch-1","pushedAt":"2024-06-14T10:36:10.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"wan92hen","name":"BugKing","path":"/wan92hen","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/27671436?s=80&v=4"},"commit":{"message":"docs: add image linked to video in README.md","shortMessageHtmlLink":"docs: add image linked to video in README.md"}},{"before":"ebf1a1fe1b5b9d89eff1404bca1269f9f29b4f30","after":"3076838f36fba6eb34be9d438e6d6418037f205d","ref":"refs/heads/main","pushedAt":"2024-06-14T08:08:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"fix: default editor focus setting failure (#6062)\n\n#### What type of PR is this?\r\n\r\n/kind bug\r\n/area editor\r\n/area ui\r\n\r\n#### What this PR does / why we need it:\r\n\r\n当前为默认编辑器设置焦点的时机放在 `onMounted` 时,但此时默认编辑器可能还未加载成功且标题也为能成功加载,因此无法保证正确设置标题焦点。\r\n\r\n当前 PR 将此时机放置在默认编辑器创建完成之后的 `onCreate` ,此时将能够保证焦点设置成功。\r\n\r\n#### How to test it?\r\n\r\n测试默认编辑器能否正常设置标题或内容的焦点。\r\n\r\n#### Which issue(s) this PR fixes:\r\n\r\nFixes #6060 \r\n\r\n#### Does this PR introduce a user-facing change?\r\n```release-note\r\n解决使用默认编辑器时无法正确设置焦点的问题\r\n```","shortMessageHtmlLink":"fix: default editor focus setting failure (#6062)"}},{"before":"7b2c8e45ffbf8759ac7459d355cc76c89bda8da5","after":"6e1f0f31a5d6166b0f580c7abba2844eab42ee35","ref":"refs/heads/release-2.16","pushedAt":"2024-06-13T10:00:37.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"[release-2.16] Fix the problem that bundle files are not changed in development mode (#6077)\n\nThis is an automated cherry-pick of #6073\n\n/assign guqing\n\n```release-note\nNone\n```","shortMessageHtmlLink":"[release-2.16] Fix the problem that bundle files are not changed in d…"}},{"before":"b692db1f57359a28b2b12cf89287e3887648e6fd","after":"ebf1a1fe1b5b9d89eff1404bca1269f9f29b4f30","ref":"refs/heads/main","pushedAt":"2024-06-13T09:28:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"Fix the problem that bundle files are not changed in development mode (#6073)\n\n#### What type of PR is this?\r\n\r\n/kind regression\r\n/area plugin\r\n/milestone 2.17.x\r\n\r\n#### What this PR does / why we need it:\r\n\r\nThis PR reverts changes of generating bundle resource version in .\r\n\r\nBecause the changes were adapted realtime change of bundle files for plugin developers in plugin development runtime mode, but I ignored it.\r\n\r\n#### Special notes for your reviewer:\r\n\r\n1. Try to start Halo in plugin development mode\r\n2. Change and rebuild ui resources\r\n3. Refresh console and check the result\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\nNone\r\n```","shortMessageHtmlLink":"Fix the problem that bundle files are not changed in development mode ("}},{"before":"ccbe18567f731b00a25e2dff09b1615567f129ff","after":"b692db1f57359a28b2b12cf89287e3887648e6fd","ref":"refs/heads/main","pushedAt":"2024-06-07T10:34:09.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ruibaby","name":"Ryan Wang","path":"/ruibaby","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/21301288?s=80&v=4"},"commit":{"message":"Move post events into api modules (#6052)\n\nSigned-off-by: JohnNiang ","shortMessageHtmlLink":"Move post events into api modules (#6052)"}},{"before":"0bd8611144b1ef698c7b30f7bf0f2252645bd18a","after":"7b2c8e45ffbf8759ac7459d355cc76c89bda8da5","ref":"refs/heads/release-2.16","pushedAt":"2024-06-07T03:46:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"[release-2.16] Fix the problem that theme assets could not be found after the first initialization (#6050)\n\nThis is an automated cherry-pick of #6049\n\n/assign JohnNiang\n\n```release-note\n修复首次初始化后无法正常访问主题资源的问题\n```","shortMessageHtmlLink":"[release-2.16] Fix the problem that theme assets could not be found a…"}},{"before":"f2a0c502e3330cb79fa33dd12f0d0b79f3e17d1b","after":"ccbe18567f731b00a25e2dff09b1615567f129ff","ref":"refs/heads/main","pushedAt":"2024-06-07T03:32:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"Fix the problem that theme assets could not be found after the first initialization (#6049)\n\n#### What type of PR is this?\r\n\r\n/kind bug\r\n/area core\r\n/milestone 2.17.x\r\n\r\n#### What this PR does / why we need it:\r\n\r\nWhen initialized for the first time, the folder `${halo.work-dir}/themes` does not exist, resulting in the `themes` path being ignored when invoking `themeRootResource.createRelative(themeName + \"/templates/assets/\");`. It works very well after restarting.\r\n\r\nThis PR fixes the problem by resolving theme resource directly rather than delegating to PathResourceResolver.\r\n\r\n#### Which issue(s) this PR fixes:\r\n\r\nFixes #6048 \r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\n修复首次初始化后无法正常访问主题资源的问题\r\n```","shortMessageHtmlLink":"Fix the problem that theme assets could not be found after the first …"}},{"before":"e446054813b9e5712d229f2f18448a53b9b62492","after":"f2a0c502e3330cb79fa33dd12f0d0b79f3e17d1b","ref":"refs/heads/main","pushedAt":"2024-06-06T06:43:22.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"fix: content offset caused by empty slot (#6040)\n\n#### What type of PR is this?\r\n\r\n/area ui\r\n/kind improvement\r\n\r\n#### Which issue(s) this PR fixes:\r\n\r\nFixes #5877 \r\n\r\n```release-note\r\n修复Tag Icon为空时,后台文章的Tag内容不居中\r\n```","shortMessageHtmlLink":"fix: content offset caused by empty slot (#6040)"}},{"before":"3836b22090291f099bab1929d7b34c7f3e9358fd","after":"0bd8611144b1ef698c7b30f7bf0f2252645bd18a","ref":"refs/heads/release-2.16","pushedAt":"2024-06-06T06:28:14.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"[release-2.16] Fix concurrent issue during bundle file concurrent generation testing (#6045)\n\nThis is an automated cherry-pick of #6043\n\n/assign JohnNiang\n\n```release-note\nNone\n```","shortMessageHtmlLink":"[release-2.16] Fix concurrent issue during bundle file concurrent gen…"}},{"before":"2841ff8282f2decc4e4231cddf85c1bf2d2e94fe","after":"e446054813b9e5712d229f2f18448a53b9b62492","ref":"refs/heads/main","pushedAt":"2024-06-06T03:42:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"Fix concurrent issue during bundle file concurrent generation testing (#6043)\n\n#### What type of PR is this?\r\n\r\n/kind failing-test\r\n/area core\r\n/milestone 2.17.x\r\n\r\n#### What this PR does / why we need it:\r\n\r\nI wrongly invoked `Arraylist#add`(probes) method in multi threads. So the unit test was unstable and might encounter the problem as follows:\r\n\r\n```java\r\nExpected :1\r\nActual :0\r\n\r\n\r\norg.opentest4j.AssertionFailedError: expected: <1> but was: <0>\r\n\tat org.junit.jupiter.api.AssertionFailureBuilder.build(AssertionFailureBuilder.java:151)\r\n\tat org.junit.jupiter.api.AssertionFailureBuilder.buildAndThrow(AssertionFailureBuilder.java:132)\r\n\tat org.junit.jupiter.api.AssertEquals.failNotEqual(AssertEquals.java:197)\r\n\tat org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:166)\r\n\tat org.junit.jupiter.api.AssertEquals.assertEquals(AssertEquals.java:161)\r\n\tat org.junit.jupiter.api.Assertions.assertEquals(Assertions.java:632)\r\n\tat run.halo.app.core.extension.service.impl.PluginServiceImplTest$BundleCacheTest.concurrentComputeBundleFileIfAbsent(PluginServiceImplTest.java:460)\r\n```\r\n\r\nSee https://github.com/halo-dev/halo/actions/runs/9382059472/job/25832681545 for more.\r\n\r\nThis PR moves the invocation outside thread tasks.\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\nNone\r\n```","shortMessageHtmlLink":"Fix concurrent issue during bundle file concurrent generation testing ("}},{"before":"ba96118b4ea5a39b928e4d68d8a9c3dec0f1b570","after":"3836b22090291f099bab1929d7b34c7f3e9358fd","ref":"refs/heads/release-2.16","pushedAt":"2024-06-05T02:49:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"[release-2.16] fix: missing default values for system settings (#6036)\n\nThis is an automated cherry-pick of #6035\n\n/assign JohnNiang\n\n```release-note\n修复系统设置未保存导致无法正常注册的问题\n```","shortMessageHtmlLink":"[release-2.16] fix: missing default values for system settings (#6036)"}},{"before":"a188f719cbf4276f46f364e9d362bac46fd6321c","after":"2841ff8282f2decc4e4231cddf85c1bf2d2e94fe","ref":"refs/heads/main","pushedAt":"2024-06-05T02:31:18.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"fix: missing default values for system settings (#6035)\n\n#### What type of PR is this?\r\n\r\n/kind bug\r\n/area core\r\n/milestone 2.16.x\r\n\r\n#### What this PR does / why we need it:\r\n\r\n补充缺失的系统设置默认值。\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\n修复系统设置未保存导致无法正常注册的问题\r\n```","shortMessageHtmlLink":"fix: missing default values for system settings (#6035)"}},{"before":"1821829f99412c114c80195239a5ae302fd6af5b","after":"a188f719cbf4276f46f364e9d362bac46fd6321c","ref":"refs/heads/main","pushedAt":"2024-06-03T15:05:45.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"Upgrade to Gradle 8.8 (#6033)\n\n#### What type of PR is this?\r\n\r\n/kind cleanup\r\n/area core\r\n\r\n#### What this PR does / why we need it:\r\n\r\nThis PR upgrades Gradle to 8.8. See https://github.com/gradle/gradle/releases/tag/v8.8.0 for more.\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\n升级 Gradle 至 8.8\r\n```","shortMessageHtmlLink":"Upgrade to Gradle 8.8 (#6033)"}},{"before":"ba96118b4ea5a39b928e4d68d8a9c3dec0f1b570","after":"1821829f99412c114c80195239a5ae302fd6af5b","ref":"refs/heads/main","pushedAt":"2024-06-03T09:53:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"Prepare for developing 2.17.0 (#6032)\n\n#### What type of PR is this?\r\n\r\n/kind cleanup\r\n/area core\r\n\r\n#### What this PR does / why we need it:\r\n\r\nThis is a regular update after a release.\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\nNone\r\n```","shortMessageHtmlLink":"Prepare for developing 2.17.0 (#6032)"}},{"before":null,"after":"ba96118b4ea5a39b928e4d68d8a9c3dec0f1b570","ref":"refs/heads/release-2.16","pushedAt":"2024-06-03T09:31:22.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"JohnNiang","name":"John Niang","path":"/JohnNiang","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/16865714?s=80&v=4"},"commit":{"message":"Fix the problem that bundle files can be generated arbitrarily (#6028)\n\n#### What type of PR is this?\r\n\r\n/kind bug\r\n/area core\r\n/area plugin\r\n/milestone 2.16.0\r\n\r\n#### What this PR does / why we need it:\r\n\r\nBefore the PR, any user can generate bundle files by providing random query param `v` while requesting bundle files.\r\n\r\nThis PR refactors the whole bundle file generation method.\r\n\r\n1. Do nothing if users provide arbitrary bundle file version\r\n2. Better lock for writing bundle files if not exist\r\n\r\n#### Special notes for your reviewer:\r\n\r\n1. Request `http://localhost:8090/apis/api.console.halo.run/v1alpha1/plugins/-/bundle.js?v=xyz` \r\n2. Check if the file `xyz.js` in folder `$TMPDIR/halo-plugin-bundle**`\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\nNone\r\n```","shortMessageHtmlLink":"Fix the problem that bundle files can be generated arbitrarily (#6028)"}},{"before":"a26b73e2586d1eb7e7452bbc593454d0c50c6139","after":"ba96118b4ea5a39b928e4d68d8a9c3dec0f1b570","ref":"refs/heads/main","pushedAt":"2024-06-03T02:42:13.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"Fix the problem that bundle files can be generated arbitrarily (#6028)\n\n#### What type of PR is this?\r\n\r\n/kind bug\r\n/area core\r\n/area plugin\r\n/milestone 2.16.0\r\n\r\n#### What this PR does / why we need it:\r\n\r\nBefore the PR, any user can generate bundle files by providing random query param `v` while requesting bundle files.\r\n\r\nThis PR refactors the whole bundle file generation method.\r\n\r\n1. Do nothing if users provide arbitrary bundle file version\r\n2. Better lock for writing bundle files if not exist\r\n\r\n#### Special notes for your reviewer:\r\n\r\n1. Request `http://localhost:8090/apis/api.console.halo.run/v1alpha1/plugins/-/bundle.js?v=xyz` \r\n2. Check if the file `xyz.js` in folder `$TMPDIR/halo-plugin-bundle**`\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\nNone\r\n```","shortMessageHtmlLink":"Fix the problem that bundle files can be generated arbitrarily (#6028)"}},{"before":"296d8c58335fbc2d38d3537875eab898fdc22014","after":"a26b73e2586d1eb7e7452bbc593454d0c50c6139","ref":"refs/heads/main","pushedAt":"2024-05-30T08:31:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"chore: remove unnecessary env (#6022)\n\n#### What type of PR is this?\r\n\r\n/area ui\r\n/kind cleanup\r\n/milestone 2.16.x\r\n\r\n#### What this PR does / why we need it:\r\n\r\n移除 UI 项目中不必要的环境变量配置。\r\n\r\n1. VITE_API_URL:当前 Console 不会考虑独立部署,并且在开发环境是后端 Proxy 的 Console 请求,所以此变量没有任何意义。\r\n2. VITE_BASE_URL:无意义,当前不考虑修改。\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\nNone\r\n```","shortMessageHtmlLink":"chore: remove unnecessary env (#6022)"}},{"before":"9f6a44128867410b07c1129304d205aeb507a2bf","after":"296d8c58335fbc2d38d3537875eab898fdc22014","ref":"refs/heads/main","pushedAt":"2024-05-30T08:29:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"fix: dropdown component auto-destruction issue (#6021)\n\n#### What type of PR is this?\r\n\r\n/area ui\r\n/kind bug\r\n/milestone 2.16.x\r\n\r\n#### What this PR does / why we need it:\r\n\r\n修复 Dropdown 组件自动销毁的问题,这可能导致部分插件在 Dropdown 中的组件无法正常渲染。\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\nNone \r\n```","shortMessageHtmlLink":"fix: dropdown component auto-destruction issue (#6021)"}},{"before":"e881ee9a89eaac34ca9aad1f5573b1081c03161d","after":"9f6a44128867410b07c1129304d205aeb507a2bf","ref":"refs/heads/main","pushedAt":"2024-05-30T07:49:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"refactor: use index mechanism to query extension point definitions (#6011)\n\n#### What type of PR is this?\r\n/kind improvement\r\n/area core\r\n/kind milestone 2.16.x\r\n\r\n#### What this PR does / why we need it:\r\n使用索引机制来查询扩展点定义\r\n\r\n#### Does this PR introduce a user-facing change?\r\n```release-note\r\nNone\r\n```","shortMessageHtmlLink":"refactor: use index mechanism to query extension point definitions (#…"}},{"before":"4c6abdcaa131a37468aef250761394241a87978f","after":"e881ee9a89eaac34ca9aad1f5573b1081c03161d","ref":"refs/heads/main","pushedAt":"2024-05-30T07:05:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"Refactor cache control for static resources (#6015)\n\n#### What type of PR is this?\r\n\r\n/kind improvement\r\n/area core\r\n\r\n#### What this PR does / why we need it:\r\n\r\nThis PR unifies cache control for static resources.\r\n\r\nExample configuration of cache control:\r\n\r\n```yaml\r\nspring:\r\n web:\r\n resources:\r\n cache:\r\n cachecontrol:\r\n no-cache: true\r\n no-store: true\r\n use-last-modified: false\r\n```\r\n\r\n#### Which issue(s) this PR fixes:\r\n\r\nFixes https://github.com/halo-dev/halo/issues/6003\r\n\r\n#### Special notes for your reviewer:\r\n\r\n1. Run with `default` and `dev` profiles respectively.\r\n2. See the difference of the `Cache-Control` header in HTTP response\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\n优化 HTTP 缓存控制\r\n```","shortMessageHtmlLink":"Refactor cache control for static resources (#6015)"}},{"before":"bf75a36df7339e98440ef5d5d55792633d7ea690","after":"4c6abdcaa131a37468aef250761394241a87978f","ref":"refs/heads/main","pushedAt":"2024-05-30T07:01:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"feat: enable asynchronous resolving for UI extension points (#6018)\n\n#### What type of PR is this?\r\n\r\n/area ui\r\n/kind feature\r\n/milestone 2.16.x\r\n\r\n#### What this PR does / why we need it:\r\n\r\n优化 UI 部分的扩展点获取实现,让部分扩展点支持异步获取,之前的实现与文档不符。\r\n\r\n比如:\r\n\r\n```ts\r\nimport { definePlugin } from \"@halo-dev/console-shared\";\r\nimport axios from \"axios\";\r\n\r\nexport default definePlugin({\r\n components: {},\r\n routes: [],\r\n extensionPoints: {\r\n \"attachment:selector:create\": async () => {\r\n const { data } = await axios.get(\r\n \"/apis/v1alpha1/fake.halo.run/attachments/selectors\"\r\n );\r\n\r\n return data;\r\n },\r\n },\r\n});\r\n```\r\n\r\n#### Which issue(s) this PR fixes:\r\n\r\nFixes https://github.com/halo-dev/halo/issues/6008\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\n优化 UI 部分的扩展点获取实现,让部分扩展点支持异步获取。\r\n```","shortMessageHtmlLink":"feat: enable asynchronous resolving for UI extension points (#6018)"}},{"before":"6d3ba969ab9d8bcb2002c50052688ebd40e0890f","after":"bf75a36df7339e98440ef5d5d55792633d7ea690","ref":"refs/heads/main","pushedAt":"2024-05-30T06:55:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"f2c-ci-robot[bot]","name":null,"path":"/apps/f2c-ci-robot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/179827?s=80&v=4"},"commit":{"message":"chore: revert @uppy/xhr-upload version to 3.6.0 (#6019)\n\n#### What type of PR is this?\r\n\r\n/area ui\r\n/kind bug\r\n/milestone 2.16.x\r\n\r\n#### What this PR does / why we need it:\r\n\r\n回退 `@uppy/xhr-upload` 的版本至 3.6.0,因为最新版本的 `@uppy/xhr-upload` 添加了重试机制和修改了错误异常的结构,并且当前重试参数并没有体现在文档和 API 中,所以暂时先回退至 3.6.0 以解决 https://github.com/halo-dev/halo/issues/6014\r\n\r\nhttps://github.com/transloadit/uppy/blame/31cc47f3fb7513c82b887b429aa5f2a36eb4d593/packages/%40uppy/utils/src/fetcher.ts#L26\r\n\r\n#### Which issue(s) this PR fixes:\r\n\r\nFixes https://github.com/halo-dev/halo/issues/6014\r\n\r\n#### Special notes for your reviewer:\r\n\r\n需要测试:\r\n\r\n1. 附件上传功能\r\n2. 上传已安装的插件或者主题,观察是否有提示升级。\r\n\r\n#### Does this PR introduce a user-facing change?\r\n\r\n```release-note\r\nNone\r\n```","shortMessageHtmlLink":"chore: revert @uppy/xhr-upload version to 3.6.0 (#6019)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEab1ZmAA","startCursor":null,"endCursor":null}},"title":"Activity · halo-dev/halo"}