博客
返回博文
2023 年 12 月 15 日
3.5.0 发布
作者:David Rodríguez
RubyGems 3.5.0 包括安全、重大更改、弃用、功能、性能、增强、错误修复和文档。
要更新到最新的 RubyGems,你可以运行
gem update --system
要手动安装 RubyGems,请参阅下载 RubyGems页面。
## 安全
- 使用经过全面检查的安全 gemspec 加载器替换
Marshal.load
。请求 #6896 由 segiddins 提交
## 重大更改
- 放弃 ruby 2.6 和 2.7 支持。请求 #7116 由 deivid-rodriguez 提交
- 发布的软件包不再包含测试文件。请求 #6781 由 hsbt 提交
- 向用户隐藏
Gem::MockGemUi
。请求 #6623 由 hsbt 提交 - 已弃用的
Gem.datadir
已被移除。请求 #6469 由 hsbt 提交
## 弃用
## 功能
generate_index
命令现在可以生成紧凑的索引文件,并作为外部rubygems-generate_index
gem 存在。请求 #7085 由 segiddins 提交- 如果默认 gem 主目录不可写,让
gem install
回退到用户安装目录。请求 #5327 由 duckinator 提交 - 利用 ruby 特性发出警告,当从标准库中需要使用未来会变成捆绑 gem 的默认 gem 时。请求 #6840 由 hsbt 提交
## 性能
- 在 regexp 匹配数据未使用时使用 match?。请求 #7263 由 segiddins 提交
- gem 安装中的分配更少。请求 #6975 由 segiddins 提交
- 优化
Gem::Version
中的分配。请求 #6970 由 segiddins 提交
## 增强
- 在构建 gem 时,对重复的元数据链接发出警告。请求 #7213 由 etherbob 提交
- 供应商
net-http
、net-protocol
、resolv
和timeout
可减少 Gemfile 宝石与内部依赖项之间的冲突。拉取请求 #6793,作者是 deivid-rodriguez - 移除对预发布宝石添加的非透明需求。拉取请求 #7226,作者是 deivid-rodriguez
- 在 -verbose 时传输扩展版本输出。拉取请求 #7240,作者是 osyoyu
- 将丢失的服务添加到 CI 检测中,并使其在 RubyGems 和 Bundler 之间保持一致。拉取请求 #7205,作者是 nevinera
- 更新生成许可证模板,不冻结正则表达式。拉取请求 #7154,作者是 github-actions[bot]
- 不要在 truffleruby 中检查
LIBRUBY_RELATIVE
,以表示 rubygems binstubs 中的 bash 前置内容。拉取请求 #7156,作者是 deivid-rodriguez - 更新 SPDX 列表并在弃用的标识符中发出警告。拉取请求 #6926,作者是 simi
- 简化扩展
require
,以可能修复一些死锁。拉取请求 #6827,作者是 nobu - 对
Gem::Resolver
进行一些小型重构。拉取请求 #6766,作者是 hsbt - 持续在警告中使用双引号代替单引号。拉取请求 #6550,作者是 hsbt
- 为
nil
版本 gemspec 添加调试消息。拉取请求 #6436,作者是 hsbt - 将 bundler 2.5.0 安装为默认宝石。
## 修复 Bug
- 修复从 Source 安装并已安装相同默认 bundler 版本的问题。拉取请求 #7244,作者是 deivid-rodriguez
## 文档
- 改进注释,解释
write_default_spec
方法的必要性。拉取请求 #6563,作者是 voxik
SHA256 校验和
- rubygems-3.5.0.tgz
6a7ccc98b5ba51be68c5a29a902c125c6f1d3690a0504787c40eb1c4a077e160 - rubygems-3.5.0.zip
361992e5d27277e1a470aae6f871814e236faf7c4c3e007cfd882c5c1cbd8d86 - rubygems-update-3.5.0.gem
0de926b1bbed63c6aabb899ceb9c9640589dbaa47f5a12c4f98f503744813f12