[ARVADOS] created: 398721c8009a58181c6a26407a2d195a26e138f3

Git user git at public.curoverse.com
Thu May 12 16:41:08 EDT 2016


        at  398721c8009a58181c6a26407a2d195a26e138f3 (commit)


commit 398721c8009a58181c6a26407a2d195a26e138f3
Author: Brett Smith <brett at curoverse.com>
Date:   Thu May 12 16:40:37 2016 -0400

    9213: Improve gem loading in `arv`.
    
    * Include the exception string in the error message.
    * Separate stdlib loading problems from gem loading problems.
    * Load gems with more dependencies first, to avoid situations like
      this:
    
    irb(main):001:0> require 'active_support/inflector'
    => true
    irb(main):002:0> require 'arvados/google_api_client'
    Gem::LoadError: Unable to activate arvados-0.1.20160420143004, because activesupport-4.2.6 conflicts with activesupport (< 4.2.6, >= 3)

diff --git a/sdk/cli/bin/arv b/sdk/cli/bin/arv
index 541bcdc..301cadc 100755
--- a/sdk/cli/bin/arv
+++ b/sdk/cli/bin/arv
@@ -14,21 +14,30 @@ if RUBY_VERSION < '1.9.3' then
 end
 
 begin
-  require 'curb'
-  require 'rubygems'
-  require 'arvados/google_api_client'
   require 'json'
+  require 'net/http'
   require 'pp'
-  require 'trollop'
+  require 'tempfile'
+  require 'yaml'
+rescue LoadError => error
+  abort "Error loading libraries: #{error}\n"
+end
+
+begin
+  require 'rubygems'
+  # Load the gems with more requirements first, so we respect any version
+  # constraints they put on gems loaded later.
+  require 'arvados/google_api_client'
+  require 'active_support/inflector'
   require 'andand'
+  require 'curb'
   require 'oj'
-  require 'active_support/inflector'
-  require 'yaml'
-  require 'tempfile'
-  require 'net/http'
-rescue LoadError
+  require 'trollop'
+rescue LoadError => error
   abort <<-EOS
 
+Error loading gems: #{error}
+
 Please install all required gems:
 
   gem install activesupport andand curb google-api-client json oj trollop yaml

commit 3b8349ac05b3f3e036dc414c0aae8b00170a959f
Author: Brett Smith <brett at curoverse.com>
Date:   Thu May 12 16:37:59 2016 -0400

    9213: Fix google-api-client dependency range for arvados gem.

diff --git a/sdk/ruby/arvados.gemspec b/sdk/ruby/arvados.gemspec
index 355ed5d..2c4e60e 100644
--- a/sdk/ruby/arvados.gemspec
+++ b/sdk/ruby/arvados.gemspec
@@ -22,7 +22,9 @@ Gem::Specification.new do |s|
   # activesupport <4.2.6 only because https://dev.arvados.org/issues/8222
   s.add_dependency('activesupport', '>= 3', '< 4.2.6')
   s.add_dependency('andand', '~> 1.3', '>= 1.3.3')
-  s.add_dependency('google-api-client', '>= 0.7', '< 0.9')
+  # Our google-api-client dependency used to be < 0.9, but that could be
+  # satisfied by the buggy 0.9.pre*.  https://dev.arvados.org/issues/9213
+  s.add_dependency('google-api-client', '>= 0.7', '< 0.8.9')
   # work around undeclared dependency on i18n in some activesupport 3.x.x:
   s.add_dependency('i18n', '~> 0')
   s.add_dependency('json', '~> 1.7', '>= 1.7.7')

-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list