• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

iotaledger / iota / 32205096332
69%

Build:
DEFAULT BRANCH: develop
Ran 19 Aug 2026 02:21AM UTC
Jobs 1
Files 1063
Run time 3min
Badge
Embed ▾
README BADGES
x

If you need to use a raster PNG badge, change the '.svg' to '.png' in the link

Markdown

Textile

RDoc

HTML

Rst

18 Aug 2026 02:38PM UTC coverage: 69.729% (+0.002%) from 69.727%
32205096332

push

github

web-flow
refactor(iota): migrate CLI publish/upgrade commands to the gRPC transaction builder (#12659)

# Description of change

Third slice of the CLI migration to the gRPC-driven SDK
`TransactionBuilder` (one command family per PR): `publish` and
`upgrade`.

- `publish` builds a `Publish` command from `MovePackageData` and
transfers the resulting `UpgradeCap` to the sender — the same PTB the
JSON-RPC `publish_tx_kind` produced.
- `upgrade` has no high-level SDK helper, so it follows the
`publish_upgrade` example in `iota-rust-sdk`:
`0x2::package::authorize_upgrade` → `Upgrade` command →
`0x2::package::commit_upgrade`. The upgrade cap is fetched over gRPC and
passed as an owned or shared-mutable input depending on its owner, with
the same rejections (immutable / object-owned cap) as before. The digest
argument BCS-serializes to the same bytes as the old `Vec<u8>`, so the
built transaction is unchanged.
- Gas payment references come from `grpc_input_refs`; gas estimation,
dry run, serialization, signing, execution and `Move.lock` updates stay
on their existing paths, so gas behaviour and CLI output are unchanged.
- JSON-RPC read paths (protocol config for compilation, upgrade policy
lookup, `--verify-compatibility`) are left as-is per the issue's
constraints.

Test-side change: `test_tree_shaking_package_deps_on_pkg_upgrade` chains
seven CLI commands in one test future and already ran within tens of
kilobytes of the test thread's 8 MiB stack on `develop` (#12341 hit the
same limit with `test_move_authenticator`); the slightly larger command
future tipped it over. The shared `publish_package` / `upgrade_package`
test helpers now `Box::pin` the command future, moving that storage to
the heap.

Still on the JSON-RPC client, by design: JSON-arg `move_call` and the
PTB command. Split/merge is in flight in #12595.

## Links to any relevant issues

Part of #12099 (task: publish / upgrade, low-level upgrade fns per the
`iota-rust-sdk` example).

## How the change has ... (continued)

21 of 21 new or added lines in 1 file covered. (100.0%)

698 existing lines in 41 files now uncovered.

170017 of 243827 relevant lines covered (69.73%)

462508.84 hits per line

Coverage Regressions

Lines Coverage ∆ File
90
86.08
2.27% crates/iota-config/src/node.rs
85
90.44
0.19% crates/iota-protocol-config/src/lib.rs
77
56.39
0.31% crates/iota-localnet/src/commands.rs
74
0.0
0.0% crates/iota-indexer/src/restore/persist.rs
73
0.0
0.0% crates/iota-indexer/src/apis/write_api.rs
54
16.13
-43.55% crates/iota-transaction-builder/src/package.rs
35
0.0
0.0% crates/iota-indexer/src/store/package_resolver.rs
33
0.0
0.0% crates/iota-indexer/src/store/pg_partition_manager.rs
26
83.62
1.47% crates/iota-core/src/authority/authority_store_pruner.rs
24
77.31
-0.56% crates/test-cluster/src/lib.rs
13
88.84
1.2% crates/iota-core/src/authority_server/mod.rs
7
88.87
0.65% crates/iota-test-transaction-builder/src/lib.rs
7
86.88
-1.84% crates/iota-transaction-builder/src/utils.rs
7
79.25
-1.1% crates/iota-types/src/crypto.rs
7
95.67
-0.38% crates/starfish/core/src/transactions_synchronizer.rs
7
87.91
-7.69% iota-execution/latest/iota-move-natives/src/transaction_context.rs
6
63.68
1.0% crates/iota-json-rpc-types/src/iota_transaction.rs
6
69.39
-4.08% crates/iota-json-rpc-types/src/lib.rs
6
44.55
-0.99% crates/iota-json-rpc-types/src/object_changes.rs
5
0.0
0.0% crates/iota-framework-snapshot/src/main.rs
5
51.7
-1.06% crates/iota-types/src/storage/shared_in_memory_store.rs
4
91.05
-0.12% crates/iota-core/src/authority/authority_per_epoch_store.rs
4
91.52
-0.25% crates/iota-core/src/execution_cache/writeback_cache.rs
4
78.37
-0.88% crates/iota-core/src/storage.rs
4
57.2
-0.56% crates/iota-json-rpc-types/src/iota_object.rs
4
51.36
0.0% crates/iota-sdk/src/apis/read.rs
3
71.43
-14.29% crates/iota-config/src/certificate_deny_config.rs
3
82.31
-0.11% crates/iota-core/src/checkpoints/mod.rs
3
75.73
-2.91% crates/iota-grpc-server/src/server.rs
3
85.41
-0.27% crates/iota-json-rpc/src/read_api.rs
3
79.37
0.0% crates/iota-sdk/src/lib.rs
3
77.27
-1.05% crates/iota-sdk/src/wallet_context.rs
3
97.96
-2.04% crates/iota-types/src/mock_checkpoint_builder.rs
2
86.15
-0.06% crates/iota-core/src/authority.rs
2
93.73
0.18% crates/starfish/core/src/header_synchronizer.rs
1
84.73
-0.49% crates/iota-core/src/global_state_hasher.rs
1
95.11
-0.54% crates/iota-core/src/transaction_driver/mod.rs
1
68.12
-1.45% crates/iota-data-ingestion-core/src/reducer.rs
1
98.0
30.94% crates/iota-framework-snapshot/src/lib.rs
1
89.1
-0.14% crates/iota-network/src/discovery/mod.rs
1
94.9
0.4% crates/starfish/core/src/authority_service.rs
Jobs
ID Job ID Ran Files Coverage
1 nextest+simtest - 32205096332.1 19 Aug 2026 02:21AM UTC 1063
69.73
GitHub Action Run
Source Files on build 32205096332
  • Tree
  • List 1063
  • Changed 70
  • Source Changed 24
  • Coverage Changed 61
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #32205096332
  • 1f965391 on github
  • Prev Build on develop (#32088388059)
  • Next Build on develop (#32321175689)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc