Skip to content

Aliki: Wrong interpretation of characters with LANG=C #1574

@jackorp

Description

@jackorp

Behavior looks like #183

Reproducer:

$ touch BUG.md
$ LANG=C /builddir/bin/rdoc BUG.md -f aliki --debug
Parsing sources...
100% [ 1/ 1]  BUG.md

Generating Aliki format into /tmp/foo/doc...

You can visit the home page at: file:///tmp/foo/doc/index.html
Copying Aliki static files
mkdir -p ./css
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/css/rdoc.css ./css/rdoc.css
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/css/rdoc.css ./css/rdoc.css
mkdir -p js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/aliki.js js/aliki.js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/aliki.js js/aliki.js
mkdir -p js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/c_highlighter.js js/c_highlighter.js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/c_highlighter.js js/c_highlighter.js
mkdir -p js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/search_controller.js js/search_controller.js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/search_controller.js js/search_controller.js
mkdir -p js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/search_navigation.js js/search_navigation.js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/search_navigation.js js/search_navigation.js
mkdir -p js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/search_ranker.js js/search_ranker.js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/search_ranker.js js/search_ranker.js
mkdir -p js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/theme-toggle.js js/theme-toggle.js
ln /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/js/theme-toggle.js js/theme-toggle.js
Rendering the index page...
Outputting to /tmp/foo/doc/index.html
RDoc::Error: error generating index.html: "\xF0" on US-ASCII (Encoding::InvalidByteSequenceError)
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:691:in 'String#encode'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:691:in 'RDoc::Generator::Darkfish#template_for'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:619:in 'RDoc::Generator::Darkfish#render'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/index.rhtml:167:in 'block in RDoc::Generator::Darkfish#generate_index'
  /usr/share/ruby/erb.rb:1012:in 'Kernel#eval'
  /usr/share/ruby/erb.rb:1012:in 'ERB#result'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:670:in 'RDoc::Generator::Darkfish#template_result'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:649:in 'block in RDoc::Generator::Darkfish#render_template'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:644:in 'Pathname#open'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:644:in 'RDoc::Generator::Darkfish#render_template'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:297:in 'RDoc::Generator::Darkfish#generate_index'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/aliki.rb:28:in 'RDoc::Generator::Aliki#generate'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/rdoc.rb:513:in 'block in RDoc::RDoc#generate'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/rdoc.rb:507:in 'Dir.chdir'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/rdoc.rb:507:in 'RDoc::RDoc#generate'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/rdoc.rb:486:in 'RDoc::RDoc#document'
  /builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/exe/rdoc:20:in '<top (required)>'
  /usr/share/rubygems/rubygems.rb:303:in 'Kernel#load'
  /usr/share/rubygems/rubygems.rb:303:in 'Gem.activate_and_load_bin_path'
  /builddir/bin/rdoc:25:in '<main>'
error generating index.html: "\xF0" on US-ASCII (Encoding::InvalidByteSequenceError)
/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:691:in 'String#encode'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:691:in 'RDoc::Generator::Darkfish#template_for'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:619:in 'RDoc::Generator::Darkfish#render'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/template/aliki/index.rhtml:167:in 'block in RDoc::Generator::Darkfish#generate_index'
	/usr/share/ruby/erb.rb:1012:in 'Kernel#eval'
	/usr/share/ruby/erb.rb:1012:in 'ERB#result'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:670:in 'RDoc::Generator::Darkfish#template_result'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:649:in 'block in RDoc::Generator::Darkfish#render_template'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:644:in 'Pathname#open'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:644:in 'RDoc::Generator::Darkfish#render_template'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/darkfish.rb:297:in 'RDoc::Generator::Darkfish#generate_index'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/generator/aliki.rb:28:in 'RDoc::Generator::Aliki#generate'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/rdoc.rb:513:in 'block in RDoc::RDoc#generate'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/rdoc.rb:507:in 'Dir.chdir'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/rdoc.rb:507:in 'RDoc::RDoc#generate'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/lib/rdoc/rdoc.rb:486:in 'RDoc::RDoc#document'
	/builddir/.local/share/gem/ruby/gems/rdoc-7.1.0/exe/rdoc:20:in '<top (required)>'
	/usr/share/rubygems/rubygems.rb:303:in 'Kernel#load'
	/usr/share/rubygems/rubygems.rb:303:in 'Gem.activate_and_load_bin_path'
	/builddir/bin/rdoc:25:in '<main>'

It seems it tries to encode this file: lib/rdoc/generator/template/aliki/_header.rhtml , I think the emojis https://github.com/ruby/rdoc/blob/master/lib/rdoc/generator/template/aliki/_header.rhtml are not making the encoding happy

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions