diff options
| author | Dan Allen <dan.j.allen@gmail.com> | 2020-10-30 23:37:03 -0600 |
|---|---|---|
| committer | Dan Allen <dan.j.allen@gmail.com> | 2020-10-31 03:37:37 -0600 |
| commit | 9ff6fc3cf0c11e8b99b7d8f8027f07f960ce3946 (patch) | |
| tree | 6bd2e24bcba092ca608643d7d3f523833ba32219 | |
| parent | 0678c1544f3c34080cc4e6924015d4b0e1d7ad7c (diff) | |
use version of pdf-core requested by Prawn when testing Prawn from upstream
| -rw-r--r-- | .travis.yml | 1 | ||||
| -rw-r--r-- | scripts/switch-to-prawn-master.rb | 19 |
2 files changed, 20 insertions, 0 deletions
diff --git a/.travis.yml b/.travis.yml index afc91c05..4446b634 100644 --- a/.travis.yml +++ b/.travis.yml @@ -43,6 +43,7 @@ jobs: before_script: - bundle exec ruby scripts/switch-to-prawn-master.rb - rm -f Gemfile.lock + - bundle config --local clean true - bundle --jobs 3 --retry 3 - stage: release gem rvm: *default_ruby diff --git a/scripts/switch-to-prawn-master.rb b/scripts/switch-to-prawn-master.rb index f4e3e49e..283bb17f 100644 --- a/scripts/switch-to-prawn-master.rb +++ b/scripts/switch-to-prawn-master.rb @@ -4,3 +4,22 @@ require 'fileutils' 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 + +# 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] +#pdf_core_version_spec = (%r/'pdf-core', *'(.+?)'/.match new_prawn_spec_contents)[1] +#prawn_spec_replacement = prawn_spec +# .to_ruby +# .gsub(%r/(ttfunk.+?)"[^"]+"/, %(\\1"#{ttfunk_version_spec}")) +# .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 + +File.write prawn_spec.spec_file, prawn_spec_replacement |
