Skip to content

Latest commit

 

History

History
667 lines (587 loc) · 60.8 KB

CHANGELOG.md

File metadata and controls

667 lines (587 loc) · 60.8 KB

Changelog

All notable changes to this project will be documented in this file.

This project adheres to Semantic Versioning.

For Helidon 2.x releases please see Helidon 2.x CHANGELOG.md

For Helidon 1.x releases please see Helidon 1.x CHANGELOG.md

This is a bugfix release of Helidon and is recommended for all users of Helidon 3. Helidon 3 requires Java 17 or newer.

This release upgrades SnakeYaml from 1.32 to 2.0. Because of incompatible API changes in SnakeYaml 2 it is possible your application might be impacted if you use SnakeYaml directly. While we reccomend you do the upgrade, if that is not possible you may force downgrade SnakeYaml to 1.32 and Helidon 3.2.0 will still work.

CHANGES

  • Config: Escape the key when copying a config node 6304
  • JMS: JNDI destination support 6301
  • JPA: Minor JPA cleanups 6435
  • JTA: Fixes erroneous closing behavior in JtaConnection.java 6321
  • Logging: Remove FileHandler from logging.properties 6363
  • Metrics: Change default exemplar behavior to conform to OpenMetrics spec; allow users to choose former non-standard behavior 6387
  • MultiPart: Fix MultiPartDecoder lazy inner publisher subscription 6225
  • MultiPart: WritableMultiPart create methods fixed 6390
  • Native image: Dockerfile.native fixes. 6424
  • Native image: Fix native-image build-time initialization 6426 6438
  • Security: OIDC original uri resolving leaving out query params 6342
  • WebServer: Support for non-GET HTTP/2 upgrades 6383
  • Build: Use https in pom.xml schemaLocation 6313 and others
  • Dependencies: Adapt to SnakeYAML 2.0 changes 5793
  • Dependencies: Upgrade OCI SDK to 3.8.0 6427
  • Docs: Fix {h1-prefix} unreplaced token in SE metrics guide preamble 6409
  • Docs: Remove claim that metrics are automatically propagated from the webserver to the webclient 6319
  • Docs: TOC - #5828 6270
  • Docs: Toc tasks from #5828 6146
  • Docs: Typo in metrics guide 3.x 6271
  • Docs: [3.x] Describe disabling config token replacement 6166
  • Examples: Update mustache format in archetype files 6287
  • Tests: Fix RC in JMS error test 6376
  • Tests: Fix intermittent issue on OciMetricsSupportTest 6177
  • Tests: JMS intermittent test fix 6393
  • Tests: Use Hamcrest assertions instead of JUnit 6292 and others

This is a bugfix release of Helidon and is recommended for all users of Helidon 3. Helidon 3 requires Java 17 or newer.

CHANGES

  • Config: Configuration fixes 6150
  • OpenAPI: Fix OpenAPI UI options processing 6110
  • Security: OIDC logout functionality fixed 6118
  • Security: OIDC tenant SPI default priority changed 6127
  • Tracing: Fix parent handling in OpenTelemetry (#6092) 6128
  • WebServer: BodyPart deprecate name() and filename() ; add isNamed 6097
  • Dependencies: Update build-tools to 3.0.4 6139
  • Docs: changes for tracing and tracing guide 6113

This is a bugfix release of Helidon and is recommended for all users of Helidon 3. Helidon 3 requires Java 17 or newer.

CHANGES

  • Config: Add built-in support for converting config strings to enum values 5732
  • JPA: Adds connection unwrapping abilities to CDISEPlatform.java 5790
  • JTA: Introduces JtaConnection.java 5905
  • JTA: Introduces LocalXAResource and a few support classes in jta/jdbc 5733
  • Messaging: 6035 AQ connector @ConnectorAttribute 6036
  • Messaging: WLS JMS Object-Based Security 5854
  • Metrics: Fix improper handling of metrics global tags 5812
  • MicroProfile: Fix order of initialization of tracing and security. 5987
  • OCI: Add Helidon Metrics integration with OCI 5829
  • OCI: Add OCI MP Archetype 5939
  • OCI: Register OciMetricsSupport service only when enable flag is set to true 6032
  • Security: Accidentally removed updateRequest method returned 5844
  • Security: Default tenant is not included for propagation 5898
  • Security: Oidc tenant name now properly escaped 5872
  • Security: Support for customization of 'logout uri' in OIDC provider 5784
  • WebServer: 100 continue triggered by content request 5714
  • WebServer: Add allow-list handling to requested URI behavior 5668
  • WebServer: Suppress incorrect start-up log message related to requested URI discovery 5862
  • WebServer: Switch default back-pressure strategy to AUTO_FLUSH from LINEAR #5943 5944
  • WebSocket: Enhancement to allow different WebSocket applications to be registered on different ports. 5822
  • Build: Cleanup Helidon BOM by removing obsolete and internal artifacts 6017
  • Dependencies: Bump testng from 7.5 to 7.7.0 5918
  • Dependencies: Neo4j Driver update 5752
  • Dependencies: Upgrade jersey to 3.0.9 5787
  • Dependencies: Upgrade OCI SDK to 3.2.1 5954
  • Docs: DOC add Histogram to SE Metrics 6059
  • Docs: Doc fixes for Issue 4673 5614
  • Docs: Documentation updates to correct wrong instructions for HOCON config parsing 5972
  • Docs: Fix for #5771 - updates to SE WebServer toc 5772
  • Docs: Fix incorrectly reverted icons 5761
  • Docs: New subsection describing enhancement to support WebSocket application bindings on different ports 5835
  • Docs: TOC updates to include additional levels 6003
  • Docs: Updated sitegen.yaml for #5076 5952
  • Docs: Updates to MP TOCs 5923
  • Docs: WLS connector doc typo 5803
  • Docs: fix tracing docs with incorrect webclient artifact ids 6029
  • Examples: Archetype generates wrong Jaeger configuration (SE) 5920
  • Examples: Fix parent poms in example 5736
  • Test: Follow-up to PR #5822 5845
  • Test: Use Hamcrest assertions instead of JUnit 5962 and Others

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

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)

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

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 from RC2

  • JAX-RS: Set executor of CompletableFuture for response with no content. 4540 (Thank you @MadsBrun).
  • Dependencies: Integrate Build Tools 3.0.0 TBD 4580
  • Dependencies: Upgrade Tyrus. 4597
  • Archetype: Enable Database MP tests 4570
  • Archetypes: Generate docker files for quickstart and database 4581
  • Archetypes: Generated GreetingResource contains incorrect javadoc 4599
  • Examples: Fix READMEs required jdk version 4572
  • Examples: Fix gRPC examples that are failing. 4585
  • Build: Remove -x option in CI scripts 4593
  • Doc updates: 4598 4609 4594 4507 4606 4590 4608 4542 4565 4566 4564 4584 4545 4561 4595 4605 4574 4569 4517 4579

This is the second RC release of Helidon 3.0. It contains significant new features, enhancements and fixes. It also contains backward incompatible changes. (see Compatibility below). This milestone release is provided for customers that want early access to Helidon 3.0 for experimentation. It should be considered unstable and is not intended for production use. APIs and features might not be fully implemented and tested and are subject to change. Documentation is incomplete. Those looking for a stable release should use Helidon 2.

Notable changes from 2.x:

  • MicroProfile 5.0 support
  • javax to jakarta Java package namespace change for Jakarta 9 APIs
  • Java 11 no longer supported. Java 17 or newer is required.

Compatibility

3.0.0-RC2 contains the following incompatibilities with 2.x:

  • Java 17 or newer is required
  • Java package namespace for Jakarta APIs has changed from javax to jakarta
  • Deprecated APIs have been removed

CHANGES from RC1

Changes from RC1:

This is the first RC release of Helidon 3.0. It contains significant new features, enhancements and fixes. It also contains backward incompatible changes. (see Compatibility below). This milestone release is provided for customers that want early access to Helidon 3.0 for experimentation. It should be considered unstable and is not intended for production use. APIs and features might not be fully implemented and tested and are subject to change. Documentation is incomplete. Those looking for a stable release should use Helidon 2.

Notable changes from 2.x:

  • MicroProfile 5.0 support
  • javax to jakarta Java package namespace change for Jakarta 9 APIs
  • Java 11 no longer supported. Java 17 or newer is required.

Compatibility

3.0.0-RC1 contains the following incompatibilities with 2.x:

  • Java 17 or newer is required
  • Java package namespace for Jakarta APIs has changed from javax to jakarta
  • Deprecated APIs have been removed

CHANGES from M2

  • WebServer: Routing 3 4236
  • WebServer: Removed deprecated classes from WebServer, mostly static content. 4376
  • WebServer: Remove deprecated method from HelidonRestServiceSupport 4393
  • WebServer: Nocache 4258
  • Tracing: Tracing abstraction for Helidon 4458
  • Tracing: Add OpenTelemetry support 4518
  • Test: ThreadPoolTest rc fix 4460
  • Test: Removed final from proxied types, these could no longer be proxied. 4489
  • Test: Re-enable Packaging Tests 4412
  • Test: Mock connector 4457
  • Test: Load both bean definitions of the same type instead of choosing just one 4494
  • Test: Intermittent SubscriberPublMsgToPaylRetComplVoidBean test fix 4474
  • Test: Intermittent SubscriberPublMsgToMsgRetComplBean test fix 4491
  • Test: Use 127.0.0.1 for client connections in test (instead of 0.0.0.0) 4279
  • Test: Add test-nightly.sh 4278
  • Security: RoleContainer support added 4271
  • Security: Remove deprecated method from Jwt. 4400
  • Security: OIDC update to support HTTPS identity provider on plain socket Helidon 4222
  • Security: HTTP Signatures: Fixed deprecation and modified defaults. 4399
  • Security: Change defaults for Open ID Connect 4335
  • Security: Added X509 certificate context key when client certificate is present and pem trust store configuration 4185
  • Security: Add IDCS related info to MP Security example 4343
  • Reactive: Multi support in Reactive Messaging 3.0 4475
  • OCI: Makes OCI CDI extension work with OCI's shaded full jar 4498 4531 4483 4488 4522
  • OCI: Integration Examples Update and Deprecation 4516
  • Misc: Remove experimental flags from relevant modules. 4361
  • Metrics: Properly count completed and failed thread pool tasks (master) 4247
  • Metrics: Deal with deprecations in metrics 4397
  • Metrics: Correct Prometheus output for timer and JSON output for SimpleTimer 4243
  • Metrics: Convert synchronized to use semaphores 4284
  • Metrics: Address deprecations in MP metrics 4500
  • Messaging: Messaging Deprecations cleanup 4454
  • Messaging: Kafka nack support 4443
  • Messaging: JMS configurable producer properties #3980 4272
  • LRA: LRA Deprecations removal 4449
  • JPA: Updates persistence.xmls to 3.0. Re-enables JPA tests. Removes eclips… 4446
  • gRPC: Removed support for JavaMarshaller as default marshaller 4423
  • gRPC: Fixing module-info files so that gRPC works when using Java modules 4235
  • GraphQL: Update to mp-graphql 2.0 4190
  • FT: Update feature catalog with FT for SE (master) 4351
  • FT: Port of a few Fault Tolerance related PRs to master 4255
  • FT: Fixed problem in DelayRetryPolicyTest that would cause all delays to be zero (master) 4221
  • FT: Avoid calling getPackage() on an annotation type (master) 4350
  • FT: Added config support for bulkheads, breakers, timeouts and retries (master) 4357
  • Examples: Uses lowercase for database column names in se database archetype to fix issue #4187 4273
  • Examples: Gradle: Add helidon test dependency. Add task dependency for jandex 4231
  • Examples: Use standard graalvm base image in Dockerfile.native 4501
  • Docs: [New Docs PR] - Helidon MP WebSocket 4213 4442
  • Docs: [New Docs PR] - Helidon MP Scheduling #4206 4456
  • Docs: [New Docs PR] - Helidon MP OpenTracing #4199 4428
  • Docs: [New Docs PR] - Helidon MP OpenAPI #4209 4421
  • Docs: [New Docs PR] - Helidon MP Bean Validation #4202 4426
  • Docs: WebServer documentation 4461
  • Docs: Updated doc for FT MP using new template 4438
  • Docs: Updated FT SE documentation 4465
  • Docs: New formatting for Helidon Health Checks SE document 4495
  • Docs: New formatting for GraphQL MP document 4514
  • Docs: New formatting for CORS SE documentation 4470
  • Docs: New doc file that briefly describes the JAX-RS Client API 4451
  • Docs: MP CORS doc update 4511
  • Docs: Latest sitegen and functional docs improvements 4463
  • Docs: Java doc typo fixing 4473
  • Docs: Helidon MP RestClient documentation 4448
  • Docs: Helidon MP Health new style documentation 4387
  • Docs: Fix config doc annotations for OpenAPI builder 4419
  • Docs: Fix Javadoc links 4479
  • Docs: Documentation : Helidon DB Client Guide 2673
  • Docs: Change last use of '{...}' for a placeholder to * 4455
  • Docs: Add default value constants and use in config doc 4408
  • Docs: 4367 doc update for java marshaller deprecation 4441
  • Docs: Update OCI integration documentation to reflect use of new OCI SDK CDI Extension 4409
  • Docs: Add tuning guides 4156
  • Dependencies: Yasson version increased to 2.0.4 4260
  • Dependencies: Upgrades Jandex to 2.4.3.Final 4487
  • Dependencies: Upgrades HikariCP to 5.0.1 4519
  • Dependencies: Upgrades Hibernate to version 6.1.1.Final 4484
  • Dependencies: Upgrades H2 to 2.1.212 4298
  • Dependencies: Revert back to using javax.validation as jakarta.validation is not supported by micronaut 4476
  • Dependencies: Restoring dependency with Tyrus 2.0.1 4429
  • Dependencies: Bump derby from 10.13.1.1 to 10.14.2.0 in /examples/jbatch 4453
  • Dependencies: Upgrade Netty to 4.1.77.Final 4252
  • Dependencies: Upgrade Jackson to 2.13.2.2 4178
  • Dependencies: Move mockito dependency management to root pom 4285
  • Dependencies: upgrade google api client 4297
  • DataSource: Adds XA support to Helidon's UCP integration 4291
  • Config: Support Hocon/Json Configuration Source for MP 4347
  • Config: Metadata argument number changed 4386
  • Config: Deserialization disabled by default. 4334
  • Config: Config metadata update 4403
  • Config: Add helidon-config-yaml-mp as a dependency in helidon-microprofile-config 4379
  • Common: Removal of deprecated code in common context 4388
  • Common: Removal of deprecated code in common configurable 4405
  • Common: Enable thread pool growth at threshold instead of above it (master) 4248
  • Common: Remove dependency on helidon-common-reactive from config (#4225) 4229
  • Cleanup: Fix code with 'TODO 3.0.0-JAKARTA' comment 4447
  • CORS: Preserve order of mapped cross-origin config path entries from config; add test 4431
  • CORS: Correct return of path from MP CORS request adapter; add test 4435
  • CDI: Updates all beans.xml files to version 3.0 4404

This is the second milestone release of Helidon 3.0. It contains significant new features, enhancements and fixes. It also contains backward incompatible changes. (see Compatibility below). This milestone release is provided for customers that want early access to Helidon 3.0 for experimentation. It should be considered unstable and is not intended for production use. APIs and features might not be fully implemented and tested and are subject to change. Documentation is incomplete. Those looking for a stable release should use Helidon 2.

Notable changes:

  • MicroProfile 5.0 support
  • javax to jakarta Java package namespace change for Jakarta 9 APIs
  • Java 11 no longer supported. Java 17 or newer is required.

Compatibility

3.0.0-M2 contains the following incompatibilities with 2.x:

  • Java 17 or newer is required
  • Java package namespace for Jakarta APIs has changed from javax to jakarta

CHANGES from M1

  • BV: Support of Bean Validation in Helidon MP #721 3780
  • CDI: Abstract decorator class now gets correct proxy name in Weld 4148
  • CORS support to OidcSupport (#3844) 3871
  • CORS: CORS @CrossOrigin checking and request-time performance improvements 3932
  • CORS: Compare origin URLs based on protocol, host and port 3934
  • Common: Improve threadNamePrefix defaulting to be more informative (#4165) 4166
  • Config: Fix retention of @Configured 4115
  • Config: Support for Hocon inclusion of files without an extensions 4168
  • Config: Turn off reference resolution/substitution at parser level 4175
  • Config: Fixed problem supporting config profiles with JSON and HOCON 3958
  • Config: fixed manifest and documentation for Helidon Config Encryption 4013
  • Config: hocon include 3998
  • Fault Tolerance: Fixed a few problems with Fallback and Multi's 4176
  • GraphQL: Enable mp-graphql tck with 2.0-RC3 of Microprofile GraphQL Spec 4147
  • Health: HEAD support to health endpoints 3936
  • JAX-RS Client: Jersey JAX-RS client context propagation #3762 3865
  • JAX-RS: Follow up to PR 3921 that adds support for base interfaces as well 3982
  • JAX-RS: Search for @Path annotations in base classes 3921
  • LRA Custom headers propagation #3702 (#3768) 3877
  • Media: Fix body part header encoding 3969
  • Media: MimeParser parses closing boundary as normal boundary 3968
  • Media: Remove buffered multipart 4103
  • Media: Update MediaType parser to handle parameter without value 3999
  • Messaging - Fix badly subscribed connector to processor signature 3957
  • Messaging - signature detection fix #3883 3x 3973
  • MicroProfile: Messaging 3.0 4091
  • Native image: Native image configuration reflection update for Jaeger 4117
  • OpenAPI: Replace dep on SmallRye pom with deps on 2 artifacts (3.0) 4010
  • Security: Correctly resolve OIDC metadata. (#3985) 4006
  • Security: Do not fail when expected audience is null 4160
  • Security: Fix JwtProvider wrong error message 4136
  • Security: Fixed builder from configuration in OutboundTargetDefinition 3919
  • Security: Injection of empty SecurityContext 4161
  • Security: New security response mapper mechanism 4093
  • Tests: Fixed dbclient integration tests build issues. 4100
  • Tests: possible fix for HttpPipelineTest hang 4143
  • Tracing: Disable paths such as /metrics and /health from tracing 3977
  • Tracing: Enable OpenTracing 2.0 TCKs 3962
  • Tracing: Fix #3966 set collectorUri() with URL with no port number adds port 3993
  • WebClient: Case insensitive client request headers fix 4108
  • WebClient: MDC propagation 4109
  • WebClient: hang fix 3997
  • WebServer: Allow a list of path patterns to be specified for exclusion in the access log3959
  • WebServer: Do not log full stack traces in SEVERE when a connection reset is received 3918
  • WebServer: Explicit 404 in Jersey no longer calls next() 3976
  • WebServer: Upgrade WebSocket from Java HttpClient 3994
  • Dependencies: Jersey version bump to 3.0.4 3884
  • Dependencies: MySQL JDBC driver updated to 8.0.28 and PostgreSQL JDBC driver updated to 42.3.3. 4098
  • Dependencies: Upgrade Jackson Databind to 2.13.2.1 (BOM 2.13.2.20220324) 4028
  • Dependencies: Upgrade Netty to 4.1.76.Final 4121
  • Dependencies: Upgrade grpc-java to 1.45.1 4150
  • Dependencies: Upgrade snakeyaml and typesafe-config 3941
  • Docs: Add discussion of Helidon-specific config settings to MP OpenAPI doc 3955
  • Docs: Describe more Scheduled properties 4043
  • Docs: Fix guide broken links and typos 4119 4133
  • Docs: Fix guide. Change JPA Scope. 4170
  • Docs: JBatch guide for issue 2785 3895
  • Docs: README: Update JDK and mvn versions for build 3946
  • Docs: SecMP JWT Auth and Rest Client spec links updated 4005
  • Docs: fixed links in the cards for extensions 3930
  • Docs: updated link to the new spec for issue 3899 3909
  • Examples: Fix deps in jpa examples and do other cleanup 4132
  • Examples: JBatch example for 3927
  • Examples: Quickstart cleanup, using @HelidonTest in MP. (#4011) 4014
  • Examples: Removed incorrect call to indexOf 3920
  • Examples: Update quickstart Dockerfiles 4088
  • Examples: Use OBJECT schema type with requiredProperties in Quickstart MP 4151

This is the first milestone release of Helidon 3.0. It contains significant new features, enhancements and fixes. It also contains backward incompatible changes. ( see Compatibility below). This milestone release is provided for customers that want early access to Helidon 3.0 for experimentation. It should be considered unstable and is not intended for production use. APIs and features might not be fully implemented and tested and are subject to change. Documentation is incomplete. Those looking for a stable release should use Helidon 2.

Notable changes:

  • MicroProfile 5.0 support
  • javax to jakarta Java package namespace change for Jakarta 9 APIs
  • Java 11 no longer supported. Java 17 or newer is required.

Compatibility

3.0.0-M1 contains the following incompatibilities with 2.x:

  • Java 17 or newer is required
  • Java package namespace for Jakarta APIs has changed from javax to jakarta

CHANGES

  • Common: Builder API updates. 3641
  • Config: 3542 iterable configuration option 3600
  • Config: MicroProfile Config 3.0 3644
  • Config: Support for mutable file based MP config sources. (#3666) 3730
  • DBClient: Fix dbclient threading issues when DML operations are executed multiple times in a tight loop 3849
  • Fault Tolerance: Implementation of Fault tolerance 4.0 3664
  • Fault Tolerance: Improved support for cancellation of FT handlers 3680
  • Fault Tolerance: Only deactivate request context if it was inactive before migrating it (master) 3825
  • Grpc: Remove SecurityManager and AccessController dependencies in Grpc 3685
  • Health: Add support for Health 4.0 3707
  • JAX-RS: Handle creation of InjectionManager when parent is a HelidonInjectionManager 3755
  • JAX-RS: Special treatment for ParamConverterProviders with multiple apps (master) 3857
  • Java 17: change sources to Java 17 3633
  • LRA: Bump up to jakartified LRA 2.0 3769
  • LRA: Missing wget in the coordinator's docker base image 3703
  • Logging: HelidonFormatter constructor made public 3609
  • Metrics: Add incorrectly-omitted tags to OpenMetrics (Prometheus) output for timers 3643
  • Metrics: Fix some remaining problems with disabling metrics, mostly deferring access to RegistryFactory (3.0) 3665
  • Metrics: Implement metrics for thread pool suppliers (3.0) 3652
  • Metrics: Metrics 4.0 implementation 3847
  • Metrics: Move scheduling of metrics periodic updater so it is run in MP as well as in SE (3.x) 3733
  • Metrics: Prepare RegistryFactory lazily to use the most-recently-assigned MetricsSettings (3.0) 3661
  • Metrics: SamplerType now public. 3788
  • Metrics: Suppress warning when metrics PeriodicExecutor is stopped multiple times (e.g., during tests) 3617
  • Metrics: add missing tags for Prometheus output of timers 3647
  • MicroProfile: Update MP specs to latest versions 3670 3743
  • MicroProfile: jakarta packages 3635
  • Native-image: Update native-image.properties for webserver and Netty 3772
  • OpenAPI: Catch all exceptions, not just IOException, when unable to read Jandex file 3626
  • OpenAPI: Redesign the per-application OpenAPI processing 3615
  • OpenAPI: Support MP OpenAPI 3.0 3692
  • Reactive: Multi defaultIfEmpty 3592
  • Scheduling: SE Scheduling remove synchronized 3564
  • Security: Fix proxy configuration. (#3749) 3761
  • Security: JWK keys lazy load 3751
  • Security: JWT Auth 2.0 impl 3872
  • Security: SignedJwt's parseToken() expects characters from base64 instead of ba… 3722
  • Security: Upgrade MicroProfile JWT to 2.0 from 2.0-RC2 3779
  • Test: TestNG support (#3263) 3672
  • Tracing: Close active span if an exception is thrown in client request processing 3725
  • WebClient: Do not create close listener handlers for every new request (master) 3859
  • WebClient: Netty order of writes #3674 3681
  • WebClient: Propagate any existing server context into a Webclient reactive code (master) 3804
  • WebClient: event group initialization changed 3820
  • WebServer: 3640 Netty mixed writing (#3671) 3679
  • WebServer: Allow compression to be enabled together with HTTP/2 3700
  • WebServer: Ensure all thread pools created by Helidon are named 3794
  • WebServer: Fix wrong connection close (#3830) 3866
  • WebServer: New default for io.netty.allocator.maxOrder (master) 3826 3834
  • WebServer: Swallowed error fix 3791
  • WebServer: Provide access to client x509 certificate when under mTLS 4185
  • Webclient: New flag to force the use of relative URIs in WebClient 3614
  • Dependencies: Bump up cron utils 3677
  • Dependencies: Upgrade Neo4j to 4.4.3. for Helidon 3.x 3863
  • Dependencies: Upgrade grpc-java to 1.44.0 3856
  • Dependencies: Upgrade logback to 1.2.10 3889
  • Dependencies: Upgrades H2 to 2.0.206. 3744
  • Dependencies: Upgrades Netty to 4.1.73.Final 3797
  • Dependencies: Upgrades log4j to 2.17.1 3777
  • Doc and JavaDoc fixes for #3747 and #3687. 3767
  • Docs: Documentation SE : Webclient guide 3189
  • Docs: LRA doc fix artefact and group ids 3688
  • Docs: New section about injection managers in docs (master) 3858
  • Docs: Update external Jakarta EE javadoc links 3709
  • Docs: javadoc: Add additional microprofile crossreferences 3715
  • Docs: macos quarantine and JDK version 3878
  • Examples: Archetype v2 3874
  • Examples: Fix examples/grpc/metrics project with native-image #3759 3803
  • Examples: Support Gradle application plugin in quickstart examples 3612
  • Examples: Update bare-mp archetype to use microprofile-core 3795