Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

tdiary-4.0.2とtdiary-contrib-3.2.2.20130614 の組み合わせでrackアプリとして起動できない。 #392

Closed
satoryu opened this issue Dec 9, 2013 · 2 comments

Comments

@satoryu
Copy link
Member

satoryu commented Dec 9, 2013

tdiary-4.0.2 とtdiary-contrib-3.2.2.20130614をGemfileに記載し、bundle install後にrackupで起動しようとしたところ、下記のエラーにより起動できませんでした。

/usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-4.0.2/tdiary/application.rb:45:in `block (2 levels) in <module:TDiary>': undefined method `root' for TDiary:Module (NoMethodError)
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-4.0.2/tdiary/application.rb:44:in `map'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-4.0.2/tdiary/application.rb:44:in `block in <module:TDiary>'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-4.0.2/tdiary/application.rb:20:in `instance_eval'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-4.0.2/tdiary/application.rb:20:in `configure'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-4.0.2/tdiary/application.rb:43:in `<module:TDiary>'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-4.0.2/tdiary/application.rb:16:in `<top (required)>'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-contrib-3.2.2.20130614/lib/tdiary-contrib.rb:2:in `require'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-contrib-3.2.2.20130614/lib/tdiary-contrib.rb:2:in `<top (required)>'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:in `require'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:72:in `block (2 levels) in require'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:in `each'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:70:in `block in require'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:in `each'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler/runtime.rb:59:in `require'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/bundler-1.3.5/lib/bundler.rb:132:in `require'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-4.0.2/tdiary/environment.rb:17:in `<top (required)>'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-4.0.2/tdiary.rb:26:in `require'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/tdiary-4.0.2/tdiary.rb:26:in `<top (required)>'
    from /Users/tatsuya.b.sato/Projects/private/tdiary_on_openshift/config.ru:6:in `require'
    from /Users/tatsuya.b.sato/Projects/private/tdiary_on_openshift/config.ru:6:in `block in <main>'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/builder.rb:55:in `instance_eval'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/builder.rb:55:in `initialize'
    from /Users/tatsuya.b.sato/Projects/private/tdiary_on_openshift/config.ru:in `new'
    from /Users/tatsuya.b.sato/Projects/private/tdiary_on_openshift/config.ru:in `<main>'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/builder.rb:49:in `eval'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/builder.rb:49:in `new_from_string'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/builder.rb:40:in `parse_file'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/server.rb:277:in `build_app_and_options_from_config'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/server.rb:199:in `app'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/server.rb:314:in `wrapped_app'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/server.rb:250:in `start'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rack-1.5.2/lib/rack/server.rb:141:in `start'
    from /usr/local/var/rbenv/versions/2.0.0-p247/lib/ruby/gems/2.0.0/gems/rack-1.5.2/bin/rackup:4:in `<top (required)>'
    from /usr/local/var/rbenv/versions/2.0.0-p247/bin/rackup:23:in `load'
    from /usr/local/var/rbenv/versions/2.0.0-p247/bin/rackup:23:in `<main>'

ちゃんと検証できていないのですが、ソースを見たところ、
require 'tdiary', require 'tdiary/environment',require 'tdiary/application'`の順に読み込まれなければならないはずのところに、'tdiary/environment'の途中で、'tdiary-contrib'が割り込んでおり、途中からtdiary/applicationを呼んでしまい、まだtdiary.rbのTDiary.rootの定義が読み込まれていないのに、そのメソッドを呼んでしまっているのが原因のように見えます。

@tdtds
Copy link
Member

tdtds commented Dec 9, 2013

#375 と同じものだと思いますので、続きはあちらで。

(しかし、それ以前にcontrib-4.0.2 gemがリリースされてないですね orz)

@tdtds
Copy link
Member

tdtds commented Dec 11, 2013

こっちはcloseします。

@tdtds tdtds closed this as completed Dec 11, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants