This is the sixth 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 virtual threads. Helidon 4.0.0 is a major release that includes significant new features and fixes. As a major release it also includes backward incompatible API changes.
Java 20 or newer is required to use Heldon 4.0.0-ALPHA6. Also you will need to run your application with --enable-preview
.
CHANGES
- Common: Use helidon-common-config where possible/applicable 6448
- Config: Escape the key when copying a config node 6296
- Logging: Logging properties file clean up 6367
- Logging: Remove FileHandler from logging.properties 6364
- Messaging: 6303 JMS JNDI destination support 6305
- Pico: Builder define default methods 6294
- Pico: Pico and Builder Exception conventions 6525
- Pico: no arg constructor support on pico interceptors 6552
- Pico: pico runtime services 5750
- Pico: renaming pico module names and api package names 6573
- WebClient: Complete shortcut methods for all HTTP methods for the WebClient 6358
- WebClient: Forward port of DNS resolver for Webclient 6551
- WebClient: HTTP/2 Client with flow-control 6399
- WebClient: Improve ClientRequestImpl 6208
- WebServer: Add requested URI discovery support 6030
- WebServer: Added shortcut methods for registering
MediaSupport
6564 - WebServer: Capture and propagate the CCL in ThreadPerTaskExecutor 6322
- WebServer: Complete Webserver HTTP routing shortcut methods 6404
- WebServer: Do not split headers and payload into two different buffers 6491
- WebServer: Error handling removed from the filter chain 6415
- WebServer: Fix artifact ID, typo in name 6494
- WebServer: Handle zero or more spaces after commas when parsing Accept-Encoding 6380
- WebServer: Issue 5383: Added Content-Encoding header check when content encoding is disabled. 6267
- WebServer: Issue 6278: Programmatically control media providers with Nima WebServer 6412
- WebServer: Jackson media support for Níma 6432
- WebServer: Make size of header buffer independent of payload size 6475
- WebServer: Nima media support 6507
- WebServer: SSE API and implementation in Nima 6096
- WebServer: Wrap underlying output stream with a buffered one whose buffer size is configurable 6509
- WebSocket: Renamed receive() method to onMessage() in WsListener 6571
- Build: Upgrade Java to 20 GA 6474
- Dependencies: Adopt SnakeYAML 2.0; add integration tests for reactive and Nima 6535
- Dependencies: JWT-Auth upgrade to 2.1 version 6268
- Dependencies: Upgrade graphql-java to 17.5 6540
- Docs: Add new dirs and docs for Nima 4 6398
- Docs: Created Nima dir for docs 6306
- Docs: New documenation for FT in Nima 6565
- Docs: New document that describes Nima's SSE APIs 6332
- Docs: Remove claim that metrics are propagated from server to client 6361
- Examples: Add OCI MP Archetype (4.x) 6147
- Examples: Update mustache format in archetype files 6286
- Tests: Fix RC in JMS error test 6375
- Tests: JMS intermittent test fix 6392
- Tests: Re-enable tests 6359 6355 6356 6357
- Tests: TestDisabledMetrics.java in microprofile/metrics 6436
- Tests: TestExtendedKPIMetrics.java from microprofile/metrics as it i… 6437
- Tests: Update bookstore test for Nima to add jsonb and jackson media 6577
- Tests: Use Hamcrest assertions instead of JUnit in examples/todo-app (#1749) 6293 and others
- Tests: nima bookstore test 6349