Closed lurch closed 3 years ago
Running it with --trace
reports:
Traceback (most recent call last):
18: from /usr/local/bin/asciidoctor:23:in `<main>'
17: from /usr/local/bin/asciidoctor:23:in `load'
16: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/bin/asciidoctor:15:in `<top (required)>'
15: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/cli/invoker.rb:111:in `invoke!'
14: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/cli/invoker.rb:111:in `each'
13: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/cli/invoker.rb:128:in `block in invoke!'
12: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:183:in `convert_file'
11: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:183:in `open'
10: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:183:in `block in convert_file'
9: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:78:in `convert'
8: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/load.rb:83:in `load'
7: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/document.rb:555:in `parse'
6: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/document.rb:555:in `each'
5: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/document.rb:556:in `block in parse'
4: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/document.rb:556:in `[]'
3: from /var/lib/gems/2.6.0/gems/asciidoctor-mathematical-0.3.1/lib/asciidoctor-mathematical/extension.rb:40:in `process'
2: from /var/lib/gems/2.6.0/gems/asciidoctor-mathematical-0.3.1/lib/asciidoctor-mathematical/extension.rb:40:in `each'
1: from /var/lib/gems/2.6.0/gems/asciidoctor-mathematical-0.3.1/lib/asciidoctor-mathematical/extension.rb:41:in `block in process'
/var/lib/gems/2.6.0/gems/asciidoctor-mathematical-0.3.1/lib/asciidoctor-mathematical/extension.rb:105:in `handle_prose_block': undefined method `lines=' for #<Asciidoctor::Table::Cell:0x00000000025ea720> (NoMethodError)
18: from /usr/local/bin/asciidoctor:23:in `<main>'
17: from /usr/local/bin/asciidoctor:23:in `load'
16: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/bin/asciidoctor:15:in `<top (required)>'
15: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/cli/invoker.rb:111:in `invoke!'
14: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/cli/invoker.rb:111:in `each'
13: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/cli/invoker.rb:128:in `block in invoke!'
12: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:183:in `convert_file'
11: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:183:in `open'
10: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:183:in `block in convert_file'
9: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/convert.rb:78:in `convert'
8: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/load.rb:83:in `load'
7: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/document.rb:555:in `parse'
6: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/document.rb:555:in `each'
5: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/document.rb:556:in `block in parse'
4: from /var/lib/gems/2.6.0/gems/asciidoctor-2.0.10/lib/asciidoctor/document.rb:556:in `[]'
3: from /var/lib/gems/2.6.0/gems/asciidoctor-mathematical-0.3.1/lib/asciidoctor-mathematical/extension.rb:40:in `process'
2: from /var/lib/gems/2.6.0/gems/asciidoctor-mathematical-0.3.1/lib/asciidoctor-mathematical/extension.rb:40:in `each'
1: from /var/lib/gems/2.6.0/gems/asciidoctor-mathematical-0.3.1/lib/asciidoctor-mathematical/extension.rb:41:in `block in process'
/var/lib/gems/2.6.0/gems/asciidoctor-mathematical-0.3.1/lib/asciidoctor-mathematical/extension.rb:105:in `handle_prose_block': asciidoctor: FAILED: /home/andrew/asciidoc-mathematical/sample.adoc: Failed to load AsciiDoc document - undefined method `lines=' for #<Asciidoctor::Table::Cell:0x00000000025ea720> (NoMethodError)
The extensions shall upgrade to new asciidoctor API.
Quick hack:
--- extension.rb 2020-09-08 11:56:11.000000000 +0300
+++ extension.rb.new 2020-09-08 12:28:13.000000000 +0300
@@ -112,7 +112,12 @@
if prose.context == :list_item
prose.instance_variable_set :@text, text
else
- prose.lines = text.split LineFeed
+ # prose.lines = text.split LineFeed
+ if prose.respond_to?(:lines=)
+ prose.lines = text.split LineFeed
+ else
+ prose.text = text
+ end
end
end
end
Since Asciidoctor 2.0, the find_by method finds table cells. This extension is trying to process them as a paragraph block. A quick fix is to check the context and delegate to the correct method. However, I think it would be better to take full advantage of the improvements to find_by in Asciidoctor 2.0 to simplify the code and reduce the number of scans.
asciidoctor -v
reportsWhen I try running
asciidoctor -r asciidoctor-mathematical sample.adoc
(with thesample.adoc
being downloaded from this repo) it says:I'm assuming that
asciidoctor-mathematical
used to be able to rendersample.adoc
, so presumably this is a regression somewhere? I wonder if it'd be worth trying to render sample.adoc during the CI process ( #51 ), just to check that no errors get reported? (even if it means ignoring any output that gets created)