跳至主要內容

2.6.X 更新日志

码匠君SASSpring Authorization ServerDante Cloud微服务领域驱动DDDSpring BootSpring CloudSpring SecuritySpring Cloud AlibabaSpring Cloud TencentOAuth2.1NacosSkywalkingSentinelSeata大约 13 分钟

2.6.X 更新日志

v2.6.7.30

  • 主要更新
    • Spring Boot Admin 版本升级至 2.6.7
  • 其它更新
    • Maven Invoker 版本升级至 3.2.0
    • Minio 版本升级至 8.4.1
    • Hutool 版本升级至 5.8.0
    • Bce-java-sdk 版本升级至 0.10.209
    • Alipay-sdk-java 版本升级至 4.23.11.ALL
    • Aliyun-sdk-oss 版本升级至 3.15.0

v2.6.6.20

  • 主要更新
    • JetCache 版本升级至 2.6.3,感谢原作者修复 Spring Boot 2.6 下依赖循环问题。删除本项目原有临时解决 JetCache 依赖循环代码。
    • Spring Boot Admin 版本升级至 2.6.6
    • Skywalking Agent 版本升级至 8.10.0
  • 其它更新
    • Antisamy 版本升级至 1.6.7
    • Logstash Logback Encoder 版本升级至 7.1.1
    • Minio 版本升级 8.3.8
    • Okhttps 版本升级至 3.5.0
    • WxJava 版本升级至 4.3.0
    • Bce-java-sdk 版本升级至 0.10.204
    • Qiniu-java-sdk 版本升级至 7.10.0
    • Alipay-sdk-java 版本升级至 4.22.86.ALL

v2.6.6.10

  • 主要更新
    • Spring Boot Admin 版本升级至 2.6.5
    • Camunda 版本升级至 7.17.0,同时升级 Camunda Open API 文档,补充 Camunda 7.17.0 数据库脚本
  • 其它更新
    • Antisamy 版本升级至 1.6.6.1
    • Springdoc 版本升级至 1.6.7
    • Okhttps 版本升级至 3.4.6
    • Qiniu-java-sdk 版本升级至 7.9.5
    • Alipay-sdk-java 版本升级至 4.22.81.ALL

v2.6.6.0

  • 重要更新
    • Spring Boot 版本升级至 2.6.6。以规避(CVE-2022-22965)问题。当前环境不具备漏洞出现条件,只是进一步预防和规避。
  • 其它更新
    • Okhttps 版本升级至 3.4.5
    • WxJava 版本升级至 4.2.9.B
    • Bce-java-sdk 版本升级至 0.10.202

v2.6.5.0

  • 重要更新
    • Spring Boot 版本升级至 2.6.5
    • Spring Boot Admin 版本升级至 2.6.3
  • 一般更新
    • 强制降低 Spring Integration 版本至 5.5.9,临时解决 Spring Integration 5.5.10 不兼容 Java 8 问题。已提交 ISSUE 至 Spring Integration 项目 #3761open in new window。确定在 Spring Integration 5.5.11 修复该问题
    • 修复 @Async 与 @Transactional 注解冲突,导致 @Transactional 失效问题。
    • 修复因@Transactional 失效,导致的权限数据存储死锁问题。
  • 依赖更新
    • Redisson 版本升级至 3.17.0
    • Fastjson 版本升级至 1.2.80
    • Okhttps 版本升级至 3.4.4
    • Bce-java-sdk 版本升级至 0.10.201
    • Alipay-sdk-java 版本升级至 4.22.67.ALL
    • Logback 版本升级至 1.2.11

v2.6.4.20

  1. Spring Cloud Gateway 安全问题修复 (CVE-2022-22947)
  2. 依赖包版本升级
    • maven-embedder 版本升级至 3.8.5
    • maven-compat 版本升级至 3.8.5
    • WxJava 版本升级至 4.2.8.B
    • bce-java-sdk 版本升级至 0.10.200
    • qiniu-java-sdk 版本升级至 7.9.4
    • alipay-sdk-java 版本升级至 4.22.57.ALL
    • com.baidu.aip 版本升级至 4.16.7

v2.6.4.10

  • 主要更新

    1. 增加 SpringDoc 配置,采用最新配置方式,解决 Swagger UI 认证界面无法输入 Client Secret 以及反复输入Client IdClient Secret 问题。该问题需要更新 Nacos 配置才能生效。(注意:正式使用,建议单独为 Swagger 分配 Client IdClient Secret,以确保安全性)
    2. 为提升 Swagger UI 显示内容的时效性,默认关闭 Swagger UI 页面缓存。
    3. 修改 Swagger UI 支持认证模式,默认支持 OAuth2 Password 模式和 Client Credentials 模式,关闭 Authorization Code 模式以及支持 PKCE 的 Authorization Code 模式
  • 其它更新

    • Guava 版本升级至 31.1-jre
    • Hutool 版本升级至 5.17.22
    • WxJava 版本升级至 4.2.7.B
    • Mybatis-plus-generator 版本升级至 3.5.2
    • Bce-java-sdk 版本升级至 0.10.199
    • Alipay-sdk-java 版本升级至 4.22.49.ALL

v2.6.4.0

  • 主要更新
    1. Spring Boot 版本升级至 2.6.4
    2. Spring Cloud Alibaba 版本升级至 2021.0.1.0
    3. 删除为升级 Spring Boot 2.6.X,而编写的临时解决 Sentinel 循环注入代码,全新使用 Spring Cloud Alibaba 标准代码。
  • 其它更新
    • docker-maven-plugin 版本升级至 0.39.1
    • minio 版本升级至 8.3.7
    • log4j-api 版本升级至 2.17.2

v2.6.3.30

  • 主要更新

    • Spring Cloud 版本升级至 2021.0.1
  • 其它更新

    • Hutool 版本升级至 5.17.21
    • WxJava 版本升级至 4.2.6.B
    • alipay-sdk-java 版本升级至 4.22.37.ALL
  • 额外说明

近期发布版本的频次降低,更新的内容也比较少。主要原因一方面是恰逢新春佳节,另一方面也是最主要的原因也是为后期的更新迭代做积极的准备和开发工作。

为什么现在积极准备后期的更新迭代,主要是因为后期的更新迭代对现有系统影响比较大:

Spring 官宣 spring-security-oauth 即将不再维护。虽然 spring-security-oauth2-autoconfigure 等组件包依旧可用,现目前 Spring 依赖的 spring-security-oauth2-autoconfigure 版本比较低,高版本所有的代码均已标记为过期。

所以近期一直在进行使用 Spring Authorization Server 替换现有 spring-security-oauth 的开发工作。包括 Herodotus Engine 工程的提取,以及 Dante Cloud v2.7.0.Beta2 的开发,均是为了降低已有系统代码间耦合,为 Spring Authorization Server 使用和升级铺路。

Spring Boot 3 下一代框架将基于 Java 17; Kafka 3.0 也已经宣布弃用 Java 8 的支持;Hibernate 宣布他们目前积极维护的分支都支持 Java17。Java 生态正在潜移默化进入一个新的时代,所以开始着手准备支持 Java 17 势在必行。

虽然说 Java 一直都是向下兼容的,但是微服务架构依赖的第三方开源包非常多,势必会存在一些依赖组件包在 Java 17 下使用不畅的情况,所以需要及时更新或替换。不断的升级更新,跟随业界的发展趋势,用新的技术来改善开发和使用。同时,规避处于长期不更新导致后期即使很小的更新都会牵一发而动全身的尴尬境地。

v2.6.3.20

  • 重要更新

    • Skywalking 版本升级至 8.9.0
    • 升级 Antisamy xml 配置,强化 XSS 防控能力
  • 其它更新

    • docker-maven-plugin 版本升级至 0.39.0
    • antisamy 版本升级至 1.6.5
    • springdoc 版本升级至 1.6.6
    • skywalking 版本升级至 8.9.0
    • minio 版本升级 8.3.6
    • bce-java-sdk 版本升级至 0.10.193
    • qiniu-java-sdk 版本升级至 7.9.3
    • alipay-sdk-java 版本升级至 4.22.32.ALL
    • jpush-client 版本升级至 3.6.1

v2.6.3.10

  1. Spring Boot Admin 版本升级至 2.6.2
  2. 修改 Dockerfile 配置,将 alpine 容器源修改为阿里源,提升打包 Docker 字体等资源下载速度
  3. 修复服务打包成 Docker 镜像后,openjdk:8-jdk-alpine 无法找到字体,导致渲染图形验证码抛空问题。
  4. 将 alpine 容器默认 UTC 时区,修改为 "GTM + 8" 时区
  5. 前端工程 Vuetify 版本升级至 2.6.3。同步升级大量其它依赖包版本。
  6. 后端工程依赖升级:
    • Redisson 版本升级至 3.16.8
    • Hutool 版本升级至 5.7.20
    • WxJava 版本升级至 4.2.5.B
    • mybatis-plus-boot-starter 版本升级至 3.5.1
    • dysmsapi20170525 版本升级至 2.0.9
    • bce-java-sdk 版本升级至 0.10.190
    • alipay-sdk-java 版本升级至 4.22.30.ALL
    • baidu-java-sdk 版本升级至 4.16.5
    • aliyun-sdk-oss 版本升级至 3.14.0

v2.6.3.0

  • 重要更新

    1. Spring Boot 版本升级至 2.6.3
    2. Nacos 版本升级至 2.0.4
  • 其它更新

    • okhttps 版本升级至 3.4.2
    • minio 升级 值 8.3.5

v2.6.2.90

  1. Spring Boot Admin 升级至 2.6.1
  2. 修复前端工程,因阿里库依赖包签名不正确,导致执行 yarn 编译命令以及 yarn 升级依赖命令,会抛出 Integrity check failed for "graceful-fs" (computed integrity doesn't match our records 错误问题。

v2.6.2.80

  • 重要更新
  1. Spring Boot Admin 升级至 2.6.0。
    • Spring Boot Admin 监控元数据包含 null 值会抛出 NullPointerException 的问题已解决。感谢 Dante Cloud 技术交流群群友【liviing{}{}】发现此问题,并提供解决方案。才得以提交 ISSUE 至 Spring Boot Admin 得到快速解决, ISSUE ID:#1925。
  2. Sentinel 全面升级至 1.8.3
    • 解决使用 Spring Cloud Alibaba 2021.1 导致 Sentinel 无法升级问题。
    • 封装的 Sentinel Dashboard 同步升级至 1.8.3。最新打包 herodotus/sentinel-dashboard 镜像已上传至 Docker Hub
    • Docker Compose 脚本修改为使用最新 herodotus/sentinel-dashboard:1.8.3
  3. 新增支付核心模块
    • 支付模块对阿里支付、微信支付核心支付 API 进行了封装,支持普通商户及 ISV 模式,使用更加便捷。
    • 商户信息可配置,支持多商户管理。默认使用配置文件进行商户信息配置,支持使用关系型数据库进行商户信息存储,也可灵活自定义其它类型的存储媒介。
    • 采用事件机制实现支付异步通知以及异步回调处理,规避多次异步通知问题。
    • 最大程度上降低支付模块与实际业务的耦合性,便于开发更加独立的、更易扩展的订单、支付等微服务。
  • 其它更新
    1. 解决阿里支付 SDK 自身依赖包与 Antisamy 依赖冲突,导致系统接口无法正常调用问题。
    2. 解决行为验证码偶尔出现缓存数据无法序列化问题。
    3. 前端工程升级大量依赖包,重新编译组件库。
    4. 后端依赖包版本升级
      • Springdoc 版本升级至 1.6.4
      • Hutool 版本升级至 5.7.19
      • WxJava 版本升级至 4.2.4.B
      • mybatis-plus-boot-starter 版本升级至 3.5.0
      • aliyun-java-sdk-core 版本升级至 4.6.0
      • bce-java-sdk 版本升级至 0.10.188
      • qiniu-java-sdk 版本升级至 7.9.2
      • alipay-sdk-java 版本升级至 4.22.17.ALL
      • jpush-client 版本升级至 3.6.0
      • jiguang-common 版本升级至 1.2.0

v2.6.2.70

  1. 升级 bcprov-jdk15on 版本,修复安全漏洞 CVE-2020-28052,解决 bcprov-jdk15on 在工程中存在多个版本重复的依赖包问题。
  2. 优化平台新服务创建 Maven Archetype,解决 .gitignore 被过滤不会拷贝的问题。
  3. 增加 Maven 管理代码包,可通过代码或界面操作实现新服务的创建

v2.6.2.60

  1. 新增平台服务 Maven Archetype,方便新服务的构建和开发
  2. 优化平台核心 Maven Dependences,去除无用依赖内容,让 pom.xml 内容更清晰
  3. 升级 Debezimu 版本至 1.8,同步修改 docker-compose 脚本。
  4. 删除原有验证码接口无用的权限设置代码
  5. 删除 dante-cloud-influxdb 和 dante-cloud-oss 模块代码,减少额外代码对学习本系统带来的复杂度
  6. 升级系统依赖包版本:
    • Springdoc 版本升级至 1.6.3
    • Hutool 版本升级至 5.7.18
    • Mybatis 版本升级至 3.5.9
    • Log4j 版本升级至 2.17.1

v2.6.2.50

  1. Jetcache 版本升级至 2.6.2 (提了 Jetcache 2.6.1 版本 redis 缓存 key 中包含 null 的 ISSUE,作者快速响应并修复,感谢 Jetcache 作者)
  2. 强制升级 Logback 版本至 1.2.10,以规避 Logback 安全漏洞 CVE-2021-42550
  3. 回滚 Spring Boot Admin 版本至 2.5.4,以临时解决 Spring Boot Admin 2.5.5 版本在元数据包含 null 值的情况下会抛出 NullPointerException 的问题。已向 Spring Boot Admin 提出 ISSUE #1925,待修正后再升级
  4. 重构 eurynome-cloud-captcha 包代码,将行为验证码与图形验证码以及 Hutool 验证码整合并统一,目前支持滑块拼图、文字点选、算数类型、中文类型、字母类型、GIF 类型,以及 Hutool 圆圈干扰、扭曲干扰、线段干扰等多种类型验证码。
  5. 使用独立的、统一的接口进行验证码调用以及验证码的验证。通过修改接口即可动态变更验证码的显示和调用。
  6. 通过 Spring Boot 配置,可以动态修改验证码的大小、内容、字体等多维度参数,让验证码的显示更具多样性和灵活性。
  7. 重构 OAuth2 授权码模式登录页面代码,替换已有验证码,更换为新的统一验证码接口。不再使用已经不再维护的第三方开源验证码包。
  8. 修正前端验证码组件,在重新设置滑块大小参数情况下,滑块显示位置错误并导致验证失败问题。
  9. 调整部分代码日志级别,减少日志在 Debug 模式下不必要的日志输出
  10. 依赖包升级:
    • Redisson 版本升级至 3.16.7
    • Springdoc 版本升级至 1.6.2
    • Fastjson 版本升级至 1.2.79

v2.6.2.40

  • 重大更新
    • Spring Boot 版本升级至 2.6.2
    • lombok 版本升级至 1.18.22
    • docker-maven-plugin 版本升级至 0.38.1
  • 其它更新
    • Jetcache 回滚至 2.6.0 版本,规避 Jetcache 2.6.1 版本在 redis 中生成缓存 key 中包含 null 的问题

v2.6.2.30

  • 重大更新
    • Spring Boot Admin 版本升级至 2.5.5
  • 其它更新
    • Apache Log4j2 版本升级至 2.17.0,解决第三个安全漏洞 CVE-2021-45105
    • 独立的 eurynome-cloud-upms-api 包,已经失去单独提取的意义,将其与 eurynome-cloud-upms-logic 包整合。
    • 新增认证成功后,登录信息日志记录。

v2.6.2.20

  1. Apache Log4j2 版本升级至 2.16.0,彻底根除安全漏洞问题
  2. 新增组合式、可配置化的图形验证码功能。独立出单独验证码模块,为后续更多的验证码集成奠定基础。
    主要特点
    • 同时支持滑块拼图验证码和文字点选验证码。
    • 后端可通过配置,灵活定制和修改验证码细节;
    • 前端组件化封装,可通过参数动态指定所使用的验证码
    • 使用统一接口实现不同验证码的生成与验证。
    • 与平台自定义 Session 高度融合,整合幂等、防刷等管控机制,前后端数据加密传输,提升验证码使用安全性。
    • 验证码反馈信息,与平台统一错误体系有机结合,用户体验进一步提升。
  3. 优化 Feign 请求信息传输,修正 UserAgent 信息被修改后未回置问题。
  4. 前端工程升级大量依赖包,重新编译组件库代码。
  5. 后端核心依赖包版本升级
    • Springdoc 版本升级至 1.6.1
    • Mybatis 版本升级至 3.5.8

v2.6.2.10

  1. 修复 Apache Log4j2 的远程代码执行漏洞安全问题
  2. 进一步优化调整核心代码模块依赖关系,降低模块间的耦合程度,减少部分核心模块被过度依赖的情况。
  3. 升级依赖包版本
    • Logstash Logback Encoder 版本升级至 7.0.1
    • Hutool 版本升级至 5.7.17
    • aliyun-java-sdk-core 版本升级至 4.5.30
    • dysmsapi20170525 版本升级至 2.0.8
    • qiniu-java-sdk 版本升级至 7.9.0

v2.6.2.0

  1. 重构平台基础核心代码,调整部分核心代码归属模块,让各个核心代码模块逻辑更加清晰、职责更加内聚。
  2. 调整核心代码模块依赖关系,降低模块间的耦合程度,减少部分核心模块被过度依赖的情况。
  3. 升级大量基础核心依赖包版本
    • Fastjson 版本升级至 1.2.78
    • JetCache 版本升级至 2.6.1
    • Redisson 版本升级至 3.16.6
    • SpringDoc 版本升级至 1.5.13
    • Minio 版本升级至 8.3.4
    • Okhttps 版本升级至 3.4.1
  4. 前端工程升级使用依赖包版本,重新编译组件库。

v2.6.1.0

  • 重大更新

    1. Spring Boot 版本升级至 2.6.1
    2. Spring Cloud 版本升级至 2021.0.0
    3. 新增 Sentinel 自动降级处理机制。
  • 其它更新

    1. 解决 JetCache 2.6.0 在 Spring Boot 2.6.X 环境下,Bean 循环依赖问题。
    2. 解决 Spring Cloud Alibaba Sentinel 2021.1 在 Spring Boot 2.6.X 环境下,Bean 循环依赖问题。
    3. 解决 Spring Boot 2.6.X 环境下,由于代码方法变更,导致接口自动化扫描抛空错误问题。
    4. 解决 Sentinel 与 Feign 冲突问题。
    5. 解决 Spring Cloud OAuth2 由于无用代码的注入,导致的 Bean 循环依赖问题。
    6. 前端 Vuetify 版本升级至 2.6.1,升级相关依赖包版本,重新编译组件库