Skip to content

release/v1_19_changes_to_master_for_v1_14_release#412

Merged
aarmoa merged 10 commits intomasterfrom
dev
Apr 27, 2026
Merged

release/v1_19_changes_to_master_for_v1_14_release#412
aarmoa merged 10 commits intomasterfrom
dev

Conversation

@aarmoa
Copy link
Copy Markdown
Collaborator

@aarmoa aarmoa commented Apr 27, 2026

  • Updated proto definitions to Injective Core v1.19.0 and Indexer v1.19.0

Summary by CodeRabbit

  • New Features

    • Added auction module support with voucher queries and claim operations
    • Added insurance module support with fund queries, voucher management, and claim operations
    • Added oracle streaming for list updates and price updates by markets
    • Added Request for Quote (RFQ) support with new gRPC endpoints
  • Documentation

    • Updated README to direct users to AsyncClient V2
  • Chores

    • Updated to Injective core v1.19.0 and Indexer v1.19.0
    • Replaced flakeheaven and isort with ruff for code linting

aarmoa added 10 commits March 3, 2026 13:11
…_after_v1_13_1

[CHORE] sync dev with master after v1.13.1
Regenerate Python protobuf stubs from the updated injective-core and indexer
API definitions, and align the SDK (clients, composer, tests, examples) with
the new message types and RPC surface.

Also refresh buf/codegen inputs where applicable, drop removed modules and
legacy client surfaces that no longer exist upstream, and update dev tooling
(e.g. Ruff for lint/import order) so CI and pre-commit stay green.
…inal-release-for-v1190

[CHORE] regenerate protos for injective-core/indexer and align v1.19.0-beta
…t_for_release

[CHORE] final_v1_19_alignment_for_release
@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai Bot commented Apr 27, 2026

Caution

Review failed

Pull request was closed or merged during review

📝 Walkthrough

Walkthrough

This pull request upgrades the SDK to Injective core v1.19.0 by: removing deprecated v1 AsyncClient and Composer implementations; adding new auction and insurance module APIs in v2 implementations; regenerating all compiled protobufs; removing Hyperlane-related protos; deleting the market.py utility module; updating tooling from flakeheaven/isort to ruff; and adding new example scripts for auction/insurance/oracle features.

Changes

Cohort / File(s) Summary
Linting & Configuration
.pre-commit-config.yaml, Makefile, buf.gen.yaml, CHANGELOG.md, README.md
Updated pre-commit hooks from flakeheaven+isort to ruff; bumped injective-indexer dependency to v1.19.0; updated buf.gen.yaml to use newer versions of ibc-go, wasmd, cometbft, cosmos-sdk, and injective-core v1.19.0; disabled hyperlane-cosmos input; added v1.14.0 changelog entry; refocused README on V2 AsyncClient.
Deprecated V1 APIs Removal
pyinjective/__init__.py, pyinjective/async_client.py, pyinjective/composer.py, pyinjective/core/market.py
Removed v1 AsyncClient from package exports; deleted entire async_client.py (2491 lines) containing v1 gRPC stubs and query/simulation/broadcast methods; deleted composer.py (1887 lines) containing deprecated message-building and response-unpacking logic; deleted market.py (274 lines) containing SpotMarket, DerivativeMarket, and BinaryOptionMarket classes with conversion utilities.
V2 Client & Composer Enhancements
pyinjective/async_client_v2.py, pyinjective/composer_v2.py
Added auction module queries (fetch_auction_module_params, fetch_current_auction_basket, fetch_auction_vouchers, fetch_auction_voucher); added insurance module queries (fetch_insurance_module_params, fetch_insurance_fund(s), fetch_estimated/pending/failed_redemptions, fetch_insurance_vouchers/voucher); removed deprecated fetch_denom_decimal(s) methods; added msg_auction_claim_voucher and msg_insurance_claim_voucher composer methods; refactored timeout-height task cancellation.
Chain gRPC API Updates
pyinjective/client/chain/grpc/chain_grpc_auction_api.py, pyinjective/client/chain/grpc/chain_grpc_insurance_api.py, pyinjective/client/chain/grpc/chain_grpc_exchange_api.py
Added fetch_vouchers/fetch_voucher methods to ChainGrpcAuctionApi; created new ChainGrpcInsuranceApi with module params, fund(s), redemption queries, and voucher methods (73 lines); deleted entire ChainGrpcExchangeApi (639 lines).
Broadcaster Refactoring
pyinjective/core/broadcaster.py
Narrowed all MsgBroadcasterWithPk factory methods and GranteeAccountBroadcasterConfig to accept only v2 AsyncClient/Composer; removed Union type imports; updated fee calculator classes to use v2 types only.
Gas Limit Estimator Updates
pyinjective/core/gas_limit_estimator.py
Updated post-only order filtering to use injective.exchange.v2 proto imports instead of v1beta1; changed OrderType enum reference to v2 module.
Indexer Client & Oracle Stream
pyinjective/indexer_client.py, pyinjective/client/indexer/grpc_stream/indexer_grpc_oracle_stream.py
Removed deprecated listen_derivative_positions_updates method; added listen_oracle_list_updates and listen_oracle_prices_by_markets_updates methods; added stream_oracle_list async method to IndexerGrpcOracleStream with oracle_type and symbols filtering; fixed redundant _stub assignment.
Example Scripts: Auction
examples/chain_client/auction/2_MsgClaimVoucher.py, examples/chain_client/auction/query/{1_Vouchers.py, 2_Voucher.py}
Added three new auction examples: claim voucher broadcast with simulation and gas price adjustment, fetch all vouchers for denom, fetch single voucher by denom and address.
Example Scripts: Insurance
examples/chain_client/insurance/4_MsgClaimVoucher.py, examples/chain_client/insurance/query/{1_Vouchers.py, 2_Voucher.py}
Added three new insurance examples: claim voucher broadcast, fetch all vouchers, fetch single voucher.
Example Scripts: Distribution & Oracle
examples/chain_client/distribution/{1_SetWithdrawAddress.py, 4_FundCommunityPool.py}, examples/exchange_client/oracle_rpc/{1_StreamPrices.py, 5_StreamOracleList.py, 6_StreamPricesByMarkets.py}
Updated distribution examples to import AsyncClient from async_client_v2; added oracle example for direct market fetch; added two new oracle gRPC stream examples (list updates with oracle_type/symbols filtering, prices by markets).
Protobuf Regeneration: Core & Google APIs
pyinjective/proto/exchange/injective_*.pb2*, pyinjective/proto/google/**/*.pb2*
Regenerated 40+ protobuf files for Injective exchange (archiver_rpc, chart_rpc, derivative_exchange_rpc, explorer_rpc, oracle_rpc, rfq_gw_rpc, rfq_rpc, tc_derivatives_rpc, event_provider_api) and Google types/APIs with updated serialized descriptors and offsets; added StreamOracleList RPC to oracle_rpc; replaced injective_rfqrpc with injective_rfq_rpc; added tc_derivatives_rpc and rfq_gw_rpc new protos.
Protobuf Removal: Hyperlane
pyinjective/proto/hyperlane/**/*.py
Deleted 50+ Hyperlane-related protobuf files across core/interchain_security, core/post_dispatch, core/module, and warp modules (both pb2 and pb2_grpc files), totaling 2000+ lines.
Protobuf Removal: Cosmos ORM
pyinjective/proto/cosmos/orm/**/*.py
Deleted 6 Cosmos ORM protobuf files (module/v1alpha1, query/v1alpha1, v1, v1alpha1 schema modules) totaling 200+ lines.
OFAC Blacklist Updates
pyinjective/ofac.json
Added 10 new Ethereum hex addresses to the OFAC blacklist array.

Sequence Diagram(s)

No sequence diagrams are generated as the changes do not introduce new multi-component interaction flows—rather, they consolidate to v2-only APIs, regenerate protobufs, and remove deprecated implementations.

Estimated code review effort

🎯 4 (Complex) | ⏱️ ~60 minutes

Possibly related PRs

Poem

🐰 Hops with glee at v1.19 delight,
Old APIs fade to deprecated night,
Insurance & auctions now stream through the wire,
Ruff lints the code, Oracle queries inspire!
From Hyperlane's shadow, we hop toward the light. 🌙✨

✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch dev

@aarmoa aarmoa merged commit 6c0a588 into master Apr 27, 2026
24 of 25 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant