Skip to content

Releases: helidon-io/helidon

3.0.0

26 Jul 21:46
Compare
Choose a tag to compare

We are pleased to announce Helidon 3.0.0 a major release that includes significant new features and fixes. As a major release it also includes some backward incompatible API changes.

Notable Changes

  • MicroProfile 5.0
  • Jakarta EE 9.1 with javax to jakarta Java package namespace change
  • Java 17 minimum JDK. Java 11 no longer supported.
  • JEP-290 security hardening
  • Updated Helidon SE routing API
  • Numerous other enhancements and fixes

Upgrading from Helidon 2

For information concerning upgrading your Helidon 2 application to Helidon 3 please see:

CHANGES

For the list of changes please see the the 3.0.0 CHANGELOG

2.5.2

11 Aug 19:06
Compare
Choose a tag to compare

This is a bugfix release of Helidon. It is recommended for all users of Helidon 2.

Compatibility

2.5.2 is API compatible with 2.4.0.

CHANGES

  • CORS: Correct return of path from MP CORS request adapter; add test (2.x) 4434
  • CORS: Preserve order of mapped cross-origin config path entries from config; add test (2.x) 4432
  • Common: Completed @deprecated annotation and fixed Javadoc 4389
  • Common: Completed @deprecated annotations in common configurable 4395
  • Common: Update @Deprecated anno in 2.x service-common/rest 4392
  • Config: Add helidon-config-yaml-mp as a dependency in helidon-microprofile-config. (#4379) 4394
  • Docs: Add documentation for hocon/json support and meta-config extensibility on MP 4391
  • Docs: Fix MP references in SE metrics guide 4648
  • Examples: Add examples for SE and MP to update counters of HTTP response status ranges (1xx, 2xx, etc.) for 2.x 4616
  • Examples: Fix gRPC examples that are failing. (#4585) 4635
  • Examples: OCI Integration Examples Update 2.x 4502
  • Examples: Uses lowercase for database column names in se … 4274
  • FT: Added config support for bulkheads, breakers, timeouts and retries 4337
  • FT: Changes to FT implementation to support interception of proxy methods 4641
  • JAX-RS: Change log level to fine for exception caught while intercepting 4632
  • LRA: Coordinator test fix #4544 backport 4611
  • LRA: Deprecations cleanup 2.x 4450
  • Metrics: Fix deprecation annotations in metrics; update doc; revise examples (2.x) 4396
  • Metrics: Remove unneeded dependency 4378
  • Native Image: Add module info to native image extensions. 4588
  • Native Image: Removed final from proxied types 4586
  • Security: Added X509 certificate context key when client certificate is present and pem trust store configuration 4226
  • Security: JEP-290 2.x 4587
  • Test: Removed usage of deprecated method. 4401
  • Tracing: Cleanup of E2E test for tracing. 4589
  • Tracing: Update for Jaeger tracing. 4631
  • WebClient: Context propagation across HTTP. 4612
  • WebClient: Set executor of CompletableFuture for response with no content. (#4540) 4596
  • WebServer: Updated TyrusSupport to correctly propagate query params from webserver 4624
  • WebServer: Wrong Http/2 version 2x 4629

2.5.1

08 Jun 22:07
Compare
Choose a tag to compare

This is a bugfix release of Helidon. It is recommended for all users of Helidon 2.

Due to an intermitent issue with MicroProfile Fault Tolerance when used in a native image, we recommend using GraalVM 21.3.2 to partially mitigates the issue.

Compatibility

2.5.1 is API compatible with 2.4.0.

In this release we are no longer managing the version of Mockito for Helidon applications. If you were depending on that you will need to manage the version yourself.

CHANGES

  • CDI: Abstract decorator class now gets correct proxy name in Weld 4135
  • Common: Enable thread pool growth at threshold instead of above it 4245
  • Common: Improve threadNamePrefix defaulting to be more informative 4165
  • Common: Properly count completed and failed thread pool tasks 4244
  • Config: Fix retention of @configured 4113
  • Config: Remove dependency on helidon-common-reactive from config 4225
  • Config: Support Hocon/Json Configuration Source for MP 4218
  • Config: Support for Hocon inclusion of files without an extension 4162
  • Config: Turn off reference substitution in Hocon parser level for lazy resolution of references 4167
  • FaultTolerance: Fix some test regressions and some code simplifications 4239
  • FaultTolerance: Fixed a few problems with Fallback and Multi's in SE 4157
  • FaultTolerance: Make require transitive for helidon common reactive module 4233
  • FaultTolerance: New AnnotationFinder to handle transitive annotations in FT 4216
  • JPA: Adds XA support to Helidon's UCP integration 4292
  • Metrics: Add cache control to metrics and health endpoints 4257
  • Metrics: Correct Prometheus output for timer and JSON output for SimpleTimer 4242
  • MicroProfile: Support of Bean Validation in Helidon MP #721 3885
  • Native-image: Native image configuration reflection update for Jaeger 4118
  • Security: Do not fail when expected audience is null 4174
  • Security: Fix JwtProvider wrong error message 4137
  • Security: Injection of empty SecurityContext 4173
  • Security: OIDC update to support HTTPS identity provider 4270
  • Security: RoleContainer support added 4275
  • WebClient: Case insensitive client request headers fix 4111
  • WebClient: MDC propagation 4112
  • gRPC: Fixing io.grpc module-info and MP gRPC client and server module-info files 4189
  • Build: Add test-nightly.sh 4277
  • Dependencies: Move mockito dependency management to root pom 4283
  • Dependencies: Upgrade Netty to 4.1.77.Final 4250
  • Dependencies: Upgrade google-api-client 4324
  • Dependencies: Upgrade jackson to 2.13.2.2 4179
  • Dependencies: Upgrades Eclipselink to 2.7.10 4131
  • Dependencies: Uppgrade grpc-java to 1.45.1 4146
  • Dependencies: Yasson version updated 4261
  • Docs: Add IDCS related info to MP Security example 4328
  • Docs: Fix guide broken links and typos 4119 for 4134
  • Docs: Fix guide. Change JPA Scope. 4169
  • Docs: Update OCI integration documentation to reflect use of new OCI SDK extension 4329
  • Examples: Gradle: Add helidon test dependency. Add task dependency for jandex 4230
  • Examples: Fix deps in jpa examples plus some cleanup 4130
  • Examples: Use OBJECT schema type with requiredProperties in Quickstart MP 4149
  • Examples: remove buffered multipart example 4104
  • Tests: Fixed problem in DelayRetryPolicyTest that would cause all delays to be zero 4217
  • Tests: Fixed dbclient integration tests build issue. 4099
  • Tests: Use 127.0.0.1 for client connections in test (instead of 0.0.0.0) 4280
  • Tests: possible fix for HttpPipelineTest hang 4139

2.5.0

05 Apr 23:25
Compare
Choose a tag to compare

This is a minor release of Helidon. It contains bug fixes and enhancements. It is recommended for all users of Helidon 2.

Compatibility

2.5.0 is API compatible with 2.4.0

Deprecations

  • The custom Helidon OCI clients have been deprecated (See PR). Use the OCI Java SDK instead. If you use Helidon MP you can inject OCI SDK clients by adding the dependency io.helidon.integrations.oci.sdk:helidon-integrations-oci-sdk-cdi.

  • The MultiPart buffered readers have been deprecated (See PR). Use the MultiPart stream readers instead.

CHANGES

  • CORS: Add check for misplaced @crossorigin annotation; improve request-time performance 3931
  • CORS: Compare origin URLs based on protocol, host and port in CORS 3925
  • Config: Fixed problem supporting config profiles with JSON and HOCON 3945
  • Configu: hocon include 3990
  • Dependencies: MySQL JDBC driver updated to 8.0.28 and PostgreSQL JDBC driver updated to 42.3.3. 4095
  • Dependencies: Upgrade Jackson Databind to 2.13.2.1 (BOM 2.13.2.20220324) 4027
  • Dependencies: Upgrade logback to 1.2.10 3888
  • Dependencies: Upgrade snakeyaml and typesafe-config 3940
  • Docs: Add discussion of Helidon-specific config settings to MP OpenAPI doc (2.x) 3954
  • Docs: Adding jbatch guide to 2.x 3950
  • Docs: Describe more Scheduled properties 4087
  • Docs: Fix missing documentation item for HttpSignProvider in 2.x 3942
  • Docs: fixed manifest and documentation for Helidon Config Encryption for Helidon 2.x 4030
  • Examples: Avoid putting SmallRye pom into quickstarts 4009
  • Examples: JBatch example for Helidon 2.x 3923
  • Examples: Quickstart cleanup, using @HelidonTest in MP. 4011
  • Examples: Removed incorrect call to indexOf 3910
  • Health: Add HEAD support to health endpoints (2.x) 3935
  • JAX-RS: Explicit 404 in Jersey no longer calls next() 3975
  • JAX-RS: Search for @path annotations in base classes 3900
  • JAX-RS: Search for @path annotations in base interfaces 3981
  • Logging: Allow a list of path patterns to be specified for exclusion from access log 3951
  • Logging: Do not log full stack traces in SEVERE when a connection reset is received 3914
  • Messaging: Configurable JMS producer properties 4026
  • Messaging: Fix badly subscribed connector to processor signature 3911
  • Messaging: signature detection fix #3883 2x 3965
  • OCI: Add Helidon Metrics integration with OCI 4003
  • OCI: OCI vault examples switched to OCI SDK from custom OCI integration. 4084
  • OCI: Universal OCI CDI extension 3961
  • Security: Correctly resolve OIDC metadata. 3985
  • Security: Fixed builder created from configuration in OutboundTargetDefinition 3913
  • Security: New security response mapper mechanism for MP 4090
  • Tracing: Disable paths such as /metrics and /health from tracing. 3970
  • Tracing: fix set collectorUri() with URL with no port number adds port 3987
  • WebClient: hang fix backport 2.x 4004
  • WebServer: Fix body part header encoding 3972
  • WebServer: MimeParser parses closing boundary as normal boundary 3971
  • WebServer: Update MediaType parser to handle parameter without value (#3999) 4000
  • WebServer: Upgrade WebSocket from Java HttpClient 3991
  • Deprecations: Deprecated custom OCI integration 4015
  • Deprecations: Deprecate SE MultiPart buffered mode 4096

2.4.2

08 Feb 00:32
Compare
Choose a tag to compare

This is a bugfix release of Helidon. It is recommended for all users of Helidon 2.

Compatibility

2.4.2 is API compatible with 2.3.0.

CHANGES

  • WebServer: Fix wrong connection close 3830
  • WebServer: New default for io.netty.allocator.maxOrder 38093831
  • WebServer: Swallowed error fix 3792
  • WebServer: Add CORS support to OidcSupport 3844
  • WebClient: Do not create close listener handlers for every new request 3853
  • WebClient: Propagate any existing server context into a Webclient reactive code 3756
  • WebClient: WebClient event group initialization changed - 2.x 3833
  • LRA: LRA Custom headers propagation 3768
  • JAX-RS: Special treatment for ParamConverterProviders with multiple apps 3846
  • DBClient: Fix dbclient threading issues when DML operations are executed multiple times in a tight loop 3860
  • Ensure all thread pools created by Helidon are named 3789
  • Fault Tolerance: Only deactivate request context if it was inactive before migrating it 3813
  • Native-image: Native image fix grpc for 2.x branch 3805
  • OCI: Use resource /instance/canonicalRegionName to get region 3868
  • Build: Integrate build tools 2.3.3 3869
  • Dependencies: Upgrade Neo4j to 4.4.3. for Helidon 2.x 3862
  • Dependencies: Upgrade grpc-java to 1.41.2 3822
  • Dependencies: Upgrades Netty to 4.1.73.Final (helidon-2.x backport) 3798
  • Dependencies: Upgrades log4j to 2.17.1 on helidon-2.x branch 3778
  • Docs: New section about injection managers in docs 3851
  • Examples: Change bare-mp archetype to use microprofile-core bundle 3787
  • Examples: Clean unused dependencies in archetypes. 3828

1.4.11

08 Feb 00:15
Compare
Choose a tag to compare

This is a bug fix release of Helidon 1. It is reccomended for all users of Helidon 1.x.

Fixes

  • Fixes to support GraalVM 21.3.0 native image 3807
  • SafeConstructor with YAML parsing 3845
  • Upgrade Netty to 4.1.73.Final 3799
  • Upgrade Jersey to 2.35 3812
  • Upgrade graalvm to 21.3.0 3808
  • Upgrade grpc-java to 1.41.2 3824
  • Upgrade OCI SDK to 2.3.0 3814

2.4.1

21 Dec 00:09
Compare
Choose a tag to compare

This is a bugfix release of Helidon. It is recommended for all users of Helidon 2.

Compatibility

2.4.1 is API compatible with 2.3.0.

log4j

Helidon itself does not use log4j, and by default will not include log4j on
your application's classpath. But Helidon does manage the version of log4j and
uses it in some examples and the helidon-logging-log4j integration feature. This
release of Helidon upgrades this managed version to 2.17.0.

CHANGES

  • WebServer: Netty mixed writing aligned with master 3718
  • WebServer: Defer writes with backpressure #3684 3741
  • WebServer: Allow compression to be enabled together with HTTP/2 (helidon-2.x) 3705
  • WebServer: 3640 Netty mixed writing 2x 3671
  • WebClient: New flag to force the use of relative URIs (paths) on all requests 3614
  • WebClient: Netty order of writes 2x backport #3674 3710
  • Tests: Added explicit "localhost" to tests. 3575
  • Reactive: Multi defaultIfEmpty 3592
  • Perf: JWK keys lazy load 3742
  • OpenAPI: Redesign the per-application OpenAPI processing 3615
  • OpenAPI: Correct the handling of additionalProperties in OpenAPI (2.x) 3636
  • OpenAPI: Catch all exceptions, not just IOException, when unable to read Jandex 3626
  • OIDC: Fix proxy configuration. 3749
  • OCI: Fix serviceName usage for OCI ATP integration 3711
  • Metrics: Suppress warning when metrics PeriodicExecutor is stopped multiple times 3617
  • Metrics: Prepare RegistryFactory lazily to use the most-recently-assigned MetricsSettings 3659
  • Metrics: Move scheduling of metrics periodic updater so it is run in MP as well as in SE (2.x) 3732
  • Metrics: Implement metrics for thread pool suppliers 3630
  • Metrics: Fix some remaining problems with disabling metrics, mostly deferring access to RegistryFactory 3663
  • Logging: HelidonFormatter constructor made public 3609
  • JWT: SignedJwt's parseToken() expects characters from base64 instead of ba64URL encoding 3740
  • JAX-RS: Handle creation of InjectionManager when parent is a HelidonInjectionManager (helidon-2.x) 3754
  • Health: Mark @deprecated method so we can remove it in a future major release 3696
  • Fault Tolerance: Improved support for cancellation of FT handlers (helidon-2.x) 3682
  • Examples: Helidon Istio Example 3676
  • Examples: Add support for gradle application plugin to quickstarts 3617
  • Docs: Update javadocs and links for Jakarta EE and MicroProfile 3721
  • Docs: LRA doc fix artifact and group ids 2x 3689
  • Docs: Doc and JavaDoc fixes for #3747 and #3687. 3757
  • Dependencies: Upgrades log4j to 2.17.0
  • Dependencies: Upgrades Netty to 4.1.72.Final 3739
  • Dependencies: Bump cronutils 2x 3678
  • Config: Support for mutable file based MP config sources. 3666
  • Build: Manage version of netty-transport-native-unix-common 3746

2.4.0

01 Nov 15:27
Compare
Choose a tag to compare

This is a minor release of Helidon. It contains bug fixes and enhancements. Some key new features:

  • MicroProfile Long Running Actions (LRA) (experimental)
  • Configuration profiles
  • MicroStream Integration: thanks to the MicroStream team for this contribution!
  • OCI ATP integration and OCI service health checks
  • Oracle UCP 21.3 native image support
  • JEP 290 serialization filtering checks
  • Open IdConnect improvements
  • Java 17 support
  • Numerous dependency upgrades

Compatibility

2.4.0 is API compatible with 2.3.0. There has been a change that might impact a small number of our users:

  • YamlMpConfigSource has been moved to module io.helidon.config:helidon-config-yaml-mp. This is due to wrong JPMS definition where we could not provide a service of an optional dependency. To fix the dependency graph (so we do not depend on MP config from SE config), we had to create a new module.
    If you use this class directly, please update your dependencies (this may not be required, as it is on classpath of all MP applications), and change the package to io.helidon.config.yaml.mp.

Thanks!

Thanks to the following community members for contributing fixes or enhancements to this release:

CHANGES

See the 2.4.0 CHANGELOG for a detailed list of changes.

2.3.4

08 Oct 15:31
Compare
Choose a tag to compare

This is a bug fix release of Helidon. We recommend all Helidon 2.x users upgrade to this release.

Compatibility

2.3.4 is API compatible with 2.3.0.

CHANGES

  • WebServer: Fix issue when Netty server hangs when under load. 3435
  • WebServer: Fix race condition when analysing whether entity is fully read 3434
  • WebClient: Relativize request URI if host is in no-host list, in addition to the no-proxy case. 3442
  • Tracing: Using Jersey context rather then Helidon context. 3436
  • Metrics: PeriodicExecutor can incorrectly log warning message; and warning text can be wrong 3433
  • Metrics: native-image build fails due to metrics performance optimization 3433
  • Grpc: Enable DataFetchingEnvironment as part of @GraphQLAPI @query methods 3428
  • Build-tools: upgrade to build-tools 2.3.0: fixes issues with jlink, devloop, and maven 3.8 and issues on Windows 3465

2.3.3

07 Sep 15:19
Compare
Choose a tag to compare

This is a bug fix release of Helidon. It contains bug and performance fixes. We recommend all Helidon 2.x users upgrade to this release.

Compatibility

2.3.3 is API compatible with 2.3.0.

CHANGES

  • WebServer and WebClient race conditions fixed 3351
  • WebServer: Fix missing CORS headers if response has 404 status (#3206) 3280
  • WebClient: HTTP to HTTPS request hang fix 3351
  • Tracing: Modified Jaeger logic to not close scopes before switching threads 3274
  • Security: Fix NPE in outbound of JWT provider. (#3295) 3297
  • Reactive: 3129 3216 BEP refactor backport 3327
  • MicroProfile: Use MP config instead of Config.create() in MP components. 3291
  • Metrics: Performance: Improve some interceptor code paths in metrics (#3251) 3328
  • Metrics: Metrics and routings fixes (#3260) 3324
  • Metrics: Add the KPI metrics handler (with no qualifying path) exactly once each routing (#3255) 3282
  • Metrics: Suppress empty labels in exemplars which result in {}; yield a truly empty string instead 3281
  • Fault Tolerance: Explicitly destroy bean instance obtained from CDI object 3274
  • Docs: Helidon config documentation updates (#3187) 3284
  • Dependencies: Upgrade org.glassfish:jakarta.el to 3.0.4 3331
  • Dependencies: Upgrade helidon-build-tools to 2.2.3. to fix issues with Maven 3.8 and JDK 11.0.11+ 3362 3370