scrapper / postrunner

Application to manage FIT files such as those produced by Garmin fitness devices
GNU General Public License v2.0
62 stars 14 forks source link

I did a "gem update" and it's broken #9

Closed davidwul closed 6 years ago

davidwul commented 6 years ago

When I import, I got an error: /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:127:in require': cannot load such file -- perobs/Store (LoadError) from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:127:inrescue in require' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:40:in require' from /var/lib/gems/2.3.0/gems/perobs-4.0.0/lib/perobs.rb:29:in<top (required)>' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:127:in require' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:127:inrescue in require' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:40:in require' from /var/lib/gems/2.3.0/gems/postrunner-0.9.0/lib/postrunner/Main.rb:15:in<top (required)>' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:inrequire' from /var/lib/gems/2.3.0/gems/postrunner-0.9.0/lib/postrunner.rb:20:in <top (required)>' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:inrequire' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require' from /var/lib/gems/2.3.0/gems/postrunner-0.9.0/bin/postrunner:4:in<top (required)>' from /usr/local/bin/postrunner:22:in load' from /usr/local/bin/postrunner:22:in

' Here is my gems installed:

sudo gem list

LOCAL GEMS

bigdecimal (1.3.2, 1.2.8) bindata (2.4.1, 2.3.0) did_you_mean (1.0.0) fit4ruby (1.7.0) io-console (0.4.6, 0.4.5) json (2.1.0, 1.8.3) mini_portile2 (2.3.0, 2.2.0) minitest (5.10.3) net-telnet (0.1.1) nokogiri (1.8.1, 1.8.0) perobs (4.0.0) postrunner (0.9.0) power_assert (1.1.1, 1.1.0, 0.2.7) psych (2.2.4, 2.1.0) rake (12.3.0, 12.0.0) rdoc (5.1.0, 4.2.1) test-unit (3.2.6, 3.2.5)

Should I go back to earlier version? Thanks

scrapper commented 6 years ago

The gem list looks OK. You have bindata 2.4.1 installed. That's incompatible with fit4ruby. 2.3.0 is the only version that works. But that's not the problem here. It cannot find perobs/Store.rb. But you have perobs 4.0.0 installed. Maybe a file permission problem?

davidwul commented 6 years ago

thanks, I downgrade bindata, with the same result. I then downgrade perobs, but now have a different error.

/var/lib/gems/2.3.0/gems/postrunner-0.9.0/lib/postrunner/FFS_Activity.rb:99:in <class:FFS_Activity>': undefined methodattr_persist' for PostRunner::FFS_Activity:Class (NoMethodError) Did you mean? attr_writer from /var/lib/gems/2.3.0/gems/postrunner-0.9.0/lib/postrunner/FFS_Activity.rb:29:in <module:PostRunner>' from /var/lib/gems/2.3.0/gems/postrunner-0.9.0/lib/postrunner/FFS_Activity.rb:24:in<top (required)>' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:inrequire' from /var/lib/gems/2.3.0/gems/postrunner-0.9.0/lib/postrunner/FFS_Device.rb:14:in <top (required)>' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:inrequire' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require' from /var/lib/gems/2.3.0/gems/postrunner-0.9.0/lib/postrunner/FitFileStore.rb:19:in<top (required)>' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:inrequire' from /var/lib/gems/2.3.0/gems/postrunner-0.9.0/lib/postrunner/Main.rb:22:in <top (required)>' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:inrequire' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require' from /var/lib/gems/2.3.0/gems/postrunner-0.9.0/lib/postrunner.rb:20:in<top (required)>' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:in require' from /usr/lib/ruby/2.3.0/rubygems/core_ext/kernel_require.rb:55:inrequire' from /var/lib/gems/2.3.0/gems/postrunner-0.9.0/bin/postrunner:4:in <top (required)>' from /usr/local/bin/postrunner:22:inload' from /usr/local/bin/postrunner:22:in `

'

version of gems are: bindata (2.3.0) fit4ruby (1.7.0) perobs (3.0.2) postrunner (0.9.0)

I guess perobs 4.0 must conflict something? Any idea? Thanks,

scrapper commented 6 years ago

perobs 4.0.0 is a hard requirement for postrunner 0.9.0. Older version will not work. So that error is to be expected. Have you checked the permissions on the perobs 4.0.0 files?

davidwul commented 6 years ago

it is indeed a file permission issue. Thanks for insisting!