2.6.1
#
2.6.1#
New Features- Add dubbo annotation analysis for shenyu ingress controller
- Support plugin lifecycle
- Support shenyu-sdk-client by openFeign
- Adding a Motan plugin and Spring Cloud to shenyu ingress-controller
- Support alert notice
- Shenyu client add discovery register center
- Add shenyu context-path plugin ingress controller
- Add shenyu grpc plugin ingress controller
- Add shenyu sofa ingress controller
- Add nacos, etcd, eureka as discovery service
- Add new plugin: basic-auth
- Add shenyu logging-rabbitmq plugin
- Binding selector by shenyu-discovery
#
API ChangesRefactor shenyu sync data data structure
plugin.list ["plugin.sign", "plugin.dubbo", "plugin.pluginName"]-> plugin.sign-> plugin.dubbo-> plugin.pluginName examples data:selector.key1.list ["selector.key1.value1", "selector.key1.value2", "selector.key1.value3"]-> selector.key1.value1-> selector.key1.value2-> selector.key1.value3 selector.key2.list ["selector.key2.value1", "selector.key2.value2", "selector.key2.value3"]-> selector.key2.value4-> selector.key2.value5-> selector.key2.value6
Support NettyClient as default httpclient
Refactor admin-listener to support admin data sync
Remove brpc supports including brpc plugin, brpc example, brpc integrated test
Remove Apollo dependency to support Java 17(add jar by yourself)
Remove shenyu middleware register client
#
Enhancement- Add test cases for shenyu model event
- Add selector event test cases
- Add motan e2e test cases
- Support the motan protocol
- Add Grpc e2e test cases
- Bump apache-rat-plugin to 0.15
- Support String isBlank in match condition
- Clickhouse support ttl field
- Support HttpUtils log level
- Add unit test for Ingress Reconciler
- Support checksum when packing distribution
- Implement zero-copy in TCP plugin
- shenyu-client-springmvc supports default appName and contextPath
- Add sdk-feign example and integrated test case
- ElasticSearch logging support for custom index
- Enhance grpc plugin to support shenyu loadbalancer
- Support http2 upstream server
- Enhance Dubbo plugin support shenyu loadbalancer
- Add ingress-controller integration springCloud test case
- Add WebSocket plugin proxy ping configuration
- Add ingress-controller integration websocket test
- RewritePlugin supports percentage
- Admin use discovery config init discovery-service
- Divide plugin adapt shenyu discovery
- Alert report support config admin cluster multi servers
- WebSocket plugin adapt shenyu discovery
- Register service instance into discovery
- Admin adapter discovery local mode
- Add test case for ShenYu sdk core
- Add unit test for shenyu-discovery
- Add opengauss e2e test case
- Add upload plugin jar size limit
- Add unit test for shenyu-client-spring-websocket
- Upgrade Shiro version to a secure version(1.18.0)
- Update license and upgrade springboot(2.7.17)
- Send alarm message when gateway global error happen
- Add EurekaDiscoveryService unit test
#
Refactor- Refactor 2.6.1 version(pom.xml)
- Simplify Map operations by computeIfAbsent
- Refactor polaris test cases
- Migrate Maven Wrapper from io.takari to official release
- Use compiled Pattern in WebClientMessageWriter
- Refactor HttpUtils request method
- Update github action version
- Refactor Sync data center abstract template method
- Update MenuProject, MenuModule, MenuDocItem to VO
- Unified dubbo version
- Refactor Httpclient's package
- Refactor github ci action cache
- Refactor motan pojo as rpc method parameter
- Upgrade Kafka client version to 3.4.0
- Migrate Admin swagger from springfox to springdoc
- Upgrade Dubbo version to 3.2.5 and refactor some methods
- Refactor AbstractShenyuSdkClient getOrDefault method
- Refactor http client properties
- Refactor webcliet plugin implement
- Upgrade com.google.guava:guava to 32.0.0-jre
- support k8s as e2e test case enviroment
- Refactor @Restapi as rest api request mapping
- String concatenation recommended using StringBuilder
- Set the netty allocator to unpooled
- Refactor startup banner
- Removing duplicate code and extracting the same code for common use
- Standardized null detection coding
- Refactor log plugin selector handler
- Refactor plugin classloader
- Refactor Logging plugin to support sampleRate at plugin level
- Refactor context-path register to avoid repeat context-path(use select for update)
#
Bug Fix- Avoid the permanent overhead of creating TimeoutException
- Fix example module main class path
- Fix plugin page sorting bug
- Update Makefile SNAPSHOT version
- Fix typo in RELEASE-NOTES.md
- Fix the error package name of shenyu-example
- Fix password rules, add special characters '#' and '.'
- Fix health check for zookeeper:3.8.0 in e2e
- Fix unstable ci check
- Add e2e WaitForHelper exception log
- Fix springcloud plugin can't get scheme
- Fix javadoc build errors
- Fix the wrong request type in HttpUtils
- Fix userId can not update success when update auth
- Fix thread leak in TCP plugin
- Format "Quick start" part in shenyu-integrated-test/README
- Fix SQL script error
- Fix uri plugin path error and change path to rawpath
- Fix WebSocket plugin to support rewrite plugin
- Fix indexName not working for es-logging
- Fix the error of context-path plugin
- Fix shenyu-admin cpu surge
- Fix alert localDateTime format problem
- shenyu-client persist ApiDoc error retry
- Fix applicationContextAware initialization too late
- Fix duplicate response header
- Set the maximum time to wait for the k8s cluster to start up
- Fix type for status field for clickhouse log plugin
- Fix response plugin memory leak
- Fix dataType contrast error
- Fix http data sync error
- Fix spelling error
- Fix shenyu-dubbo register status
- Fix buildDiscoveryUpstreamPath causing multiple
/
- Fix bug when registering with Eureka through EurekaInstanceRegisterRepository#persistInstance
- Fix AbstractLogPluginDataHandler hashcode error
- Fix Ratelimit plugin key error in redis cluster mode
- Fix multi shenyu client register repeat context path
- Fix shenyu can't load ext plugin after close the plugin
- Fix upload plugin jar bug in shenyu admin
- Fix plugin can not load resource path file
- Fix Admin script to show dictionary code
- Fix authorization conflict in sign plugin
- Fix sign plugin context path match error