Quarkus 2.6.0.Final 发布 - SmallRye Reactive Messaging 3.13 和 Kafka 3,缓存的编程 API,Kotlin 1.6 以及更多!

我很高兴地宣布 Quarkus 2.6.0.Final 的发布,其中包含了一些不错的改进。

  • 一些扩展已移至 Quarkiverse Hub

  • SmallRye Reactive Messaging 3.13 和 Kafka 3

  • 缓存的编程 API

  • 原生可执行文件的镜像更小

  • 内置 UPX 压缩

  • AWT 扩展

  • Kotlin 1.6

  • Camel 3.14

由于我们的发布计划安排方式,Quarkus 2.6.0.Final 不包含 Quarkus 2.5.4.Final 的修复。我们将在周五发布 Quarkus 2.6.1.Final,其中包含所有这些修复以及更多内容。

迁移指南

要从 2.5 进行迁移,请参考我们的迁移指南

有什么新功能?

扩展已移至 Quarkiverse Hub

在 Quarkus 项目的早期,我们没有任何可以妥善托管 Quarkus 项目之外的扩展的机制,也没有基础架构,例如在 code.quarkus.io 上展示外部扩展。

从那时起,我们取得了很大进展,并且已经具备了支持外部扩展的一切条件,无论它们托管在 Quarkiverse Hub 中还是其他组织/仓库中。

事实上,核心已经变得非常庞大(1000 多个 Maven 模块),进入门槛很高,无论是为核心本身贡献还是为其中较小的扩展贡献。

我们决定将一些扩展移至 Quarkiverse Hub,以便更容易贡献,并允许我们减小核心仓库的大小。

已迁移的扩展包括:

我们已尽最大努力确保更改无缝进行,通过配置 Maven 迁移。因此,您的应用程序应该仍然可以正常工作,您将看到一个警告,要求您迁移到新扩展。如果您在迁移过程中遇到任何问题,请报告,我们将进行查看。

您可以在我们的迁移指南中找到有关如何迁移到新扩展的更多信息。

如果您正在使用这些扩展,非常欢迎您为它们做出贡献,现在贡献更容易,并且不需要构建整个 Quarkus!

通过 Ecosystem CI 和 status.quarkus.io,我们能够跟踪它们与最新 Quarkus 版本的兼容性。

Quarkiverse Hub 是社区维护的扩展的家园。除其他外,它为构建和发布扩展以及托管文档提供了良好的基础架构。

如果您想与他人分享开源 Quarkus 扩展,这是一个很好的归宿。如果您想为 Quarkus 做贡献,为托管在 Quarkiverse Hub 上且您感兴趣的扩展做贡献是一个很好的开始。

SmallRye Reactive Messaging 3.13

SmallRye Reactive Messaging 已升级到 3.13,Kafka 客户端已升级到 3.0.0。

缓存的编程 API

虽然花了一些时间才实现,但与我们长期以来一直支持的缓存注解支持一起,现在缓存扩展提供了一个缓存的编程 API。

您可以在指南的专用部分中了解更多关于它的信息。

原生可执行文件的镜像更小

我们的原生可执行文件 Dockerfile 现在使用 quay.io/quarkus/quarkus-micro-image:1.0 作为基础镜像。该镜像基于UBI Micro,并减小了原生镜像的大小。

UPX 压缩

Quarkus 2.6 增加了对原生可执行文件内置 UPX 压缩的支持。虽然它有一些优点,但请注意它也伴随着代价。Clément 在他的专用博客文章中对此进行了详细解释。

AWT 扩展

我们在 AWT 对原生可执行文件的支持方面取得了很大改进,现在您拥有了一个专门的扩展 quarkus-awt。如果您在原生环境中进行 AWT 工作,请将其添加到您的应用程序中。

生成项目中的 Java 17

到目前为止,我们都使用 Java 11 作为编译源/目标来生成所有项目。现在,对于使用 Java 17 生成的项目,我们将编译源/目标定义为 Java 17。

Kotlin 1.6

我们将 Kotlin 升级到了 1.6。

Camel 3.14

Camel 3.14 是 Camel 的新 LTS 版本。与之前的 LTS 版本 (3.11) 相比,为带来新组件、Camel Jbang 和 Java 17 支持做了大量工作。在核心性能、Route 配置以及 Kamelets 和 Kafka 等许多组件方面都进行了改进。有关更多详细信息,请查看Apache Camel 3.14 有什么新内容

Camel JFR 原生支持

Camel JFR 扩展允许使用 Java Flight Recorder 诊断 Camel 应用程序。该扩展已在 Camel Quarkus 1.7.0 中引入,仅支持 JVM。该扩展现在在 JVM 模式和原生模式下均完全受支持。

贡献者

Quarkus 社区不断壮大,目前已有 577 位贡献者。非常感谢他们中的每一位。

特别感谢 2.6 版本中的贡献者:Alexey Loubyansky, Andy Damevin, Bill Burke, Brian Wyka, Carles Arnal, Chris Cranford, Clara Fang, Clement Escoffier, Corentin Arnaud, Cristiano Nicolai, David Andlinger, Davide, Domagoj Tršan, Eric Deandrea, Erin Schnabel, Falko Modler, Florian Heubeck, Foivos Zakkak, Freeman Fang, Fu Cheng, Galder Zamarreño, Geoffrey GREBERT, George Gastaldi, Georgios Andrianakis, Gopal, Guillaume Le Floch, Guillaume Smet, Gwenneg Lepage, Ioannis Canellos, Jacopo Rota, James Netherton, Jan Martiška, Jorge Solórzano, Jose, Julien Ponge, Justin Lee, Kevin Wooten, Knut Wannheden, Ladislav Thon, Loïc Mathieu, Maciej Swiderski, Marc Nuri, Marcin Czeczko, Martin Kouba, Martin Panzer, Matej Novotny, Max Rydahl Andersen, Michael Anstis, Michael Simons, Michal Karm Babacek, Michal Maléř, Michał Szynkiewicz, NetoDevel, Ozan Gunalp, Pedro Igor, Phillip Krüger, Ramy, Ricardo Rodrigues, Richard Gomez, Robbie Gemmell, Roberto Cortez, Rostislav Svoboda, Sanne Grinovero, Sergey Beryozkin, Steve Hawkins, Stuart Douglas, Stéphane Épardaud, Thomas Haines, Tomas Hofman, Victor Gallet, Victor Hugo de Oliveira Molinar, Vincent Sevel, Vincent van Dam, Wippermueller, Frank, xstefank, Yoann Rodière, Yoshikazu Nojima, Zaheed Beita, Шумов Игорь Юрьевич。

加入我们

我们非常重视您的反馈,所以请报告错误,提出改进建议…… 让我们一起构建伟大的东西!

如果您是 Quarkus 用户或只是好奇,请不要害羞,加入我们热情的社区