Merge pull request #317 from GeWuYou/chore/license-headers

Chore/license headers
This commit is contained in:
gewuyou 2026-05-03 22:59:31 +08:00 committed by GitHub
commit fe1a875785
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
1022 changed files with 3823 additions and 174 deletions

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
# yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json # yaml-language-server: $schema=https://coderabbit.ai/integrations/schema.v2.json
language: "zh-CN" language: "zh-CN"
early_access: false early_access: false

View File

@ -1,4 +1,7 @@
license_overrides: # Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
license_overrides:
NETStandard.Library: MIT NETStandard.Library: MIT
Microsoft.NETCore.Platforms: MIT Microsoft.NETCore.Platforms: MIT
System.Buffers: MIT System.Buffers: MIT

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
name: "Bug Report / 缺陷报告" name: "Bug Report / 缺陷报告"
description: "Report a reproducible defect in GFramework. / 报告可稳定复现的 GFramework 缺陷。" description: "Report a reproducible defect in GFramework. / 报告可稳定复现的 GFramework 缺陷。"
title: "[Bug]: " title: "[Bug]: "

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
name: "Feature Request / 功能建议" name: "Feature Request / 功能建议"
description: "Suggest a new capability or an API improvement. / 提出新能力或 API 改进建议。" description: "Suggest a new capability or an API improvement. / 提出新能力或 API 改进建议。"
title: "[Feature]: " title: "[Feature]: "

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
name: "Documentation / 文档改进" name: "Documentation / 文档改进"
description: "Report missing, outdated, or unclear documentation. / 报告缺失、过期或不清晰的文档。" description: "Report missing, outdated, or unclear documentation. / 报告缺失、过期或不清晰的文档。"
title: "[Docs]: " title: "[Docs]: "

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
name: "Question / 使用咨询" name: "Question / 使用咨询"
description: "Ask for guidance about usage, behavior, or adoption. / 询问用法、行为或接入方式。" description: "Ask for guidance about usage, behavior, or adoption. / 询问用法、行为或接入方式。"
title: "[Question]: " title: "[Question]: "

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
blank_issues_enabled: false blank_issues_enabled: false
contact_links: contact_links:
- name: "Search Existing Issues / 搜索现有 Issues" - name: "Search Existing Issues / 搜索现有 Issues"

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
name: Validate PAT name: Validate PAT
description: Validate that the release PAT can access the repository and push tags. description: Validate that the release PAT can access the repository and push tags.

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
version: 2 version: 2
updates: updates:
# ===== NuGet 依赖(所有项目)===== # ===== NuGet 依赖(所有项目)=====

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
name: Semantic Release Version and Tag name: Semantic Release Version and Tag
on: on:

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
# CI/CD工作流配置构建和测试.NET项目 # CI/CD工作流配置构建和测试.NET项目
# 该工作流仅在创建或更新面向任意分支的 pull request 时触发 # 该工作流仅在创建或更新面向任意分支的 pull request 时触发
name: CI - Build & Test name: CI - Build & Test
@ -28,6 +31,10 @@ jobs:
- name: Validate C# naming - name: Validate C# naming
run: bash scripts/validate-csharp-naming.sh run: bash scripts/validate-csharp-naming.sh
# 校验仓库维护源码是否包含 Apache-2.0 文件头声明
- name: Validate license headers
run: python3 scripts/license-header.py --check
# 缓存MegaLinter # 缓存MegaLinter
- name: Cache MegaLinter - name: Cache MegaLinter
uses: actions/cache@v5 uses: actions/cache@v5

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
# GitHub Actions工作流配置CodeQL静态代码分析 # GitHub Actions工作流配置CodeQL静态代码分析
# 该工作流用于对C#项目进行安全漏洞和代码质量分析 # 该工作流用于对C#项目进行安全漏洞和代码质量分析
name: "CodeQL" name: "CodeQL"

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
name: License Compliance (Feluda) name: License Compliance (Feluda)
on: on:

View File

@ -0,0 +1,54 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
# 维护者手动触发的 Apache-2.0 文件头修复流程。
name: License Header Fix
on:
workflow_dispatch:
inputs:
base_branch:
description: Branch to fix and target with the generated pull request.
required: true
default: main
permissions:
contents: write
pull-requests: write
jobs:
fix-license-headers:
name: Create license header fix PR
runs-on: ubuntu-latest
steps:
- name: Checkout target branch
uses: actions/checkout@v6
with:
ref: ${{ inputs.base_branch }}
- name: Add missing license headers
run: python3 scripts/license-header.py --fix
- name: Create pull request
uses: peter-evans/create-pull-request@v7
with:
token: ${{ secrets.GITHUB_TOKEN }}
base: ${{ inputs.base_branch }}
branch: chore/license-headers-${{ github.run_id }}
delete-branch: true
commit-message: |
chore(license): 补齐 Apache-2.0 文件头
- 补充缺失源文件许可证声明
- 更新文件头治理校验结果
title: "chore(license): 补齐 Apache-2.0 文件头"
body: |
## Summary
- 补齐仓库维护源码和配置文件缺失的 Apache-2.0 文件头
- 使用 `scripts/license-header.py --fix` 生成本次修复
## Validation
- `python3 scripts/license-header.py --check`

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
# 工作流名称Publish Docs # 工作流名称Publish Docs
# 该工作流用于在推送标签或手动触发时构建并部署文档到 GitHub Pages # 该工作流用于在推送标签或手动触发时构建并部署文档到 GitHub Pages

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
name: Publish VS Code Extension name: Publish VS Code Extension
on: on:

View File

@ -1,3 +1,6 @@
# Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
# 发布工作流NuGet + GitHub Packages + GitHub Release # 发布工作流NuGet + GitHub Packages + GitHub Release
# #
# 功能:当推送标签时自动构建、打包,并将相同产物并发发布到 NuGet.org 与 GitHub Packages # 功能:当推送标签时自动构建、打包,并将相同产物并发发布到 NuGet.org 与 GitHub Packages

View File

@ -1,4 +1,7 @@
# 配置文件用于设置代码质量检查工具的各项参数和规则 # Copyright (c) 2025-2026 GeWuYou
# SPDX-License-Identifier: Apache-2.0
# 配置文件用于设置代码质量检查工具的各项参数和规则
# 包含全局排除目录、启用/禁用的检查器、特定语言配置等设置 # 包含全局排除目录、启用/禁用的检查器、特定语言配置等设置
APPLY_FIXES: none APPLY_FIXES: none

View File

@ -79,6 +79,23 @@ All AI agents and contributors must follow these rules when writing, reviewing,
- The branch naming rule for a new task branch is `<type>/<topic-or-scope>`, where `<type>` should match the intended - The branch naming rule for a new task branch is `<type>/<topic-or-scope>`, where `<type>` should match the intended
Conventional Commit category as closely as practical. Conventional Commit category as closely as practical.
## License Header Rules
- Repository-maintained source and configuration files that are supported by `scripts/license-header.py` MUST include an
Apache-2.0 file header before the task is considered complete.
- When creating or modifying supported files, contributors MUST preserve an existing compliant header or add the SPDX
header generated by `python3 scripts/license-header.py --fix`.
- Before committing changes that add or modify supported source/configuration files, contributors MUST run
`python3 scripts/license-header.py --check` and resolve any missing or misplaced headers.
- For files with shebang lines, keep the shebang as the first line and place the license header immediately after it.
- For XML/MSBuild files with an XML declaration, keep the XML declaration as the first node and place the license header
immediately after it.
- Do not add project license headers to excluded or third-party areas such as `.agents/**`, `ai-libs/**`,
`third-party-licenses/**`, generated snapshots, binary assets, lock files, and generated build output. Treat
`scripts/license-header.py` as the authoritative include/exclude policy for this check.
- If CI reports a license-header failure, either fix it locally with `python3 scripts/license-header.py --fix` or, for
maintainer-owned cleanup, use the manual `License Header Fix` GitHub Actions workflow to create a reviewed repair PR.
## Repository Boot Skill ## Repository Boot Skill
- The repository-maintained Codex boot skill lives at `.codex/skills/gframework-boot/`. - The repository-maintained Codex boot skill lives at `.codex/skills/gframework-boot/`.

View File

@ -1,3 +1,8 @@
<!--
Copyright (c) 2025-2026 GeWuYou
SPDX-License-Identifier: Apache-2.0
-->
<Project> <Project>
<!-- Keep repository-wide analyzer behavior consistent while allowing only selected projects to opt into polyfills. --> <!-- Keep repository-wide analyzer behavior consistent while allowing only selected projects to opt into polyfills. -->
<ItemGroup> <ItemGroup>

View File

@ -1,3 +1,8 @@
<!--
Copyright (c) 2025-2026 GeWuYou
SPDX-License-Identifier: Apache-2.0
-->
<Project> <Project>
<!-- <!--

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using System.Collections.Concurrent; using System.Collections.Concurrent;
namespace GFramework.Core.Abstractions.Architectures; namespace GFramework.Core.Abstractions.Architectures;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Enums; using GFramework.Core.Abstractions.Enums;
namespace GFramework.Core.Abstractions.Architectures; namespace GFramework.Core.Abstractions.Architectures;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using System.Reflection; using System.Reflection;
using GFramework.Core.Abstractions.Lifecycle; using GFramework.Core.Abstractions.Lifecycle;
using GFramework.Core.Abstractions.Model; using GFramework.Core.Abstractions.Model;

View File

@ -1,4 +1,7 @@
using GFramework.Core.Abstractions.Properties; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Properties;
namespace GFramework.Core.Abstractions.Architectures; namespace GFramework.Core.Abstractions.Architectures;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Command; using GFramework.Core.Abstractions.Command;
using GFramework.Core.Abstractions.Environment; using GFramework.Core.Abstractions.Environment;
using GFramework.Core.Abstractions.Events; using GFramework.Core.Abstractions.Events;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Architectures; namespace GFramework.Core.Abstractions.Architectures;
/// <summary> /// <summary>

View File

@ -1,4 +1,7 @@
using GFramework.Core.Abstractions.Enums; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Enums;
namespace GFramework.Core.Abstractions.Architectures; namespace GFramework.Core.Abstractions.Architectures;

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Architectures; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Architectures;
/// <summary> /// <summary>
/// 架构模块接口,继承自架构生命周期接口。 /// 架构模块接口,继承自架构生命周期接口。

View File

@ -1,4 +1,7 @@
using GFramework.Core.Abstractions.Enums; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Enums;
namespace GFramework.Core.Abstractions.Architectures; namespace GFramework.Core.Abstractions.Architectures;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Command; using GFramework.Core.Abstractions.Command;
using GFramework.Core.Abstractions.Events; using GFramework.Core.Abstractions.Events;
using GFramework.Core.Abstractions.Ioc; using GFramework.Core.Abstractions.Ioc;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Ioc; using GFramework.Core.Abstractions.Ioc;
using GFramework.Core.Abstractions.Lifecycle; using GFramework.Core.Abstractions.Lifecycle;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Ioc; using GFramework.Core.Abstractions.Ioc;
namespace GFramework.Core.Abstractions.Architectures; namespace GFramework.Core.Abstractions.Architectures;

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Bases; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Bases;
/// <summary> /// <summary>
/// 表示键值对的接口,定义了通用的键值对数据结构契约 /// 表示键值对的接口,定义了通用的键值对数据结构契约

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Bases; namespace GFramework.Core.Abstractions.Bases;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Bases; namespace GFramework.Core.Abstractions.Bases;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Rule; using GFramework.Core.Abstractions.Rule;
namespace GFramework.Core.Abstractions.Command; namespace GFramework.Core.Abstractions.Command;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Rule; using GFramework.Core.Abstractions.Rule;
namespace GFramework.Core.Abstractions.Command; namespace GFramework.Core.Abstractions.Command;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Command; namespace GFramework.Core.Abstractions.Command;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Events; using GFramework.Core.Abstractions.Events;
using GFramework.Core.Abstractions.Utility; using GFramework.Core.Abstractions.Utility;

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Controller; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Controller;
/// <summary> /// <summary>
/// 控制器标记接口,用于标识控制器组件 /// 控制器标记接口,用于标识控制器组件

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Coroutine; namespace GFramework.Core.Abstractions.Coroutine;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Coroutine; namespace GFramework.Core.Abstractions.Coroutine;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Coroutine; namespace GFramework.Core.Abstractions.Coroutine;
/// <summary> /// <summary>

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Coroutine; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Coroutine;
/// <summary> /// <summary>
/// 表示协程的执行状态枚举 /// 表示协程的执行状态枚举

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Coroutine; namespace GFramework.Core.Abstractions.Coroutine;
/// <summary> /// <summary>

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Coroutine; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Coroutine;
/// <summary> /// <summary>
/// 时间源接口,提供当前时间、时间增量以及更新功能 /// 时间源接口,提供当前时间、时间增量以及更新功能

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Coroutine; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Coroutine;
/// <summary> /// <summary>
/// 定义一个可等待指令的接口,用于协程系统中的异步操作控制 /// 定义一个可等待指令的接口,用于协程系统中的异步操作控制

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using System.ComponentModel; using System.ComponentModel;
namespace GFramework.Core.Abstractions.Cqrs; namespace GFramework.Core.Abstractions.Cqrs;

View File

@ -1,3 +1,8 @@
<!--
Copyright (c) 2025-2026 GeWuYou
SPDX-License-Identifier: Apache-2.0
-->
<Project> <Project>
<!-- import parent: https://docs.microsoft.com/en-us/visualstudio/msbuild/customize-your-build --> <!-- import parent: https://docs.microsoft.com/en-us/visualstudio/msbuild/customize-your-build -->
<PropertyGroup> <PropertyGroup>

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Enums; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Enums;
/// <summary> /// <summary>
/// 架构阶段枚举,定义了系统架构初始化和运行过程中的各个关键阶段 /// 架构阶段枚举,定义了系统架构初始化和运行过程中的各个关键阶段

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Environment; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Environment;
/// <summary> /// <summary>
/// 定义环境接口,提供应用程序运行环境的相关信息 /// 定义环境接口,提供应用程序运行环境的相关信息

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Events; namespace GFramework.Core.Abstractions.Events;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Events; namespace GFramework.Core.Abstractions.Events;
/// <summary> /// <summary>

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Events; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Events;
/// <summary> /// <summary>
/// 事件接口,定义了事件注册的基本功能 /// 事件接口,定义了事件注册的基本功能

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Events; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Events;
/// <summary> /// <summary>
/// 事件总线接口,提供事件的发送、注册和注销功能 /// 事件总线接口,提供事件的发送、注册和注销功能

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Events; namespace GFramework.Core.Abstractions.Events;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Events; namespace GFramework.Core.Abstractions.Events;
/// <summary> /// <summary>

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Events; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Events;
/// <summary> /// <summary>
/// 提供注销功能的接口 /// 提供注销功能的接口

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Events; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Events;
/// <summary> /// <summary>
/// 提供统一注销功能的接口,用于管理需要注销的对象列表 /// 提供统一注销功能的接口,用于管理需要注销的对象列表

View File

@ -1,4 +1,9 @@
<Project Sdk="Microsoft.NET.Sdk"> <!--
Copyright (c) 2025-2026 GeWuYou
SPDX-License-Identifier: Apache-2.0
-->
<Project Sdk="Microsoft.NET.Sdk">
<!-- <!--
配置项目构建属性 配置项目构建属性

View File

@ -1,4 +1,7 @@
// IsExternalInit.cs // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
// IsExternalInit.cs
// This type is required to support init-only setters and record types // This type is required to support init-only setters and record types
// when targeting netstandard2.0 or older frameworks. // when targeting netstandard2.0 or older frameworks.

View File

@ -1,4 +1,7 @@
using System.Reflection; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using System.Reflection;
using GFramework.Core.Abstractions.Rule; using GFramework.Core.Abstractions.Rule;
using GFramework.Core.Abstractions.Systems; using GFramework.Core.Abstractions.Systems;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Lifecycle; namespace GFramework.Core.Abstractions.Lifecycle;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Lifecycle; namespace GFramework.Core.Abstractions.Lifecycle;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Lifecycle; namespace GFramework.Core.Abstractions.Lifecycle;
/// <summary> /// <summary>

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Lifecycle; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Lifecycle;
/// <summary> /// <summary>
/// 可销毁接口,为需要资源清理的组件提供标准销毁能力 /// 可销毁接口,为需要资源清理的组件提供标准销毁能力

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Lifecycle; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Lifecycle;
/// <summary> /// <summary>
/// 可初始化接口,为需要初始化的组件提供标准初始化能力 /// 可初始化接口,为需要初始化的组件提供标准初始化能力

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Lifecycle; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Lifecycle;
/// <summary> /// <summary>
/// 完整生命周期接口,组合了初始化和销毁能力 /// 完整生命周期接口,组合了初始化和销毁能力

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Localization; namespace GFramework.Core.Abstractions.Localization;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using System.Globalization; using System.Globalization;
using GFramework.Core.Abstractions.Systems; using GFramework.Core.Abstractions.Systems;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Localization; namespace GFramework.Core.Abstractions.Localization;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Localization; namespace GFramework.Core.Abstractions.Localization;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Localization; namespace GFramework.Core.Abstractions.Localization;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Localization; namespace GFramework.Core.Abstractions.Localization;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Localization; namespace GFramework.Core.Abstractions.Localization;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Localization; namespace GFramework.Core.Abstractions.Localization;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging; namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging; namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging; namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging; namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Logging; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>
/// 定义日志记录接口,提供日志记录和级别检查功能 /// 定义日志记录接口,提供日志记录和级别检查功能

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Logging; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>
/// 定义日志工厂接口,用于创建日志记录器实例 /// 定义日志工厂接口,用于创建日志记录器实例

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Logging; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>
/// 定义日志工厂提供者的接口,用于创建具有指定名称和最小日志级别的日志记录器 /// 定义日志工厂提供者的接口,用于创建具有指定名称和最小日志级别的日志记录器

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging; namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging; namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging; namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Logging; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>
/// 定义日志级别的枚举,用于标识不同严重程度的日志消息 /// 定义日志级别的枚举,用于标识不同严重程度的日志消息

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Logging; namespace GFramework.Core.Abstractions.Logging;
/// <summary> /// <summary>

View File

@ -1,4 +1,7 @@
using GFramework.Core.Abstractions.Architectures; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Architectures;
using GFramework.Core.Abstractions.Lifecycle; using GFramework.Core.Abstractions.Lifecycle;
using GFramework.Core.Abstractions.Rule; using GFramework.Core.Abstractions.Rule;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Pause; namespace GFramework.Core.Abstractions.Pause;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Utility; using GFramework.Core.Abstractions.Utility;
namespace GFramework.Core.Abstractions.Pause; namespace GFramework.Core.Abstractions.Pause;

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Pause; namespace GFramework.Core.Abstractions.Pause;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Pause; namespace GFramework.Core.Abstractions.Pause;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Pause; namespace GFramework.Core.Abstractions.Pause;
/// <summary> /// <summary>

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Pool; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Pool;
/// <summary> /// <summary>
/// 对象池系统接口,定义了对象池的基本操作 /// 对象池系统接口,定义了对象池的基本操作

View File

@ -1,4 +1,7 @@
namespace GFramework.Core.Abstractions.Pool; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Pool;
/// <summary> /// <summary>
/// 定义可池化对象的接口,提供对象在池中的生命周期管理方法 /// 定义可池化对象的接口,提供对象在池中的生命周期管理方法

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Pool; namespace GFramework.Core.Abstractions.Pool;
/// <summary> /// <summary>

View File

@ -1,3 +1,6 @@
// Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
namespace GFramework.Core.Abstractions.Properties; namespace GFramework.Core.Abstractions.Properties;
/// <summary> /// <summary>

View File

@ -1,4 +1,7 @@
using GFramework.Core.Abstractions.Logging; // Copyright (c) 2025-2026 GeWuYou
// SPDX-License-Identifier: Apache-2.0
using GFramework.Core.Abstractions.Logging;
namespace GFramework.Core.Abstractions.Properties; namespace GFramework.Core.Abstractions.Properties;

Some files were not shown because too many files have changed in this diff Show More