31 Commits

Author SHA1 Message Date
GeWuYou
d582dffe40 refactor(generators): 将源代码生成器项目目标框架降级至 netstandard2.0
- 将 GFramework.Godot.SourceGenerators 项目的目标框架从 netstandard2.1 更改为 netstandard2.0
- 将 GFramework.SourceGenerators.Abstractions 项目的目标框架从 netstandard2.1 更改为 netstandard2.0
- 将 GFramework.SourceGenerators 项目的目标框架从 netstandard2.1 更改为 netstandard2.0
- 将 GFramework.SourceGenerators.Common 项目的目标框架从 netstandard2.1 更改为 netstandard2.0
- 从 GFramework.SourceGenerators 项目中移除对 GFramework.Core.Abstractions 的引用
- 从 GFramework.SourceGenerators.Abstractions 项目中移除对 GFramework.Core.Abstractions 的引用
- 更新 PriorityGenerator 中的语法检查逻辑,使用 Any 替代 All 进行 partial 关键字检查
- 更新 PriorityAttribute 文档注释中的 cref 格式为 c 标签
2026-03-21 21:20:32 +08:00
GeWuYou
daff1fa12b feat(architecture): 集成Arch ECS框架并升级目标框架
- 在ArchitectureContext中添加ECS世界和系统调度器支持
- 添加IEcsWorld和IEcsSystem接口定义
- 实现EcsWorld、EcsSystemBase和EcsSystemRunner核心类
- 添加Position和Velocity示例组件及MovementSystem示例
- 创建ECS使用示例代码
- 将多个项目的TargetFramework从netstandard2.0升级到netstandard2.1
- 添加Arch和Arch.System包依赖到核心项目
- 在测试项目中添加ECS相关接口的模拟实现
2026-02-23 12:27:16 +08:00
GeWuYou
6b48c92710 docs: 删除多个核心模块的文档文件
- 移除 architecture 模块的 README 文档
- 移除 command 模块的 README 文档
- 移除 environment 模块的 README 文档
- 移除 events 模块的 README 文档
- 清理框架核心组件的使用说明文档
2026-02-11 12:52:14 +08:00
gewuyou
29fcfbe0a1 docs: unify module docs navigation and package guidance 2026-02-05 20:27:54 +08:00
GeWuYou
bb95f738a8 chore(project): 禁用隐式using并添加全局using文件
- 在所有项目中禁用 ImplicitUsings 配置
- 为所有项目添加 GlobalUsings.cs 文件统一管理常用命名空间
- 统一添加 System、System.Collections.Generic、System.Linq、System.Threading 和 System.Threading.Tasks 的全局引用
- 更新项目文件中的 PackageReference 格式规范化
- 移除各个源文件顶部的重复 using 语句
- 添加标准版权头注释到全局引用文件
2026-01-27 12:45:03 +08:00
GwWuYou
f620dea073 refactor(architecture): 重构日志系统和配置属性结构
- 将日志工厂配置改为日志属性配置,使用LoggerProperties替代ILoggerFactory
- 引入ArchitectureProperties替代ArchitectureOptions,统一架构配置属性
- 修改日志记录器创建方式,使用LoggerFactoryResolver.Provider统一管理
- 重构控制台日志工厂提供程序接口,移除minLevel参数
- 更新架构配置接口和上下文接口中的日志相关属性
- 移除Godot日志生成器相关的源代码生成器和特性
- 更新源代码生成器中的日志创建逻辑,使用新的日志工厂解析器
2026-01-01 21:39:08 +08:00
GwWuYou
02e2e31e95 feat(core): 添加上下文感知扩展方法并完善架构上下文接口
- 新增 ContextAwareExtensions 扩展类,提供便捷的上下文访问方法
- 为 IContextAware 接口添加 GetContext 方法以获取架构上下文
- 更新 ContextAwareBase 基类实现 GetContext 方法
- 改进源代码生成器的 Generate 方法参数结构
- 重构 ContextAwareGenerator 生成器实现接口方法自动实现
- 更新单元测试以验证新生成的上下文感知代码正确性
2025-12-29 20:06:25 +08:00
GwWuYou
414e49c413 refactor(generators): 重构源代码生成器基类架构
- 将 AttributeClassGeneratorBase 抽象基类拆分为 MetadataAttributeClassGeneratorBase 和 TypeAttributeClassGeneratorBase
- 为 GodotLoggerGenerator 实现 TypeAttributeClassGeneratorBase 基类
- 为 EnumExtensionsGenerator 实现 MetadataAttributeClassGeneratorBase 基类
- 为 LoggerGenerator 实现 TypeAttributeClassGeneratorBase 基类
- 为 ContextAwareGenerator 实现 MetadataAttributeClassGeneratorBase 基类
- 添加 ContextAwareGenerator 中对 IContextAware 接口实现的验证逻辑
- 简化 AttributeClassGeneratorBase 中的语法提供程序实现
- 移除 AttributeClassGeneratorBase 中的异常处理和错误输出逻辑
- 优化属性解析机制,使用元数据名称或类型进行特性查找
2025-12-28 16:08:24 +08:00
GwWuYou
f2fb8942b7 chore(build): 统一使用 AssemblyName 变量简化项目配置
- 将 PackageId 属性从硬编码名称改为 GeWuYou.$(AssemblyName) 模式
- 更新 GFramework.Godot 项目移除重复的 Product 属性
- 修改源代码生成器项目中的 ProjectReference 路径使用 AssemblyName 变量
- 更新源代码生成器项目中 DLL 文件引用使用 AssemblyName 变量
- 调整 targets 文件引用使用 AssemblyName 变量保持一致性
- 消除项目配置中的硬编码依赖提高维护性
2025-12-28 14:25:33 +08:00
GwWuYou
eed07a1a4b refactor(constants): 将路径常量类移动到通用模块并更新引用
- 将 PathContests 类从 GFramework.SourceGenerators.constants 移动到 GFramework.SourceGenerators.Common.constants
- 删除旧的 GFramework.Godot.SourceGenerators.constants.PathContests 文件
- 更新 GodotLoggerGenerator 中的命名空间引用
- 更新 LoggerGenerator 和 ContextAwareGenerator 的常量引用
- 为 PathContests 类添加详细的 XML 文档注释
- 扩展 PathContests 类,添加多个模块的命名空间常量定义
2025-12-28 13:45:37 +08:00
GwWuYou
bc462987af refactor(logging): 重构Godot日志生成器实现
- 将日志生成器注释从LogAttribute更新为GodotLogAttribute
- 移除冗余的常量定义AttributeShortName
- 优化语法提供程序的查询逻辑,简化LINQ表达式
- 更新方法注释,明确源生成器初始化功能
- 简化属性数据获取逻辑,使用更直接的LINQ查询
- 优化代码生成部分的变量命名,提高可读性
- 改进错误处理的代码生成格式,统一命名规范
- 移除不必要的空行和注释,精简代码结构
2025-12-28 13:39:38 +08:00
GwWuYou
8496bf43bb refactor(logging): 重构日志系统抽象和目标框架配置
- 将 RootLoggerName 常量从接口移至具体实现类 AbstractLogger
- 在 AbstractLogger 中添加 IsEnabledForLevel 方法的完整实现
- 更新 ILogger 接口移除 IsEnabledForLevel 的默认实现
- 统一所有项目的目标框架为 netstandard2.0
- 修正命名空间引用确保日志相关类型正确导入
- 添加详细的 XML 文档注释提升代码可读性
- 优化项目构建属性配置支持更高版本的语言特性
2025-12-28 11:45:24 +08:00
GwWuYou
6dd79b8e9a chore(build): 更新项目目标框架和构建配置
- 将多个项目的TargetFramework从netstandard2.0更新为net8.0;net9.0;net10.0
- 优化Directory.Build.props中的注释和配置说明
- 添加缺失的using System;引用
- 调整资源加载系统命名空间从GFramework.Godot.system到GFramework.Godot.assets
- 修正ILogger.cs中的异常消息格式
- 移除BindableProperty.cs中多余的可空断言操作符
2025-12-28 10:45:07 +08:00
GwWuYou
2dea63e69f refactor(abstractions): 将抽象接口迁移至独立项目并更新引用
- 将架构相关接口从 GFramework.Core 迁移至 GFramework.Core.Abstractions 项目
- 更新项目引用配置,添加对抽象层项目的项目引用
- 修正命名空间引用,使用新的抽象层命名空间
- 调整类型定义,将 List<T> 替换为更通用的 IList<T> 接口
- 修复控制器接口命名空间错误
- 添加必要的 using 语句以支持新的抽象层引用
2025-12-28 10:37:18 +08:00
GwWuYou
f638f50eb4 build(generator): 修正源代码生成器项目中的程序集引用
- 修复了 Common.dll 和 Common.xml 文件的输出路径配置
- 确保生成的程序集文件正确包含在 NuGet 包中
- 更新了包构建过程中的文件引用路径
2025-12-28 09:00:35 +08:00
GwWuYou
929ea6b2d6 refactor(godot): 重构源代码生成器依赖结构
- 将CommonDiagnostics移至GFramework.SourceGenerators.Common模块
- 添加PathContests常量类统一管理路径常量
- 更新GodotLoggerGenerator使用新的路径常量和诊断引用
- 修改项目引用以包含GFramework.SourceGenerators.Common依赖
- 更新NuGet包配置以包含Common模块的DLL和XML文档
- 在解决方案文件中添加GFramework.SourceGenerators.Common项目引用
- 为Common模块创建Analyzer发布跟踪文件
2025-12-28 08:54:52 +08:00
GwWuYou
c5a11820bc build(generator): 添加源代码生成器的 MSBuild targets 配置文件
- 为 GFramework.Godot.SourceGenerators 创建 GeWuYou.GFramework.Godot.SourceGenerators.targets 文件
- 为 GFramework.SourceGenerators 创建 GeWuYou.GFramework.SourceGenerators.targets 文件
- 在项目中启用 EnforceExtendedAnalyzerRules 规则
- 修正项目引用路径配置
- 更新包打包配置以包含正确的 targets 文件
- 从 GFramework.csproj 中移除多余的 targets 文件排除配置
2025-12-27 23:05:44 +08:00
GwWuYou
f3c5840ebe feat(diagnostic): 添加通用诊断描述符并重构诊断系统
- 添加 CommonDiagnostics 类提供通用诊断描述符
- 将诊断相关文件从 logging 目录移动到 diagnostics 目录
- 更新命名空间从 GFramework.SourceGenerators.Common.diagnostics 到 GFramework.SourceGenerators.diagnostics
- 修改诊断ID从 GFC001 到 GF_Common_Class_001
- 移除 GFramework.SourceGenerators.Common 项目引用
- 更新 AnalyzerReleases.Unshipped.md 文件中的诊断规则
- 重构 README.md 文件提供完整的项目介绍和使用指南
2025-12-27 22:51:39 +08:00
GwWuYou
7cd3979c48 fix(build): 修正项目引用和打包配置
- 修复了对 GFramework.Godot.SourceGenerators.Abstractions 的项目引用路径
- 更新了打包时包含的 targets 文件名称为 GFramework.Godot.SourceGenerators.targets
- 确保编译期引用正确且不被打包到最终输出中
2025-12-27 22:30:06 +08:00
GwWuYou
3074f8420d build(generator): 更新项目配置以包含Abstractions包
- 将Attributes.dll和Attributes.xml替换为Abstractions.dll和Abstractions.xml
- 修改GFramework.Godot.SourceGenerators项目配置
- 修改GFramework.SourceGenerators项目配置
- 保持包路径和可见性设置不变
2025-12-27 22:24:56 +08:00
GwWuYou
74b807b063 build(generator): 修正源代码生成器DLL包路径配置
- 修正 GFramework.Godot.SourceGenerators 项目的DLL包路径
- 修正 GFramework.SourceGenerators 项目的DLL包路径
- 移除多余的命名空间前缀 GeWuYou
- 确保生成器DLL正确包含到analyzers目录
2025-12-27 22:21:43 +08:00
GwWuYou
0126b69c5c refactor(source-generators): 重构源代码生成器项目结构和配置
- 移除 IArchitectureExtensible 接口定义
- 更新 Godot 源代码生成器项目配置,添加 Nullable 启用和包路径配置
- 添加 Directory.Build.props 构建属性文件到抽象层项目
- 修复命名空间引用错误和添加 using 语句
- 优化源代码生成器项目的打包配置和依赖引用
- 添加文档注释到 LogAttribute 构造函数
- 更新主项目文件中的源代码生成器相关引用路径
- 从解决方案用户设置中移除过时配置文件
- 添加解决方案用户设置到 gitignore 文件
2025-12-27 22:18:26 +08:00
GwWuYou
5f55a1b8db refactor(generator): 将Attributes项目重命名为Abstractions并更新引用
- 将GFramework.SourceGenerators.Attributes重命名为GFramework.SourceGenerators.Abstractions
- 将GFramework.Godot.SourceGenerators.Attributes重命名为GFramework.Godot.SourceGenerators.Abstractions
- 更新所有源生成器中对Attribute命名空间的引用
- 修改项目引用从Attributes指向Abstractions
- 添加程序集打包配置到生成项目
- 更新解决方案文件中的项目引用路径
- 修正测试文件中的命名空间引用
2025-12-27 21:29:13 +08:00
GwWuYou
fc88d908be refactor(build): 优化源代码生成器项目配置
- 移除 GeneratePackageOnBuild 和 IsRoslynComponent 配置项
- 统一设置 IncludeBuildOutput 为 false 以避免运行时库输出
- 更新 Microsoft.CodeAnalysis.Analyzers 版本至 4.14.0
- 为所有项目引用添加 PrivateAssets="all" 属性
- 简化打包配置,只将生成器 DLL 打包到 analyzers 目录
- 添加中文注释说明各配置项的作用和用途
2025-12-27 21:11:42 +08:00
GwWuYou
a888e76842 refactor(source-generators): 提取通用诊断描述符并更新代码生成器
- 将 ClassMustBePartial 诊断描述符移至 CommonDiagnostics 类
- 更新 GodotLoggerGenerator 和 LoggerGenerator 引用通用诊断
- 添加 ContextAwareGenerator 实现上下文感知功能
- 创建 ContextAwareAttribute 标记需要自动实现 IContextAware 的类
- 在项目中添加对 GFramework.SourceGenerators.Common 的引用
- 更新诊断规则 ID 命名规范
- 修复 AnalyzerReleases 文件格式
- 添加 nullable enable 配置
- 在解决方案文件中添加新项目引用
2025-12-26 22:05:34 +08:00
GeWuYou
017870421e style(csharp): 统一代码格式化规范并优化方法实现
- 调整注释格式统一使用4个空格缩进
- 重新排列字段声明顺序提升代码可读性
- 将简单属性访问器改为表达式主体语法
- 优化AudioManagerSystem中音量设置逻辑
- 移除AbstractAssetCatalogSystem中多余空行
- 重构日志类中方法实现为表达式主体形式
- 统一空行分隔符保持代码结构一致性
- 优化方法内部逻辑表达式简化代码
- [no tag]
2025-12-26 13:50:14 +08:00
GwWuYou
378690a42c fix(logging): 修复源代码生成器中的日志属性引用错误
- 修正 GodotLoggerGenerator 中的属性元数据名称为正确的命名空间路径
- 更新 LoggerGenerator 中的属性引用从 GodotLogAttribute 改为 LogAttribute
- 修复 ConsoleLoggerFactory 的实例化方式,添加缺失的构造函数调用
- 统一日志属性名称格式,移除多余的 Godot 前缀
2025-12-25 22:09:52 +08:00
GwWuYou
4fbc067414 fix(logging): 修复GodotLogger生成器中的工厂实例化问题
- 修复GodotLoggerGenerator中GodotLoggerFactory的实例化方式,
  从静态方法调用改为实例方法调用
- 将默认日志字段名从"_log"更改为"Logger",
  以提供更具描述性的命名
2025-12-25 21:54:32 +08:00
GwWuYou
72c787df3e fix(GFramework.Godot.SourceGenerators): 修复项目引用路径错误
修复了 GFramework.Godot.SourceGenerators 项目中对 Attributes 项目的引用路径,
将错误的 GFramework.SourceGenerators.Attributes.csproj 路径修正为正确的
GFramework.Godot.SourceGenerators.Attributes.csproj 路径。
2025-12-25 21:24:32 +08:00
GwWuYou
2f3bc2d526 feat(godot-source-generators): 重构Godot源代码生成器项目配置
- 将TargetFramework从net10.0更改为netstandard2.0以提高兼容性
- 添加必要的using语句(System和System.Linq)到GodotLoggerGenerator
- 配置项目属性以支持Roslyn分析器功能,包括GeneratePackageOnBuild、
  IsRoslynAnalyzer等设置
- 添加EnforceExtendedAnalyzerRules以启用扩展规则验证
- 配置项目引用GFramework.Godot.SourceGenerators.Attributes并设置
  PrivateAssets="all"避免运行时依赖
- 设置打包配置将生成器DLL打包为analyzers/dotnet/cs路径
- 修正GodotLogAttribute命名空间为GFramework.Godot.SourceGenerators.Attributes.logging
- 更新PackageId为GeWuYou.GFramework.SourceGenerators.Attributes
- 移除不必要的PackageReadmeFile配置
2025-12-25 21:22:20 +08:00
GwWuYou
763b460575 refactor(GFramework.Generator): 重构代码生成器结构并添加Godot日志生成器
- 移除原有的LoggerGenerator.cs和相关README文档
- 重命名GFramework.Generator为GFramework.SourceGenerators
- 重命名GFramework.Generator.Attributes为GFramework.SourceGenerators.Attributes
- 添加新的Godot日志生成器(GodotLoggerGenerator)及对应属性(GodotLogAttribute)
- 创建GFramework.Godot.SourceGenerators新项目用于Godot特定功能
- 修改日志生成器使用GodotLoggerFactory而非ConsoleLoggerFactory
2025-12-25 21:10:29 +08:00