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

iotaledger / iota / 25029037219
67%

Build:
DEFAULT BRANCH: develop
Ran 28 Apr 2026 02:28AM UTC
Jobs 1
Files 1216
Run time 2min
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

27 Apr 2026 03:56PM UTC coverage: 63.138% (-2.5%) from 65.589%
25029037219

push

github

web-flow
feat!: Replace `IotaAddress` with SDK `Address` (#11330)

This PR is part of the ongoing effort to consolidate blockchain types in
the
canonical `iota-rust-sdk`. Types that are needed by both clients/SDK
consumers
and the node should live in `iota-rust-sdk` and be imported from there,
instead
of being defined twice (once in `iota-types`, once in the SDK).

This PR replaces `IotaAddress` (previously defined in `iota-types`) with
the
SDK version from `iota-sdk-types`. To keep the diff small and avoid
touching
every call site, the SDK type is re-exported from `iota-types` under the
original name `IotaAddress`, so most existing imports continue to work
unchanged.

## What changed

- The local `pub struct IotaAddress([u8; IOTA_ADDRESS_LENGTH])`
definition
  and its inherent impls in

[crates/iota-types/src/base_types.rs](crates/iota-types/src/base_types.rs)
  are removed. `IotaAddress` is now a re-export:
  `pub use iota_sdk_types::Address as IotaAddress;`

## Call-site adjustments

Because the SDK `Address` has a slightly different surface than the old
`IotaAddress`, a few call sites had to be updated rather than relying on
the
re-export:

- `IotaAddress::random_for_testing_only()` is replaced by the SDK's
`IotaAddress::random()` everywhere (tests, fuzzers, sample data
builders).
- `IotaAddress::default()` is replaced by `IotaAddress::ZERO` in
[effects_v1.rs](crates/iota-types/src/effects/effects_v1.rs); the SDK
type
  no longer derives `Default`, but exposes the same zero-value via the
  `ZERO` associated constant.
- `IotaAddress::try_from(bytes)` / `IotaAddress::try_from(&bytes[..])`
are
  replaced by `IotaAddress::from_bytes(...)`. The SDK signature is
`from_bytes(&[u8])` rather than `from_bytes<T: AsRef<[u8]>>`, so a few
call
  sites pass `&vec` / `&arr` explicitly (e.g.
  [iota-json/src/lib.rs](crates/iota-json/src/lib.rs),

[base_types_tests.rs](crates/iota-types/src/unit_tests/base_types_tests.rs)).
- The blanket `impl<T: IotaPublicKey> From<&T> fo... (continued)

149 of 207 new or added lines in 55 files covered. (71.98%)

1319 existing lines in 66 files now uncovered.

156907 of 248513 relevant lines covered (63.14%)

447059.97 hits per line

Uncovered Changes

Lines Coverage ∆ File
9
0.0
0.0% crates/iota-indexer/src/models/tx_indices.rs
9
0.0
0.0% crates/iota-indexer/src/read.rs
8
31.49
-0.1% crates/iota-types/src/iota_sdk_types_conversions.rs
7
0.0
0.0% crates/iota-indexer/src/models/event_indices.rs
5
8.06
0.0% crates/iota-indexer/src/types.rs
5
0.0
0.0% crates/iota/src/generate_genesis_checkpoint.rs
2
34.96
0.0% crates/iota-indexer/src/models/objects.rs
2
71.65
0.05% crates/iota-json/src/lib.rs
2
94.22
-0.12% iota-execution/latest/iota-move-natives/src/test_scenario.rs
1
58.33
0.0% crates/iota-cluster-test/src/cluster.rs
1
74.8
0.0% crates/iota-graphql-rpc/src/types/iota_address.rs
1
0.0
0.0% crates/iota-indexer-streaming/src/memory.rs
1
0.0
0.0% crates/iota-indexer/src/backfill/ingestion/jobs/tx_wrapped_or_deleted_objects.rs
1
50.75
0.0% crates/iota-json-rpc-types/src/iota_event.rs
1
61.18
0.66% crates/iota-json-rpc-types/src/iota_transaction.rs
1
57.14
0.0% crates/iota-localnet/src/commands.rs
1
86.78
0.0% crates/iota-names/src/name.rs
1
38.02
0.0% crates/iota/src/keytool.rs

Coverage Regressions

Lines Coverage ∆ File
204
31.49
-0.1% crates/iota-types/src/iota_sdk_types_conversions.rs
161
61.18
0.66% crates/iota-json-rpc-types/src/iota_transaction.rs
107
29.84
-56.02% crates/iota-types/src/scoring_metrics.rs
99
0.0
0.0% crates/iota-aws-orchestrator/src/protocol/iota.rs
89
91.44
-2.86% crates/iota-protocol-config/src/lib.rs
85
80.29
-0.16% crates/iota-types/src/object.rs
72
88.56
-0.07% crates/iota-types/src/base_types.rs
58
84.83
0.0% crates/iota-config/src/node.rs
53
0.0
0.0% crates/iota-aws-orchestrator/src/main.rs
40
80.52
0.01% iota-execution/latest/iota-adapter/src/execution_engine.rs
32
91.92
-0.2% crates/iota-core/src/consensus_handler.rs
29
96.13
-0.02% crates/iota-core/src/consensus_adapter.rs
19
44.55
-5.91% crates/iota-json-rpc-types/src/object_changes.rs
19
92.35
0.0% crates/iota-types/src/iota_system_state/epoch_start_iota_system_state.rs
17
75.85
-1.27% crates/test-cluster/src/lib.rs
16
91.1
0.32% crates/iota-core/src/epoch/randomness.rs
15
91.86
2.66% crates/starfish/core/src/base_committer.rs
13
86.72
-1.24% crates/iota-core/src/consensus_manager/mod.rs
10
84.1
-0.03% crates/iota-swarm-config/src/node_config_builder.rs
10
89.53
0.0% crates/iota-test-transaction-builder/src/lib.rs
8
84.29
-1.28% crates/iota-grpc-types/src/proto/generated/iota.grpc.v1.ledger_service.accessors.rs
8
30.0
-0.22% crates/iota-grpc-types/src/proto/iota/grpc/v1/types.rs
7
71.26
-2.05% crates/iota-transaction-builder/src/utils.rs
7
93.14
0.0% crates/starfish/core/src/universal_committer.rs
7
87.91
-7.69% iota-execution/latest/iota-move-natives/src/transaction_context.rs
6
8.47
-10.17% crates/iota-grpc-client/src/api/mod.rs
6
72.11
-4.08% crates/iota-json-rpc-types/src/lib.rs
6
76.92
-0.37% crates/iota-sdk/src/wallet_context.rs
6
65.26
-1.26% crates/iota-types/src/storage/shared_in_memory_store.rs
5
98.74
0.01% crates/iota-core/src/authority/shared_object_version_manager.rs
5
83.67
0.17% crates/iota-core/src/traffic_controller/mod.rs
5
81.82
-7.58% crates/iota-grpc-client/src/api/execution/execute.rs
5
82.79
-4.1% crates/iota-transaction-builder/src/package.rs
4
83.33
-5.56% crates/iota-config/src/transaction_deny_config.rs
4
70.36
-0.32% crates/iota-core/src/authority/authority_store.rs
4
58.23
-1.61% crates/iota-grpc-types/src/proto/generated/iota.grpc.v1.filter.accessors.rs
4
56.52
-3.48% crates/iota-grpc-types/src/proto/generated/iota.grpc.v1.state_service.accessors.rs
4
67.1
-2.58% crates/iota-grpc-types/src/proto/generated/iota.grpc.v1.transaction_execution_service.accessors.rs
4
21.13
0.0% crates/iota-grpc-types/src/proto/iota/grpc/v1/transaction_execution_service.rs
4
53.62
1.16% crates/iota-json-rpc-types/src/iota_object.rs
4
51.88
1.37% crates/iota-sdk/src/apis/read.rs
4
85.5
-0.67% crates/iota-transaction-builder/src/lib.rs
3
71.43
-14.29% crates/iota-config/src/certificate_deny_config.rs
3
81.75
-0.79% crates/iota-config/src/genesis.rs
3
94.64
-0.18% crates/iota-core/src/consensus_types/consensus_output_api.rs
3
96.43
0.08% crates/iota-core/src/consensus_validator.rs
3
88.75
-3.75% crates/iota-genesis-builder/src/stardust/types/address_swap_split_map.rs
3
73.53
-8.82% crates/iota-genesis-builder/src/stardust/types/output_header.rs
3
49.56
2.65% crates/iota-genesis-builder/src/stardust/types/snapshot.rs
3
78.11
-1.78% crates/iota-grpc-client/src/api/common.rs
3
24.14
-2.59% crates/iota-json-rpc-types/src/iota_checkpoint.rs
3
87.98
-0.88% crates/iota-types/src/effects/effects_v1.rs
3
95.19
-2.88% crates/starfish/config/src/committee.rs
3
94.07
-0.13% crates/starfish/core/src/authority_service.rs
3
94.72
-0.27% crates/starfish/core/src/block_header.rs
3
91.78
-0.15% crates/starfish/core/src/header_synchronizer.rs
2
81.32
-0.06% crates/iota-core/src/authority.rs
2
75.11
0.0% crates/iota-network/src/randomness/mod.rs
1
98.62
-0.28% crates/iota-core/src/signature_verifier.rs
1
93.05
-0.13% crates/iota-core/src/transaction_manager.rs
1
87.5
-0.15% crates/iota-grpc-server/src/validation.rs
1
89.16
0.0% crates/iota-network/src/discovery/mod.rs
1
78.76
-0.11% crates/iota-types/src/crypto.rs
1
82.48
3.8% crates/iota-types/src/messages_consensus.rs
1
96.42
-0.03% crates/starfish/core/src/dag_state.rs
1
92.64
0.0% iota-execution/latest/iota-move-natives/src/dynamic_field.rs
Jobs
ID Job ID Ran Files Coverage
1 nextest+simtest - 25029037219.1 28 Apr 2026 02:28AM UTC 1216
63.14
GitHub Action Run
Source Files on build 25029037219
  • Tree
  • List 1216
  • Changed 187
  • Source Changed 134
  • Coverage Changed 106
Coverage ∆ File Lines Relevant Covered Missed Hits/Line
  • Back to Repo
  • Github Actions Build #25029037219
  • 1f60fa77 on github
  • Prev Build on develop (#24972442756)
  • Next Build on develop (#25086579060)
  • Delete
STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc