7235f06856
Merge branch 'hotfix/5-cicd' into 'main'
...
ci: 更新测试工作流
Closes #5
See merge request gewuyou/forgeboot!10
2025-07-19 11:51:08 +00:00
c196ac4061
ci: 更新测试工作流
...
- 移除了授予 gradlew 执行权限的步骤
- 删除了打印版本信息的命令
- 保留了发布 SNAPSHOT 版本到 GitLab 仓库的命令
2025-07-19 19:50:19 +08:00
52075708f8
Merge branch 'refactor/4-dto-refactor-dto-s-paging-request-class' into 'main'
...
refactor(dto): 重构数据传输对象和查询相关类
See merge request gewuyou/forgeboot!9
2025-07-19 09:59:49 +00:00
ace61952dd
refactor(dto): 重构数据传输对象和查询相关类
2025-07-19 09:59:49 +00:00
61b3467e93
Merge branch 'refactor/3-id-optimize-request-id-acquisition' into 'main'
...
feat(context): 添加协程上下文工具类并优化追踪ID获取逻辑
See merge request gewuyou/forgeboot!5
2025-07-18 04:31:36 +00:00
b27d84f3c1
feat(context): 添加协程上下文工具类并优化追踪ID获取逻辑
2025-07-18 04:31:36 +00:00
d4399d9fd4
Merge branch 'fixbug/1-context-does-not-work-in-coroutines' into 'main'
...
feat(context): 添加协程环境中的 MDC 上下文传播支持- 新增 CoroutineMdcWebFilter Bean,用于在协程环境中传播 MDC 上下文信息
See merge request gewuyou/forgeboot!3
2025-07-17 10:30:40 +00:00
3cda514cfc
feat(context): 添加协程环境中的 MDC 上下文传播支持- 新增 CoroutineMdcWebFilter Bean,用于在协程环境中传播 MDC 上下文信息
2025-07-17 10:30:40 +00:00
fa40833dfe
ci:移除 git clone命令中的 --depth=1 参数
...
移除了 .gitlab/workflows/.gitlab-ci.main.yml 文件中 git clone 命令的 --depth=1 参数。
这个修改可能会影响管道机器人的运行时间,尤其是对于 large_run 测试。
2025-07-16 19:25:30 +08:00
210aad575b
ci:优化代码仓库克隆和测试流程
...
- 移除 git clone 命令中的 --depth=1 参数,保留完整历史记录
- 为 gradlew 添加执行权限,确保测试流程顺利进行
2025-07-16 18:46:02 +08:00
5306ffe645
build: 更新 Gradle 包装器的下载地址
...
- 将 Gradle 包装器的下载地址从官方更改为腾讯云代理
- 更新 Gradle 版本至 8.14.2
2025-07-16 13:08:24 +08:00
fada717c7e
ci:为 gradlew脚本添加执行权限
...
- 在 .gitlab-ci.main.yml 和 .gitlab-ci.test.yml 文件中添加了授予 gradlew 执行权限的步骤
- 确保在 main 和 test 分支上执行 CI/CD 流程时,gradlew 脚本具有必要的执行权限
- 提高了构建流程的可靠性和一致性
2025-07-16 12:19:25 +08:00
3bfcf98e21
ci: 添加 GitLab CI/CD 配置并实现自动化流程- 新增 .gitlab-ci.main.yml、.gitlab-ci.other.yml 和 .gitlab-ci.test.yml 文件
...
- 实现了 build、tag、publish、reset 和 mirror等阶段的自动化流程
- 添加了 check 和 test 分支的构建和发布配置
- 更新了 build.gradle.kts 和 settings.gradle.kts 文件,调整了项目配置
- 新增 MdcContextElement 和 CoroutineMdcWebFilter 类,用于协程中的 MDC 上下文传播
2025-07-16 12:16:32 +08:00
5f3e078e0f
build: 删除安全认证模块的自动配置
...
- 移除了安全认证模块的所有自动配置类
- 删除了相关的配置属性、处理程序、策略等类
- 清除了构建脚本中的依赖引用
- 移除了.gitattributes和.gitignore文件
2025-07-16 12:13:18 +08:00
b9da8bf395
feat(security): 实现双 token 认证机制并优化安全配置
...
- 在 SecurityAuthenticateProperties 中添加双 token 认证相关配置- 新增 DualTokenAuthenticationService接口和实现类,支持双 token 认证
- 添加 DualTokenAuthenticationController 实现双 token认证控制器
- 重构 SecurityAuthenticateAutoConfiguration,拆分为多个更细粒度的配置类
- 新增 SecurityCoreAutoConfiguration,集中处理安全核心配置
- 添加 SecurityProviderAutoConfiguration,自动配置认证提供者
- 新增 SecurityStrategyAutoConfiguration,自动配置安全策略
- 更新 UsernamePasswordAuthenticationProvider,支持多用户详情服务
2025-06-27 08:12:51 +08:00
3eb5ba6239
refactor(forgeboot-webmvc): 优化 R 类文档注释- 为 R 类添加类级别的文档注释,说明其用途和包含的属性
...
- 为 buildExtraMap 方法添加详细的文档注释,解释其功能和参数
- 为 success 和 failure 方法添加详细的文档注释,解释其功能、参数和返回值
- 优化文档注释的格式和内容,提高代码可读性和维护性
2025-06-26 22:25:35 +08:00
8042b45cea
refactor(security): 更新单令牌认证链路标识
...
- 将 API_KEY_CHAIN_ID 重命名为 SINGLE_TOKEN_CHAIN_ID
- 修改相关配置和定制器以使用新的链路标识
- 更新 SecurityConstants 中的相应常量定义
2025-06-26 16:09:20 +08:00
21542adfcc
refactor(security): 重构单令牌认证体系
...
- 重构 SingleTokenService 为 SingleTokenValidator,优化令牌验证流程
- 新增 TokenValidator 接口,用于定义通用令牌验证逻辑
- 更新 SingleTokenSecurityCoreAutoConfiguration,适配新的验证器
- 重构 SingleTokenAuthenticationProvider,使用新的验证器进行令牌验证
- 更新过滤器和认证令牌类,以适应新的认证流程
2025-06-26 16:07:07 +08:00
aa9bd66259
feat(security): 实现 Single Token 认证机制
...
- 重构了原有的 ApiKey 认证体系,改为支持 Single Token 认证
- 更新了相关的配置类、服务接口、过滤器和自定义器
- 优化了认证流程,支持在请求头中提取 Token 并进行验证
-调整了安全配置,确保 Token 认证与现有安全体系兼容
2025-06-26 11:36:02 +08:00
ec326e5a1d
feat(security): 实现 API密钥安全控制并重构授权模块
...
- 新增 API 密钥安全核心配置和自动配置
- 重构授权模块,支持动态授权管理
- 更新权限解析器、授权策略和访问管理器的实现
- 新增 API 密钥认证过滤器和异常处理器
- 改进安全过滤链的构建和管理
2025-06-25 23:07:54 +08:00
5f3ae7a5cd
refactor(context): 将 ForgeContextAutoConfiguration 拆分为多个自动配置类
...
- 新增 ContextCommonAutoConfiguration、ContextProcessorAutoConfiguration、ContextReactorAutoConfiguration、ContextServletAutoConfiguration、ContextWebFluxAutoConfiguration、ContextFeignAutoConfiguration、ContextTaskDecoratorAutoConfiguration 和 ContextWebClientAutoConfiguration
- 删除 ForgeContextAutoConfiguration 类
- 更新 AutoConfiguration.imports 文件,添加新的自动配置类
2025-06-24 22:41:03 +08:00
9c11b7e2e5
feat(security): 添加安全认证模块
...
- 新增安全认证相关的多个子模块,包括核心模块、认证模块和授权模块
- 实现了用户认证、权限控制、登录请求解析等功能
- 添加了安全认证的自动配置和相关Bean定义
- 定义了多种认证策略和处理机制,支持灵活的认证流程定制
2025-06-24 17:25:10 +08:00
1ef75d7c17
feat(cache): 新增缓存模块基础结构和功能
...
- 添加 CacheableEx、CacheEvictEx、CachePutEx 注解用于缓存操作
- 实现 Cache 接口定义缓存基本操作
- 添加 CacheProperties 配置类- 实现 CacheLayer、CacheException 等辅助类
- 添加缓存策略、序列化、管理器等配置类
2025-06-24 17:22:43 +08:00
a6706fd3c4
feat(context): 添加默认值序列化器和上下文持有者
...
- 新增 JacksonValueSerializer Bean,作为默认的值序列化器
- 新增 ContextHolder Bean,作为默认的上下文持有者
-两个 Bean 都在缺少其他实现时条件性创建
2025-06-24 17:05:05 +08:00
21b79551a5
refactor(异常处理模块): 更新依赖项范围
...
- 将 Webmvc.DTO 模块的依赖项范围从 implementation 改为 api- 添加 TRACE.STARTER 模块为 api 依赖项
-移除 springBoot.autoconfigure 的 implementation依赖项
2025-06-22 20:15:36 +08:00
bdba342daa
feat(trace): 添加请求上下文贡献者 Bean
...
- 新增 requestContributor 方法,创建 ContextFieldContributor 实例
- 定义请求上下文中需要维护的字段集合- 优化 TraceRequestIdProvider 方法的注释说明
2025-06-22 20:13:26 +08:00
ed8bb7cc91
refactor(trace): 重构 TraceRequestIdProvider 并调整依赖
...
- 在 TraceAutoConfiguration 中添加 ContextHolder依赖
- 更新 traceRequestIdProvider 方法以使用 ContextHolder
- 修改 TraceRequestIdProvider 类以使用 ContextHolder- 调整 forgeboot-trace-impl 的构建配置,将 context-starter 依赖改为 compileOnly
- 移除 forgeboot-trace-impl 中的 spring-boot-configuration-processor 依赖
2025-06-22 20:11:29 +08:00
f6794fd14f
refactor(context): 重构上下文过滤器配置
...
- 为 ContextWebFilter 和 ContextServletFilter 添加 ContextHolder 参数
- 优化了上下文过滤器的创建逻辑,提高灵活性和可扩展性
2025-06-22 20:02:09 +08:00
7a6c371aa3
feat(context): 重构上下文管理并添加序列化支持
...
- 新增 ContextHolder 类,替换原有的 StringContextHolder 对象
- 实现上下文值的序列化和反序列化
- 更新相关过滤器和装饰器以使用新的 ContextHolder- 添加获取指定类型值的方法- 实现 Context 接口的扩展方法,支持操作符重载
2025-06-22 20:01:12 +08:00
92b3eedb38
feat(core-serialization): 添加 Jackson序列化支持
...
- 新增 SerializerException 异常类用于处理序列化相关错误
- 实现 JacksonValueSerializer 类,提供基于 Jackson 的对象序列化和反序列化功能
- 定义 ValueSerializer 接口,规范序列化和反序列化方法
- 添加 Jackson 相关依赖到 build.gradle.kts 文件
- 创建 .gitattributes 和 .gitignore 文件,配置项目版本控制忽略项
2025-06-22 20:00:55 +08:00
82f2a50f48
build: 更新 Gradle 版本并添加新依赖
...
- 将 Gradle 版本从 8.12 升级到8.14
- 新增 jjwt、gradleMavenPublishPlugin、spring-security、redis等依赖
- 更新部分现有依赖的版本
2025-06-22 19:57:56 +08:00
d980363a33
build: 注释掉 Gitea 私服配置
...
- 注释掉了 config/repositories.gradle.kts 文件中的 Gitea 私服配置代码块
- 保留了阿里云 Maven 仓库的配置
2025-06-22 19:57:46 +08:00
05ab150b8e
refactor(forgeboot-webmvc): 移除 WebMvcExceptionProperties 中未使用的 enable 属性
...
- 删除了 WebMvcExceptionProperties 类中未使用的 enable 属性
-简化了配置结构,提高了代码的可维护性
2025-06-09 21:14:12 +08:00
6fcf5d6d40
refactor(webmvc-dto):优化页面查询扩展和响应对象- 在 PageQueryExtensions 中添加对字段不存在的容错处理
...
- 在 R 类中添加 success 方法,简化成功响应对象的创建
2025-06-09 19:31:15 +08:00
8a449467ab
refactor(webmvc): Optimize deletion logic
...
- Removed unnecessary log imports
- Removed redundant error log output
2025-06-05 18:16:24 +08:00
96469ac1e3
feat(BaseResult): Adding toString method to BaseResult class
...
- Added override fun toString() method in BaseResult class
- This method can display all properties of the BaseResult object in a string
- Adding toString method helps debugging and logging, improving code maintainability
2025-06-05 18:16:03 +08:00
05a8d3d409
build: Update project structure and configuration - Remove related files from the forgeboot-webflux module
...
-Refactor settings.gradle.kts file to optimize project configuration and structure
- Add forgeboot-context, forgeboot-core, forgeboot-i18n and forgeboot-trace modules
- Update project dependency management and plug-in configuration
2025-06-05 16:11:54 +08:00
2258f26544
build: Add spring-boot-autoconfigure dependency
...
Add spring-boot-autoconfigure dependency to use the autoconfiguration feature in your build configuration.
2025-06-05 16:10:12 +08:00
c3f4b6973c
feat(build): Add forgeboot-context module
...
- Added a Context object, defining the module path related to forgeboot-context
-Includes four submodules: starter, api, impl and autoconfigure
2025-06-05 16:09:53 +08:00
6c30120016
build(forgeboot-webmvc): Add Spring Boot Dependencies
...
- Introducing Spring Boot dependency management platform - Adding Spring Boot automatic configuration module
- Keep existing project dependency structure unchanged
2025-06-05 16:09:37 +08:00
806cefd248
build(logger): Update log module dependency version
...
- Add Spring Boot dependent platform version
- Update Spring Boot starter aop dependency
- Add Spring Boot autoconfigure dependency
- Keep Spring Boot starter web dependencies unchanged
2025-06-05 16:09:22 +08:00
6942de1320
build(exception-i18n): Add Spring Boot Autoconfiguration Dependencies
...
- Add Spring Boot dependency platform and autoconfiguration dependencies in the build.gradle.kts file
- The addition of these dependencies helps to enhance project configuration and management capabilities
2025-06-05 16:09:08 +08:00
69c59aeba5
build(exception): Update exception module dependencies and add Spring Boot related configurations - Add Spring Boot dependency management platform
...
- Introducing Spring Boot Auto-Configuration
- Adjust the dependency order and optimize the project structure
2025-06-05 16:08:44 +08:00
37309f5b15
feat(dto): Add toString methods for PageQueryReq and PageResult classes - Add toString methods in PageQueryReq class to print the object's property information
...
- Add toString method to the PageResult class to print attribute information of paging results
- The addition of toString method is easy to debug and log, improving the maintainability of the code
2025-06-05 16:08:02 +08:00
0e74483168
feat(trace): Refactoring the tracking module - Remove the ignorePatten property in TraceProperties
...
- Delete FeignTraceAutoConfiguration, WebClientTraceAutoConfiguration, and RequestIdTaskDecorator
- Refactor TraceAutoConfiguration and use ContextFieldContributor to replace the original filters and interceptors
- Remove the RequestIdUtil class and use StringContextHolder to replace thread local storage
- Update TraceRequestIdProvider and use ContextFieldContributor to provide the request ID
- Remove useless extension functions and filter classes
2025-06-05 16:07:41 +08:00
b90048a57d
build(forgeboot-i18n-autoconfigure): Update project dependency configuration - Move dependencies from the core-extension module to implementation configuration - Add spring-boot-autoconfigure dependencies
...
- Update other dependencies to adapt to project structure changes
2025-06-05 16:07:11 +08:00
ebe801f6bb
feat(context): Core functions of context propagation
...
- Added FieldDef class to define field properties
- Create Scope enumeration class, define the context storage location
- Implement AbstractContext and Context interfaces
- Add the ContextFieldContributor interface and the FieldRegistry interface
- Implement context processors: HeaderProcessor, GeneratorProcessor, MdcProcessor, ReactorProcessor
- Add context filters: ContextServletFilter, ContextWebFilter
- Implement the automatic configuration class ForgeContextAutoConfiguration
- Add StringContextHolder
- Implement the default field registry DefaultFieldRegistry
2025-06-05 16:06:44 +08:00
446b859a8a
build: ADD PROJECT INFORMATION TO THE MANIFEST FOR THE JAR PACKAGE. MF- Add task configuration in build.gradle.kts, MANIFEST generated for jar package. Add the project name and version information to the MF file
...
- New attributes:
- Implementation-Title: The name of the project
- Implementation-Version: The version of the project
2025-06-04 10:52:33 +08:00
2753c27dca
refactor: Remove the app name configuration from the app properties file
...
Removed the configuration items in the application.properties spring.application.name file of the Forgeboot-Trace-API and ForgeBoot-Trace-Impl modules. This configuration, which could lead to duplicate definitions of app names, has been removed from both modules to address possible name conflicts.
2025-06-04 10:51:58 +08:00
cd268c4d35
build:Remove the application.properties file for the internationalization module
...
- Removed the application.properties files in the ForgeBoot-i18N-API and ForgeBoot-i18N-IMPL modules
- These files only contain spring.application.name attributes and may not need to be configured separately
2025-06-04 10:51:35 +08:00