summaryrefslogtreecommitdiff
path: root/tool/lib/bundled_gem.rb
diff options
context:
space:
mode:
authorNobuyoshi Nakada <[email protected]>2025-06-06 18:28:44 +0900
committerNobuyoshi Nakada <[email protected]>2025-06-07 18:41:36 +0900
commite90282be7ba1bc8e3119f6e1a2c80356ceb3f80a ()
treed3a83db351abe8962122bc4a0b90b03a0a6e4d56 /tool/lib/bundled_gem.rb
parentc45e4da71b3112f3734863d2051f0d8fb1a38cb8 (diff)
[Bug #21388] Make snapshots of gems
If the revision of bundled gems is specified for ruby master (and `git` is usable), checkout that revision and build a snapshot gem, and use it for `test-spec` instead of the downloaded release version.
-rw-r--r--tool/lib/bundled_gem.rb27
1 files changed, 27 insertions, 0 deletions
@@ -16,6 +16,24 @@ module BundledGem
"psych" # rdoc
]
module_function
def unpack(file, *rest)
@@ -36,6 +54,15 @@ module BundledGem
Dir.chdir(gemdir) do
spec = Gem::Specification.load(gemfile)
abort "Failed to load #{gemspec}" unless spec
output = File.join(outdir, spec.file_name)
FileUtils.rm_rf(output)
package = Gem::Package.new(output)