Skip to content

chore(deps): update core handwritten gems lockfiles (major)#34748

Open
renovate-bot wants to merge 1 commit into
googleapis:mainfrom
renovate-bot:renovate/major-core-handwritten-gems-lockfiles
Open

chore(deps): update core handwritten gems lockfiles (major)#34748
renovate-bot wants to merge 1 commit into
googleapis:mainfrom
renovate-bot:renovate/major-core-handwritten-gems-lockfiles

Conversation

@renovate-bot

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
google-apis-core (source, changelog) 0.11.31.2.4 age confidence
minitest (source, changelog) "~> 5.14""~> 6.0" age confidence
minitest (source, changelog) "~> 5.25""~> 6.0" age confidence
minitest (source, changelog) "~> 5.16""~> 6.0" age confidence
retriable "~> 3.1.2""~> 4.2.0" age confidence

Release Notes

googleapis/google-api-ruby-client (google-apis-core)

v1.2.4

Bug Fixes

v1.2.3

Bug Fixes
  • upgrade addressable dependency to ~> 2.9 (#​26622)

v1.2.2

Bug Fixes

v1.2.1

Bug Fixes

v1.2.0

Features

v1.1.0

Features

v1.0.2

Bug Fixes
  • Handle nil response in on_data callback for Faraday streaming (#​24235)

v1.0.1

Bug Fixes
  • Compute and send content-length header when posting a CompositeIO (#​23864)

v1.0.0

This is a major release that replaces the underlying httpclient library with Faraday (#​23524). This will ensure the client libraries are on a more stable and better maintained foundation moving forward.

For most users, this change should be transparent. However, if your application depends on the httpclient interfaces, you can retain compatibility with httpclient by pinning the google-apis-core gem to ~> 0.18 in your Gemfile. Httpclient-based versions of this gem will remain on the 0.x release train, while Faraday-based versions will occupy the 1.x release train. We will push critical fixes and security updates to both branches for one year until August 2026, but new feature work will take place only on the 1.x branch.

v0.18.0

Compare Source

Features
  • Restart & delete resumable upload (#​21896)

v0.17.0

Compare Source

Features
Bug Fixes
  • Fixed a method redefined warning (#​21572)
  • Ensure compatibility with frozen string literals (#​21648)

v0.16.0

Features
  • add ECONNRESET error as retriable error (#​20354)

v0.15.1

Bug Fixes

v0.15.0

Compare Source

Features
  • Introduce api_version to discovery clients (#​18969)

v0.14.1

Compare Source

Bug Fixes
  • fixes uninitialized Pathname issue (#​18480)

v0.14.0

Compare Source

Features
  • Update minimum Ruby version to 2.7 (#​17896)
Bug Fixes
  • allow BaseService#root_url to be an Addressable::URI (#​17895)

v0.13.0

Compare Source

Features
  • Verify credential universe domain against configured universe domain (#​17569)

v0.12.0

Compare Source

Features
minitest/minitest (minitest)

v6.0.6

Compare Source

v6.0.5

Compare Source

v6.0.4

Compare Source

v6.0.3

Compare Source

v6.0.2

Compare Source

v6.0.1

Compare Source

v6.0.0

Compare Source

kamui/retriable (retriable)

v4.2.0

Compare Source

Bug fixes
  • The Kernel extension methods (require "retriable/core_ext/kernel") are now
    private, matching idiomatic Kernel helpers like puts and rand.
    Previously retriable and retriable_with_context were public instance
    methods, so they leaked onto every object's public API and could be invoked
    with an explicit receiver (e.g. "foo".retriable { ... }). They remain
    callable in the documented receiver-less form.
    (#​146)
  • Retriable.with_context (and Kernel#retriable_with_context) now raises
    ArgumentError when called without a block, matching with_override.
    Previously a missing block was silently ignored: the call returned nil and
    the intended block never ran, hiding a caller bug. Behavior change: code that
    relied on the silent no-op will now raise.
  • Config#validate! now validates the structure of each entry in contexts,
    so configured contexts are checked on every Retriable.retriable/
    with_context call rather than only when a given context is first used. A
    context whose options contain an unknown key (including a nested contexts
    key) now raises ArgumentError, "<key> is not a valid option", matching the
    with_override path. Non-Hash contexts and non-Hash per-context values
    remain leniently treated as empty options (no behavior change). Option
    values are still validated lazily at retry time, unchanged.
Docs
  • Document that on_retry receives next_interval: nil on the final rescued
    attempt, when Retriable is about to give up because tries are exhausted.
    on_retry still fires before on_give_up (unchanged behavior); the nil
    contract is now called out in the on_retry documentation so handlers guard
    arithmetic or logging on next_interval.
Performance
  • Config#initialize no longer allocates a throwaway ExponentialBackoff (and
    runs its redundant validate!) just to read default values. Defaults now live
    in a frozen ExponentialBackoff::DEFAULTS constant, removing an allocation and
    redundant validation from the retriable hot path.
    (#​149)

v4.1.1

Compare Source

Bug fixes
  • retry_if, on_retry, and on_give_up are now validated to be callable
    (respond to #call) or falsy. A non-callable truthy value raises
    ArgumentError at configuration time instead of a later NoMethodError on a
    retry path. (#​140)
Internal
  • Add RBS type signatures for the public API (Retriable.configure, config,
    retriable, with_override, with_context, and Retriable::Config) and
    validate them in CI with rbs validate.
    (#​142)
  • Enforce a minimum test coverage floor and add a bundler-audit dependency
    audit job to CI. (#​143)
  • Remove an unused CC_TEST_REPORTER_ID from the CI workflow.
    (#​141)

v4.1.0

Compare Source

Bug fixes
  • A per-call or with_context tries: now clears an inherited intervals: from
    global config or a context, matching the documented precedence. Previously
    Retriable.retriable(tries: 1) was silently ignored when intervals was
    configured, running intervals.size + 1 times. Passing both intervals: and
    tries: in the same call still lets intervals: win.

v4.0.0

Compare Source

This is a major release with breaking changes. Please read carefully before upgrading.

Breaking changes
  • Removed timeout: option. The timeout: option has been removed from Retriable.retriable, Retriable.configure, and Retriable.with_override. It was a thin wrapper around Ruby's Timeout.timeout, which has well-documented safety issues: it interrupts execution at arbitrary lines and can corrupt internal state in libraries that are not interrupt-safe (mutexes, file handles, network sockets, allocator state). This was first raised against this gem in #​96 in 2021; Retriable 3.8.0 deprecated the option, and 4.0 removes the footgun entirely. As a side effect, the historical bug where Retriable's own internal Timeout::Error was silently retried by default is no longer reachable, since Retriable no longer raises a timeout itself. User-raised Timeout::Error (for example, from a Timeout.timeout block you write inside the retried block) is still matched by the default on: [StandardError] because Timeout::Error < RuntimeError < StandardError. Passing timeout: to Retriable.retriable or Retriable.with_override now raises ArgumentError; setting config.timeout in Retriable.configure now raises NoMethodError because the configuration attribute has been removed. See the 4.0 migration section in the README for replacement patterns.
  • Minimum Ruby version is now 3.2. Support for Ruby 2.x, 3.0, and 3.1 has been dropped in Retriable 4.0. If you need Retriable on Ruby 2.3.0-3.1.x, the 3.8.x line (~> 3.8) remains available.
Features
  • Add on_give_up callback that runs when Retriable stops retrying after a rescued retriable exception. Receives (exception, try, elapsed_time, next_interval, reason), where reason is :tries_exhausted or :max_elapsed_time. Does not fire for non-retriable exceptions or retry_if rejections. Pass on_give_up: false to suppress a configured handler for a single call.
  • Accept a Set of Exception classes as the on: option, in addition to a single class, an Array, or a Hash.
Internal
  • Switched Retriable.retriable, Retriable.with_context, and the Kernel extension methods to Ruby 3.1+ anonymous block forwarding. No user-visible behavior change.

v3.8.0

Compare Source

Deprecations
  • Deprecated the timeout: option ahead of its removal in Retriable 4.0. Non-nil timeout values supplied through Retriable.configure, Retriable.retriable(...), or Retriable.with_override(...) now emit a deprecation warning while keeping the existing runtime behavior unchanged. On Ruby 2.7+ the warning is emitted via Kernel.warn(..., category: :deprecated), so callers can silence it through the standard Ruby controls (Warning[:deprecated] = false, ruby -W:no-deprecated, or a custom Warning.warn). To keep the notice from drowning busy applications, it is emitted at most once per process; suppression via Warning[:deprecated] leaves the warner armed for the next call that re-enables the category. Prefer library-native timeout settings, or wrap the retried block in Timeout.timeout(...) directly if you still need that behavior. See the README migration guidance for details.

v3.7.0

Compare Source

  • Feature: Opt-in unbounded retries via tries: Float::INFINITY. Requires a finite max_elapsed_time as a safety bound and is incompatible with custom intervals:. Both invalid configurations raise ArgumentError from Config#validate!.

v3.6.1

Compare Source

  • Fix: Validate the on: option before retrying. Previously, passing a non-Exception value such as Object, Kernel, or a plain Module (which appear in every Exception's ancestor chain) would silently retry process-critical exceptions like SystemExit and Interrupt. The on: option now requires an Exception subclass, an array of them, or a hash whose keys are such classes and whose values are nil, a Regexp, or an array of Regexps. Invalid shapes raise ArgumentError before the block runs.
  • Fix: Validate with_override(contexts:) shape before applying overrides. contexts may be nil or a hash, and each per-context override must be a hash.
  • Docs: Document that on_retry: false disables a callback set in Retriable.configure for a single call.

v3.6.0

Compare Source

  • Breaking: Retriable.override and Retriable.reset_override are removed and replaced by block-scoped Retriable.with_override(opts) { ... }. The new API requires a block, restores the previous override (or absence of override) when the block exits via ensure, and is thread-local — overrides set in one thread do not affect other threads, and child threads do not inherit them. Fibers within a thread still share the thread's active override. Nested with_override calls correctly restore the outer override on inner exit. See the README and docs/testing.md for migration and testing patterns. This replaces the override API introduced in 3.5.0.

v3.5.1

Compare Source

  • Fix: Validate retry timing and count options before use to reject invalid retry configurations. tries must now be a positive integer unless a custom intervals array is provided.

v3.5.0

Compare Source

  • Fix: Do not count skipped sleep intervals against max_elapsed_time when sleep_disabled is true.
  • Add override and reset_override APIs to force retry settings over local call options when needed (for example, test short-circuiting).

v3.4.1

Compare Source

  • Fix: Use Process.clock_gettime(CLOCK_MONOTONIC) for elapsed time tracking so retry timing is immune to wall-clock adjustments (NTP, manual changes).
  • Fix: Handle max_elapsed_time: nil gracefully instead of raising NoMethodError.
  • Remove dead * 1.0 float coercion in ExponentialBackoff#randomize.

v3.4.0

Compare Source

  • Add retry_if option to support custom retry predicates, including checks against wrapped exception.cause values.

v3.3.0

Compare Source

  • Refactor Retriable.retriable internals into focused private helpers to improve readability while preserving behavior.
  • Modernize .rubocop.yml with explicit modern defaults to enable new cops while preserving existing project style policies.

v3.2.1

Compare Source

  • Remove executables from gemspec as it was polluting the path for some users. Thanks @​hsbt.

v3.2.0

Compare Source

  • Require ruby 2.3+.
  • Fix: Ensure tries value is overridden by intervals parameter if both are provided and add a test for this. This is always what the README stated but the code didn't actually do it.
  • Fix: Some rubocop offenses.

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • Automerge
    • At any time (no schedule defined)

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@forking-renovate

Copy link
Copy Markdown

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: google-cloud-pubsub/Gemfile.lock
Writing lockfile to /tmp/renovate/repos/github/googleapis/google-cloud-ruby/google-cloud-pubsub/Gemfile.lock
Fetching gem metadata from https://rubygems.org/.........
Resolving dependencies...

Could not find compatible versions

Because every version of google-cloud-pubsub depends on retriable ~> 3.1
  and Gemfile depends on google-cloud-pubsub >= 0,
  retriable ~> 3.1 is required.
So, because Gemfile depends on retriable ~> 4.2.0,
  version solving has failed.

@renovate-bot renovate-bot requested review from a team and yoshi-approver as code owners July 10, 2026 18:10
@trusted-contributions-gcf trusted-contributions-gcf Bot added kokoro:force-run Add this label to force Kokoro to re-run the tests. owlbot:run Add this label to trigger the Owlbot post processor. labels Jul 10, 2026
@gcf-owl-bot gcf-owl-bot Bot removed the owlbot:run Add this label to trigger the Owlbot post processor. label Jul 10, 2026
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Jul 10, 2026
@torreypayne torreypayne added the do not merge Indicates a pull request not ready for merge, due to either quality or timing. label Jul 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

do not merge Indicates a pull request not ready for merge, due to either quality or timing.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants