Skip to content

[chore] release version for chain v1.20.1#419

Merged
dbrajovic merged 7 commits into
masterfrom
release/master-v1.16
Jun 29, 2026
Merged

[chore] release version for chain v1.20.1#419
dbrajovic merged 7 commits into
masterfrom
release/master-v1.16

Conversation

@dbrajovic

@dbrajovic dbrajovic commented Jun 29, 2026

Copy link
Copy Markdown
Collaborator

Summary by CodeRabbit

  • New Features

    • Added support for a new derivatives funding-payments endpoint.
    • Added a new exchange RPC method for preparing fee grants.
    • Extended rate-limit data to include oracle-related pricing information.
    • Updated package version to 1.16.0.
  • Chores

    • Refreshed generated protocol definitions and dependency references to align with the latest upstream releases.

@coderabbitai

coderabbitai Bot commented Jun 29, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

📝 Walkthrough

Walkthrough

Bumps the SDK to v1.16.0, updates build dependencies (injective-indexer to v1.20.49, buf.gen.yaml module tags), and regenerates protobuf/gRPC bindings. Key schema additions: FundingPayments RPC on InjectiveTCDerivativesRPC, PrepareFeeGrant RPC on InjectiveExchangeRPC, and oracle_type/token_oracle_type field on Peggy RateLimit. Several other proto modules receive descriptor-only offset updates.

Changes

v1.16.0 Release

Layer / File(s) Summary
Version bump and build dependency upgrades
pyproject.toml, Makefile, buf.gen.yaml, CHANGELOG.md
Version set to 1.16.0; clone-injective-indexer target updated to v1.20.49; buf.gen.yaml module tags bumped for cometbft, cosmos-sdk, and injective-core; changelog entry added.
FundingPayments RPC added to TC Derivatives
pyinjective/proto/exchange/injective_tc_derivatives_rpc_pb2.py, pyinjective/proto/exchange/injective_tc_derivatives_rpc_pb2_grpc.py
Descriptor bytes and offsets updated; FundingPayments unary-unary method added to stub, servicer, server registration, and experimental client.
PrepareFeeGrant RPC added to Exchange RPC
pyinjective/proto/exchange/injective_exchange_rpc_pb2.py, pyinjective/proto/exchange/injective_exchange_rpc_pb2_grpc.py
Descriptor updated to include PrepareFeeGrantRequest/PrepareFeeGrantResponse; stub, servicer, server registration, and experimental client extended with PrepareFeeGrant.
Peggy RateLimit oracle_type and msgs descriptor update
pyinjective/proto/injective/peggy/v1/rate_limit_pb2.py, pyinjective/proto/injective/peggy/v1/msgs_pb2.py
rate_limit_pb2.py adds oracle_pb2 import and updates offsets for token_oracle_type; msgs_pb2.py regenerates descriptor bytes and all message offsets.
Descriptor-only regeneration for chart, RFQ, and RFQ-GW protos
pyinjective/proto/exchange/injective_chart_rpc_pb2.py, pyinjective/proto/exchange/injective_rfq_gw_rpc_pb2.py, pyinjective/proto/exchange/injective_rfq_rpc_pb2.py
Serialized DESCRIPTOR bytes and _serialized_start/_serialized_end offsets updated; no behavioral changes.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

  • InjectiveLabs/sdk-python#416: Adjusts the same Makefile clone-injective-indexer tag and buf.gen.yaml module version pins, representing the prior step in the injective-core/indexer upgrade path.
  • InjectiveLabs/sdk-python#418: Overlaps directly with the same Makefile/buf.gen dependency tag bumps and regenerated gRPC bindings for PrepareFeeGrant and FundingPayments.

Poem

🐇 Hop hop, the protos are new,
FundingPayments and FeeGrant come through,
Oracle types in the limit rate dwell,
Descriptor offsets updated as well,
v1.16.0 lands with a joyful "Yahoo!" 🎉

🚥 Pre-merge checks | ✅ 4 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 50.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (4 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title matches the release-oriented change and correctly references the chain v1.20.1 version bump.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ 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 release/master-v1.16

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@buf.gen.yaml`:
- Around line 19-23: Update the Injective Core dependency entry in buf.gen.yaml
so generation uses the current live upstream instead of the broken
InjectiveLabs/injective-core repository URL. Keep the existing dependency
structure, but replace the git_repo value for the Injective Core input with the
correct active repository reference and verify the tag remains compatible with
the other buf.gen.yaml inputs.

In `@Makefile`:
- Line 29: The clone target in the Makefile is pointing to an unreachable
Injective indexer repository/ref, which breaks clone-all and copy-proto. Update
the git clone command to use a reachable upstream repository and valid
branch/tag, keeping the existing behavior of cloning injective-indexer for the
downstream targets.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro

Run ID: f7932995-bde2-4ed4-81ae-c18f8f4907ba

📥 Commits

Reviewing files that changed from the base of the PR and between 9a79027 and c7e3dd7.

📒 Files selected for processing (13)
  • CHANGELOG.md
  • Makefile
  • buf.gen.yaml
  • pyinjective/proto/exchange/injective_chart_rpc_pb2.py
  • pyinjective/proto/exchange/injective_exchange_rpc_pb2.py
  • pyinjective/proto/exchange/injective_exchange_rpc_pb2_grpc.py
  • pyinjective/proto/exchange/injective_rfq_gw_rpc_pb2.py
  • pyinjective/proto/exchange/injective_rfq_rpc_pb2.py
  • pyinjective/proto/exchange/injective_tc_derivatives_rpc_pb2.py
  • pyinjective/proto/exchange/injective_tc_derivatives_rpc_pb2_grpc.py
  • pyinjective/proto/injective/peggy/v1/msgs_pb2.py
  • pyinjective/proto/injective/peggy/v1/rate_limit_pb2.py
  • pyproject.toml

Comment thread buf.gen.yaml
Comment on lines +19 to +23
tag: v1.0.1-inj.9
- git_repo: https://github.com/InjectiveLabs/cosmos-sdk
tag: v0.50.14-inj.10
tag: v0.50.14-inj.11
- git_repo: https://github.com/InjectiveLabs/injective-core
tag: v1.20.0
tag: v1.20.1

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🗄️ Data Integrity & Integration | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail
for repo_tag in \
  "https://github.com/InjectiveLabs/cometbft.git v1.0.1-inj.9" \
  "https://github.com/InjectiveLabs/cosmos-sdk.git v0.50.14-inj.11" \
  "https://github.com/InjectiveLabs/injective-core.git v1.20.1"
do
  repo="${repo_tag% *}"
  tag="${repo_tag#* }"
  git ls-remote --tags "$repo" "$tag"
done

Repository: InjectiveLabs/sdk-python

Length of output: 1155


🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "== buf.gen.yaml excerpt =="
nl -ba buf.gen.yaml | sed -n '1,40p'

echo
echo "== git ls-remote checks without .git suffix =="
for repo_tag in \
  "https://github.com/InjectiveLabs/cometbft v1.0.1-inj.9" \
  "https://github.com/InjectiveLabs/cosmos-sdk v0.50.14-inj.11" \
  "https://github.com/InjectiveLabs/injective-core v1.20.1"
do
  repo="${repo_tag% *}"
  tag="${repo_tag#* }"
  echo "-- $repo $tag"
  git ls-remote --tags "$repo" "$tag" || true
done

echo
echo "== ls-remote full tag listing for injective-core URL variants =="
for repo in \
  "https://github.com/InjectiveLabs/injective-core" \
  "https://github.com/InjectiveLabs/injective-core.git"
do
  echo "-- $repo"
  git ls-remote --tags "$repo" 2>&1 | sed -n '1,20p' || true
done

Repository: InjectiveLabs/sdk-python

Length of output: 229


🌐 Web query:

InjectiveLabs injective-core GitHub repository v1.20.1 tag

💡 Result:

The Injective protocol v1.20.1 release is associated with Injective Mainnet Upgrade Proposal 665 [1]. While the v1.20.0 release is officially hosted in the InjectiveFoundation/injective-core repository [2][3], technical documentation and governance records identify v1.20.1 as a targeted point release aimed at introducing improvements to the Injective protocol [1]. As of June 29, 2026, development activities related to v1.20.1 have been observed across the ecosystem, including repository-specific preparations [4]. Users and validators are advised to monitor the official InjectiveFoundation/injective-core GitHub repository releases page for the official tag, binary artifacts, and upgrade instructions [2][5]. The legacy InjectiveLabs/injective-chain-releases repository is deprecated and no longer maintained; all current source code and release management have transitioned to the InjectiveFoundation/injective-core repository [5].

Citations:


🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "== buf.gen.yaml relevant lines =="
sed -n '15,28p' buf.gen.yaml

echo
echo "== remote refs for claimed injective-core location =="
git ls-remote --tags https://github.com/InjectiveLabs/injective-core v1.20.1 || true

echo
echo "== remote refs for current official repository =="
git ls-remote --tags https://github.com/InjectiveFoundation/injective-core v1.20.1 || true

Repository: InjectiveLabs/sdk-python

Length of output: 926


Fix buf.gen.yaml:19-23 to use the current Injective Core upstreamhttps://github.com/InjectiveLabs/injective-core no longer resolves, so this input will break generation until it points at the live repository.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@buf.gen.yaml` around lines 19 - 23, Update the Injective Core dependency
entry in buf.gen.yaml so generation uses the current live upstream instead of
the broken InjectiveLabs/injective-core repository URL. Keep the existing
dependency structure, but replace the git_repo value for the Injective Core
input with the correct active repository reference and verify the tag remains
compatible with the other buf.gen.yaml inputs.

Comment thread Makefile

clone-injective-indexer:
git clone https://github.com/InjectiveLabs/injective-indexer.git -b v1.20.2 --depth 1 --single-branch
git clone https://github.com/InjectiveLabs/injective-indexer.git -b v1.20.49 --depth 1 --single-branch

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

🩺 Stability & Availability | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
set -euo pipefail
repo=https://github.com/InjectiveLabs/injective-indexer.git
git ls-remote --tags "$repo" v1.20.49

Repository: InjectiveLabs/sdk-python

Length of output: 282


🏁 Script executed:

#!/bin/bash
set -euo pipefail

# Show the relevant Makefile section with line numbers.
sed -n '1,80p' Makefile | cat -n

Repository: InjectiveLabs/sdk-python

Length of output: 1701


🌐 Web query:

InjectiveLabs injective-indexer v1.20.49 api/gen/grpc

💡 Result:

The injective-indexer repository maintained by Injective Labs serves as the primary source for the Injective Indexer API, which provides gRPC-based microservices for querying indexed chain data [1][2]. The path api/gen/grpc within the Injective Indexer repository contains the generated Protocol Buffer (protobuf) files for these gRPC services [3]. These files define the service interfaces and message types used for communication between clients and the Indexer service [1][4]. Key points regarding the Injective Indexer and these generated files: 1. Integration and Usage: Injective Labs provides official SDKs (such as @injectivelabs/sdk-ts) that bundle these gRPC clients, allowing developers to interact with the Indexer API without manually managing protobuf files [5][6][7]. The SDKs provide high-level wrappers for querying various modules like accounts, markets, and the explorer [8][9]. 2. Versioning: The Indexer repository follows a versioning scheme that corresponds with Injective chain releases [1]. When using specific versions like v1.20.49, these correspond to the exported gRPC definitions used to generate client code in languages like Go, Python, and TypeScript [1][3]. 3. Repository Role: The injective-proto repository is often used to centralize generated protobufs for the entire Injective ecosystem [1]. It uses automation (e.g., makefile commands like download-indexer-protos) to pull the latest definitions from the injective-indexer repository's api/gen/grpc directory and generate language-specific bindings [1][3]. 4. Documentation: Developers are encouraged to use the official Injective documentation rather than accessing the generated protobuf files directly, as the documentation provides guides for using the SDKs to perform queries and manage real-time data streams [5][2][9]. For developers needing to work with the gRPC layer directly, the injective-indexer repository on GitHub is the source of truth for these definitions [1][4].

Citations:


Fix the indexer clone target
git clone https://github.com/InjectiveLabs/injective-indexer.git -b v1.20.49 --depth 1 --single-branch points at a repository that doesn’t resolve, so clone-all/copy-proto will fail. Update it to a reachable upstream/ref.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@Makefile` at line 29, The clone target in the Makefile is pointing to an
unreachable Injective indexer repository/ref, which breaks clone-all and
copy-proto. Update the git clone command to use a reachable upstream repository
and valid branch/tag, keeping the existing behavior of cloning injective-indexer
for the downstream targets.

@dbrajovic dbrajovic merged commit 4ee1dd3 into master Jun 29, 2026
14 checks passed
@dbrajovic dbrajovic deleted the release/master-v1.16 branch June 29, 2026 16:15
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