写点什么

Java 近期新闻:未命名变量和模式、WildFly 30、MicroProfile 6.1 和 Payara Platform

  • 2023-11-03
    北京
  • 本文字数:4577 字

    阅读完需:约 15 分钟

大小:2.36M时长:13:43
Java近期新闻:未命名变量和模式、WildFly 30、MicroProfile 6.1和Payara Platform

OpenJDK


JEP 456(未命名变量和模式) 已从 Candidate 进入到 Proposed to Target 状态(JDK 22)。这一 JEP 提议在 JEP 443(未命名模式和变量(预览),随 JDK 21 发布) 的预览之后最终确定该特性。该特性将“通过 未命名模式 (用于匹配记录组件,无需声明组件的名称或类型)和 未命名变量(可以初始化但不使用)来增强语言。” 这两者都使用下划线字符表示,如 r instanceof _(int x, int y)r instanceof _。评审预计于 2023 年 10 月 26 日结束。


JDK 22


JDK 22 早期访问版本Build 20 已发布,包含自 Build 19 以来的 更新,修复了各种 问题。有关该版本的更多详细信息,请参阅 版本说明


对于 JDK 22,开发者可以通过 Java Bug 数据库 报告问题。


BellSoft


与 Oracle 2023 年 10 月的 关键补丁更新(Critical Patch Update,CPU) 一同,BellSoft 发布了 Liberica JDK 21.0.0.0.1、17.0.8.1.1、11.0.20.1.1、8u391、7u401 和 6u401 的 CPU 补丁。此外,还发布了包含 CPU 和非关键修复的 补丁集更新(Patch Set Update,PSU) 版本 21.0.1、17.0.9、11.0.21 和 8u392。


Oracle


Oracle 推出了 Oracle Java Platform Extension for Visual Studio Code,为 VSCode 带来了 Maven 和 Gradle 项目全功能 Java 开发(编辑/编译/调试/测试)能力,以及项目资源管理、调试和启动配置、JDK 下载器、重构等功能。


GraalVM


Oracle Labs 发布 0.9.28版本的 Native Build Tools。新版本提供了这些特性:NativeImageUtils类中定义的 escapeArg() 方法回退到了之前的版本,修复了 Windows 路径转义问题;改进了 JDK 主要版本的检测;不再使用已弃用的 Gradle JavaPluginConvention 类,替换为 JavaPluginExtension类。有关该版本的更多详细信息,请参阅 变更日志


Spring Framework


Spring Boot 3.2.0 的 第一个候选版本 包含了错误修复、文档改进、依赖项升级和新特性,如:打破 TransactionManagerCustomizers类与 TransactionManager接口之间的循环;自动配置 HikariCheckpointRestoreLifecycle类,适配用户自定义的 HikariDataSource 实例;支持在 buildInfo Gradle 任务中添加 Gradle Provider 接口。有关该版本的更多详细信息,请参阅 版本说明


类似地,Spring Boot 3.1.53.0.122.7.17 也已发布,包含了错误修复、文档改进、依赖项升级和显著的变更:纠正了 spring.jms.listener.concurrency 属性的行为,其中最大用户数被设置为此属性的值,最小消费者数始终设置为 1。这与文档描述不符,开发者应该在 spring.jms.listener.max-concurrency 属性中设置他们期望的最大值。有关这些版本的更多详细信息,请参阅 3.1.53.0.122.7.17 的版本说明。


Spring Security 6.2.0 的 第一个和第二个候选版本,以及服务版本 6.1.5、6.0.8 和 5.8.8,都包含了错误修复和依赖项升级。这些版本的新特性包括:说明如何发布一个不再使用已弃用的 WebSecurityConfigurerAdapter 类的 AuthenticationManager @Bean ;为依赖项使用了 Gradle Version Catalog 。候选版本的新特性包括:为 AuthorizeHttpRequestsConfigurer 类添加 Servlet Path 支持;允许在 BasicAuthenticationFilter 类中设置 AuthenticationConverter 接口的实例。有关这些版本的更多详细信息,请参阅 6.2.0-RC26.2.0-RC16.1.56.0.85.8.8 的版本说明。


Spring Authorization Server 1.2.0 的 第一个候选版本 包含了依赖项升级和一个新特性,增加了可重复使用的默认身份验证失败处理程序类 OAuth2ErrorAuthenticationFailureHandler。有关该版本的更多详细信息,请参阅 版本说明


类似地,Spring Authorization Server 1.1.31.0.40.4.4 已发布,包含了次要错误修复和依赖项升级:Spring Boot 3.1.4、3.0.11 和 2.7.16;Spring Security 6.1.5、6.0.8 和 5.8.8;以及 Spring Framework 6.0.13、6.0.13 和 5.3.30。有关这些版本的更多详细信息,请参阅 1.1.31.0.40.4.4 的版本说明。


Spring Cloud Dataflow 2.11.1 版本 包含了一些显著的变更,如:确保TaskOperations接口中的 Launch API 具有向后兼容性;将常见的安全配置模块添加到依赖项管理中,修复了创建单体库后会出现的问题;升级到json-smart2.4.11、Nimbus JOSE + JWT 9.31、snappy-java 1.1.10.4 和 Apache Commons Compress 1.24.0,解决各种 CVE 问题。有关这一版本的更多详细信息,请参阅 版本说明


WildFly


Red Hat发布了 WildFly 30.0.0,该版本支持 JDK 21,并且已通过 TCK 测试,作为 Jakarta EE Core Profile 的兼容实现。该版本还支持大多数MicroProfile 6.0 规范,但由于 Red Hat 不支持 MicroProfile Metrics 规范,所以不能声明是兼容实现。需要注意的是,Red Hat 建议开发者继续在 JDK 17 和 JDK 11 上运行他们的应用程序,因为他们还没有在Jakarta EE PlatformJakarta EE Web Profile上认证 WildFly 30。尽管如此,Red Hat 表示“WildFly 30 是评估应用程序在 SE 21 上运行性能的绝佳选择。”有关该版本的更多详细信息,请参阅版本说明


Payara


Payara 发布了 2023 年 10 月版本的Payara Platform,包括 Community Edition 6.2023.10、Enterprise Edition 6.7.0 和 Enterprise Edition 5.56.0。这些版本包含:错误修复;升级了 OIDC 客户端中的 json-smart 2.4.11,解决了CVE-2023-1370漏洞问题,该漏洞发生在解析嵌套的 JSON 结构数组和对象时,由于没有定义限制,可能导致堆栈溢出和软件崩溃;为 Payara 域命令,如start-domainstop-domain,引入了新的超时选项--timeout。有关这些版本的更多详细信息,请参阅Community Edition 6.2023.10Enterprise Edition 6.7.0Enterprise Edition 5.56.0的版本说明。


MicroProfile


MicroProfile 工作组发布MicroProfile 6.1,包含了规范的更新:MicroProfile Config 3.1、MicroProfile Metrics 5.1 和 MicroProfile Telemetry 1.1。


MicroProfile Config 的重要变化包括:更新 TCK,与 Jakarta EE Contexts and Dependency Injection 4.0规范中的重大变化对齐,包括空的beans.xml文件以及将 bean 发现模式从all改为annotatedMissingValueOnObserverMethodInjectionTest类,它断言了DeploymentException,因ConfigObserverbean 被定义为@ApplicationScoped(可代理)和final(不可代理)而导致失败。有关该版本的更多详细信息,请参阅版本说明


MicroProfile Metrics 的重要变化包括:引入 MicroProfile Config 属性,用于自定义HistogramTimer指标如何跟踪和输出百分位和直方图桶的统计信息;将@RegistryScope注解定义为限定符;建议多应用程序部署使用mp.metrics.defaultAppName属性来消除因多应用程序服务器需要一致标签所导致的问题。有关该版本的更多详细信息,请参阅版本说明


MicroProfile Telemetry 1.1 的重要变化包括:澄清哪些 API 类必须对用户可用;一种不依赖于时间戳的测试实现;澄清SpanBaggage bean 在当前 span 或 baggage 发生变化时的行为。有关该版本的更多详细信息,请参阅版本说明


MicroProfile 6.1 的初始兼容实现是Open Liberty 23.0.0.10-beta


Micronaut


Micronaut 基金会披露Micronaut Security模块的 OAuth2 漏洞。在CVE-2023-36820这个漏洞中,如果令牌是由相同的身份发行者/提供者发布时,IdTokenClaimsValidator类将跳过受众声明验证,导致访问控制不当。


Micronaut 基金会还发布了 Micronaut Framework 4.1.5 版本,其中包括Micronaut Core 4.10.0和模块更新:Micronaut AWSMicronaut RxJava 3Micronaut Discovery ClientMicronaut ReactorMicronaut Object Storage。此外,Netty 升级到了4.1.100.Final。有关该版本的更多详细信息,请参阅版本说明


Quarkus


Quarkus 3.2.72.16.12主要解决了几个 CVE:


  • CVE-2023-44487,Tomcat 的 HTTP/2 实现中的一个漏洞,容易受到快速重置攻击的影响,导致拒绝服务,通常表现为抛出OutOfMemoryError

  • CVE-2023-39410,这是Apache Avro的漏洞,允许攻击者反序列化不受信任或损坏的数据,导致内存消耗超出允许的限制,并进一步导致系统耗尽内存。

  • CVE-2023-34454,这是 snappy-java 的漏洞,允许攻击者利用未经检查的乘法引起可能的整数溢出,导致不可恢复的致命错误。


有关这些版本的更多详细信息,请参阅版本3.2.7版本2.16.12的更新记录。


Quarkus 团队还记录了他们解决 CVE-2023-44487 的过程,包括 CVE 的概述、线程与事件循环以及他们的解决方案。


Open Liberty


IBM发布Open Liberty 23.0.0.10,支持 JDK 21,并更新了featureUtility命令,在将新特性安装到 Open Liberty 时默认会验证特性的真实性。这替代了校验和,校验和不能确保下载文件的真实性。


Apache 软件基金会


Apache TomEE 9.1.1 版本已发布,其中包括了错误修复、依赖项升级,其中最显著的变化是取消了对CFX影子版本的支持,转而支持Apache CXF 4.0。该版本还包含了对多个 CVE 的修复和反向移植:


  • CVE-2023-34981,修复Bug 66512引起的回归问题,如果响应不包含 HTTP 标头,就不会为响应发送Apache JServ Protocol(AJP)SEND_HEADERS消息,从而导致信息泄漏。这已在Bug 66591中修复,建议开发者迁移到 11.0.0-M6、10.1.9、9.0.75 或 8.5.89。

  • CVE-2023-42795,在回收各种内部对象(包括请求和响应,并且这些对象在被下一个请求/响应重用)时发生暴露,错误可能导致 Tomcat 跳过回收过程的某些部分,从而导致当前请求/响应的信息泄漏

  • CVE-2023-35116,这是针对 Jackson Databind 2.15.2 及更低版本的漏洞,攻击者可以创建一个使用循环依赖的对象,可能导致拒绝服务。值得注意的是,这个 CVE 还存在争议,因为 Jackson 的维护者FasterXML认为,外部攻击者无法构造试图进行序列化的循环数据结构


有关该版本的更多详细信息,请参阅版本说明


Apache Tomcat 10.1.158.5.95都包含了对主要问题的修复:重构代码后出现的 HTTP 压缩回归问题;因清理 10.1.14 和 8.5.94 中使用不必要的全限定类名导致的回归问题(影响了 JDBC 连接池)。有关这些版本的更多详细信息,请参阅10.1.158.5.95的版本说明。


JHipster


JHipster 8.0.0 的第一个候选版本包含了错误修复、依赖项升级以及一些显著的变化,如:在 Hibernate 中,由 JHipster 生成的equals()方法现在可以被安全使用;改进了MetricsComponent类的代码覆盖率;改进了对 JHipster Blueprints的支持。有关该版本的更多详细信息,请参阅版本说明


JHipster Lite 0.45.0 已经发布,包含了错误修复、文档改进、依赖项升级以及新功能/改进,如:为了支持 YAML 配置,新增了一个YamlFileSpringPropertiesHandler类;为方便调试,为各种 JHipster 类新增了toString()方法;支持处理 Spring 属性文件中的多行注释。有关这个版本的更多详细信息,请参阅版本说明


JHipster 团队还进行了 10 周年庆祝。第一个代码提交发布于 2013 年 10 月 21 日。


EclipseCon


EclipseCon 2023大会在德国 Ludwigsburg 的Forum am Schlosspark电影与媒体中心(FMZ)举行,吸引了来自 Java 社区的演讲者,就汽车与移动性、物联网与边缘计算、开源最佳实践、编程语言与运行时、以及工具与 IDE 等主题发表了演讲。大会还设有社区日,汇集了志同道合的个人、热情的专家和各行各业的好奇人士,举办会议、研讨会、进行项目更新、演示或小组讨论等。Eclipse 基金会的 Jakarta EE 开发者布道师Ivar Grimstad发布了他关于社区日第一天第二天第三天的每日总结。


原文链接

https://www.infoq.com/news/2023/10/java-news-roundup-oct16-2023/

2023-11-03 08:0010457

评论

发布
暂无评论
发现更多内容

废掉一个人最好的办法是让他忙到没有时间思考

熊斌

程序员 职场 思考

开发机直连Docker中的redis容器小案例

麦洛

redis Docker

Netty系列之源码解析(一)

猿灯塔

Netty

Django 中如何优雅的记录日志

AlwaysBeta

Python django Web 后端

Make Tmux Great Again

ccx

tmux

广告与数据算法系列1.1.1: 什么是广告

黄崇远@数据虫巢

互联网 算法 广告

西江月·记游(一)

轩辕御龙

音视频已强势崛起,我们该如何快速入门音视频技术?

音视频专家-李超

音视频 WebRTC ffmpeg 在线教育

工作时间都去哪儿了?

伯薇

效率 时间管理 个人提升 团队

C++数组可以为变量吗

泰伦卢

c++ 互联网 编程语言

redis数据结构介绍二-第二部分 跳表

Nick

redis 源码 数据结构 源码分析 算法

回"疫"录(6):致敬最美逆行者

小天同学

疫情 回忆录 现实纪录 纪实 创新突破

B站、Quora、InfoQ,哪个的阅读/播放量会先到10W+?

赵新龙

写作平台 B站 Quora

格局不行,有机会也抓不住

池建强

创业 格局 MacTalk

忆秦娥·记游(三)

轩辕御龙

没有永恒的技术,只有适合的技术

MavenTalker

技术 个人成长 职业规划

Flink Weekly | 每周社区动态更新

Apache Flink

大数据 flink 流计算 实时计算

菩萨蛮·记游(二)

轩辕御龙

要不要重新认识一下递归与迭代?

西了意

编程

redis数据结构介绍三-第三部分 整数集合

Nick

redis 源码 数据结构 源码分析 算法

记游(四)

轩辕御龙

多人实时互动之各WebRTC流媒体服务器比较

音视频专家-李超

音视频 WebRTC 在线教育 mediasoup janus

最通俗易懂的H264基本原理

音视频专家-李超

音视频 WebRTC ffmpeg H264

Ledge:这可能是距今最好的『DevOps + 研发效能』知识平台

Phodal

DevOps 敏捷开发 软件开发 研发效能

初入响应式编程(下)

CD826

spring 微服务 响应式编程 reactor

如何学习区块链技术

比特币 区块链 以太坊

从翻译到本地化:我在Airbnb做本地化经理的经历

葛仲君

产品 翻译 Airbnb 本地化 全球化

Istio 1.5:对开发人员有什么帮助?

麦洛

云原生 istio servicemesh

Java并发编程系列——Fork-Join

孙苏勇

Java Java并发 并发编程 线程

程序员陪娃漫画系列——排队问题

孙苏勇

程序员 生活 陪伴 漫画

MySQL死锁与Spring事务

Dean

MySQL

Java近期新闻:未命名变量和模式、WildFly 30、MicroProfile 6.1和Payara Platform_编程语言_Michael Redlich_InfoQ精选文章