0.0.2
0.0.2 (2021-07-16)
Bug Fixes
- $auth-center: read nested JSON object as Java
object (af101b2) - $MyBatis: correct interceptors
order (3647951) - $POM: add test
dependency (401587d)
Build System
- $OpenJDK: update Adopt OpenJDK version to
x86_64-alpine-jre-11.0.10_9 (84d737a) - $Redis: update redis.conf for redis
6.0.10 (e522c12)
Code Refactoring
- $Docker: abstract Docker environment variables and common
constants (8cc6a36) - $muscle-and-fitness-server: enhance validation - @notempty ->
@notblank (b4150f1) - $service-registry: remove
moduleservice-registry
(61bc7cb) - $Starter: rename
spring-boot
tospring-cloud
(2529e45)
Features
- $api-gateway: set HTTP header "
X-Username" (d83fe38) - $api-gateway: support request rate
limit (c0dc896) - $APIGateway: add global exception
handler (7bb6ffa) - $AuthCenter: access other service by
RestTemplate (f8df08c) - $AuthCenter: add API for getting service
info (c0b00f3) - $AuthCenter: add logout
API (66c6717) - $AuthCenter: enable Redis
cache (6c14c7b) - $AuthCenter: expose login
API (fe3f211) - $AuthCenter: get services
info (97aadce) - $AuthCenter: support admin
authorization (6e87a2e) - $Authorization: enhance authorization flow - check HTTP
method (01a50de) - $Consul: enable Consul config
center (9887360) - $Consul: support Consul; abandon Netflix
Eureka (abc1cf8) - $ELK: integrate ELK
stack (a42e87a) - $Excel: add abstract excel import
class (901edbd) - $gateway: complete authentication
flow (b0a91e0) - $gateway: integrate Spring
Security (f092c6b) - $gateway: make Swagger and Spring Security work
together (c2c4721) - $Gateway: add reactive openfeign
support (f0b7567) - $Gateway: add reactive Redis
support (2307c71) - $Gateway: implement non-block
authorization (b94944d) - $Gateway: support ignored URL for WebFlux
security (efb83ad) - $Jackson: add DateTime
serializer (69548c4) - $Java: handle LocalDateTime, LocalDate and
LocalTime (778e152) - $Minio: upload resource to
Minio (3dc2dc0) - $MinIO: integrate
MinIO (4db17c0) - $Pagination: abstract page response
bean (28928b8) - $Quartz: add greeting Quartz
job (7993f40) - $Quartz: integrate
spring-boot-starter-quartz (5a6d71d) - $RabbitMQ: add RabbitMQ Docker
container (414880d) - $Starter: abstract startup
analysis (0802aa2) - $Starter: add
HttpApiScanHelper.java (629e066) - $Starter: integrate
RabbitMQ (9022f77) - $Starter: intercept SQL
exceptions (9f5a16f) - $Starter: provide exposing HTTP
resources (4f2ebdc) - $Starter: support generating recursive
tree (624e5ab) - $static-resource-center: get resource from
Minio (da01f3c) - $static-resource-center: support partial
response (7ddf6a9) - $STOMP: support STOMP over
WebSocket (be76707) - $Validation: support Date and LocalDateTime range
validation (f9898be) - $Validation: support date time range value
validation (96c8b83) - $Validation: support enum value
validation (0951f97)
Performance Improvements
- $api-gateway: refine exception
handling (b5e1340) - $api-gateway: refine slf4j
Logger (af590f5) - $ApiGateway: capture
FeignException (c9cdee4) - $auth-center: cache role info by user
id (e9d935b) - $auth-center: cache user info by login
token (2bc9115) - $auth-center: reduce injected
dependencies (a12f130) - $DataSource: reduce instances of data
source (581ac97) - $Docker: update container
dependencies (aca40f6) - $ELK: disable
ELK (ecdb3e2) - $Excel: make
maximumRowCount
configurable (8865ead) - $Java: migrate java.util.Date to
java.time.LocalDateTime (a354070) - $Knife4j: roll back to
2.0.8 (3c0ce61) - $maf-mis: merge micro services as '
maf-mis' (7d7284c) - $MySQL: Docker supports MySQL cluster based on binary
log (bab526a) - $MySQL: MySQL connection
retry (b076feb) - $MySQL: reduce unnecessary replicate
db (3976af1) - $MySQL: simplify MySQL configuration for
docker-compose (7f4a017) - $MySQL: support auto start
replication (a52619c) - $POM: reduce useless
dependencies (447e072) - $POM: update
dependencies (9ef9708) - $POM: update Spring Boot Admin version to
2.4.3 (ad04895) - $POM: update Spring Cloud version to
2020.0.2 (bc2241f) - $Spring: refine CORS
configuration (cbb9c7c) - $spring-boot-admin: exclude unnecessary
dependencies (305e12b) - $SpringCloud: update version to
2020.0.3 (010e2c3) - $starter: define the order of controller
advice (34706c9) - $starter: improve Access Specifier Manipulation
issue (435ea3b) - $Starter: dynamic MinIO
client (7d030a3) - $Starter: dynamic SFTP
client (4c37cc4) - $Starter: enable Okhttp for
OpenFeign (0aec942) - $Starter: support switching dynamic data source on runtime based on
SQL (7dbcfc9) - $Swagger: correct Swagger
switch (7804da0) - $WebSocket: use RabbitMQ STOMP as message
broker (c666ba7) - update
dependencies (6f55581) - $api-gateway: add IP key resolver for request rate
limiter (ac7aabc) - $api-gateway: pass rate limiter configuration
dynamically (0bd97b0) - $api-gateway: set Swagger ignored URL on
Consul (699dd0a) - $ApiGateway: enhance global exception
handler (0d3f265) - $ApiGateway: handle service not available
exception (235bcb8) - $ApiGateway: remove JJWT
dependencies (50c0597) - $ApiGateway: rename module
Gateway
toAPI Gateway
(c367ca3) - $ApiGateway: shorten module
name (9d7e759) - $ApiGateway: use lombok val
annotation (aec0662) - $APIGateway: handle
WebClientResponseException (8c4cd5a) - $APIGateway: refine remote API
calling (4f5a20d) - $APIGateway: simplify global exception
error (ff82751) - $auth-center: add PermissionTypeList for remote
API (6928368) - $auth-center: configure ignored
service (78c069b) - $auth-center: refine API
parameter (b5b5346) - $AuthCenter: customize
RedisTemplate (22c9cfb) - $AuthCenter: refine null check for getting service
info (fc363fe) - $CMD: check Java major version before running
service (0d06475) - $Common: remove useless
dependencies (1df12c5) - $Consul: deregister service when
unavailable (d36aac3) - $Database: abstract MyBatis Plus configuration; delete Druid
configuration (e88b4d6) - $Database: update data source
configuration (d343369) - $Docker: restrict container
dependencies (67c968d) - $Docker: simplify docker compose by using environment
variables (3216a95) - $Docker: specify Docker container
tags (e416c2c) - $Docker: support Docker health
check (7a2ce2b) - $Docker: update volume mapping for
openzipkin/zipkin-cassandra (abb784f) - $Druid: migrate to druid-spring-boot-starter
1.2.4 (0a7ca5e) - $ELK: enable elasticsearch
security (bbe59a9) - $Excel: make variable declare as var and
val (e07452b) - $Excel: translate into
English (60f8cd1) - $Exception: refine global exception
handling (dae962b) - $Gateway: capture
SecurityException (77d6d34) - $Gateway: dynamic web security
switch (b5f4333) - $Gateway: reduce unnecessary
log (7ba75c3) - $Gateway: refine access
log (281a958) - $Gateway: refine RBAC
process (fed3ea7) - $IO: use buffered IO stream to reduce IO
times (f6c32ee) - $JVM: increase JVM heap memory; dump heap on OOM
error (45c528b) - $Log: enhance web request log
format (a359d07) - $LOGBack: log file contains
HOSTNAME (60b2b73) - $LOGBack: set container
hostname (ac3c130) - $LOGBack: set log file by
${spring.application.name} (ec01c8c) - $muscle-and-fitness-server: define basePackage by groupId; devtools
switch (e8a86b1) - $muscle-and-fitness-server: update
dependencies (e67a840) - $MyBatis: field auto
fill (6497bcc) - $MyBatisPlus: enable logic
delete (e48fafa) - $MyBatisPlus: update
interceptors (9e3ce5c) - $OpenJDK: migrate to
adoptopenjdk/openjdk11 (9b65893) - $ORM: migrate ORM library to
spring-boot-starter (0e66476) - $ORM: migrate Redis library to
spring-boot-starter (7af0ccc) - $ORM: migrate sftp-integration to
spring-boot-starter (c860ffa) - $POI: close workbook when destroying locale
context (ebebd3e) - $POI: update Apache POI version to
5.0.0 (7b60af5) - $POI: update Druid version to
1.2.5 (1c1a033) - $POM: flatten parent
dependencies (e69537a) - $POM: refine dependency
structure (d82c393) - $POM: update cn.hutool:hutool-all:
5.5.7 (e7f2193) - $POM: update Hutool version to
5.5.8 (7288bc2) - $POM: update hutool-all to
5.5.4 (e38a37c) - $POM: update mybatis-plus version to
3.4.2 (1eeefcc)
,
closes /github.com/baomidou/mybatis-plus/blob/3.0/CHANGELOG.md#v342-20210115 - $POM: update Spring Boot version to
2.3.8.RELEASE (bc21a41) - $POM: update Spring Boot version to
2.4.3 (b955e61) - $POM: update Spring Cloud to
Hoxton.SR9 (9ab311b) - $RabbitMQ: add RabbitMQ health check; set container
dependencies (660bf49)
,
closes /devops.stackexchange.com/questions/12092/docker-compose-healthcheck-for-rabbitmq/12200#12200 - $RabbitMQ: make JSON message converter as
default (1b9bb6d) - $ReactiveStarter: abstract access log
filter (d29ba21) - $ReactiveStarter: abstract
beans (8d1f040) - $ReactiveStarter: abstract project
property (aafac56) - $ReactiveStarter: refine
dependencies (f8905bb) - $ReactiveStarter: set HTTP header as
application/json (886124a) - $ReactiveStarter: set the order of access log filter as
-500 (1cb0600) - $Security: enhance authentication
process (c897611) - $Sleuth: add
dependencyspring-cloud-starter-sleuth
(8aba675) - $SpringBoot: enable shutdown
gracefully (6360027) - $SpringBootAdmin: don't check Consul service
health (e5c8a3d) - $SpringCloud: update Spring Cloud version to
2020.0.0 (18f5843) - $SpringCloud: update Spring Cloud version to
2020.0.1 (36ecc33) - $Starter: abstract common controller and
service (3ab8943) - $Starter: abstract
GlobalErrorController.java (e22ca36) - $Starter: abstract project
property (b6996c8) - $Starter: abstract Redis
configuration (9687151) - $Starter: abstract rest template
configuration (07dfbff) - $Starter: abstract SFTP and web security
configuration (3306ec4) - $Starter: abstract Swagger 2
configuration (5ae8a56) - $Starter: abstract swagger
configuration (2d27aef) - $Starter: dynamically init
beanWebRequestLogAspect
(e3176ad) - $Starter: enable Spring Boot async
task (418fc43) - $Starter: enhance message
format (be3cc41) - $Starter: migrate static web resources to
spring-boot-starter (83ff9eb) - $Starter: reduce unnecessary access
log (7e8a816) - $Starter: refine
dependencies (bd1e5b3) - $Starter: refine error
message (753946c) - $Starter: simplify internationalization (
i18n) (b42bc7b) - $Starter: support internationalization (
i18n) (1c8b38b) - $Starter: use lettuce for
Redis (c40c304) - $Swagger: correct Swagger switch
logic (e72e8de) - $Swagger: support service
filter (f07e0de) - $universal-ui: abstract web pages to sub
moduleuniversal-ui
(68a34d3)
Reverts
BREAKING CHANGES
- $starter: improve Access Specifier Manipulation issue
- $IO: improve IO efficiency
- $OpenJDK: update Docker image from adoptopenjdk/openjdk11:x86_64-alpine-jre-11.0.10_9
- $Docker: abstract Docker environment variables and common constants
[skip ci]
- $ELK: aggregate logs from all applications
- $api-gateway: refactor MafConfiguration.java; update configuration key
- $CMD: check Java major version before running service
[skip ci]
[skip ci]
- $Starter: use lettuce for Redis
- $api-gateway: support request rate limit
- $Starter: rename
spring-boot
tospring-cloud
[skip ci]
- $Docker: simplify docker compose by using environment variables
- $Consul: enable Consul config center
- $service-registry: remove module
service-registry
[skip ci]
- $Consul: support Consul; abandon Netflix Eureka
- $SpringCloud: update Spring framework dependencies: Spring Cloud 2020.0.0, Spring Boot 2.4.2
[skip ci]
- $Starter: reduce package size by migrating static web resources
[skip ci]
- $LOGBack: set log file by ${spring.application.name}
[skip ci]
- $LOGBack: log file contains HOSTNAME
[skip ci]
- $Redis: update redis.conf for redis 6.0.10
[skip ci]
- $Authorization: enhanced authorization flow - check HTTP method
- $Starter: rename MAF Spring Boot Starter package name; set bean injection order
- $ApiGateway: abandon custom HttpStatus, use unified Spring Web HttpStatus
- $ApiGateway: remove module
API Portal
; rename moduleGateway
to
API Gateway
- $ReactiveStarter: abstract access log filter
- $Starter: reduce unnecessary access log
- $Gateway: implement non-block authorization
- $muscle-and-fitness-server: define basePackage by groupId; devtools switch