Synchronized instance rather than class in MetadataExecutorSubscriber.
Refactor admin buildHandle about register uri.
Spring cloud client auto set port.
Refactor jwt support multi-level tokens.
Remove monitor plugin.
Change logback theme.
remove shenyu-agent.
Bug Fix
Fix init CommonUpstreamUtils NPE.
Make a judgment on the failure of Nacos registration.
Fix NPE when login with non-existent user.
Fix double log.
Fix misspelled token.
Fix retryCount not work bug.
Fix token parse error.
Fix the trouble of big data in Websocket.
Fix NettyHttpClientPlugin did not retry when failed.
Fix CVE-2021-41303.
Fix judgment of the contains condition of all plugins does not work.
Fix http headers lose bug.
Fix Bug The Rewrite Plugin should support {PathVariable} request.
Fix Bug about data sync with Nacos.
Fix Nacos namespace config.
Fix NPE or websocket proxy fails when the context-path plug-in is opened.
Fix http registers the client plug-in port occupancy detection.
2.4.2
New Features
Add Mqtt plugin
Add Shenyu-Agent module support observability
Add opentelemetry plugin on Shenyu-Agent module
Add jaeger plugin on Shenyu-Agent module
Add zipkin plugin on Shenyu-Agent module
Support Shenyu instance register by zookeeper
Support Shenyu response data custom format
Support https for upstream check
Add RpcContextPlugin to transmit header to rpc context
Support cluster model for dubbo plugin
Support Shenyu instance register by ETCD
API Changes
1.Add configuration properties for HTTP synchronization data 2.Remove'/shenyu-client/‘,’/configs/‘,’/plugin'interface from the whitelist interface of Shenyu admin
Enhancement
Optimize global error handler for flexible processing
Optimized the database access in the loop
Optimize result media type and reset response header
Enhancement crossfilter filter the same headers
Optimize shenyu context module data
Optimize dubbo plugin
Optimize admin db operation
Refactor Response and Cryptor plugin
Optimize Admin Resource Permission loader
Add authentication on shenyu admin when register by http
Optimize netty config.
Optimize SQL files for resource,permission
Add ExcludeOperatorJudge for selector and rule
Add docker-compose on Shenyu-dist
Enhance the ability of jwt plugin
Refactor
Remove SpEL and Groovy plugins
Optimization prompt of ExtensionLoader
Add http client strategy property
Refactor shenyu client
Bug Fix
Fix sentinel Plugin-exception number is not effective
Fix HttpClientProperties.javaresponseTimeout can not config in yaml
Fix Connection reset by peer Exception on webclient
Fix register metadata and uri order
Fix Admin when press the Add button
Fix Spi config
Support Dubbo Plugin Single Parameter Primitive Type
Fix using etcd cluster to sync data init failed
Fix Shiro get white list is null bug
Fix zookeeper sync error handling event bug
Fix modify-response-plugin and cryptor-response-plugin are used in combination, and no information is returned
Fix the bug of missing some field in cryptor rule handler using h2
2.4.1
New Features
Support PostgreSQL for admin
Support dynamic loading plugin
Support local modification data mode
Add Websocket plugin
Add CryptorRequest plugin
Add CryptorResponse plugin
Support Grayscale Release for SpringCloud
Support Grayscale Release for Apache Dubbo
Implement the async dubbo invoking for alibaba-dubbo
Support external cross filter config
Support sign plugin custom dynamic sign provider
API Changes
Refactor shenyu config in yaml
Enhancement
Optimze code about dubbo async call
Add loadbalancer common module
Optimize sql init
Refactor Admin PageHelper to query list
Optimize GlobalErrorHandler
Optimize the return value of the‘skip’ method interface of‘ShenyuPlugin’ to boolean
Optimize register rules
Modify dubbo and sofa param resolve service
Refactor sign plugin api
Remove websocket filter
Refactor
Remove lombok dependency
Remove mapstruct dependency
Support JDK8 ~ JDK15
Add missing plugin_handle sql for plugin motan
Bug Fix
Fix JsonSyntaxException in jwt plugin
Fix sql miss for resilience4j plugin handler
Fix disruptor problem of hold event data in consume event
Fix deadlock bug of HealthCheckTask
Fix client retry the connection add log and increase sleep time
Fix the default_group of nacos
Fix maven ignore and docker entrypoint
Fix admin Return password question
Fix LDAP query built from user-controlled source
Fix the IP address retrieval error
Fix Gson toJson is null
Fix the index out of range bug for context path.
Fix monitor init metrics label bug
Fix GlobalErrorHandler error object to map bug by JacksonUtils.toMap
Fix modify response plugin order bug
Fix the bug of register
Fix sofa plugin register metadata and parameters resolve
Fix motan ,dubbo, sofa plugin metadata init bug
2.4.0
New Features
Support reading init_script file which is not under resource/directory
Display the plugin menus in categories
Admin add execute Multi-path sql script
IpUtils add a parameter to select the network ip
Add parameter-mapping plugin
Support Consul as shenyu-register-center
Support Etcd as shenyu-sync-data-center
Add sentinel customized fallbackhandler
Add response plugin
Add JWT plugin
Add Request plugin
Add Motan plugin
Add Logging plugin
Add Modify-response plugin
Add Oauth2 plugin
Add Menu Resource Permissions
Add Data Permissions
API Changes
Change the project name from Soul to ShenYu
Change the group id from org.dromara to org.apache.shenyu
Enhancement
H2 support insert ingore into in Mysql model
Improvements For the Apache Dubbo plugin
Optimization of GRPC plugin
Refactor
Refactor code about “async invoke” is not supported in Dubbo lower than 2.7.3
Replace the term Operator by Predicate
Refine judge conditions operator
Refactor PredicateJudge module using SPI
Refactor code about client register
Bug Fix
Fix the JwtUtil.getUserId method bug
Fix the shenyu-spring-boot-starter bug
The encoded urlPath will be re-encoded in WebClientPlugin
Replace The Risky Cryptographic Algorithm “AES/ECB/NoPadding”
ReadTimeoutHandler on a channel which in a PooledConnectionProvider would cause an unexpected ReadTimeoutException
Got ClassNotFoundException while start my Gateway in 2.4.8 spring boot
2.3.0(2021-04-02)
soul-admin
Add ‘open’ field to allow app path authentication or not in sign plugin. #1168
Optimize divide plugin to use common plugin template in soul-dashboard. #1163
Add default values and rule checks in plugin handler. #1112
Add resource management to allow user to add plugin, adjust menu and button resource and so on in soul-dashboard and soul-admin. #1034
Add menu and data permission in soul-admin. #917
Add H2 store for soul-admin #918
soul-bootstrap
Add tars plugin #863
Add sentinel plugin #331
Add sofa plugin #384
Add Resilience4j plugin for soul-plugin. #434
Add Context path mapping plugin for soul-plugin. #894