Skip to content

Commit 7440c3f

Browse files
committed
chore: release bsv-sdk v0.19.0
1 parent 6f95786 commit 7440c3f

2 files changed

Lines changed: 29 additions & 1 deletion

File tree

gem/bsv-sdk/CHANGELOG.md

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,34 @@ All notable changes to the `bsv-sdk` gem are documented here.
55
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/)
66
and this gem adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## 0.19.0 — 2026-05-11
9+
10+
### Breaking Changes
11+
- `Result::Success/Error/NotFound` replaced by single `ProtocolResponse` class composing `Net::HTTPResponse`
12+
- Predicates renamed: `success?``http_success?`, `not_found?``http_not_found?`, `error?` removed (use `!http_success?`)
13+
- Constructor keyword `ok:``http_success:`
14+
- ARC `arc_data_from` key remapping removed — `.data` returns raw API JSON with string keys (`'txid'` not `:txid`)
15+
- Batch broadcast `.data` returns raw JSON array (no per-item `Result` wrapping)
16+
- `BroadcastError`, `BroadcastResponse`, `ChainProviderError`, deprecated `BSV::Network::ARC` and `BSV::Network::WhatsOnChain` facades removed
17+
18+
### Added
19+
- `ProtocolResponse` class with progressive enhancement: `.body`/`.code` (raw HTTP) → `.data` (parsed) → `.canonical` (placeholder)
20+
- `ProtocolResponse#with(**overrides)` for escape hatch post-processing
21+
- `fake_http_response` shared test helper for building real `Net::HTTPResponse` subclass instances
22+
- Debug logging in Protocol (`call`, `default_call`, `build_response`) and `ProtocolResponse#with`
23+
24+
### Changed
25+
- `Protocol#map_response` renamed to `build_response`
26+
- Chain trackers raise `RuntimeError` instead of deleted `ChainProviderError`
27+
- `ChainTracker` doc rewritten to explain the declarative/imperative split
28+
- MCP tools updated: `.metadata[:status_code]``.code`, symbol keys → string keys
29+
30+
### Fixed
31+
- `http_success?` returns `false` (not `nil`) when `http_response` is nil
32+
- `Ordinals#call_get_spend` rescues `TypeError` alongside `JSON::ParserError`
33+
- ARC malformed-2xx error messages include diagnostic detail
34+
- WoC `call_is_utxo` clears stale `error_message` when overriding 404 to success
35+
836
## 0.18.1 — 2026-05-09
937

1038
### Added

gem/bsv-sdk/lib/bsv/version.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# frozen_string_literal: true
22

33
module BSV
4-
VERSION = '0.18.1'
4+
VERSION = '0.19.0'
55
end

0 commit comments

Comments
 (0)