facter(1.3.3)
テストがないので、bin/facter を実行。
#to_a を持たないオブジェクトが多重代入の右辺に * 付きで現れたときの動きがまだ仕様未定なのでエラーになる。
date@assam facter-1.3.3 $ ruby-yarv -I./lib bin/facter /home/date/tmp/facter-1.3.3/lib/facter.rb:430:in `block in confine': can't convert Symbol into Array (TypeError) from /home/date/tmp/facter-1.3.3/lib/facter.rb:429:in `each' from /home/date/tmp/facter-1.3.3/lib/facter.rb:429:in `confine' from /home/date/tmp/facter-1.3.3/lib/facter.rb:622:in `block in loadfacts' from /home/date/tmp/facter-1.3.3/lib/facter.rb:247:in `instance_eval' from /home/date/tmp/facter-1.3.3/lib/facter.rb:247:in `add' from /home/date/tmp/facter-1.3.3/lib/facter.rb:88:in `add' from /home/date/tmp/facter-1.3.3/lib/facter.rb:620:in `loadfacts' from /home/date/tmp/facter-1.3.3/lib/facter.rb:960:in `<class:Facter>' from /home/date/tmp/facter-1.3.3/lib/facter.rb:21:in `<top (required)>' from bin/facter:44:in `require' from bin/facter:44:in `<main>'
それを回避しても、Thread に exclusive がないのでエラー。仕様と実装が進むまで待つしかない。
$ ruby-yarv -I./lib bin/facter ./lib/facter/processor.rb:26:in `<top (required)>': undefined method `exclusive' for YARVCore::VM::Thread:Class (NoMethodError) from /home/date/tmp/facter-1.3.3/lib/facter.rb:941:in `find' from /home/date/tmp/facter-1.3.3/lib/facter.rb:941:in `load' from /home/date/tmp/facter-1.3.3/lib/facter.rb:941:in `block (2 levels) in loadfacts' from /home/date/tmp/facter-1.3.3/lib/facter.rb:935:in `[]=' from /home/date/tmp/facter-1.3.3/lib/facter.rb:935:in `each' from /home/date/tmp/facter-1.3.3/lib/facter.rb:935:in `block in loadfacts' from /home/date/tmp/facter-1.3.3/lib/facter.rb:932:in `new' from /home/date/tmp/facter-1.3.3/lib/facter.rb:932:in `each' from /home/date/tmp/facter-1.3.3/lib/facter.rb:932:in `loadfacts' from /home/date/tmp/facter-1.3.3/lib/facter.rb:960:in `<class:Facter>' from /home/date/tmp/facter-1.3.3/lib/facter.rb:21:in `<top (required)>' from bin/facter:44:in `require' from bin/facter:44:in `<main>'