summaryrefslogtreecommitdiff
path: root/scripts
diff options
context:
space:
mode:
authorDan Allen <dan.j.allen@gmail.com>2020-11-17 23:52:20 -0700
committerGitHub <noreply@github.com>2020-11-17 23:52:20 -0700
commitbdb96d106fc04889cf6059b4c9e25c517dfaa984 (patch)
treeced37c9724bdb1b2f6667c36b16d8f372013e922 /scripts
parent8b85adb8f9c7015b3ca1b104097d7ca62e880c3c (diff)
resolves #1821 test against Asciidoctor upstream (PR #1826)
Diffstat (limited to 'scripts')
-rw-r--r--scripts/switch-to-asciidoctor-master.rb13
-rw-r--r--scripts/switch-to-prawn-master.rb14
2 files changed, 21 insertions, 6 deletions
diff --git a/scripts/switch-to-asciidoctor-master.rb b/scripts/switch-to-asciidoctor-master.rb
new file mode 100644
index 00000000..7ea519bc
--- /dev/null
+++ b/scripts/switch-to-asciidoctor-master.rb
@@ -0,0 +1,13 @@
+require 'fileutils'
+
+# NOTE it's necessary to hot patch the installed gem so that RubyGems can find it without Bundler
+asciidoctor_spec = Gem::Specification.find_by_name 'asciidoctor'
+FileUtils.rm_r asciidoctor_spec.gem_dir, secure: true if Dir.exist? asciidoctor_spec.gem_dir
+Process.wait Process.spawn %(git clone --depth=1 https://github.com/asciidoctor/asciidoctor #{File.basename asciidoctor_spec.gem_dir}), chdir: asciidoctor_spec.gems_dir
+
+Dir.chdir asciidoctor_spec.gem_dir do
+ new_asciidoctor_spec_contents = File.readlines 'asciidoctor.gemspec', mode: 'r:UTF-8'
+ new_asciidoctor_spec = eval new_asciidoctor_spec_contents.join, nil, (File.join Dir.pwd, 'asciidoctor.gemspec')
+ new_asciidoctor_spec.version = asciidoctor_spec.version
+ File.write asciidoctor_spec.spec_file, new_asciidoctor_spec.to_ruby
+end
diff --git a/scripts/switch-to-prawn-master.rb b/scripts/switch-to-prawn-master.rb
index 283bb17f..438e1021 100644
--- a/scripts/switch-to-prawn-master.rb
+++ b/scripts/switch-to-prawn-master.rb
@@ -5,6 +5,8 @@ prawn_spec = Gem::Specification.find_by_name 'prawn'
FileUtils.rm_r prawn_spec.gem_dir, secure: true if Dir.exist? prawn_spec.gem_dir
Process.wait Process.spawn %(git clone --depth=1 https://github.com/prawnpdf/prawn #{File.basename prawn_spec.gem_dir}), chdir: prawn_spec.gems_dir
+prawn_spec_replacement = nil
+
# Option A: patch dependency versions
#new_prawn_spec_contents = File.read (File.join prawn_spec.gem_dir, 'prawn.gemspec'), mode: 'r:UTF-8'
#ttfunk_version_spec = (%r/'ttfunk', *'(.+?)'/.match new_prawn_spec_contents)[1]
@@ -15,11 +17,11 @@ Process.wait Process.spawn %(git clone --depth=1 https://github.com/prawnpdf/pra
# .gsub(%r/(pdf-core.+?)"[^"]+"/, %(\\1"#{pdf_core_version_spec}"))
# Option B: regenerate spec file
-new_prawn_spec_contents = File.readlines (File.join prawn_spec.gem_dir, 'prawn.gemspec'), mode: 'r:UTF-8'
-basedir_line_idx = new_prawn_spec_contents.index {|it| it.start_with? 'basedir =' }
-new_prawn_spec_contents[basedir_line_idx] = %(basedir = '#{prawn_spec.gem_dir}'\n)
-new_prawn_spec = eval new_prawn_spec_contents.join
-new_prawn_spec.version = prawn_spec.version
-prawn_spec_replacement = new_prawn_spec.to_ruby
+Dir.chdir prawn_spec.gem_dir do
+ new_prawn_spec_contents = File.readlines 'prawn.gemspec', mode: 'r:UTF-8'
+ new_prawn_spec = eval new_prawn_spec_contents.join, nil, (File.join prawn_spec.gem_dir, 'prawn.gemspec')
+ new_prawn_spec.version = prawn_spec.version
+ prawn_spec_replacement = new_prawn_spec.to_ruby
+end
File.write prawn_spec.spec_file, prawn_spec_replacement