首页
/ OpenDAL v0.52.0发布:写入操作返回元数据与GitHub Actions Cache升级

OpenDAL v0.52.0发布:写入操作返回元数据与GitHub Actions Cache升级

2025-06-13 05:30:00作者:尤峻淳Whitney

OpenDAL是一个开源的云原生数据访问层项目,旨在为各种存储后端提供统一的API接口。该项目采用Rust语言编写,具有高性能、跨平台等特点,可以方便地集成到各种应用中。最新发布的v0.52.0版本带来了多项重要更新,特别是写入操作返回元数据的功能实现和GitHub Actions Cache服务的升级。

写入操作返回元数据功能

在v0.52.0版本中,OpenDAL对写入API进行了重大改进,现在所有写入操作都会返回包含服务端元数据的Metadata对象,而不仅仅是简单的空返回值。这一改进使得开发者能够获取到服务端返回的有价值信息,例如:

  • 内容长度(content-length)
  • 文件标识(etag)
  • 版本信息(version)
  • 最后修改时间(last-modified)

这项功能目前仍在持续完善中,许多可用的元数据字段尚未完全返回。开发团队已经建立了专门的跟踪问题来跟进这一功能的进展,并欢迎社区贡献。

受影响的API包括:

  • 操作符级别的写入方法
  • 带参数的写入方法
  • 写入器关闭方法
  • 原始写入接口的关闭方法

这一改进对于需要精确控制文件上传状态的应用场景特别有价值,比如需要验证上传完整性的系统,或者需要基于文件版本进行后续处理的流程。

GitHub Actions Cache服务升级

为了响应GitHub官方的要求,OpenDAL v0.52.0对其GitHub Actions Cache(GHAC)服务进行了重要升级,以确保与最新GitHub Actions缓存API的兼容性。

此次升级包含以下关键点:

  1. 服务版本升级至v2,确保在旧版服务停用(2025年3月1日)后仍能正常工作
  2. 自动处理GitHub企业服务器(GHES)尚未支持GHAC v2的情况,确保服务不中断
  3. 移除了删除操作支持,开发者需要使用GitHub原生API来管理缓存

值得注意的是,这一升级在GitHub CI环境中默认通过环境变量启用,开发者无需在代码层面做任何修改即可获得兼容性保障。

其他重要更新

文件系统服务增强

文件系统后端现在支持"写入-如果-不存在"的操作模式,这为需要确保文件唯一性的场景提供了便利。

GCS服务改进

Google Cloud Storage服务现在完整支持content-encoding属性,包括在状态查询、写入和预签名操作中。

Swift服务元数据支持

Swift服务新增了对用户元数据的支持,使得开发者可以存储和管理额外的文件属性信息。

依赖项升级

项目对几个重要依赖项进行了版本升级:

  • OpenTelemetry相关组件升级至0.28版本
  • Prometheus客户端升级至0.23.1版本

开发者体验改进

在绑定层方面,Ruby绑定新增了列表器支持,Python绑定则增加了路径兼容性和存在性检查功能,进一步提升了开发者的使用体验。

总结

OpenDAL v0.52.0版本通过写入操作返回元数据的功能,为开发者提供了更丰富的操作反馈信息,使得存储操作更加透明和可控。同时,对GitHub Actions Cache服务的及时升级确保了与平台演进的兼容性。这些改进体现了OpenDAL项目对开发者需求的快速响应和对云原生存储领域的持续投入。

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

热门内容推荐

最新内容推荐

项目优选

收起
ohos_react_nativeohos_react_native
React Native鸿蒙化仓库
C++
176
261
RuoYi-Vue3RuoYi-Vue3
🎉 (RuoYi)官方仓库 基于SpringBoot,Spring Security,JWT,Vue3 & Vite、Element Plus 的前后端分离权限管理系统
Vue
861
511
ShopXO开源商城ShopXO开源商城
🔥🔥🔥ShopXO企业级免费开源商城系统,可视化DIY拖拽装修、包含PC、H5、多端小程序(微信+支付宝+百度+头条&抖音+QQ+快手)、APP、多仓库、多商户、多门店、IM客服、进销存,遵循MIT开源协议发布、基于ThinkPHP8框架研发
JavaScript
93
15
openGauss-serveropenGauss-server
openGauss kernel ~ openGauss is an open source relational database management system
C++
129
182
openHiTLSopenHiTLS
旨在打造算法先进、性能卓越、高效敏捷、安全可靠的密码套件,通过轻量级、可剪裁的软件技术架构满足各行业不同场景的多样化要求,让密码技术应用更简单,同时探索后量子等先进算法创新实践,构建密码前沿技术底座!
C
259
300
kernelkernel
deepin linux kernel
C
22
5
cherry-studiocherry-studio
🍒 Cherry Studio 是一款支持多个 LLM 提供商的桌面客户端
TypeScript
596
57
CangjieCommunityCangjieCommunity
为仓颉编程语言开发者打造活跃、开放、高质量的社区环境
Markdown
1.07 K
0
HarmonyOS-ExamplesHarmonyOS-Examples
本仓将收集和展示仓颉鸿蒙应用示例代码,欢迎大家投稿,在仓颉鸿蒙社区展现你的妙趣设计!
Cangjie
398
371
Cangjie-ExamplesCangjie-Examples
本仓将收集和展示高质量的仓颉示例代码,欢迎大家投稿,让全世界看到您的妙趣设计,也让更多人通过您的编码理解和喜爱仓颉语言。
Cangjie
332
1.08 K