RubyGems 导航菜单

博客

返回博客文章

2024 年 3 月 RubyGems 更新

欢迎来到 RubyGems 月度更新!作为我们在 Ruby Central 做出的努力的一部分,我们发布了上月所做工作的摘要。继续阅读以了解 3 月份对 RubyGems 和 RubyGems.org 所做的更新。

RubyGems 新闻

本月,RubyGems 发布了 RubyGems 3.5.7 和 Bundler 2.5.7。这些更新引入了一系列增强和错误修复,所有这些都旨在增强开发者体验。它们包括:Gem::SafeYAML.safe_load 中引入一个属性 以控制是否启用 YAML 别名 用于 required_ruby_version 规范属性为空时的警告机制,以及 删除由 bundle gem 生成的 RuboCop 设置中的不必要配置

本月团队的其他一些重要成就包括

gem install 遵循目标系统的 umask:

  • 此更改的目标是解决 RubyGems 可能安装权限比所需权限更宽的文件的问题,向除当前用户之外的其他用户授予写入权限。当文件的原始打包包含这些广泛权限时会出现此问题,这可能是由于宝石的作者设置了不安全的 umask。
  • @deivid-rodriguez 实施的解决方案采用了一种比以前尝试更直接的方法(由于 ruby core 中的测试失败而被还原),即在设置权限之前对普通文件(不包括目录)应用目标系统的 umask。

修复了 Bundler 的应用程序缓存滥用:

  • 此更新解决了 Bundler 如何使用其缓存的问题,导致出现奇怪的行为。用户看到不寻常的更新,例如 Bundler 声称它正在更新到实际不存在的版本(例如,“更新到 3.0.9”)。
  • 该问题根植于 Bundler 管理缓存的 gem 的方式。这些 gem 被错误地考虑在不应该考虑的地方,这不仅会导致奇怪的消息,而且也会导致锁定文件中的错误,例如 gem 出现于错误的源中。
  • 实施的解决方案确保将缓存的 gem 与在线可用的 gem 分开,防止造成这些问题的混淆。这种方法有助于保持 Bundler 操作的清晰度和准确性。

3 月,RubyGems 获得 67 个新提交,由 13 位作者提交。在 92 个文件中有 934 次添加和 194 次删除。

RubyGems.org 新闻

3 月的 RubyGems.org 更新反映了我们对改善用户体验、增强安全性以及平台现代化的坚定承诺。

以下是团队本月开展工作的重点

PostgreSQL 重大零宕机升级:

  • 执行此重大更新是为了确保应用程序依赖项保持最新。值得注意的是,这是第二次升级工作,从 PostgreSQL 12 版升级到 13 版,此前已升级到 12 版,以响应 PostgreSQL 11 在 Amazon RDS 中终止服务公告 (EOL)。
  • 升级过程利用 pgbouncer 和手动管理的蓝绿环境来实现零宕机。有关详细脚本和过程说明,请访问 项目的 GitHub 页面
  • 我们很快会发布包含更多详细信息的详细博文。

3 月,RubyGems.org 获得 69 个新提交,由 12 位作者提交。在 75 个文件中有 466 次添加和 1,263 次删除。

感谢

感谢本月 RubyGems 和 RubyGems.org 的所有贡献者!我们非常感谢您的贡献,也感谢您一直以来的支持。

RubyGems 贡献者

RubyGems.org 贡献者


访问 RubyGems 贡献指南,了解有关如何向 RubyGems 贡献的更多信息。我们欢迎所有类型的贡献,包括修复错误、实现功能、编写和更新文档,以及错误分类。

Gift Egwuenu