From e84befa63be16e3795ddee5b2ca7548c5f272a23 Mon Sep 17 00:00:00 2001 From: takahashim Date: Tue, 18 Aug 2020 00:56:05 +0900 Subject: [PATCH 1/2] ReVIEW::Book.load is deprecated --- bin/review-compile | 2 +- lib/review/book.rb | 4 ++-- lib/review/epubmaker.rb | 2 +- lib/review/idgxmlmaker.rb | 2 +- lib/review/pdfmaker.rb | 2 +- lib/review/textmaker.rb | 2 +- lib/review/webmaker.rb | 2 +- 7 files changed, 8 insertions(+), 8 deletions(-) diff --git a/bin/review-compile b/bin/review-compile index 657af0238..35efe7fcb 100755 --- a/bin/review-compile +++ b/bin/review-compile @@ -94,7 +94,7 @@ def _main end end when :dir - book = @basedir ? ReVIEW::Book.load(@basedir) : ReVIEW::Book::Base.load + book = @basedir ? ReVIEW::Book::Base.load(@basedir) : ReVIEW::Book::Base.load book.config = @config compiler = ReVIEW::Compiler.new(load_builder_class(@target, @check_only)) book.chapters.each do |chap| diff --git a/lib/review/book.rb b/lib/review/book.rb index 5e1218987..3d7c05e42 100644 --- a/lib/review/book.rb +++ b/lib/review/book.rb @@ -18,8 +18,8 @@ module ReVIEW module Book - def self.load(dir) - Base.load(dir) + def self.load(_dir) + raise NotImplementedError, 'ReVIEW::Book.load is obsoleted. Please use ReVIEW::Book::Base.load.' end end end diff --git a/lib/review/epubmaker.rb b/lib/review/epubmaker.rb index 8718814de..da7e872b4 100644 --- a/lib/review/epubmaker.rb +++ b/lib/review/epubmaker.rb @@ -307,7 +307,7 @@ def build_body(basetmpdir, yamlfile) basedir = File.dirname(yamlfile) base_path = Pathname.new(basedir) - book = ReVIEW::Book.load(basedir) + book = ReVIEW::Book::Base.load(basedir) book.config = @config @converter = ReVIEW::Converter.new(book, ReVIEW::HTMLBuilder.new) @compile_errors = nil diff --git a/lib/review/idgxmlmaker.rb b/lib/review/idgxmlmaker.rb index a1bec2ad0..aef79d12c 100644 --- a/lib/review/idgxmlmaker.rb +++ b/lib/review/idgxmlmaker.rb @@ -105,7 +105,7 @@ def generate_idgxml_files(yamlfile) remove_old_files(@path) Dir.mkdir(@path) - @book = ReVIEW::Book.load(@basedir) + @book = ReVIEW::Book::Base.load(@basedir) @book.config = @config if @table @book.config['tableopt'] = @table diff --git a/lib/review/pdfmaker.rb b/lib/review/pdfmaker.rb index 0b764482d..77e9161f6 100644 --- a/lib/review/pdfmaker.rb +++ b/lib/review/pdfmaker.rb @@ -272,7 +272,7 @@ def generate_pdf begin @compile_errors = nil - book = ReVIEW::Book.load(@basedir) + book = ReVIEW::Book::Base.load(@basedir) book.config = @config @converter = ReVIEW::Converter.new(book, ReVIEW::LATEXBuilder.new) diff --git a/lib/review/textmaker.rb b/lib/review/textmaker.rb index 3a712fb0e..e8ea5db96 100644 --- a/lib/review/textmaker.rb +++ b/lib/review/textmaker.rb @@ -109,7 +109,7 @@ def generate_text_files(yamlfile) remove_old_files(@path) Dir.mkdir(@path) - @book = ReVIEW::Book.load(@basedir) + @book = ReVIEW::Book::Base.load(@basedir) @book.config = @config build_body(@path, yamlfile) diff --git a/lib/review/webmaker.rb b/lib/review/webmaker.rb index 6a45fc0e8..63355388d 100644 --- a/lib/review/webmaker.rb +++ b/lib/review/webmaker.rb @@ -109,7 +109,7 @@ def generate_html_files(yamlfile) remove_old_files(@path) Dir.mkdir(@path) - @book = ReVIEW::Book.load(@basedir) + @book = ReVIEW::Book::Base.load(@basedir) @book.config = @config copy_stylesheet(@path) From 4d3c1a005d812c3b2a3081da22f113acfb7a487c Mon Sep 17 00:00:00 2001 From: takahashim Date: Tue, 18 Aug 2020 01:52:03 +0900 Subject: [PATCH 2/2] add new option :config for Book::Base.load ex. `book = ReVIEW::Book::Base.load(basedir, config: @config)` --- lib/review/book/base.rb | 8 ++++---- lib/review/epubmaker.rb | 3 +-- lib/review/idgxmlmaker.rb | 3 +-- lib/review/pdfmaker.rb | 3 +-- lib/review/textmaker.rb | 3 +-- lib/review/tocprinter.rb | 3 +-- lib/review/volumeprinter.rb | 3 +-- lib/review/webmaker.rb | 3 +-- test/book_test_helper.rb | 3 +-- 9 files changed, 12 insertions(+), 20 deletions(-) diff --git a/lib/review/book/base.rb b/lib/review/book/base.rb index e2174ab1c..15b8453d9 100644 --- a/lib/review/book/base.rb +++ b/lib/review/book/base.rb @@ -18,16 +18,16 @@ class Base attr_writer :catalog attr_reader :basedir - def self.load(dir = '.') - new(dir) + def self.load(basedir = '.', config: nil) + new(basedir, config: config) end - def initialize(basedir = '.') + def initialize(basedir = '.', config: nil) @basedir = basedir @logger = ReVIEW.logger @parts = nil @chapter_index = nil - @config = ReVIEW::Configure.values + @config = config || ReVIEW::Configure.values @catalog = nil @warn_old_files = {} # XXX for checking CHAPS, PREDEF, POSTDEF @basedir_seen = {} diff --git a/lib/review/epubmaker.rb b/lib/review/epubmaker.rb index da7e872b4..1e68e15b3 100644 --- a/lib/review/epubmaker.rb +++ b/lib/review/epubmaker.rb @@ -307,8 +307,7 @@ def build_body(basetmpdir, yamlfile) basedir = File.dirname(yamlfile) base_path = Pathname.new(basedir) - book = ReVIEW::Book::Base.load(basedir) - book.config = @config + book = ReVIEW::Book::Base.load(basedir, config: @config) @converter = ReVIEW::Converter.new(book, ReVIEW::HTMLBuilder.new) @compile_errors = nil diff --git a/lib/review/idgxmlmaker.rb b/lib/review/idgxmlmaker.rb index aef79d12c..546450f5a 100644 --- a/lib/review/idgxmlmaker.rb +++ b/lib/review/idgxmlmaker.rb @@ -105,8 +105,7 @@ def generate_idgxml_files(yamlfile) remove_old_files(@path) Dir.mkdir(@path) - @book = ReVIEW::Book::Base.load(@basedir) - @book.config = @config + @book = ReVIEW::Book::Base.load(@basedir, config: @config) if @table @book.config['tableopt'] = @table end diff --git a/lib/review/pdfmaker.rb b/lib/review/pdfmaker.rb index 77e9161f6..5ae0bcf33 100644 --- a/lib/review/pdfmaker.rb +++ b/lib/review/pdfmaker.rb @@ -272,8 +272,7 @@ def generate_pdf begin @compile_errors = nil - book = ReVIEW::Book::Base.load(@basedir) - book.config = @config + book = ReVIEW::Book::Base.load(@basedir, config: @config) @converter = ReVIEW::Converter.new(book, ReVIEW::LATEXBuilder.new) @input_files = make_input_files(book) diff --git a/lib/review/textmaker.rb b/lib/review/textmaker.rb index e8ea5db96..51695c61e 100644 --- a/lib/review/textmaker.rb +++ b/lib/review/textmaker.rb @@ -109,8 +109,7 @@ def generate_text_files(yamlfile) remove_old_files(@path) Dir.mkdir(@path) - @book = ReVIEW::Book::Base.load(@basedir) - @book.config = @config + @book = ReVIEW::Book::Base.load(@basedir, config: @config) build_body(@path, yamlfile) end diff --git a/lib/review/tocprinter.rb b/lib/review/tocprinter.rb index e51746a09..b4c4ff6d1 100644 --- a/lib/review/tocprinter.rb +++ b/lib/review/tocprinter.rb @@ -50,7 +50,7 @@ def initialize @logger = ReVIEW.logger @config = ReVIEW::Configure.values @yamlfile = 'config.yml' - @book = ReVIEW::Book::Base.load + @book = ReVIEW::Book::Base.load('.', config: @config) @upper = 4 @indent = true @buildonly = nil @@ -59,7 +59,6 @@ def initialize def execute(*args) parse_options(args) - @book.config = ReVIEW::Configure.values unless File.readable?(@yamlfile) @logger.error("No such fiile or can't open #{@yamlfile}.") exit 1 diff --git a/lib/review/volumeprinter.rb b/lib/review/volumeprinter.rb index 55fa0972e..ba24bbcfc 100644 --- a/lib/review/volumeprinter.rb +++ b/lib/review/volumeprinter.rb @@ -28,8 +28,7 @@ def initialize def execute(*args) parse_options(args) - @book = ReVIEW::Book::Base.load - @book.config = @config + @book = ReVIEW::Book::Base.load('.', config: @config) unless File.readable?(@yamlfile) @logger.error("No such fiile or can't open #{@yamlfile}.") exit 1 diff --git a/lib/review/webmaker.rb b/lib/review/webmaker.rb index 63355388d..31d3f6e33 100644 --- a/lib/review/webmaker.rb +++ b/lib/review/webmaker.rb @@ -109,8 +109,7 @@ def generate_html_files(yamlfile) remove_old_files(@path) Dir.mkdir(@path) - @book = ReVIEW::Book::Base.load(@basedir) - @book.config = @config + @book = ReVIEW::Book::Base.load(@basedir, config: @config) copy_stylesheet(@path) copy_frontmatter(@path) diff --git a/test/book_test_helper.rb b/test/book_test_helper.rb index 1be747f3a..33fb0d05c 100644 --- a/test/book_test_helper.rb +++ b/test/book_test_helper.rb @@ -18,8 +18,7 @@ def mktmpbookdir(files = {}) File.open(path, 'w') { |o| o.print content } created_files[basename] = path end - book = Book::Base.load(dir) - book.config = ReVIEW::Configure.values + book = Book::Base.load(dir, config: ReVIEW::Configure.values) yield(dir, book, created_files) end end