Skip to content

Remove soroban-spec-json crate#2396

Merged
leighmcculloch merged 3 commits into
mainfrom
remove-soroban-spec-json-crate
Feb 17, 2026
Merged

Remove soroban-spec-json crate#2396
leighmcculloch merged 3 commits into
mainfrom
remove-soroban-spec-json-crate

Conversation

@leighmcculloch
Copy link
Copy Markdown
Member

What

Remove the soroban-spec-json crate and the stellar contract bindings json subcommand, including all associated error types and CLI wiring.

Why

The JSON bindings were an early attempt to provide contract interfaces in JSON that is no longer needed. The crate doesn't support events (EventV0 triggers a todo!() panic), and the lack of any complaints about this broken behavior confirms it's unused. The stellar contract bindings json command has been superseded by stellar contract info interface, which provides an XDR-JSON version of the specification that is up to date, supports events, and is the intended method to get a JSON representation of the spec.

@github-project-automation github-project-automation Bot moved this to Backlog (Not Ready) in DevX Feb 17, 2026
@leighmcculloch leighmcculloch marked this pull request as ready for review February 17, 2026 09:23
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR removes the deprecated soroban-spec-json crate and the stellar contract bindings json subcommand, which has been superseded by stellar contract info interface --output json. The removed functionality was incomplete (EventV0 support triggered a todo!() panic) and unused.

Changes:

  • Deleted the entire soroban-spec-json crate including lib.rs, types.rs, README.md, and Cargo.toml
  • Removed the json command implementation from cmd/soroban-cli/src/commands/contract/bindings/json.rs
  • Removed Json enum variants, error types, and command execution from bindings.rs

Reviewed changes

Copilot reviewed 9 out of 9 changed files in this pull request and generated no comments.

Show a summary per file
File Description
cmd/soroban-cli/src/commands/contract/bindings/json.rs Deleted json bindings command implementation
cmd/soroban-cli/src/commands/contract/bindings.rs Removed Json command variant, error type, and execution logic from enums and match statements
cmd/crates/soroban-spec-json/src/types.rs Deleted type definitions for JSON spec generation
cmd/crates/soroban-spec-json/src/lib.rs Deleted main library implementation with generation functions
cmd/crates/soroban-spec-json/README.md Deleted crate documentation
cmd/crates/soroban-spec-json/Cargo.toml Deleted crate manifest
Cargo.toml Removed soroban-spec-json workspace dependency declaration

@leighmcculloch leighmcculloch merged commit f20c5c2 into main Feb 17, 2026
32 checks passed
@leighmcculloch leighmcculloch deleted the remove-soroban-spec-json-crate branch February 17, 2026 20:38
@github-project-automation github-project-automation Bot moved this from Backlog (Not Ready) to Done in DevX Feb 17, 2026
fnando added a commit that referenced this pull request Feb 19, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants