claude-agent-sdk 0.16.0 → 0.16.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 9c6e7dfb9b25404169db87bff2a8688c9bd1103bb04ebc980bd8206091b33f87
4
- data.tar.gz: 1c921d464b1b8272742f8de36800635e5f777fb88a42304ac9a5a1d7f9027beb
3
+ metadata.gz: 784f87932778dac72fe69ebbe3236e62a7df31f9671b52150fae392aa3d57f05
4
+ data.tar.gz: cd743d1cabb8bd151457f0a4b18be725f25b5de684ba2430df8a76037900dd98
5
5
  SHA512:
6
- metadata.gz: 5b7b2c4e0503db55b36d761bec12bdc43619e16688a3b3e38c79d50a34af92d68e6ccea29e523eaaa0279f577a296cb25ba0c447cafb388c2127bc870b3cc703
7
- data.tar.gz: bd05dac1831ce8b77462019f026f88b2618ca6df4be31bc84c86c145fbc59fb54738530a8b6f188c654d588171acfe28efd216a8c12b846d4d3e5ae1cfe2d37f
6
+ metadata.gz: 68b582ef69fec09c0487d6d5600c76ac5d5a8420264f2b151cc7f52f95c7fb975339d6afa9fe519d4e75b48781c4f6132446fb03b2e9995decc3088ccd66c0f1
7
+ data.tar.gz: d119aaba15cb76997ceb58abbc43176a82df9ad4b697089a6b26ffbe342fb50ea10173890dddb03d5dc13397989abb774b617f140b1f92b3fdb0a8d16e3298d2
data/CHANGELOG.md CHANGED
@@ -7,6 +7,11 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
7
7
 
8
8
  ## [Unreleased]
9
9
 
10
+ ## [0.16.1] - 2026-04-21
11
+
12
+ ### Fixed
13
+ - `Client#receive_response` no longer raises `LocalJumpError: break from proc-closure` when called inside `Async { }`. The 0.15.1 thread-hop severed `break`'s unwind target; replaced with a flag so the loop exits via the natural `end` marker after `ResultMessage`.
14
+
10
15
  ## [0.16.0] - 2026-04-22
11
16
 
12
17
  ### Added
data/README.md CHANGED
@@ -1,5 +1,7 @@
1
1
  # Claude Agent SDK for Ruby
2
2
 
3
+ ![Claude Agent SDK for Ruby banner](assets/claude-agent-sdk-ruby-banner.png)
4
+
3
5
  [![Gem Version](https://badge.fury.io/rb/claude-agent-sdk.svg?icon=si%3Arubygems)](https://badge.fury.io/rb/claude-agent-sdk)
4
6
 
5
7
  An **unofficial, community-maintained** Ruby SDK for the [Claude Code](https://docs.claude.com/en/docs/claude-code-overview) agent runtime. Not affiliated with or supported by Anthropic.
@@ -106,7 +108,7 @@ Add this line to your application's Gemfile:
106
108
  gem 'claude-agent-sdk', github: 'ya-luotao/claude-agent-sdk-ruby'
107
109
 
108
110
  # Or use a stable version from RubyGems
109
- gem 'claude-agent-sdk', '~> 0.16.0'
111
+ gem 'claude-agent-sdk', '~> 0.16.1'
110
112
  ```
111
113
 
112
114
  And then execute:
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ClaudeAgentSDK
4
- VERSION = '0.16.0'
4
+ VERSION = '0.16.1'
5
5
  end
@@ -418,9 +418,15 @@ module ClaudeAgentSDK
418
418
  def receive_response(&block)
419
419
  return enum_for(:receive_response) unless block
420
420
 
421
+ # Flag-based rather than `break`: `receive_messages` hops this
422
+ # block onto a plain thread via `FiberBoundary.invoke`, which
423
+ # severs break's unwind target.
424
+ result_seen = false
421
425
  receive_messages do |message|
426
+ next if result_seen
427
+
422
428
  block.call(message)
423
- break if message.is_a?(ResultMessage)
429
+ result_seen = true if message.is_a?(ResultMessage)
424
430
  end
425
431
  end
426
432
 
metadata CHANGED
@@ -1,13 +1,13 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: claude-agent-sdk
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.16.0
4
+ version: 0.16.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Community Contributors
8
8
  bindir: bin
9
9
  cert_chain: []
10
- date: 2026-04-21 00:00:00.000000000 Z
10
+ date: 2026-04-22 00:00:00.000000000 Z
11
11
  dependencies:
12
12
  - !ruby/object:Gem::Dependency
13
13
  name: async