Axelix 1.0.0 - General Availability 🎉
Today we're announcing the General Availability of Axelix 1.0.0 - the first stable, production-ready release!
After two public milestones (1.0.0-M1, 1.0.0-M2) and a lot of feedback from early adopters, Axelix is now ready for production use.
What GA means
1.0.0 is our first stable release. From this point on, we follow semantic versioning, and upgrades between versions are verified to be safe. All official artifacts, the Axelix Spring Boot Starters, the Gradle plugin, and the Maven plugin - are now published to Maven Central 📦
Axelix Master is also available as a Docker image on GitHub Container Registry 🐳:
docker pull ghcr.io/axelixlabs/axelix:1.0.0
🌎 Website https://axelix.io/
📄 Docs https://axelix.io/docs/product/introduction
✍️ Blog https://axelix.io/blog
📧 Email hello@axelix.io
Thank you to all contributors
This release would not have been possible without everyone who designed, implemented, reviewed, tested, documented, and discussed Axelix along the way.
Thank you to all contributors who helped us go from the first public milestone to a stable 1.0.0 release. Your work and feedback shaped this release.
We're excited to keep building Axelix together with the community 🚀
What's Changed
- GH-1103 Return empty body when no scheduled tasks and 400 on unknown trigger by @sergeycherkasovv in #1196
- GH-1202 Remove Logger Converters by @NikitaKirilloff in #1209
- GH-1050 Remove the clearing stats api for the transactional data by @sergeycherkasovv in #1212
- GH-1063 Added tests for SelfRegistrationAutoConfiguration by @sergeycherkasovv in #1199
- GH-1210 Fixed bug related cookies parsing by @AshotSargsyan1 in #1211
- GH-1121 Develop a policy for accessing secrets in the PRs from external contributors by @NikitaKirilloff in #1184
- [SECURITY] Fix code scanning alerts for OpenSSL image CVEs by @mipo256 in #1220
- GH-1156 Added a confirmation modal for destructive actions by @AshotSargsyan1 in #1214
- GH-935: Resolve Spring Cloud release train version by @CoolXaleX in #1087
- GH-1139 Fix flaky transaction monitoring timestamp nesting invariant by @sergeycherkasovv in #1226
- test(sbs3): share one Spring context across beans integration tests by @chrshnv in #1227
- test(sbs3): share one Spring context across env integration tests by @chrshnv in #1228
- test(sbs3): share one Spring context across transaction integration tests by @chrshnv in #1231
- test(sbs3): share one Spring context across configprops integration tests by @chrshnv in #1233
- test(sbs3): share one Spring context across master integration tests by @chrshnv in #1230
- GH-1216: Add axelix-gradle-plugin module skeleton (1/4) by @chrshnv in #1235
- GH-1247 Created a sidebar for the new dashboard design by @AshotSargsyan1 in #1249
- GH-1223 Detect in memory pagination performed by Hibernate, for Spring boot 2, 3. by @NikitaKirilloff in #1244
- test(sbs3): share one Spring context across details integration tests by @chrshnv in #1257
- Made Lazy class thread-safe. by @avdotius in #1262
- test(sbs3): run AxelixConfigurationPropertiesEndpointTest in shared context by @chrshnv in #1256
- Centralize beans test configurations in the shared parent by @chrshnv in #1263
- Share the beans cached context with the endpoint test by @chrshnv in #1264
- GH-1267 Added
InsightDTO toBasicDiscoveryMetadataby @sergeycherkasovv in #1268 - GH-1206 Implement temporary logging level change logic for Spring Boot 3 by @NikitaKirilloff in #1224
- test(sb3): Run AxelixEnvironmentEndpointTest in the shared env context by @chrshnv in #1273
- GH-1261: Add SemanticVersion value object to common/utils by @chrshnv in #1265
- test(sb3): Share the transaction-monitoring cached context with the endpoint test by @chrshnv in #1272
- GH-1261: Replace VersionTrimmer with SemanticVersion by @chrshnv in #1266
- test(sb3): run AxelixMetadataEndpointTest in shared master context by @chrshnv in #1269
- test(sbs3): run metrics tests in shared context by @chrshnv in #1270
- GH-1281 Added structured starter Insights provider by @sergeycherkasovv in #1283
- GH-1282 Detect OSIV state in Spring Boot starters by @sergeycherkasovv in #1284
- GH-1278 Port temporary logging level change logic to Spring Boot 2 by @sergeycherkasovv in #1285
- GH-1286 The PR size check should not fail the main build by @sergeycherkasovv in #1287
- GH-1250: Add a toggle for in-memory pagination detection. by @reptiloyds in #1288
- Add @ConditionalOnHibernateActive composite annotation. by @sygkanrt30 in #1289
- GH-1004: Super admin bcrypt support by @reptiloyds in #1297
- GH-1127: Adjusted language-specific docs location by @mipo256 in #1302
- GH-1292: Add instance name postfix generation by @reptiloyds in #1306
- Implement Log4j2 support for Spring Boot 3 starter. by @sygkanrt30 in #1294
- GH-1312 Integrate core build & deploy logic for Spring Petclinic (SB2) playground by @NikitaKirilloff in #1313
- GH-1316 Integrate core build & deploy logic for Feature Service (SB3) playground by @NikitaKirilloff in #1317
- Implement Log4j2 support for Spring Boot 2 starter. by @sygkanrt30 in #1311
- test(sbs3): scaffold TestContextArchitectureTest with restricted annotations for test classes by @chrshnv in #1304
- GH-1325 Disallow overriding beans in
AxelixLoggersEndpointAutoConfigurationby @sergeycherkasovv in #1326 - GH-1258 Added support for multiple instances for a single logger when updating levels by @sergeycherkasovv in #1259
- Reafactor: coderabbit prompt for 'duplicate' by @mipo256 in #1335
- GH-1333 Disallow overriding beans in
AxelixGcEndpointAutoConfigurationandScheduledTaskManagementAutoConfigurationby @sergeycherkasovv in #1334 - GH-1320 Integrate core build & deploy logic for all playground by @NikitaKirilloff in #1324
- (sbs3) Support ignoring architecture tests with @IgnoreArchitectureTest annotation by @chrshnv in #1331
- GH-1344 Disallow overriding beans in JwtAuthAutoConfiguration by @sergeycherkasovv in #1345
- GH-1337 Disallow overriding beans in
ThreadDumpManagementEndpoint,AxelixFeignEndpointandEndpointsConfigurationPropertiesAutoConfiguratioby @sergeycherkasovv in #1338 - GH-1356 Disallow overriding beans in
GarbageCollectionAutoConfigurationby @sergeycherkasovv in #1357 - GH-1352 Disallow overriding beans in
AxelixCachesEndpointAutoConfigurationby @sergeycherkasovv in #1353 - GH-1350 Disallow overriding AutoConfiguration beans in
JwtAuth,AxelixConfigurationsProperties, andAxelixEnvironmentEndpointin spring-boot-2 module by @sergeycherkasovv in #1351 - GH-1359 Enable
GC Logging,AppCDS,AOTCacheandCompactObjectHeadersin playgrounds by @sergeycherkasovv in #1360 - GH-1274 Created Charts for the Java Dashboard Page by @AshotSargsyan1 in #1275
- GH-1347: Introduced persistence dashboards. Incorporated Java dashboards Master backend data by @AshotSargsyan1 in #1358
- GH-1346 Skip linked issue check for external contributors by @sergeycherkasovv in #1373
- GH-1348 Disallow overriding AutoConfiguration beans in
JwtAuth,AxelixConfigurationsProperties, andAxelixEnvironmentEndpointin spring-boot-3 module by @sergeycherkasovv in #1349 - GH-1321 Disallow overriding beans in
AxelixHeapDumpEndpointAutoConfigurationandAxelixMetricsAutoConfigurationby @sergeycherkasovv in #1322 - Bump the npm-dependencies group in /master/front-end with 22 updates by @dependabot[bot] in #1330
- Bump the github-actions-dependencies group across 1 directory with 5 updates by @dependabot[bot] in #1361
- Bump the npm-dependencies group in /website with 14 updates by @dependabot[bot] in #1329
- Bump the npm-dependencies group in /docs with 2 updates by @dependabot[bot] in #1327
- GH-1298 Implement N+1 and Batch+1 fetch query detection mechanism by @NikitaKirilloff in #1299
- GH-1372: Refactored the dashboard pages by @AshotSargsyan1 in #1375
- GH-1341 Disallow overriding beans in
AxelixMetadataEndpointConfigurationandAxelixDetailsEndpointAutoConfigurationby @sergeycherkasovv in #1342 - GH-1318 Disallow overriding beans in
AxelixBeansEndpointAutoConfigurationandAxelixConditionsEndpointAutoConfigurationby @sergeycherkasovv in #1319 - (sbs3) test: add test for children test classes that shouldn't be annotated with restricted annotations by @chrshnv in #1332
- Add automatic bean renaming processor to avoid name collisions. by @sygkanrt30 in #1362
- (sbs3) regular test classes should not contain methods annotated with @DynamicPropertySource by @chrshnv in #1396
- GH-1216: Contribute the Spring Test Profiler test dependency (2/4) by @chrshnv in #1238
- GH-1216: Generate spring.factories to activate the Spring Test Profiler (3/4) by @chrshnv in #1239
- GH-1222: Create skeleton for axelix maven plugin by @chrshnv in #1276
- GH-1418 Replace unreliable
author_associationcheck with repo-permission check incheck-linked-issuesworkflow by @sergeycherkasovv in #1419 - Ported N+1 detection logic into SB-2 by @mipo256 in #1424
- Bump the gradle-dependencies group across 1 directory with 17 updates by @dependabot[bot] in #1416
- GH-1378 Polished the docs by @AshotSargsyan1 in #1409
- GH-1222: Add profiler and thymeleaf dependencies by @chrshnv in #1423
- GH-1222: Generate spring.factories by @chrshnv in #1432
- GH-1386 Aligned the Overview dashboards with the overall style by @AshotSargsyan1 in #1429
- Exclude unreachable OIDC option from /settings instead of failing (#1… by @mipo256 in #1441
- GH-1425 Replace the
Problemsection with the new sections by @sergeycherkasovv in #1426 - GH-1437 Detection of blocking
RestTemplatecalls inside transactions for SB-3 by @sergeycherkasovv in #1438 - GH-1439 Detection of blocking
RestTemplatecalls inside transactions for SB-2 by @sergeycherkasovv in #1440 - GH-1066: Clarified error messages when local user creation by @mipo256 in #1443
- GH-1203 Implemented UI for temporary logging level configuration by @AshotSargsyan1 in #1343
- GH-1216: Copy spring test profiler reports to application classpath by @chrshnv in #1421
- GH-1428 Introduced responsive design for the docs and did polishing by @AshotSargsyan1 in #1444
- GH-573 Refine GC Logging status parsing by @sergeycherkasovv in #1295
- GH-1222: Copy spring-test-profiler reports to application classpath by @chrshnv in #1435
- GH-1354 Implement core logic nightly E2E tests by @NikitaKirilloff in #1355
- GH-1393 Implement E2E tests for OAuth2 authentication by @NikitaKirilloff in #1422
- GH-1447 Remove auto-adding Spring Test Profiler dependency from Axelix plugins - detect only by @NikitaKirilloff in #1448
- Porting: Spring Boot 4 starter by @mipo256 in #1450
- New transactional design by @mipo256 in #1449
- GH-1305 Introduce BuildGitInfoProperties by @NikitaKirilloff in #1454
- GH-1414 Rename
axelix.sbs.discovery.autoproperty toself-registrationby @NikitaKirilloff in #1458 - [SECURITY][BATCH] Update master/front-end dependencies by @mipo256 in #1468
New Contributors
- @avdotius made their first contribution in #1262
- @reptiloyds made their first contribution in #1288
- @sygkanrt30 made their first contribution in #1289
Full Changelog: v1.0.0-M2...v1.0.0