Skip to content

Sync with upstream java-tron 4.8.2 protos (GreatVoyage-v4.8.2.1) - #8

Merged
maoueh merged 4 commits into
masterfrom
feature/tron-protocol-sync-4-8-2-1
Jul 31, 2026
Merged

Sync with upstream java-tron 4.8.2 protos (GreatVoyage-v4.8.2.1)#8
maoueh merged 4 commits into
masterfrom
feature/tron-protocol-sync-4-8-2-1

Conversation

@maoueh

@maoueh maoueh commented Jul 31, 2026

Copy link
Copy Markdown

Syncs this fork with upstream tronprotocol/protocol at 8432beca ("Merge pull request tronprotocol#256 from halibobo1205/release_4.8.2"), so it carries the protos shipped with java-tron GreatVoyage-v4.8.2.1.

GreatVoyage-v4.8.2.1 is a dependency-bump release (libp2p 2.2.8 -> 2.2.9, grpc-java 1.81.0 -> 1.83.0) plus HTTP API performance work. It contains no proto change of its own, and upstream has no 4.8.2.1 sync commit — its HEAD is still the 4.8.2 merge. So syncing to 8432beca is what "support 4.8.2.1" means at the proto level.

Previous sync point was upstream 4c726956 (java-tron 4.8.1).

Upstream changes in this range

  • api/api.proto: all option (google.api.http) = {...} grpc-gateway annotations removed from the service definitions, and the import "google/api/annotations.proto"; line dropped. This is the "improve HTTP API performance" item.
  • api/api.proto: IvkDecryptTRC20Parameters.events and OvkDecryptTRC20Parameters.events marked [deprecated = true]; shiededTransaction comment typo fixed.
  • core/Tron.proto, core/Discover.proto: a single blank line removed each.
  • core/tron/*.proto: 8 empty placeholder files deleted upstream. This fork had already removed them, so nothing to do.
  • Both protocol documentation files refreshed.

Verified: the RPC list is byte-for-byte identical between 4c726956 and 8432beca, and no message, field or enum definition changed. This is wire-compatible.

Changes in this PR

  1. Merge of upstream 8432beca. Merged cleanly — no conflicts. All StreamingFast deltas are preserved: the go_package rewrites, core/contract/*.proto flattened into core/, the pb/ bindings, buf.* config and .github/ workflows.
  2. buf.build/googleapis/googleapis removed from buf.yaml and buf.lock, since no proto imports google/api/annotations.proto any more. google.golang.org/genproto/googleapis/api correspondingly dropped from go.mod.
  3. pb/api regenerated with buf generate. pb/core is unchanged.
  4. README: dropped the now-stale "Removed empty core/tron/*.proto files" bullet — upstream removed them too, so it is no longer a divergence.

Impact on the generated Go API

The exported surface is identical — same types, same methods, same gRPC client/server interfaces. Diffing exported type/func declarations before and after regeneration produces no output for both api.pb.go and api_grpc.pb.go.

What actually changed in pb/api:

  • the embedded file descriptor bytes, reflecting the removed HTTP annotations;
  • doc comments (the shieldedTransaction typo fix);
  • // Deprecated: markers on IvkDecryptTRC20Parameters.GetEvents() and OvkDecryptTRC20Parameters.GetEvents();
  • protoc-gen-go-grpc version comment v1.6.1 -> v1.6.2.

Nothing here breaks firehose-tron, which imports pb/api and pb/core.

Verification

  • buf build — OK
  • go build ./... — OK
  • go test ./... — OK
  • go vet ./... — OK
  • buf generate is idempotent on the committed tree, and go mod tidy is a no-op.

Follow-ups after merge (not done here)

  • Tag the merge commit. Note .github/workflows/buf.yml only triggers on tags: v*, so a GreatVoyage-v4.8.2.1 tag alone will not publish to the BSR — the plain v4.8.2.1 tag is the one that runs buf push --label=main.
  • No CHANGELOG.md was added: this repo has never had one and uses release tags to map fork versions to java-tron versions.

halibobo1205 and others added 4 commits July 16, 2026 13:34
Brings in the protos shipped with java-tron GreatVoyage-v4.8.2, which are
also the protos shipped with GreatVoyage-v4.8.2.1 (that release is
dependency bumps only and carries no proto change of its own).

Upstream changes in this range:
- api/api.proto: dropped all (google.api.http) grpc-gateway annotations
  and the google/api/annotations.proto import ("improve HTTP API
  performance"). No RPC, message, field or enum changed.
- api/api.proto: marked IvkDecryptTRC20Parameters.events and
  OvkDecryptTRC20Parameters.events as deprecated, fixed a comment typo.
- core/Tron.proto, core/Discover.proto: one blank line removed each.
- core/tron/*.proto: 8 empty placeholder files deleted (this fork had
  already removed them).
- Protocol documentation refreshed.

Wire-compatible: no message, field or enum definition changed.
The protos no longer import google/api/annotations.proto, so:
- removed buf.build/googleapis/googleapis from buf.yaml / buf.lock
- google.golang.org/genproto/googleapis/api is no longer needed in go.mod

Regenerated pb/api with 'buf generate'. pb/core is unchanged. The
generated Go API surface is identical: same exported types, methods and
gRPC client/server interfaces. Only the embedded file descriptor (the
removed HTTP annotations) and doc comments changed, plus a Deprecated
marker on IvkDecryptTRC20Parameters.GetEvents and
OvkDecryptTRC20Parameters.GetEvents.
@maoueh
maoueh merged commit b483435 into master Jul 31, 2026
3 checks passed
@maoueh
maoueh deleted the feature/tron-protocol-sync-4-8-2-1 branch July 31, 2026 17:20
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.

4 participants