After a deploy today, the Gem was updated form 0.9.2 to 0.9.22. This broke my app with the below message: Reverting back to 0.9.2.0 fixed the issue. Any idea why?
I call these 2 libs
gem 'google-api-client', '~> 0.9', require: ['google/apis/people_v1', 'google/apis/plus_v1']
Message from application: cannot load such file -- google/apis/people_v1 (LoadError)
/opt/rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/gems/bundler-1.12.1/lib/bundler/runtime.rb:86:in require'
/opt/rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/gems/bundler-1.12.1/lib/bundler/runtime.rb:86:inblock (2 levels) in require'
/opt/rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/gems/bundler-1.12.1/lib/bundler/runtime.rb:81:in each'
/opt/rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/gems/bundler-1.12.1/lib/bundler/runtime.rb:81:inblock in require'
/opt/rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/gems/bundler-1.12.1/lib/bundler/runtime.rb:70:in each'
/opt/rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/gems/bundler-1.12.1/lib/bundler/runtime.rb:70:inrequire'
/opt/rubies/ruby-2.3.1/lib/ruby/gems/2.3.0/gems/bundler-1.12.1/lib/bundler.rb:102:in `require'
I have encountered a similar issue with td-agent, an application that utilizes this gem, that occurs with 0.9.22 but not 0.9.20.:
/opt/td-agent/embedded/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:69:in `require': cannot load such file -- /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/google-api-client-0.9.22/generated/google/apis/bigquery_v2.rb (LoadError)
from /opt/td-agent/embedded/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:69:in `require'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluent-plugin-bigquery-0.3.4/lib/fluent/plugin/out_bigquery.rb:165:in `initialize'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/plugin.rb:132:in `new'
I also encountered same load error with 0.9.23 and td-agent.
/opt/td-agent/embedded/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:69:in `require': cannot load such file -- /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/google-api-client-0.9.23/generated/google/apis/bigquery_v2.rb (LoadError)
from /opt/td-agent/embedded/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:69:in `require'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluent-plugin-bigquery-0.3.4/lib/fluent/plugin/out_bigquery.rb:165:in `initialize'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/plugin.rb:132:in `new'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/plugin.rb:132:in `new_impl'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/plugin.rb:59:in `new_output'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/plugin/out_copy.rb:46:in `block in configure'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/plugin/out_copy.rb:39:in `each'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/plugin/out_copy.rb:39:in `configure'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/agent.rb:133:in `add_match'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/agent.rb:64:in `block in configure'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/agent.rb:57:in `each'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/agent.rb:57:in `configure'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/root_agent.rb:86:in `configure'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/engine.rb:129:in `configure'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/engine.rb:103:in `run_configure'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/supervisor.rb:489:in `run_configure'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/supervisor.rb:160:in `block in start'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/supervisor.rb:366:in `call'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/supervisor.rb:366:in `main_process'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/supervisor.rb:339:in `block in supervise'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/supervisor.rb:338:in `fork'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/supervisor.rb:338:in `supervise'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/supervisor.rb:156:in `start'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/lib/fluent/command/fluentd.rb:173:in `<top (required)>'
from /opt/td-agent/embedded/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from /opt/td-agent/embedded/lib/ruby/site_ruby/2.1.0/rubygems/core_ext/kernel_require.rb:54:in `require'
from /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/fluentd-0.12.31/bin/fluentd:5:in `<top (required)>'
from /opt/td-agent/embedded/bin/fluentd:23:in `load'
from /opt/td-agent/embedded/bin/fluentd:23:in `<top (required)>'
from /usr/sbin/td-agent:7:in `load'
from /usr/sbin/td-agent:7:in `<main>'
Looks like I have the same issue with google/apis/androidpublisher_v2
LoadError: cannot load such file -- google/apis/androidpublisher_v2
/app/config/application.rb:17:in `<top (required)>'
bundle show google-api-client
/home/wojtek/.rbenv/versions/2.3.1/lib/ruby/gems/2.3.0/gems/google-api-client-0.9.23
It was working fine with 0.9.20
I encountered the same situation with td-agent. It looks the permission is different between 0.9.20 and 0.9.23.
# ls -l /etc/td-agent/vendor/bundle/ruby/2.1.0/gems/google-api-client-0.9.23/generated/google/apis/bigquery_v2.rb
-rw-r----- 1 xxx xxx 1988 Jan 25 13:32 /etc/td-agent/vendor/bundle/ruby/2.1.0/gems/google-api-client-0.9.23/generated/google/apis/bigquery_v2.rb
# ls -l /etc/td-agent/vendor/bundle/ruby/2.1.0/gems/google-api-client-0.9.20/generated/google/apis/bigquery_v2.rb
-rw-r--r-- 1 xxx xxx 1988 Jan 25 13:30 /etc/td-agent/vendor/bundle/ruby/2.1.0/gems/google-api-client-0.9.20/generated/google/apis/bigquery_v2.rb
I could fix it with sudo find /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/google-api-client-0.9.23 -type f -exec chmod -v a+r '{}' + in my td-agent setup:)
@saicheems Usually, gem's rb files have o+r permission. Could you release a new version fixing this problem?
Hey all, sorry for the trouble here, it seems the default permissions my system was assigning to the released files were not correct, thank you for investigating this for me (and tagging me)!
I've released a new version 0.9.24 where all files have the standard 0644 permissions... please double check and let me know if things are as expected.
0.9.24 worked for me, thanks
Relieved to hear it 馃槍
Ok, I'm closing this issue for now, please reopen if I missed anything.
Just confirmed the below and everything works fine.
gem 'google-api-client', '~> 0.9.24', require: ['google/apis/people_v1', 'google/apis/plus_v1']
Thanks for the update.
Happened again.
$ td-agent-gem list google-api-client
*** LOCAL GEMS ***
google-api-client (0.9.27)
$ ls -l /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/google-api-client-0.9.27/generated/google/apis/bigquery_v2.rb
-rw-r-----. 1 root root 1988 Feb 8 18:13 /opt/td-agent/embedded/lib/ruby/gems/2.1.0/gems/google-api-client-0.9.27/generated/google/apis/bigquery_v2.rb
$ umask
022
$ gem fetch google-api-client -v 0.9.27
Fetching: google-api-client-0.9.27.gem (100%)
Downloaded google-api-client-0.9.27
$ gem unpack google-api-client-0.9.27.gem
Unpacked gem: '/path/to/google-api-client-0.9.27'
$ ls -l google-api-client-0.9.27
total 2276
-rw-r----- 1 sakuro staff 9016 2017-02-08 18:29 CHANGELOG.md
-rw-r----- 1 sakuro staff 1395 2017-02-08 18:29 CONTRIBUTING.md
-rw-r----- 1 sakuro staff 1099 2017-02-08 18:29 Gemfile
<snip>
Most helpful comment
Hey all, sorry for the trouble here, it seems the default permissions my system was assigning to the released files were not correct, thank you for investigating this for me (and tagging me)!
I've released a new version 0.9.24 where all files have the standard
0644permissions... please double check and let me know if things are as expected.