[arvados] created: 2.7.0-5678-gc48deedfd3

git repository hosting git at public.arvados.org
Wed Jan 17 21:23:43 UTC 2024


        at  c48deedfd3eb3fad8dec6830106437d035943594 (commit)


commit c48deedfd3eb3fad8dec6830106437d035943594
Author: Tom Clegg <tom at curii.com>
Date:   Wed Jan 17 16:20:44 2024 -0500

    20318: Fix arvados-login-sync and arvados-cli dependencies.
    
    Previous requirement '~> 2.7.0.rc1' excluded the current prerelease
    version '2.8.0.dev20231214204948' that the test suite deliberately
    installs ahead of time, so bundler overrode that and selected the last
    released published version 2.7.1 from rubygems, which is not
    compatible with Ruby 3.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/sdk/cli/arvados-cli.gemspec b/sdk/cli/arvados-cli.gemspec
index 665e8ecf14..5b6f89171b 100644
--- a/sdk/cli/arvados-cli.gemspec
+++ b/sdk/cli/arvados-cli.gemspec
@@ -39,7 +39,7 @@ Gem::Specification.new do |s|
   s.executables << "arv"
   s.executables << "arv-tag"
   s.required_ruby_version = '>= 2.5.0'
-  s.add_runtime_dependency 'arvados', '~> 2.7.0.rc1'
+  s.add_runtime_dependency 'arvados', '~> 2.8.rc1'
   # arvados fork of google-api-client gem with old API and new
   # compatibility fixes, built from ../ruby-google-api-client/
   s.add_runtime_dependency('arvados-google-api-client', '>= 0.8.7.5', '< 0.8.9')
diff --git a/services/login-sync/arvados-login-sync.gemspec b/services/login-sync/arvados-login-sync.gemspec
index ce16283c3f..29284fb758 100644
--- a/services/login-sync/arvados-login-sync.gemspec
+++ b/services/login-sync/arvados-login-sync.gemspec
@@ -37,14 +37,14 @@ Gem::Specification.new do |s|
   s.files       = ["bin/arvados-login-sync", "agpl-3.0.txt"]
   s.executables << "arvados-login-sync"
   s.required_ruby_version = '>= 2.5.0'
-  # Note the letter 'a' at the end of the version dependency. This enables
-  # bundler's dependency resolver to include 'pre-release' versions, like the
-  # ones we build (but not publish) on every test pipeline job.
-  # See: https://github.com/rubygems/bundler/issues/4340
-  s.add_runtime_dependency 'arvados', '~> 2.7.0.rc1'
+  # The minimum version's 'rc1' suffix is necessary to enable bundler
+  # to consider 'pre-release' versions.  See:
+  # https://github.com/rubygems/bundler/issues/4340
+  s.add_runtime_dependency 'arvados', '~> 2.8.rc1'
   s.add_runtime_dependency 'launchy', '< 2.5'
-  # We need at least version 0.8.7.3, cf. https://dev.arvados.org/issues/15673
-  s.add_dependency('arvados-google-api-client', '>= 0.8.7.3', '< 0.8.9')
+  # arvados fork of google-api-client gem with old API and new
+  # compatibility fixes, built from ../../sdk/ruby-google-api-client/
+  s.add_runtime_dependency('arvados-google-api-client', '>= 0.8.7.5', '< 0.8.9')
   s.homepage    =
     'https://arvados.org'
 end

commit 8a75f8623b74b17d56180fb08f4d86168662776f
Author: Tom Clegg <tom at curii.com>
Date:   Tue Jan 16 17:32:01 2024 -0500

    20318: Update stale comments to match current error handling.
    
    Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom at curii.com>

diff --git a/sdk/go/arvados/keep_cache.go b/sdk/go/arvados/keep_cache.go
index f6265d5d0a..108081d5ac 100644
--- a/sdk/go/arvados/keep_cache.go
+++ b/sdk/go/arvados/keep_cache.go
@@ -373,24 +373,23 @@ func (cache *DiskCache) ReadAt(locator string, dst []byte, offset int) (int, err
 
 	if err != nil {
 		// If the copy-from-backend goroutine encountered an
-		// error before copying enough bytes to satisfy our
-		// request, we return that error.
+		// error, we return that error. (Even if we read the
+		// desired number of bytes, the error might be
+		// something like BadChecksum so we should not ignore
+		// it.)
 		return 0, err
-	} else if len(dst) == 0 {
+	}
+	if len(dst) == 0 {
 		// It's possible that sharedf==nil here (the writer
 		// goroutine might not have done anything at all yet)
 		// and we don't need it anyway because no bytes are
 		// being read. Reading zero bytes seems pointless, but
 		// if someone does it, we might as well return
-		// suitable values, and not crash.
+		// suitable values, rather than risk a crash by
+		// calling sharedf.ReadAt() when sharedf is nil.
 		return 0, nil
-	} else {
-		// Regardless of whether the copy-from-backend
-		// goroutine succeeded, or failed after copying the
-		// bytes we need, the only errors we need to report
-		// are errors reading from the cache file.
-		return sharedf.ReadAt(dst, int64(offset))
 	}
+	return sharedf.ReadAt(dst, int64(offset))
 }
 
 var quickReadAtLostRace = errors.New("quickReadAt: lost race")

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


hooks/post-receive
-- 




More information about the arvados-commits mailing list