首页
/ jOOQ项目3.20版本将移除3.10时代遗留的废弃API

jOOQ项目3.20版本将移除3.10时代遗留的废弃API

2025-06-04 06:01:16作者:虞亚竹Luna

随着jOOQ项目持续演进,开发团队决定在即将发布的3.20版本中清理那些已经废弃超过10个次要版本周期的API接口。这一举措旨在保持代码库的整洁性,同时为未来功能开发扫清障碍。

API清理背景

在长期维护的开源项目中,API的迭代更新是不可避免的。jOOQ团队采用了渐进式的废弃策略:当某个API被标记为废弃(deprecated)后,会保留至少10个次要版本周期,给予使用者充分的迁移时间。这种策略既保证了向后兼容性,又能逐步推动技术栈的现代化。

主要移除内容

此次清理主要涉及以下几个关键领域:

  1. 核心模块废弃API

    • 移除Cursor类的过时方法
    • 删除Queries::stream方法
    • 淘汰Context::literal方法
    • 移除TableImpl和CustomTable中基于字符串的构造函数
  2. 数据库方言支持

    • 完全移除对POSTGRESPLUS方言的支持。这个方言对应的数据库产品已经停止维护多年,继续支持已无实际意义。

技术影响分析

值得注意的是,部分被移除的API在jOOQ内部实现中仍有使用。这种情况源于历史原因:当初将这些API标记为废弃时,团队将其实现逻辑转移到了内部包中。此次清理将彻底完成这一迁移过程,使代码结构更加清晰。

对于jOOQ-meta模块中的CustomType相关API,团队决定暂时保留。这表明某些API虽然技术上已经过时,但在实际生态中可能仍有重要用户依赖,需要更谨慎的处理策略。

开发者应对建议

使用jOOQ的开发团队应当:

  1. 检查项目代码中是否调用了上述废弃API
  2. 参考jOOQ官方文档寻找替代方案
  3. 在升级到3.20版本前完成必要的代码迁移

这种定期清理机制体现了jOOQ团队对项目长期健康度的重视。通过有计划的API淘汰,既避免了技术债务的累积,又为引入现代化特性创造了条件。对于用户而言,这种可预测的变更节奏也大大降低了升级维护的成本。

登录后查看全文
热门项目推荐
相关项目推荐

项目优选

收起
kernelkernel
deepin linux kernel
C
32
16
pytorchpytorch
Ascend Extension for PyTorch
Python
746
927
flutter_flutterflutter_flutter
本仓库是 Flutter SDK 与 Flutter Engine 的 OpenHarmony 适配版本,由 CPF-Flutter 团队维护。开发者可使用熟悉的 Flutter 技术栈开发 OpenHarmony 应用,3.35.7 及以后的适配版本可基于本仓库源码构建支持 OpenHarmony 的 Flutter Engine。
Dart
1.02 K
267
docsdocs
暂无描述
Dockerfile
771
5.03 K
ops-transformerops-transformer
本项目是CANN提供的transformer类大模型算子库,实现网络在NPU上加速计算。
C++
867
1.97 K
leetcodeleetcode
🔥LeetCode solutions in any programming language | 多种编程语言实现 LeetCode、《剑指 Offer(第 2 版)》、《程序员面试金典(第 6 版)》题解
Java
70
22
atomcodeatomcode
Claude Code 的开源替代方案。连接任意大模型,编辑代码,运行命令,自动验证 — 全自动执行。用 Rust 构建,极致性能。 | An open-source alternative to Claude Code. Connect any LLM, edit code, run commands, and verify changes — autonomously. Built in Rust for speed. Get Started
Rust
1.94 K
202
ops-nnops-nn
本项目是CANN提供的神经网络类计算算子库,实现网络在NPU上加速计算。
C++
694
1.36 K
kernelkernel
openEuler内核是openEuler操作系统的核心,既是系统性能与稳定性的基石,也是连接处理器、设备与服务的桥梁。
C
465
456
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
C
458
5.25 K