From 3a0cd5da5375ea6f0e80c067db40e875093961ac Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 17 Oct 2025 06:53:12 +0000 Subject: [PATCH 1/4] Initial plan From c50f9b9fbeee5544d96b5c043aee85a0a976da4e Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 17 Oct 2025 06:58:53 +0000 Subject: [PATCH 2/4] Upgrade all projects to .NET 10 Co-authored-by: LazuliKao <46601807+LazuliKao@users.noreply.github.com> --- .github/workflows/build-plugins.yml | 2 +- Dockerfile | 6 +++--- README.md | 4 ++-- .../HuaJiBot.NET.Adapter.Lagrange.csproj | 2 +- .../HuaJiBot.NET.Adapter.OneBot.csproj | 2 +- .../HuaJiBot.NET.Adapter.Satori.csproj | 2 +- .../HuaJiBot.NET.Adapter.Telegram.csproj | 2 +- src/HuaJiBot.NET.CLI/HuaJiBot.NET.CLI.csproj | 2 +- .../HuaJiBot.NET.Plugin.AIChat.csproj | 2 +- .../HuaJiBot.NET.Plugin.AutoReply.csproj | 2 +- .../HuaJiBot.NET.Plugin.Calendar.csproj | 2 +- .../HuaJiBot.NET.Plugin.GitHubBridge.csproj | 2 +- .../HuaJiBot.NET.Plugin.MessageBridge.csproj | 2 +- .../HuaJiBot.NET.Plugin.RepairTeam.csproj | 2 +- .../HuaJiBot.NET.Plugin.Scripting.csproj | 2 +- src/HuaJiBot.NET.UnitTest/HuaJiBot.NET.UnitTest.csproj | 2 +- src/HuaJiBot.NET/HuaJiBot.NET.csproj | 2 +- 17 files changed, 20 insertions(+), 20 deletions(-) diff --git a/.github/workflows/build-plugins.yml b/.github/workflows/build-plugins.yml index 560c624..ece9dd2 100644 --- a/.github/workflows/build-plugins.yml +++ b/.github/workflows/build-plugins.yml @@ -14,7 +14,7 @@ jobs: - name: Setup .NET uses: actions/setup-dotnet@v4 with: - dotnet-version: '9.x' + dotnet-version: '10.x' - name: Run build script run: dotnet fsi build_plugins.fsx diff --git a/Dockerfile b/Dockerfile index 7a48448..3c15012 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:9.0-alpine AS build-env +FROM --platform=$BUILDPLATFORM mcr.microsoft.com/dotnet/sdk:10.0-alpine AS build-env COPY . /root/build @@ -10,10 +10,10 @@ RUN dotnet publish src/HuaJiBot.NET.CLI \ -a $TARGETARCH \ --no-self-contained \ -p:PublishSingleFile=true \ - --framework net9.0 \ + --framework net10.0 \ -o /root/out -FROM mcr.microsoft.com/dotnet/runtime:9.0-alpine +FROM mcr.microsoft.com/dotnet/runtime:10.0-alpine ENV TZ=Asia/Shanghai diff --git a/README.md b/README.md index 7d82d24..ea997bb 100644 --- a/README.md +++ b/README.md @@ -7,14 +7,14 @@ ## 💻 如何参与开发 - 安装 [Visual Studio 2022](https://visualstudio.microsoft.com/zh-hant/vs/community/) -- 安装 [微软 .NET 8 SDK](https://dotnet.microsoft.com/zh-cn/download) +- 安装 [微软 .NET 10 SDK](https://dotnet.microsoft.com/zh-cn/download) - clone 本仓库源码 - 使用`Visual Studio 2022`打开 `HuaJiBot.NET.sln` 解决方案 - then just coding ... ## 🛠️ How to build? -- ensure `.NET 8 SDK` installed +- ensure `.NET 10 SDK` installed - clone this repo - run `dotnet build` diff --git a/src/HuaJiBot.NET.Adapter.Lagrange/HuaJiBot.NET.Adapter.Lagrange.csproj b/src/HuaJiBot.NET.Adapter.Lagrange/HuaJiBot.NET.Adapter.Lagrange.csproj index 125f4c9..b760144 100644 --- a/src/HuaJiBot.NET.Adapter.Lagrange/HuaJiBot.NET.Adapter.Lagrange.csproj +++ b/src/HuaJiBot.NET.Adapter.Lagrange/HuaJiBot.NET.Adapter.Lagrange.csproj @@ -1,7 +1,7 @@  - net9.0 + net10.0 enable enable diff --git a/src/HuaJiBot.NET.Adapter.OneBot/HuaJiBot.NET.Adapter.OneBot.csproj b/src/HuaJiBot.NET.Adapter.OneBot/HuaJiBot.NET.Adapter.OneBot.csproj index f0a53a5..3667d76 100644 --- a/src/HuaJiBot.NET.Adapter.OneBot/HuaJiBot.NET.Adapter.OneBot.csproj +++ b/src/HuaJiBot.NET.Adapter.OneBot/HuaJiBot.NET.Adapter.OneBot.csproj @@ -1,7 +1,7 @@ - net9.0 + net10.0 enable enable diff --git a/src/HuaJiBot.NET.Adapter.Satori/HuaJiBot.NET.Adapter.Satori.csproj b/src/HuaJiBot.NET.Adapter.Satori/HuaJiBot.NET.Adapter.Satori.csproj index 1490a44..5189e2c 100644 --- a/src/HuaJiBot.NET.Adapter.Satori/HuaJiBot.NET.Adapter.Satori.csproj +++ b/src/HuaJiBot.NET.Adapter.Satori/HuaJiBot.NET.Adapter.Satori.csproj @@ -1,7 +1,7 @@  - net9.0 + net10.0 enable enable diff --git a/src/HuaJiBot.NET.Adapter.Telegram/HuaJiBot.NET.Adapter.Telegram.csproj b/src/HuaJiBot.NET.Adapter.Telegram/HuaJiBot.NET.Adapter.Telegram.csproj index 6cb6ac1..4add2e5 100644 --- a/src/HuaJiBot.NET.Adapter.Telegram/HuaJiBot.NET.Adapter.Telegram.csproj +++ b/src/HuaJiBot.NET.Adapter.Telegram/HuaJiBot.NET.Adapter.Telegram.csproj @@ -1,7 +1,7 @@ - net9.0 + net10.0 enable enable diff --git a/src/HuaJiBot.NET.CLI/HuaJiBot.NET.CLI.csproj b/src/HuaJiBot.NET.CLI/HuaJiBot.NET.CLI.csproj index cb87e69..dc260b4 100644 --- a/src/HuaJiBot.NET.CLI/HuaJiBot.NET.CLI.csproj +++ b/src/HuaJiBot.NET.CLI/HuaJiBot.NET.CLI.csproj @@ -1,7 +1,7 @@ - net9.0 + net10.0 enable enable Exe diff --git a/src/HuaJiBot.NET.Plugin.AIChat/HuaJiBot.NET.Plugin.AIChat.csproj b/src/HuaJiBot.NET.Plugin.AIChat/HuaJiBot.NET.Plugin.AIChat.csproj index 163d73c..3269839 100644 --- a/src/HuaJiBot.NET.Plugin.AIChat/HuaJiBot.NET.Plugin.AIChat.csproj +++ b/src/HuaJiBot.NET.Plugin.AIChat/HuaJiBot.NET.Plugin.AIChat.csproj @@ -1,6 +1,6 @@  - net9.0 + net10.0 enable enable true diff --git a/src/HuaJiBot.NET.Plugin.AutoReply/HuaJiBot.NET.Plugin.AutoReply.csproj b/src/HuaJiBot.NET.Plugin.AutoReply/HuaJiBot.NET.Plugin.AutoReply.csproj index c49356d..f16527e 100644 --- a/src/HuaJiBot.NET.Plugin.AutoReply/HuaJiBot.NET.Plugin.AutoReply.csproj +++ b/src/HuaJiBot.NET.Plugin.AutoReply/HuaJiBot.NET.Plugin.AutoReply.csproj @@ -1,6 +1,6 @@  - net9.0 + net10.0 enable enable diff --git a/src/HuaJiBot.NET.Plugin.Calendar/HuaJiBot.NET.Plugin.Calendar.csproj b/src/HuaJiBot.NET.Plugin.Calendar/HuaJiBot.NET.Plugin.Calendar.csproj index 8574960..4708050 100644 --- a/src/HuaJiBot.NET.Plugin.Calendar/HuaJiBot.NET.Plugin.Calendar.csproj +++ b/src/HuaJiBot.NET.Plugin.Calendar/HuaJiBot.NET.Plugin.Calendar.csproj @@ -1,6 +1,6 @@ - net9.0 + net10.0 enable enable true diff --git a/src/HuaJiBot.NET.Plugin.GitHubBridge/HuaJiBot.NET.Plugin.GitHubBridge.csproj b/src/HuaJiBot.NET.Plugin.GitHubBridge/HuaJiBot.NET.Plugin.GitHubBridge.csproj index a441ac8..34d86d7 100644 --- a/src/HuaJiBot.NET.Plugin.GitHubBridge/HuaJiBot.NET.Plugin.GitHubBridge.csproj +++ b/src/HuaJiBot.NET.Plugin.GitHubBridge/HuaJiBot.NET.Plugin.GitHubBridge.csproj @@ -1,6 +1,6 @@ - net9.0 + net10.0 enable enable diff --git a/src/HuaJiBot.NET.Plugin.MessageBridge/HuaJiBot.NET.Plugin.MessageBridge.csproj b/src/HuaJiBot.NET.Plugin.MessageBridge/HuaJiBot.NET.Plugin.MessageBridge.csproj index d3aa851..6e34c06 100644 --- a/src/HuaJiBot.NET.Plugin.MessageBridge/HuaJiBot.NET.Plugin.MessageBridge.csproj +++ b/src/HuaJiBot.NET.Plugin.MessageBridge/HuaJiBot.NET.Plugin.MessageBridge.csproj @@ -1,6 +1,6 @@  - net9.0 + net10.0 enable enable diff --git a/src/HuaJiBot.NET.Plugin.RepairTeam/HuaJiBot.NET.Plugin.RepairTeam.csproj b/src/HuaJiBot.NET.Plugin.RepairTeam/HuaJiBot.NET.Plugin.RepairTeam.csproj index 80a7bac..aa304ed 100644 --- a/src/HuaJiBot.NET.Plugin.RepairTeam/HuaJiBot.NET.Plugin.RepairTeam.csproj +++ b/src/HuaJiBot.NET.Plugin.RepairTeam/HuaJiBot.NET.Plugin.RepairTeam.csproj @@ -1,7 +1,7 @@ - net9.0 + net10.0 enable enable true diff --git a/src/HuaJiBot.NET.Plugin.Scripting/HuaJiBot.NET.Plugin.Scripting.csproj b/src/HuaJiBot.NET.Plugin.Scripting/HuaJiBot.NET.Plugin.Scripting.csproj index 71bbefc..b76347f 100644 --- a/src/HuaJiBot.NET.Plugin.Scripting/HuaJiBot.NET.Plugin.Scripting.csproj +++ b/src/HuaJiBot.NET.Plugin.Scripting/HuaJiBot.NET.Plugin.Scripting.csproj @@ -1,6 +1,6 @@  - net9.0 + net10.0 enable enable true diff --git a/src/HuaJiBot.NET.UnitTest/HuaJiBot.NET.UnitTest.csproj b/src/HuaJiBot.NET.UnitTest/HuaJiBot.NET.UnitTest.csproj index 8aeeebc..037aa1a 100644 --- a/src/HuaJiBot.NET.UnitTest/HuaJiBot.NET.UnitTest.csproj +++ b/src/HuaJiBot.NET.UnitTest/HuaJiBot.NET.UnitTest.csproj @@ -1,7 +1,7 @@ - net9.0 + net10.0 enable enable diff --git a/src/HuaJiBot.NET/HuaJiBot.NET.csproj b/src/HuaJiBot.NET/HuaJiBot.NET.csproj index 81d7bce..ee94ff5 100644 --- a/src/HuaJiBot.NET/HuaJiBot.NET.csproj +++ b/src/HuaJiBot.NET/HuaJiBot.NET.csproj @@ -1,7 +1,7 @@ - net9.0 + net10.0 enable enable true From 058fbe5a4dd7ce8e5f5d182a59343d35dd97db37 Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 17 Oct 2025 07:01:35 +0000 Subject: [PATCH 3/4] Update build.sh to use net10.0 framework Co-authored-by: LazuliKao <46601807+LazuliKao@users.noreply.github.com> --- build.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.sh b/build.sh index 9426eca..ae1db37 100644 --- a/build.sh +++ b/build.sh @@ -2,5 +2,5 @@ dotnet publish src/HuaJiBot.NET.CLI \ -c Release \ --no-self-contained \ -p:PublishSingleFile=true \ - --framework net9.0 \ + --framework net10.0 \ -o /root/out \ No newline at end of file From 7e854458aad58edb93e58adb440a94a993e8570b Mon Sep 17 00:00:00 2001 From: "copilot-swe-agent[bot]" <198982749+Copilot@users.noreply.github.com> Date: Fri, 17 Oct 2025 07:10:35 +0000 Subject: [PATCH 4/4] Update Dockerfile to use distroless runtime image Co-authored-by: LazuliKao <46601807+LazuliKao@users.noreply.github.com> --- Dockerfile | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/Dockerfile b/Dockerfile index 3c15012..f05edbb 100644 --- a/Dockerfile +++ b/Dockerfile @@ -13,16 +13,13 @@ RUN dotnet publish src/HuaJiBot.NET.CLI \ --framework net10.0 \ -o /root/out -FROM mcr.microsoft.com/dotnet/runtime:10.0-alpine +FROM mcr.microsoft.com/dotnet/runtime:10.0-azurelinux3.0-distroless ENV TZ=Asia/Shanghai # COPY --from=build-env /root/out/HuaJiBot.NET.CLI /app/bin/HuaJiBot.NET.CLI COPY --from=build-env /root/out /app/bin -RUN mkdir /app/data \ - && adduser -D user \ - && chmod +x /app/bin/HuaJiBot.NET.CLI - +USER app WORKDIR /app/data ENTRYPOINT ["/app/bin/HuaJiBot.NET.CLI"] \ No newline at end of file