Releases: helidon-io/helidon
2.3.0
2.3.0 is a minor release of Helidon that contains bug fixes and enhancements. Notable enhancements:
- HashiCorp Vault support (Experimental)
- Oracle OCI Vault support (Experimental)
- Oracle OCI Object Storage support (Experimental)
- Neo4J support (Experimental)
- Micrometer metrics support (Experimental)
- gRPC native image support
- Reloadable WebServer TLS certificates
- New metric: Exemplars
- Scheduling feature to schedule periodic tasks
- Performance improvements for JAX-RS applications with large number of concurrent connections
Experimental feature APIs are subject to change.
Users of the current OCI Object Storage extension (helidon-integrations-cdi-oci-objectstorage
) are encouraged
to look at the new OCI Object Storage support (helidon-integrations-oci-objectstorage
). The old OCI object
storage support will be deprecated in a future release.
Compatibility
2.3.0 is API compatible with 2.2.0.
There is a behavior change related to Java marshalling in gRPC. io.helidon.grpc.core.JavaMarshaller
has
been deprecated and disabled by default. It's use is not recommended for production and it will be removed
in Helidon 3.0. If you need to use the JavaMarshaller you can re-enable it by setting the
grpc.marshaller.java.enabled
configuration property to true.
CHANGES
See CHANGELOG
2.2.2
2.2.2 is a bugfix release of Helidon. In addition to fixing various bugs it contains a security fix for an issue concerning the use of security annotations (such as @Denyall, @RolesAllowed) on JAX-RS Applications and sub-resource locators that are discovered by CDI. See issue 2903 for more details.
This upgrade is recommended for all users of Helidon 2.
Compatibility
2.2.2 is API compatible with 2.2.0.
CHANGES
- WebClient: keep-alive minor improvements 2882
- WebClient: Keep alive default value changed to true 2775
- Security: Obtain the actual class when instance is injected by CDI 2897
- MicroProfile Server: Remove standard output. 2780
- Metrics: Avoid NaN values causing problems in metrics output 2812
- Logging: Slf4j MDC context propagation with null MDC map fixed 2861
- JAX-RS: Use one of Jersey's implementations of PropertiesDelegate 2756
- Fault Tolerance: New RequestScopeHelper class to track request scopes across threads 2856
- Dependencies: Upgrade Netty to 4.1.59.Final 2793
1.4.8
This is a bug fix release of Helidon. It contains fixes and a number of dependency upgrades.
We recommend all Helidon 1.4 users upgrade to this release.
Fixes
- Config: AbstractDataSourceExtension now uses Config.getPropertyNames() 2350
- Config: Fix issue with null value in JSON. 2728
- Jersey: Added support for remote host and port to jersey and security 1.x 2369
- Jersey: Enable ignoreExceptionResponse property 2776
- Metrics: Fix JSON conversion error during metrics formatting after idle period 2817
- Security: Fix for P-521 curve - wrong id 2280
- Security: Overall timeout for EvictableCache 2667
- Security: Security now has higer priority 2298
- WebServer: Fix hangs when bad request was sent. 2261
- gRCP: Fix issue with gRPC clients and services where method signatures have types with nested generics 2356
- Dependencies: Update Prometheus Java Client to 0.9.0 2420
- Dependencies: Update Hibernate and Eclipselink 2655
- Dependencies: Upgrade Jackson to 2.10.5 with 2.10.5.1 databind 2684
- Dependencies: Upgrade Jersey to 2.33 2776
- Dependencies: Upgrade Jaeger to align with opentracing version. 2366
- Dependencies: Upgrade Netty to 4.1.59 2679 2794
- Dependencies: Upgrade google-api-client snakeyaml apache-httpclient 2654
- Dependencies: Upgrade grpc to v1.35.0 2722
- Dependencies: Upgrade guava to 30.0-jre 2658
- Dependencies: Upgrade JUnit4. 2454
- Dependencies: Upgrade OCI SDK to version 1.31.0 2700
- Dependencies: Upgrade mysql connecter to 8.0.22 2788
- Dependencies: remove weld-probe 2664
- Documentation: Improve doc for built-in health checks 2562
- Build: Add dependency-check-maven plugin 2569
- Tests: Added timeouts to client, webserver and tests to identify intermitten… 2305
2.2.1
2.2.1 is a bugfix release of Helidon. It contains bug fixes, performance fixes and dependency upgrades.
Compatibility
2.2.1 is API compatible with 2.2.0.
CHANGES
- Config: Fix issue with null value in JSON. 2723
- Config: Fix null array values in HOCON/JSON config parser. 2731
- Dependencies: Re-organize dependencyManagement 2646
- Dependencies: Update Jackson to 2.12.1 2690
- Dependencies: Upgrade Netty to 4.1.58 2678
- Dependencies: Upgrade Weld 2668
- Dependencies: Upgrade grpc to v1.35.0 2713
- Dependencies: Upgrade to Jersey 2.33 and set of client property 2727
- Dependencies: Upgrades OCI SDK to version 1.31.0 2699
- Examples: Fix TODO application: 2708
- Examples: Fix WebServer Basics example 2634
- Examples: Fixed different output in DbClient SE archetype 2703
- Examples: PokemonService template fixed in SE Database Archetype. 2701
- Fault Tolerance: Do not attempt to access the request context in Fallback callback 2748
- Jersey: Allow override of Jersey property via config 2737
- K8s: Update k8s descriptors to avoid using deprecated APIs 2719
- Metrics: Support async invocations using optional synthetic SimplyTimed behavior 2745
- Micronaut extensions: micronaut data with ucp 2572
- Performance: New implementation of LazyValue 2738
- Performance: Properly release underlying buffer before passing it to WebSocket handler 2715
- Performance: improvements to queue(s) management in Webserver 2704
- Reactive: Concat array enhancement 2508
- Rest Client: Rest client async header propagation with usage of Helidon Context 2735
- Security: Added overall timeout to evictable cache 2659
- Testing: Proves that environment variable overrides work with our MicroProfile Config implementation 2648
- Testing: Separate execution of DataChunkReleaseTest in its own VM 2716
- WebServer: Lays the groundwork for permitting other Netty transports 2478
- Build: Manage versions of version plugin and helidon-maven-plugin 2626
2.2.0
2.2.0 is a minor release of Helidon. It contains bug fixes and enhancements. Notable enhancements:
- Experimental: Micronaut extension support 2467
- Experimental: Graph QL Support 2504
- Experimental: Loom (VirtualThread) support in Helidon MP 2417
Experimental features are ready for use, but their APIs should be considered unstable and
subject to change.
Compatibility
2.2.0 is API compatible with 2.1.0.
CHANGES
- WebServer: Support for a max payload limit on client requests 2491
- WebServer: Add a shutdown hook to executor service in JerseySupport 2505
- WebServer: Fix Request chunks emitted after response is completed are not released 2605
- WebServer: Support for HTTP pipelining 2591
- WebClient: Methods contentLength and transferEncoding added 2490
- WebClient: Double query escaping in WebClient fixed 2513
- Tracing: add tags before span start in jersey ClientTracingFilter #1942 2512
- Tracing: Make sure span.finish() is not called twice 2466
- Tests: Fix pom.xml of helidon-microprofile-tests-junit5 2485
- Tests: Convert tests to use the new infrastructure 2498
- Tests: Adds a unit test proving that multiple persistence units can be injected 2503
- Tests: Address intermittent test failures 2517
- Security: Using the default keystore type instead of JKS 2536
- Security: Support for overriding configuration of security providers 2511
- Security: Global context and its use in Security 2549
- Security: Fixed docs and impl - outbound security 2538
- Security: Honoring disabled security through configuration for OIDC support 2577
- Micronaut integration 2467 2602
- Metrics: Add vetoed-bean support to metrics CDI extension 2507
- Messaging: Messaging discrepancies 2453
- Messaging: Make JmsMessage builder methods accessible 2617
- Messaging: JMS Reactive Messaging connector 2282
- Messaging: AQ acknowledgement propagation fix 2623
- Messaging: Native image compatible Kafka connector #2346 2555
- Messaging: Jms connector SE api 2543
- Media: Json stream writers 2523
- Loom: Initial stab at incorporating some Loom features into Helidon in a way that will work under JDK 11 or 16-loom-ea 2417
- Logging: MDC logging support 2479
- Logging: Examples of logging with Helidon 2533
- JPA: PostgreSQL driver support for JPA/Hibernate in native image 2596
- JPA: MySQL driver support for JPA/Hibernate in native image 2557
- Health: Add messaging health dependency to bom 2556
- Fault Tolerance: Revised logic for handling request scopes and contexts in Jersey/HK2 2534
- Fault Tolerance: Request scope propagation for non-async calls in FT 2495
- Fault Tolerance: Do not create and cache handlers for fallbacks 2546
- GraphQL: Experimental Graph QL Support 2504
- Examples: Make example Kafka working on MAC 2541
- Examples: Fix uses of jlink-image directories to use new "-jri" suffix. 2469
- Examples: Using config reference instead of ${ALIAS= 2579
- Examples: Logging setup in examples and templates 2583
- Docs: Updated path reference to fix the broken link. 2509
- Docs: Update jlink guide with .jmod requirement. 2535
- Docs: Update doc's microprofile version to 3.3 2488
- Docs: Some minor doc improvements 2527
- Docs: SE intro: fixed typo 2545
- Docs: Increase visibility of Getting started in Overview 2568
- Docs: Improve doc for built-in health check thresholds, etc. 2559
- Docs: Helidon SE OIDC Security provider guide 2310
- Docs: Helidon MP OIDC Security provider guide 2311
- Docs: Fix instructions for enabling JSON-P for Health-Checks. 2528
- Docs: Updating JTA and JPA guides 2570
- Docs: Misc fixes 2616 2615 2573
- Dependencies: Exclude jakarta.ejb-api 2595
- Dependencies: remove weld-probe-core 2506
- Dependencies: Upgrade Hibernate to 5.4.25.Final 2575
- Dependencies: Upgrade GraalVM 2510 2514
- Dependencies: Upgrade apache-httpclient, google-api-client and snakeyaml 2482
- Dependencies: Upgrade Guava version to 30.0-jre 2620
- Dependencies: Update ojdbc deps 2530
- Dependencies: Move scala dep from bom 2542
- Dependencies: Add dependency-check-maven plugin 2472
- Dependencies: Import ojdbc deps with bom 2588
2.1.0
2.1.0 is a minor release of Helidon. It contains bug fixes and enhancements. Notable changes:
- MicroProfile 3.3 support
- New Helidon SE Fault Tolerance implementation. This replaces Hystrix in the MicroProfile
Fault Tolerance implementation. See documentation for more details. @HelidonTest
Junit5 test extension. This extension manages the lifecycle of the Helidon microprofile server in your Junit5 tests.
Compatibility
2.1.0 is API compatible with previous releases of 2.0. There are some minor
behavioral changes:
- Security: To remove accidental propagation of identity, all security providers that
support outbound security were updated to only do outbound security when configured
so. All of these providers now have anoutbound
configuration section that can
define outbound targets. Documentation of providers was updated to match this new
approach and is available in both MP and SE docs. - Custom jlink images produced by the
helidon-mave-plugin
now have a-jri
suffix.
So the path to start your application looks something like:
target/helidon-quickstart-se-jri/bin/start
CHANGES
- Config: Git config native-image support 2400
- Config: Injection of web target with correct endpoint. 2380
- Config: Config now supports merging of objects and lists 2448
- DBClient: integration tests for MySQL, MadiaDB, PostgreSQL and MS SQL 2383
- DBClient: Fix NPE on error in tx 2286
- DataSource: Use Config.getPropertyNames() instead of retrieving getPropertyNames() from ConfigSources 2322
- Fault Tolerance: Implementation of MP FT 2.1.1 using FT SE 2348
- Fault Tolerance: Limit module visibility by making several classes package private 2359
- Fault Tolerance: Name support for all those operations that implement FtHandler 2404
- Fault Tolerance: Updated test to verify @CIRCUITBREAKER does not interfere with request scope 2387
- Fault Tolerance: Updates to FT tests to take advantage of @HelidonTest 2370
- JAX-RS: Allow user-provided CDI extensions to veto JAX-RS classes 2429
- JAX-RS: Jersey update to version 2.32 2406
- Media: DataChunkedInputStream deadlock protection removed 2401
- Media: Update MediaType, lazy non known type, read-only parameters map 2308
- Media: media-jackson native-image support 2385
- Messaging: Messaging health check 2352
- Messaging: Log Kafka sending error which caused channel cancel 2447
- Metrics: Avoid race condition by using ConcurrentHashMap 2435
- Metrics: Update release of Prometheus Java client (in 2.x) 2419
- Native Image: When class is annotated with @MappedSuperclass, its private fields can't be accessed from JPA with native image 2127
- Native image: Tyrus server support for native-image in SE 2097
- Native image: Windows native-image fix 2336
- Native image: Use latest version for helidon plugin to include native image fix. 2374
- OpenAPI: Use CDI to instantiate Application classes to invoke getClasses 2325
- Reactive: Multi discrepancies 2413
- Reactive: Single.never not singleton 2349
- Security: Added support for remote host and port to jersey and security 2.x 2368
- Security: Disable automatic propagation from security providers 2357
- Security: OIDC fixes 2378
- Security: Support for methods in outbound targets. 2335
- Testing: Intermittent test failure fix 2347
- Testing: MP Testing 2353
- Testing: Update surefire and failsafe to 3.0.0-M5 2307
- Testing: Junit4 upgrade 2450
- Tracing: Update to later release of MP OpenTracing 2313
- WebClient: Changes of the request via WebClientService are now propagated 2321
- WebClient: Webclient uses relative uri in request instead of full uri 2309
- WebServer: ClassPathContentHandler can survive tmp folder cleanup 2361
- WebServer: Enable support for HTTP compression in the webserver 2379
- WebServer: Secure static content 2411
- WebServer: WebSocket Extensions 1934
- WebServer: Public API to get absolute URI of the request 2441
- WebServer: Attempt to start a stopped server will fail with IllegalStateException 2439
- gRPC: Fix issue with gRPC clients and services where method signatures have types with nested generics 2283
- gRPC: Update gRPC Version 2388
- CDI: Service class fixed. 2317
- CDI: CDI.current().getBeanManager() now available during shutdown 2438
- Examples: Fix 2391 Bug in generated Dockerfile.native from quickstart-mp 2393
- Examples: Update standalone quickstarts. 2360
- Examples: Updated maven surefire plugin to helidon-standalone-quickstart-mp 1849
- Documentation improvements: 2428 2399 2410 2390 2329 2397 2367 2363 2351 2328 2457 2443
2.0.2
2.0.2 is a bug fix release to Helidon 2.0. It contains bug fixes and minor enhancements.
This release upgrades MicroProfile support to Health 2.2 and Metrics 2.3.2.
This release contains experimental support for fault tolerance APIs in Helidon SE. These
APIs are unstable and will likely change in future releases.
Changes
- WebServer: Added support for HTTP PATCH on Helidon SE 2284
- WebServer: Redundant filter execution fix 2276
- WebServer: Use all configured fields. 2192
- WebServer: Upgrade to Netty 4.1.51 2204
- WebServer: Form params ampersand and no value fix 2227
- WebServer: Fix failures caused by memory leak when sending bad requests. 2260
- WebServer: Configuration of server socket(s) 2189
- WebServer: to enable netty log handler output, please use logger
io.helidon.webserver.NettyWebServer$NettyLog
and set it toFINEST
level - WebClient: Native smoke test for webclient 2112
- WebClient: Intermittent test failure with keep-alive enabled fix 2238
- WebClient: redirection to path fix 2150
- WebClient: request id added and logging messages updated 2257
- WebClient: support keep-alive 2139
- WebClient: to enable netty log handler output, please use logger
io.helidon.webclient.NettyClientInitializer$ClientNettyLog
and set it toFINEST
level - Security injection in application scope. 2154
- Security: Fix for P-521 curve - wrong id 2.x 2281
- Security can now be disabled. 2157
- Security CDI extension has higher priority 2299
- Reactive: Allow cancellation of Future's wrapped in Single's and vice versa 2288
- Reactive: Flaky MultiFromNotTrustedInputStreamTckTest fix 2218
- Reactive: Debugging log operator 1874
- Reactive: Single add forSingle and exceptionallyAccept 2121
- Reactive: Kafka connector topic pattern 2242
- Reactive: Buffer single-byte writes in MultiFromOutputStream for better performance 2133
- Reactive: Backpressure counter race condition fix 2250
- Native image update 2078
- Native Image: Support for non-String parameters in JAX-RS for native image 2303
- Metrics: Remove FinalRegistry and its use for the base registry; part of move to MP metrics 2.3 2188
- Metrics: Missing metric 2235
- Metrics: Fixes a few problems in metrics 2240
- Metrics: Add support for MP Metrics 2.3 2245
- Messaging: Kafka message default ack npe fix 2252
- Media Support: Upgrade Jackson to 2.11.1 2162
- Meida Support: Upgrade Yasson to 1.0.8 2254
- Media Support: Multipart postfix fix 2233
- Media Support: Multipart decoder rework 2193
- Media Support: Media support for forms improved 2144
- Media Support: Flush streamed datachunk one by one 2129
- JPA: Upgrading to the latest version of the Eclipselink Maven plugin and aligning Eclipselink version to correspond with it. 2138
- JPA: Upgrade Hibernate to 5.4.18.Final 2212
- JPA: Use Session.getDatasourceLogin() instead of Session.getLogin() in CDISEPlatform.java 2263
- Health: Support MP health 2.2 2264
- Health: Health check now non-blocking using fault tolerance async and timeout 2237
- Fault tolerance for SE (experimental) 2120
- Fault Tolerance: Location of the default value for header validation changed 2228
- Fault Tolerance: Make sure request scope is propagated to newly created threads in FT 2229
- Examples: Add app.yaml to quickstart archetypes. Update k8s support in docs. 2141
- Examples: Update microprofile examples to use microprofile-config.properties 2163
- Examples: Swapped ports in mutual TLS example 2184
- Examples: Quickstart gradle fixes 2214
- Examples: Change Dockerfiles to use maven.test.skip (not skipTests) 2135
- Examples: Add -Declipselink.weave.skip to quickstart Dockerfiles 2146
- Docs: update MP tutorial to be correct for Helidon 2.0 2152
- Docs: replaced table with new cards/icons 2185
- Docs: fix minor issues #2081 #427 2119
- Docs: Move CLI documentation to a single page under About 2148
- Docs: Minor doc fixes #2093 #2086 #2085 2118
- Docs: Migration Guides: add section for Getters returning Optional. Fix code blocks. 2217
- Docs: Corrected dependency information in the JPA guide for MP. 2198
- Docs: #2221 Fixes API reference in Metrics docs 2232
- Docs: tls updates 2256
- CLI: Create cli-data for snapshot builds 2137
- CDI: Upgrade Weld to 3.1.4 2177
- CDI: Support for bean producers in different package than beans that have … 2241
- CDI: Introduces an ExecutorServices implementation to Helidon's repackaged Weld implementation to ensure context classloaders are never null 2269
- Archetypes: Properly use path() when creating invocations 2116
- Archetypes: Added to avoid warnings 2117
- Tests: Weaken test assertion for executions in very slow systems 2287
- Tests: Set junit4 version where used. Fixes #2289 2290
- Tests: Removed unnecessary plugin versions, now inherited. 2181
1.4.7
This is a bug fix release of Helidon.
Fixes
2.0.1
2.0.1 is a minor bug fix release to Helidon 2.0.0. This release fixes a
key issue in Config as well as some issues in documentation and
example archetypes.
Fixes
- Config: Support for SE mappers in MP. 2091
- Archetype fails on maven version detection on some Linux distributions 2102 2106
- Archetypes: Some fixes and improvements to the db archetypes 2100
- GraalVM: Update docs, READMEs, Dockerfiles to graalvm 20.1.0 2103
- Docs: add basic documentation for CLI 2101 2094
2.0.0-RC2
Notes
This is the second release candidate of Helidon 2.0.
This release focuses on documentation, bug fixes, performance fixes and cleanup.
Changes
Please see the 2.0.0-RC2 CHANGELOG for details.