Skip to content

Releases: opensolon/solon

Solon v3.1.0

04 Mar 16:47
Compare
Choose a tag to compare

具体更新

  • 新增 solon-ai 插件
  • 新增 solon-ai-repo-milvus 插件
  • 新增 solon-ai-repo-redis 插件
  • 新增 solon-ai-load-markdown 插件
  • 新增 solon-ai-load-pdf 插件
  • 新增 solon-ai-load-html 插件
  • 新增 solon-configuration-processor 插件
  • 插件 solon-data-sqlutils 二次预览(优化概念结构,增加执行拦截器)
  • 插件 solon-data-rx-sqlutils 二次预览(优化概念结构,增加执行拦截器)
  • 优化 solon 仓库的规范插件命名
  • 优化 solon 小写且带点环境变量的一个边界问题
  • 优化 solon-auth,AuthRuleHandler 的 Filter 实现转到 AuthAdapter 身上,方便用户控制 index
  • 优化 solon-security-validation BeanValidator 的设定方式
  • 优化 solon-boot-smarthttp 虚拟线程、异步、响应式性能
  • 添加 solon BeanWrap:isNullOrGenericFrom 方法
  • 添加 solon AppContext:: getBeanOrDefault 方法
  • 添加 solon subWrapsOfType, subBeansOfType, getBeansOfType, getBeansMapOfType genericType 过滤参数
  • 添加 solon ParameterizedTypeImpl:toString 缓存支持
  • 添加 solon MimeType 类,替代 solon-boot 的 MimeType(后者标为弃用)
  • 添加 solon-flow FlowEngine:load(uri) 方法
  • 添加 solon-flow Chain:parseByText 方法
  • 添加 solon-flow 拦截体系
  • 添加 solon-data-sqlutils SqlQuerier:updateBatchReturnKeys 接口,支持批处理后返回主键
  • 添加 solon-net-httputils HttpUtils:proxy 接口,支持 http 代理
  • 添加 solon-net-httputils HttpUtils:execAsTextStream 文本流读取接口(可用于 dnjson 和 sse-stream)
  • 添加 solon-web-rx 过滤体系
  • 添加 solon-serialization-json* 插件对 ndjson 格式的匹配支持
  • 添加 solon-cloud CloudBreaker 注解对类的支持
  • 移除 solon-data-sqlutils Row,RowList 弃用接口
  • 移除 solon-auth AuthAdapterSupplier 弃用接口
  • 调整 solon-docs-openapi2 合并 solon-docs-openapi2-javadoc?
  • 调整 solon-flow 用 layout 替代 nodes 配置(标为弃用)
  • 调整 solon-rx Completable:doOnXxx 构建策略(可重复添加)
  • 调整 solon-web-rx ActionReturnRxHandler 改为不限时长,支持流式不断输出
  • 修复 solon-web-rx ActionReturnRxHandler 在接收异步发布器时,会结束输出的问题
  • 修复 solon-hotplug 在 win 下无法删除 jar 文件的问题
  • 修复 solon-web 当前端传入 accept=*/* 时,后端 contextType 也会输出 */* 的问题
  • snack3 升为 3.2.127
  • socket.d 升为 2.5.16
  • fastjson2 升为 2.0.55
  • jackson 升为 2.18.2
  • gson 升为 2.12.1
  • fury 升为 0.10.0
  • kryo 升为 5.6.2
  • sa-token 升为 1.40.0
  • redisson 升为 3.45.0
  • lettuce 升为 6.5.4.RELEASE
  • hutool 升为 5.8.36
  • grpc 升为 1.69.1
  • vertx 升为 4.5.13
  • netty 升为 4.1.118.Final
  • liteflow 升为 2.13.0
  • forest 升为 1.6.3
  • wx-java 升为 4.7.2.B
  • smart-http 升为 2.5.4(日志改为 slf4j,方便级别控制和记录)

Solon v3.0.10

04 Mar 16:10
Compare
Choose a tag to compare

兼容说明(从 v2 升级的同学,需详看)

具体更新

  • 优化 solon 小写开头且带点环境变量的一个边界问题
  • 添加 org.noear.solon.core.util.MimeType 类
  • 修复 solon-web 当前端传入 accept=*/* 时,后端 contextType 也会输出 */* 的问题
  • smarthttp 升为 2.5.4

Solon v3.0.9

24 Feb 13:56
Compare
Choose a tag to compare

兼容说明(从 v2 升级的同学,需详看)

具体更新

  • 修复 solon-docs-openapi2 @Body 注解识别失灵的问题
  • 修复 solon-data nested 事务策略单独回滚失效的问题
  • 调整 solon-web-staticfiles 自动弃用带 ../..\ 符号的路径匹配
  • 调整 solon-flow 用 layout 替代 nodes 配置(旧的仍可用,标为弃用)
  • liquor 升为 1.3.11

Solon v3.0.8

13 Feb 14:37
Compare
Choose a tag to compare

兼容说明(从 v2 升级的同学,需详看)

具体更新

  • 添加 solon-web-sse SseRender 渲染器,支持 "text/event-stream" 的任意类型处理
  • 添加 solon-flow FlowEngine:chains 方法
  • 添加 solon-flow ChainContext:run(script) 接口(支持在脚本中运行动态脚本)
  • 优化 solon-flow 简化模式可以没有 start,end 节点,自动识别出开始节点
  • 优化 solon ActionReturnHandler 增加排序支持
  • 优化 solon-web-sse SseEmitter 添加事件缓存支持(初始化前就可发事件,之前不能)
  • 优化 solon-web-rx 结构设计,方便支持其它响应式框架(比如 mutiny)
  • 优化 solon-web-rx 可支持所有 reactivestreams 实现框架
  • 优化 solon beanExtractOrProxy 内部改为先代理再提取,解决提取时对象未代理
  • 调整 solon-web-rx 调整 Flux collectList 策略为由 mimeType 是否为流决定
  • 修复 solon 集合bean注入时,可能产生两次执行的问题
  • 修复 solon-logging-logback 的 "solon.logging.appender.file.maxHistory" 配置无效的问题
  • 修复 solon RoutingTableDefault 路由可能出现变量在前,常量在后的问题
  • 修复 solon-docs-openapi2 类型如果为自定义类型无法正确识别到 OpenApi Json.
  • 修复 solon-serialization-jackson TimeDeserializer 对空串解析异常的问题
  • snack3 升为 3.2.126
  • liquor 1.3.10
  • smart-http 升为 2.5.2 修复 sse 流不能自动结束的问题
  • jetty 升为 9.4.57.v20241219

Solon v3.0.7(农历新年版)

25 Jan 00:44
Compare
Choose a tag to compare

兼容说明(从 v2 升级的同学,需详看)

具体更新

  • 添加 solon BindProps 绑定属性注解,用于简化集合属性绑定及配置元信息APT生成
  • 添加 solon-flow Chain:meta 配置
  • 添加 solon-flow FlowEngine:unload 接口
  • 添加 solon-flow execute when 属性,方便做规则引擎应用
  • 添加 solon-cloud Cloud:Event 模型添加 meta(需要适配插件支持)
  • 添加 solon AppContext:beanPublish 用于替换 wrapPublish(旧名标为弃用)
  • 调整 solon SolonApp:classLoader() 返回类型为 AppClassLoader 方便 e-spi 开发
  • 调整 solon-flow start、end 节点不再支持 task 配置,只允许 execute 节点带任务(职责清晰些)
  • 调整 solon-flow execute 节点任务为空时,也触发驱动器的任务处理事件(可适用审批型场景)
  • 调整 solon-flow NodeType 缺省解析改为 execute(之前为 start)
  • 调整 Props::loadAddIfAbsent(String name) 为 loadAddIfAbsent(String uri),保持与 loadAdd(uri) 相同逻辑
  • 修复 solon-proxy 当 ASM 的代理方法超过 128 个时会超界的问题
  • 修复 solon-net-httputils 在空返回时 OkHttpResponseImpl:contentEncoding 会 nep 的问题
  • snack3 升为 3.2.125

Solon v3.0.6

13 Jan 13:18
Compare
Choose a tag to compare

兼容说明(从 v2 升级的同学,需详看)

具体更新

  • 新增 solon-flow 插件
  • 添加 solon ScanUtil 对本地文件目录的扫描支持
  • 调整 solon-proxy ProxyUtil 增强工具实用性
  • 调整 solon Props:loadAdd(name) 改为 Props:loadAdd(uri),支持表达式
  • 调整 solon solon.config.loadsolon.config.addProps:loadAdd(uri) 统一规范格式与处理逻辑(同时支持内部与外部)
  • 优化 solon 注入失败时的日志定位(支持类级定位)
  • 优化 IoUtil.transferTo 添加 out.flush 自动处理
  • 优化 solon bean 集合注入处理
  • 优化 solon-data ConnectionWrapper 添加 getNetworkTimeout 异常过滤(有些驱动不支持此接口)
  • 优化 solon-mvc Action 返回为 void 的情况,当二次加工后仍为 null 时,不作渲染处理
  • 优化 solon-cloud-gateway 路由排序,增加路径深度优先处理
  • 优化 solon-cloud-gateway Path 断言,增加多路径支持
  • 优化 mybatis-solon-plugin 用 MybatisSessionTemplate 替换 MybatisMapperInterceptor
  • 优化 mybatis-solon-plugin SolonManagedTransaction getTimeout 添加异常过滤(有些驱动不支持此接口)
  • 修复 solon 启动时使用接口排除插件无效的问题
  • snack3 升为 3.2.124
  • fastjson2 升为 2.0.54
  • snakeyaml 升为 2.3
  • mybatis 升为 3.5.17
  • mybatis-plus 升为 3.5.9
  • mybatis-flex 升为 1.10.5
  • sqltoy 升为 5.6.37.jre8
  • guava 升为 33.4.0-jre
  • hutool 升为 5.8.35
  • smarthttp 升为 2.5.1,修复 ws idle 超时问题
  • freemarker 升为 2.3.34
  • thymeleaf 升为 3.1.3.RELEASE
  • beetl 升为 3.19.0.RELEASE
  • logback 升为 1.3.15
  • junit5 升为 5.11.4
  • solonx 升为 1.1.3

Solon v3.0.5

24 Dec 03:36
Compare
Choose a tag to compare

兼容说明(从 v2 升级的同学,需详看)

具体更新

  • 新增 solon-data-rx-sqlutils 插件(基于 r2dbc 构建)
    • 可配合 solon-web-rx 或者 solon-cloud-gateway 使用
  • 添加 solon ClassUtil.scanClasses 方法
  • 添加 solon 非单例类使用生命周期时 warn 日志提醒
  • 添加 solon-cloud-gateway ExContext:toContext 方法,可用于支持经典接口接入(比如,sa-token 签权)
  • 添加 solon ContextHolder 替代 ContextUtil ,后者标为弃用
  • 添加 solon Context::isHeadersSent 方法,用于响应式转经典式后识别数据发送情况
  • 添加 solon SolonApp::isMain 方法,用于在单元测试时识别是否可同步到 System 属性集
  • 优化 solon ClassUtils.newInstance 异常类名显示
  • 优化 solon InjectGather:isMethod 条件(仅方法,之前构造也算),让@Bean方法的检测先于组件的构造器
  • 优化 solon-mvc Action 返回为 void,不作渲染处理
  • 优化 solon-data DsUtils 构建时支持 "@type" 属性申明(统一未来的配置类型申明风格)
  • 优化 solon-data DataSources 的配置获取时机
  • 优化 solon-data-sqlutils SqlUtilsFactory 接口设计
  • 优化 solon-scheduling Async 异常提示
  • 优化 solon-scheduling Retry 拦截优先级到最里层
  • 优化 solon-scheduling-simple 调用异常提示
  • 修复 solon-mvc 以实体接收时 UploadedFile[] 字段不能注入的问题
  • 修复 solon-boot-smarthttp 会把默认时区设为 GMT 的问题
  • snakc3 升为 3.2.122
  • redisx 升为 1.6.9
  • socketd 升为 2.5.14
  • folkmq 升为 1.7.10
  • redisson 升为 3.39.0
  • smarthttp 升为 2.5
  • mybatis-flex 升为 1.10.3
  • sqltoy 升为 5.6.34.jre8
  • slf4j 升为 2.0.16
  • log4j 升为 2.24.3
  • jansi 升为 2.4.1
  • fury 升为 0.9.0

Solon v3.0.4.1

11 Dec 15:19
Compare
Choose a tag to compare

兼容说明(从 v2 升级的同学,需详看)

具体更新

  • 添加 solon Router:matchMainAndStatus 接口,并将 attr 处理移到外部
  • 添加 solon Props:addAll 方法
  • 添加 solon-security-validation 值类型支持检测,通过检测异常替代之前的类型校验失败
  • 优化 solon ServerEndpoint 注解支持属性模板
  • 优化 solon BeanWrap 增加重复代理的检测,避免特殊情况出现重复代理
  • 优化 solon RunUtils 线程池支持重复关闭与恢复,并与 SolonApp 停止事件绑定
  • 修复 solon.boot.smarthttp 在某些环境下会出 arraycopy 异常的问题
  • smarthttp 升为 2.4

Solon v3.0.4

04 Dec 08:57
Compare
Choose a tag to compare

兼容说明(从 v2 升级的同学,需详看)

具体更新

  • 新增 nami-coder-abc 插件
  • 新增 solon-serialization-abc 插件
  • 新增 mybatis-solon 插件
  • 添加 solon SolonApp:pluginExclude 方法,排除插件加载
  • 添加 solon ResourceUtil.findResource(uri,defAsFile) 方法
  • 添加 solon HandlerSlots.add(expr,method,index,handler) 方法,支持路由优先级排序
  • 添加 solon Context::sessionState(create) 方法
  • 添加 solon SessionState.creationTime, lastAccessTime 方法
  • 添加 solon-data-sqlutils SqlUtils:ofName(dsName) 方法
  • 添加 solon-net-httputils HttpRespose.cookie 解析处理
  • 添加 solon-cloud-gateway CloudRouteRegister:routeRemove 方法
  • 添加 nami Encoder:bodyRequired() 方法,支持必须 body 请求的场景
  • 优化 solon @Produces@Consumes 改为可继承,方便通过基类
  • 优化 solon @Bean initMethodName,destroyMethodName 改为自有或公有方法(之前只能自有)
  • 优化 solon 外部配置加载处理,没有时,尝试在内部找资源文件
  • 优化 solon Props.bindTo 性能
  • 优化 solon SessionState:sessionId 的保持处理(从 attr 转到 cookieMap;减少一道)
  • 优化 solon 带'.'的环境变量自动加载到应用属性里(之前只加载 'solon.')
  • 优化 solon AppContext 支持对 app 为 null 的过滤处理,强化无 app 的测试场景
  • 优化 solon-boot-websocket 对 "//" resourceDescriptor 的兼容性
  • 优化 solon-data-sqlutils 接口设计,优化极限性能
  • 优化 solon-cloud-gateway 改为流响应模式,节省内存驻留、并支持 sse 代理
  • 优化 solon 静态字段注入,取消有默认值则不注入的限制条件
  • 优化 kafka-solon-cloud-plugin 配置处理
  • 修复 solon-docs-openapi2 部分泛型响应体无法识别的问题
  • snack3 升为 3.2.121
  • wood 升为 1.3.15
  • redisx 升为 1.6.8
  • lombok 升为 1.18.36
  • smart-http 升为 2.3
  • vertx 升为 4.5.11
  • netty 升为 4.1.115.Final

Solon v3.0.3

11 Nov 00:21
Compare
Choose a tag to compare

兼容说明(从 v2 升级的同学,需详看)

具体更新

  • 新增 nami-coder-kryo 插件
  • 新增 solon-serialization-kryo 插件
  • 添加 solon Condition:onProperty 多条件支持
  • 添加 solon-net-stomp 简单事务支持,并添加统一凭据答复
  • 添加 solon-net-httputils 对 data + get 请求的支持
  • 添加 solon @Controller@Remoting “非 Mapping” 函数支持 “拦截注解”
  • 添加 solon @bean 函数,非 public 的警告日志
  • 添加 solon AppContext:beanInterceptorHas 检测方法
  • 添加 solon AppContext:subWrapsOfType(baseType, callback, index) 方法
  • 添加 solon ClassUtil::findPublicMethods 缓存效果
  • 添加 solon-net-httputils 工厂扩展方式
  • 添加 solon-data-sqlutils 工厂扩展方式
  • 添加 solon 路由器二级索引排序支持
  • 添加 solon SimpleSolonApp 类,方便局部测试用
  • 修复 solon-docs-openapi2 分布式文档,地址转发出错的问题
  • 修复 solon-config-plus 配置注入与 HikariCP 6.0 的兼容问题
  • 修复 solon GenericUtil 在泛型变量名在传递过程中改名后,无法还原的问题。(不过,改名会有潜在问题)
  • 优化 solon AppContext.beanRegister name 注册时,增加泛型绑定。以简化泛型集合注入的条件
  • 优化 nami 简化编解码适配处理
  • 优化 nami 的 get 识别处理
  • 优化 nami http 请求,不再强制编码。仅当有 @NamiBody 注解,或指定编码器才编码(可兼容更多的后端框架)
  • 优化 solon BeanWrap.Proxy 接口简化
  • 优化 solon BeanWrap:nameSet, indexSet, tagSet, typedSet 改为 public,并由 isDoned() 控制是否可修改
  • 优化 solon-view 渲染器的 app.shared 绑定,移到插件 start 时处理。避免热插拨时带入了不同 classloader 的类
  • freemarker 升为 2.3.33
  • velocity 升为 2.4.1
  • redisson 升为 3.37.0
  • snack3 升为 3.2.120
  • liquor 升为 1.3.7
  • undertow 升为 2.2.37.Final
  • jetty 升为 9.4.56.v20240826
  • java-websocket 升为 1.5.7
  • java-websocket-ns 升为 1.2
  • jackson 升为 2.18.1
  • asm 升为 9.7.1
  • smart-socket 升为 1.5.54
  • smart-http 升为 2.0