Features
- improve generic service with @DubboService annotation. (#8174)
- metadata report config support xml to config protocol and port. (#8269)
- compatible for curator5. (#8263)
- p2p invoke support wildcard url match. (#8247)
- add Dynamic Configuration Override Support For ServiceDiscovery. (#8300)
- add provider configuration override disable option. (#8314)
- support native image. (#8234)
- support disable shutdown hook. (#8369)
- add Kubernetes Mesh Rule support. (#8350)
- support SSL at netty transport. (#8116)
BugFixs
- fix re-start override dynamic config. (#8190)
- fix delete configurators does not take effect. (#8191)
- fix triple protocol will throw exception when the service is exposed. (#8126)
- fix ConfigCenterConfig.setAddress will override username problem. (#8242)
- fix DefaultFuture.closeChannel will shutdown ExecutorService. (#8189)
- fix TripleClientHandler#writeRequest throwing NPE problem. (#8265)
- fix NPE when parse migration rule error happen. (#8280)
- fix Activated Extensions order. (#8248)
- fix URLAddress#parse method to judge the isPathAddress problem when the address is ipv6. (#8286)
- fix custom parameter in configuration properties does not work. (#8308)
- fix Config id Override when both using API and Spring. (#8321)
- fix service discovery not work on bootstrap & fix address pollution. (#8315)
- fix nacos registry can't received instance change notify. (#8345)
- fix could not resolve placeholder '${dubbo.application}' in xml. (#8368)
- fix service parameter fetch order. (#8385)
- fix error of register dubbo bootstrap application listener manually. (#8410)
- fix mock parameters doesn't work when it contain ':' or '='. (#8414)
- fix delete mesh rule npe. (#8435)
Optimization
- add exception catch for RemovalTask, ensure semaphore release. (#8170)
- check duplicated ReferenceConfig/ServiceConfig by unique service name. (#8198)
- improve the performance for generating random numbers. (#8167)
- if user define interface service discovery, not publish service name mapping info. (#8179)
- use StringBuilder#append(Char) to improve performance. (#8169)
- gRPC Compile class interface order. (#8200)
- improve property placeholder resolving of reference bean. (#8187)
- use CompletableFuture#get(long, TimeUnit) to take place of CompletableFuture#get() in MergeableClusterInvoker. (#8223)
- service delay export config ignore metadata service. (#8243)
- improve dubbo config beans and bootstrap initialization. (#8168)
- improve duplicated config checking and add tests for reference annotation. (#8253)
- replace with ring for registry notification & suppress property checker. (#8282)
- improve dynamic configuration initialization. (#8294)
- lock-free ConfigManager and improve config checking. (#8289)
- modify metadata equals and instance listener. (#8275)
- improve async export / refer. (#8186)
- use TreeSet to ensure ServiceNames order when subscribe. (#8326)
- make first tenth calls notify not delay RegistryNotifier. (#8337)
- refactor compiler to generate new format stubs. (#8343)
- change mesh rule group to config default value. (#8330)
- compatible with nacos grouping via group. (#8320)
- remove runtime params in ServiceInfo . (#8376)
- throw RpcException when NacosException occurred. (#8382)
- configcenter ban accessLogKey and FileRouterFactory key. (#8388)
- improve config bean initialization compatible with spring 3.x/4.1.x. (#8407)
- dubbo bootstrap start re-entry, export/refer new services. (#8409)
- org.apache.dubbo.* add serialization whitelist. (#8423)
- ensure generated config id is unique, checking existed config. (#8322)
- compatible with filed change declaration override for Javaassist. (#8434)
- refactor Codec check, default deny. (#8449)
- compatible with adaptive extensions when ApplicationModel is null. (#8454)
Code Improvement
Thanks for these contribution to improve stability of Apache Dubbo.
#8111,#8147,#8164,#8177,#8180,#8161,#8183,#8205,#8215,#8173,#8219,#8228,#8232,#8230.#8236,#8260,#8262,#8252,#8246,#8208,#8278,#8267,#8277,#8291,#8296,#8302,#8175,#8319,#8309,#8336,#8332,#8328,#8355,#8396,#8401,#8395,#8415,#8406,#8411,#8418,#8439,#8404,#8443
Dependency Changes
#8351:
- remove dependency: org.eclipse.collections:eclipse-collections
- remove dependency: com.google.guava:guava
- jetty: 9.4.11.v20180605 -> 9.4.43.v20210629
- apollo client: 1.1.1 -> 1.8.0
- snakeyaml: 1.20 -> 1.29
- tomcat embed: 8.5.31 -> 8.5.69
- nacos client: 2.0.0 -> 2.0.2
- swagger: 1.5.19 -> 1.5.24
#8386, #8452:
- hessian_lite: 3.2.8 -> 3.2.11