Releases: helidon-io/helidon
2.5.6
This is a bugfix release of Helidon. It is recommended for all users of Helidon 2.
CHANGES
- Config: Add config enum mapping support 5788
- Dependencies: Neo4j Driver update 5753
- Dependencies: Upgrade Netty to 4.1.86.Final 5725
- Security: Accidentally removed updateRequest method returned 5843
- Security: Default tenant is not included for propagation 5899
- Security: Oidc tenant name now properly escaped 5856
- WebServer: Add support for requested URI discovery 5827
- Build: remove duplicated dependencies in some projects 5864
- Docs: Update 01_vault.adoc 5483
- Test: Use Hamcrest assertions instead of JUnit 5870 and others
4.0.0-ALPHA3
This is the third Alpha build of Helidon 4.0.0 and is intended as a preview release only. Do not use this release in production. It is suitable only for experimentation. APIs are subject to change. Documentation is incomplete. And some functionality is experimental and not fully tested.
The big news in Helidon 4.0.0 is the introduction of Helidon Nima -- a ground up webserver implementation based on JDK Project Loom vitual threads.
Helidon 4.0.0 is a major release that includes significant new features and fixes. As a major release it also includes some backward incompatible API changes.
Java 19 or greater is required to use Heldon 4.0.0-ALPHA3 and examples must be run with java --enable-preview
to enable the use of virtual threads.
MicroProfile Support
4.0.0-ALPHA3 now supports MicroProfile 5 running on Nima WebServer. Please give it a try! If you are upgrading an existing Helidon 3.x MicroProfile application and run into an error concerning io.common.HelidonConsoleHandler
then change logging.properties
to use io.helidon.logging.jul.HelidonConsoleHandler
instead.
CHANGES
For a full list of changes see the CHANGELOG
3.1.0
This is a minor release of Helidon and is recommended for all users of Helidon 3. In addition to bug fixes and minor enhancements, this release contains two dependency upgrades that could have a small impact on compatibility. These are:
- OCI SDK 3.0. Note that if you are using Helidon MP OCI SDK integration then you will not need to specify an HTTP Client Library as the Helidon support will do that for you.
- GraalVM Native Image 22.3.0.
CHANGES
- Common: Add info to CharBuf exceptions 5375
- Common: Fix inconsistent status name 5642
- Common: WebServer.Builder media support methods with Supplier variants 5632
- Config: Provide MP config profile support for application.yaml (#5565) 5585
- DBClient: Handle exception on inTransaction apply 5699
- Docker: remove -Ddocker.build=true 5484
- Fault Tolerance: Additional @Retry strategies 5165
- Grpc: Grpc component Does not handle package directive in proto files. 5283
- JPA: Improves integrations/jdbc/jdbc to better support future JPA improvements 5654
- LRA: LRA false warning 5555
- Messaging: JMS connector update 5327
- Messaging: Kafka producer nacking fix 5510 5524
- Messaging: Message body operator matching with parameters 5574
- Metrics: Fix incorrect tags comparison when trying to match metric IDs 5544
- MicroProfile: Add null check to MP Server.Builder.config() (#5363) 5372
- Native Image: Adding feature file for MP native image. 5652
- OCI: Replace OCI Java SDK shaded jar with v3 for OCI integration 5704
- OpenAPI: Add OpenAPI U/I integration [3.x] 5568
- OpenAPI: Fix error in OpenAPI handling of
default
values' types 5289 - Reactive: Multi.forEachCS 5527
- Security: Jwt now support multiple issuers and multi issuer validation 5648
- Security: Jwt scope handling extended over array support 5521
- Security: OIDC multi-tenant and lazy loading implementation 5619
- Security: Use only public APIs to read PKCS#1 keys (#5240) 5258
- Tracing: Client tracing interceptor no longer clears exception 5601
- WebClient: Add relativeUris flag in OidcConfig to allow Oidc webclient to use relative path on the request URI 5335
- WebServer: Broad changes to handle case properly in headers and parameters 5221
- WebServer: Log an entry in warning level for a 400 or 413 response 5295
- WebServer: Log simple message for a 400 or a 413 and more under FINE 5355
- WebServer: NullPointerException when there is an illegal character in the request 5471
- Webserver: Support for requested URI for web server requests. 5330
- Dependencies: Bump-up reactive messaging/ops to 3.0 5525
- Dependencies: Fix Guava version to match that required by the grpc-java libraries 5503
- Dependencies: Upgrade GraalVM native image to 22.3.0 5308
- Dependencies: Upgrade Netty to 4.1.86.Final 5703
- Dependencies: Upgrade PostgreSQL JDBC driver dependency to 42.4.3 5560
- Dependencies: Upgrade Helidon build-tools to 3.0.3 5726
- Dependencies: Upgrade grpc-java to 1.49.2 5348
- Dependencies: Upgrade to jackson-databind-2.13.4.2 via bom 2.13.4.20221013 5302
- Docs: Declare
h1-prefix
as early as possible so it is used for the title prefix 5667 - Docs: Document config.require-encryption 5188
- Docs: Fix inadvertent changes in attributes.adoc 5334
- Docs: JAXRS doc updates for 3611 5225
- Docs: Openapi generator doc 3.x 5263
- Docs: flatMapCompletionStage javadoc fix 5622
- Examples: Make JSON-B a default option for Helidon MP projects (backport) 5208
- Examples: OpenAPI generator examples 5649
- Examples: Remove license report from maven lifecycle 5244
- Examples: Use property to skip execution of eclipselink weave 5313
- Examples: database choices should be before packaging (backport) 5294
- Tests: Use Hamcrest assertions instead of JUnit (#1749) 5189 and others
- Tests: Fix Intermittent TestJBatchEndpoint.runJob 5557
- Tests: Fix intermittent jBatch test 5247
- Tests: Simplify named socket WebTarget injection in Tests 5269
- Tests: Use Hamcrest assertions instead of JUnit in tests/functional/jax-rs-multiple-apps (#1749) 5634
- Tests: Various metrics test improvements to avoid intermittent failures 5621
3.0.2
This is a bugfix release of Helidon and is recommended for all users of Helidon 3.
CHANGES
- CORS: Fix CORS annotation handling error in certain cases 5104
- Config: @ConfigProperties without bean defining annotation - 3x 4853
- DBClient: Issue #4719 - Helidon DBClient does not trigger an Exception when no sane DB connection can be obtained 4771
- Health: Use lazy values to initialized HealthSupport FT handlers 5146
- JAX-RS: Make Application subclasses available via our context during Feature executions (3.x) 4786
- Jersey: Register a low-priority exception mapper to log internal errors 5073
- Messaging: AQ Connector - JEP 290 4672
- Metrics: Fix OpenMetrics formatting error (3.x) 4900
- MicroProfile: Fix identification of parallel startup of CDI 4993
- MicroProfile: MP path based static content should use index.html (3.x) 4736
- Native-image: add serial config required for oracle driver (3.x) 4960
- Reactive: MultiFromBlockingInputStream RC fix 3x 3597
- RestClient proxy test exclusion removed 4769
- Security: Access token refresh - 3.x 4821
- Security: JWT-Auth implementation encrypted token recognition fixed 4811
- WebClient: DNS resolver should not be possible to set per request 4814
- WebClient: Dns resolver type method on webclient builder 4838
- WebClient: Round Robin added as DNS resolver option 4798
- WebServer: Default header size increased to 16K - Helidon 3.x 5016
- WebServer: Watermarked response backpressure 3x 4724
- Dependencies: Update graphql-java to 17.4 4966
- Dependencies: Upgrade Hibernate to 6.1.4.Final, EclipseLink to 3.0.3 5100
- Dependencies: Upgrade Postgre driver 4742
- Dependencies: Upgrade protobuf-java 5133
- Dependencies: Upgrade reactive-streams to 1.0.4 5045
- Dependencies: Upgrade snakeyaml to 1.32 4922
- Dependencies: Upgrades OCI to 2.45.0 on helidon-3.x 4827
- Docs: Fix for issue 4793 in tracing doc 4795
- Docs: editorial updates to DB Client guide 4499
- Docs: 4184 logging for an MP app 4903
- Docs: Documentation minor fix 4902
- Docs: Fix broken links for Oracle Universal Connection Pool (#4781) 4862
- Docs: Fix broken links for ServerThreadPoolSupplier and ScheduledThreadPoolSupplier in mp/fault-tolerance.adoc (#4899) 4909
- Docs: Fix invalid example in se/config/advanced-configuration.adoc (#4775) 4920
- Docs: Fix misplaced attribute settings 4954
- Docs: Fix the structure of the table in the section "Traced spans" (#4792) 4859
- Docs: Replace deprecated ServerConfiguration.builder() on WebServer.builder() in docs - backport 3.x (#5025) 5117
- Docs: Update a few icons in the docs 4937
- Docs: Updated supported version of MicroProfile to 5.0 4917
- Docs: update old K8s deployment yaml 4760
- Docs: updates for PR 4520 language review 4731
- Examples: 4857 arch fix minor issues (backport) 4874
- Examples: Formatting of generated Helidon SE quickstart (backport) 4969
- Examples: Quickstart MP with Jackson fix JSON message 4905
- Examples: Remove module-info files from examples (3.x) 4894
- Examples: Tracing config updates in archetype 5137
- Examples: WebClient dependency in generated Helidon SE Quickstart should be in test scope (backport) 5020
- Examples: change beans.xml 4845
- Examples: k8s and v8o support in archetype (3.x) 4887
- Examples: Do not generate CDS archive when using Dockerfile.jlink 5158
- Test: 4980 EchoServiceTest timeout 5005
- Test: 5068 mock connector beans xml 3x 5069
- Test: Add robustness to some of the timing-susceptible metrics tests; add util matcher with retry 5047
- Test: Add some retries because post-request metrics updates occur after the response is sent 5136
- Test: Do not use retry to fix the test; stats are approximate; just check for existence, not values 5112
- Test: Fix FT intermittent failure - archetype build (backport) 4934
- Test: Fix for failing GraphQL tests on Windows 4732
- Test: HelidonTest doesn't start container properly with TestInstance.Lifecycle.PER_CLASS #4663 4865
- Test: Intermittent test fix, using random port for tests. 4800
- Test: Issue 4740 - JPA integration tests should run on every build 5027
- Test: Special Windows build Config TCK profile no longer needed 4816
- Test: Use Hamcrest assertions instead of JUnit in tests 5057 (and others)
2.5.5
This is a bugfix release of Helidon. It is recommended for all users of Helidon 2.
CHANGES
- Common: Add info to Charbuf exceptions 5368
- Config: Provide MP config profile support for application.yaml 5565
- DBClient: Handle exception on inTransaction apply 5644
- Docker: remove -Ddocker.build=true 5486
- Fault Tolerance: Additional @Retry strategies 5230
- GRPC: Grpc component Does not handle package directive in proto files. 5150
- Health: Use lazy values to initialized HealthSupport FT handlers 5106
- LRA: LRA false warning 5554
- Messaging: Message body operator matching with parameters 5523
- MicroProfile: Add null check to MP Server.Builder.config() 5363
- OpenAPI: Add support for OpenAPI UI [2.x] 5584
- Security: Add relativeUris flag in OidcConfig to allow Oidc webclient to use relative path on the request URI 5267
- Security: Jwt scope handling extended over array support 5520
- Security: Multitenant lazy loading implementation improved 5678
- Security: OIDC multi-tenant and lazy loading implementation 5168
- Security: Use only public APIs to read PKCS#1 keys (#5240) 5259
- Vault: Remove experimental flag from Vault docs (#5431) 5539
- WebServer: Log an entry in warning level for a 400 or 413 response 5298
- WebServer: NullPointerException when there is an illegal character in the request 5470
- WebServer: WebServer.Builder media support methods with Supplier variants 5640
- Copyrights: Remove trailing empty line in copyright comment 5324 and others
- Dependencies: Fix Guava version to match that required by the grpc-java libraries 5446
- Dependencies: Manage protobuf version using BOM 5177
- Dependencies: Upgrade PostgreSQL JDBC driver dependency to 42.4.3 5563
- Dependencies: Upgrade grpc-java to 1.49.2 5360
- Dependencies: Upgrade protobuf-java. 5132
- Dependencies: Upgrade to jackson-databind-2.13.4.2 via bom 2.13.4.20221013 5303
- Dependencies: Upgrade build-tools to 2.3.7 5705
- Docs: Add doc describing use of OpenAPI code generator to 2.x 5590
- Docs: Archetype Doc 5576
- Docs: Replace deprecated ServerConfiguration.builder() on WebServer.builder() in docs - backport 2.x (#5024) 5119
- Docs: flatMapCompletionStage javadoc fix 5623
- Examples: Add OCI MP Archetype 5366
- Examples: Include istio and lra examples in reactor. Fix version numbers 5277
- Examples: Remove license-report from maven lifecycle 5245
- Tests: Add some retries because post-request metrics updates occur after the response is sent 5142
- Tests: Fix Intermittent TestJBatchEndpoint.runJob 5558
- Tests: Fix intermittent jBatch test 5248
- Tests: Move checkLazyFaultToleranceInitialization() test to its own class 5138
- Tests: Remove value check of executor metrics; just check for existence 5120
- Tests: Simplify named socket WebTarget injection in Tests 5315
- Tests: Use Hamcrest assertions instead of JUnit 5275 and others
4.0.0-ALPHA2
This is the second Alpha build of Helidon 4.0.0 and is intended as a preview release only. Do not use this release in production. It is suitable only for experimentation. APIs are subject to change. Documentation is incomplete. And some functionality is experimental and not fully tested.
The big news in Helidon 4.0.0 is the introduction of Helidon Nima -- a ground up webserver implementation based on JDK Project Loom.
Helidon 4.0.0 is a major release that includes significant new features and fixes. As a major release it also includes some backward incompatible API changes.
Java 19 is required to use Heldon 4.0.0.
CHANGES
- Common: Refactor HTTP header class names to a more natural approach. 4858
- Config: Refactor helidon config 4.0 4776
- Config: Use common Config in common configurable. 5015
- Config: fix for issue in handling ConfigProperties using List 4959
- DBClient: Helidon DBClient does not trigger an Exception when no sane DB connection can be obtained 4773
- Dependencies: Upgrade EclipseLink to 3.0.3 and Hibernate to 6.1.4.Final 5101
- Dependencies: Upgrade reactive streams to 1.0.4 5046
- Dependencies: Upgrade snakeyaml to 1.32 4923
- Dependencies: Update graphql-java to 17.4 4983
- FT: retry checkMetricsForExecutorService 5103
- JAX-RS: Register a low-priority exception mapper to log internal errors 5082
- Logging: Logging refactoring 4825
- MicroProfile: Fix identification of parallel startup of CDI 4964
- Native Image: remove redundant reflect-config.json 4844
- Nima: Context support for Níma WebServer 4867
- Nima: Perf improvements 4818
- Nima: Port and cleanup of old reactive tests for Nima bulkheads 4823
- Nima: Shutdown executors while stopping the server 4819
- Reactive: MultiFromBlockingInputStream RC fix 4x 5055
- Security: Access token refresh - 4.x backport 4822
- WebServer: Default header size increased to 16K for Http1ConnectionProvider in NIMA 5017
- WebServer: Use Header.create() for both header names and header values. 4864
- WebServer: Watermarked response backpressure 4x 5063
- Doc: Fix invalid example in se/config/advanced-configuration.adoc - backport 4.x (#4775) 4944
- Doc: Fix misplaced attribute settings 4955
- Doc: Formatting of generated Helidon SE quickstart 4967
- Doc: Preamble fix 5051
- Doc: Ported Access Log documentation to 4.x 5054
- Examples: 4834 4835 fix archetype test issues 4841
- Examples: Remove module-info files from examples 4895
- Examples: WebClient dependency in generated Helidon SE Quickstart should be in test scope 5019
- Examples: add serial config required for oracle driver 4961
- Examples: fix db issues in Helidon archetype 4805
- Examples: k8s and v8o support in archetype 4891
- Test: 5068 mock connector beans xml 4x 5070
- Test: Ported TestInstance.Lifecycle.PER_CLASS fix to 4.x 5052
- Test: Updated intermittently failing CircuitBreakerTest 5033
- Test: Add robustness to some of the timing-susceptible metrics tests; add util matcher with retry 5032
- Test: EchoServiceTest timeout 5007
- Test: Ported combined FT test to Nima and enhancements to Async 4840
- Test: Removed deprecated tests, disabled pipelining test. 5010
- Test: Special Windows build Config TCK profile no longer needed - 4.x 4870
- Test: Vault tests 5026
- Test: integration tests should run on every build 5080
2.5.4
This is a bugfix release of Helidon. It is recommended for all users of Helidon 2.
CHANGES
- CORS: Fix CORS annotation handling error in certain cases 5102
- DBClient: Helidon DBClient does not trigger an Exception when no sane DB connection can be obtained 4772
- Examples: Remove module-info files from examples 4893
- JAX-RS: Register a low-priority exception mapper to log internal errors 5059
- Metrics: OpenMetrics formatting issue; add tests 4901
- MicroProfile: Fix identification of parallel startup of CDI 4994
- WebClient: WebClient uses DataPropagationProvider to module-info 4916
- WebServer: Default header size increased to 16K Helidon Server and docs 5018
- WebServer: Watermarked response backpressure 5062
- Dependencies: Update graphql-java to 17.4 4992
- Dependencies: Upgrade build-tools to 2.3.6 5099
- Dependencies: Upgrade eclipselink to 2.7.11 4974
- Dependencies: Upgrade hibernate to 5.6.11.Final 4965
- Dependencies: Upgrade reactive-sreams to 1.0.4 5044
- Dependencies: Upgrade snakeyaml to 1.32 4921
- Dependencies: upgrade hibernate validator to 6.2.5 5037
- Docs: Fix invalid example in se/config/advanced-configuration.adoc (#4775) 4943
- Docs: Sec provider 4810 5034
- Test: EchoServiceTest timeout 5006
- Test: Fixed race condition in the OCI Metrics integration test between retrieval of metrics from registry and asserting that from expected results 4897
- Test: MultiFromBlockingInputStream RC fix 5061
- Test: Rest Client timeout test exclusion 5077
- Test: ThreadPoolTest 4988
- Test: Use Hamcrest assertions instead of JUnit (#1749) 5087 and others
2.5.3
This is a bugfix release of Helidon. It is recommended for all users of Helidon 2.
Compatibility
2.5.3 is API compatible with 2.4.0.
CHANGES
- Config: Injection of Map from configuration now honors prefix (backport) 4659
- Config: Obtaining parent dir for watcher service fixed 4666
- Config: Unescape the keys when config is returned as a map 4678
- Dependencies: Upgrade snakeyaml to 1.31 4849
- Dependencies: Upgrades OCI to 2.41.0 4812
- Docs: Fix K8s deployment yaml 4761
- Grpc: Upgrade protobuf to support osx-aarch_64 architecture 4630
- JAX-RS: Make Application subclasses available via our context during Feature executions 4745
- LRA: 4749 LRA fixes backport 4824
- MicroProfile: MP path based static content should use index.html 4735
- Native image: Issue #4741 - Upgrade Postgre driver to 42.4.1 4780
- Security: Access token refresh 4758
- Security: Configuration parameter 'cookie-encryption-password' takes only a single character rather than a string (#4512) 4657
- Tests: Intermittent test fix, using random port for tests 4801
- WebClient: DNS resolver should not be possible to set per request 4815
- WebClient: Dns resolver type method on webclient builder 4839
- WebClient: Round Robin added as DNS resolver option 4806
- WebServer: WebServerTls parts should not be initialized when disabled 4651
4.0.0-ALPHA1
We are pleased to announce Helidon 4.0.0-ALPHA1. The big news in this release is the introduction of Helidon Nima -- the foundation of the next generation of Helidon. Nima's server implementation is written from the ground up to take advantage of virtual threads from JDK Project Loom.
This is an Alpha build of Helidon 4.0.0. It is experimental and intended as a technology preview only. Do not use this release in production. APIs are subject to change and functionality is incomplete. Over the upcoming months we will have additional 4.0.0 Alpha builds as we continue to migrate code to Nima.
JDK 19 Early Access is required to use Helidon 4.0.0-ALPHA1.
For more information including how to try Helidon Nima see Helidon Níma — Helidon on Virtual Threads
3.0.1
This is a bugfix release of Helidon and is recommended for all users of Helidon 3.
CHANGES
- Common: Change log level to fine for exception caught while intercepting 4640
- Config: Map injection behavior restored 4653
- Config: Obtaining parent dir for watcher service fixed 4665
- Config: Unescape the keys when config is returned as a map 4715
- Deps: Upgrade protobuf to support osx-aarch_64 architecture 4662
- FT: Changes to FT implementation to support interception of proxy methods 4650
- Messaging: JMS Shim wraps null message fix 4671
- Metrics: Config metadata should be optional and provided 4728
- OCI: Undo manual shaded jar tasks 4619
- Security: Configuration parameter 'cookie-encryption-password' takes only a single character rather than a string 4675
- Test: Coordinator test fix 4610
- Test: Fix location of JDK to use a link and not installation 4661
- Test: Fixed orphaned modules. 4658
- WebServer: WebServerTls parts should not be initialized when disabled 4652
- WebSocket: Updated WebSocketHandler to correctly propagate query params from weberver to Tyrus 4647
- Build: Fix all copyright warnings. 4660
- Build: Fix release.sh to update version in attributes.adoc 4689
- Docs: various documentation updates 4727 4627 4707 4713 4714 4623 4726 4689 4687 4692 4676 4637 4723 4730
- Examples: Add examples for SE and MP to update counters of HTTP response status ranges (1xx, 2xx, etc.) 4617
- Examples: Fix JDK base image in Dockerfiles 4634
- Examples: Remove redundant pkg folder in a project generated by helidon CLI 4642