Merge 4356fbebf855ae99b96cb600cdf8118b56297d08 into 65c365bfc61c2c732baadc815f4578893c932833
d0e69d14
pull/383/merge
1/1 ++ 1 --
Commits and releases over time
No repositories match that filter.
Updates the requirements on [jsonschema](https://github.com/Stranger6667/jsonschema) to permit the latest version. - [Release notes](https://github.com/Stranger6667/jsonschema/releases) - [Changelog](https://github.com/Stranger6667/jsonschema/blob/master/CHANGELOG.md) - [Commits](https://github.com/Stranger6667/jsonschema/compare/cli-v0.46.0...ruby-v0.56.0) --- updated-dependencies: - dependency-name: jsonschema dependency-version: 0.56.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Updates the requirements on [jsonschema](https://github.com/Stranger6667/jsonschema) to permit the latest version. - [Release notes](https://github.com/Stranger6667/jsonschema/releases) - [Changelog](https://github.com/Stranger6667/jsonschema/blob/master/CHANGELOG.md) - [Commits](https://github.com/Stranger6667/jsonschema/compare/cli-v0.46.0...ruby-v0.53.0) --- updated-dependencies: - dependency-name: jsonschema dependency-version: 0.53.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Updates the requirements on [ed25519-dalek](https://github.com/dalek-cryptography/curve25519-dalek) to permit the latest version. - [Release notes](https://github.com/dalek-cryptography/curve25519-dalek/releases) - [Changelog](https://github.com/dalek-cryptography/curve25519-dalek/blob/3.0.0/CHANGELOG.md) - [Commits](https://github.com/dalek-cryptography/curve25519-dalek/commits/3.0.0) --- updated-dependencies: - dependency-name: ed25519-dalek dependency-version: 3.0.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Updates the requirements on [syn](https://github.com/dtolnay/syn) to permit the latest version. - [Release notes](https://github.com/dtolnay/syn/releases) - [Commits](https://github.com/dtolnay/syn/compare/2.0.0...3.0.2) --- updated-dependencies: - dependency-name: syn dependency-version: 3.0.2 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Updates the requirements on [base64](https://github.com/marshallpierce/rust-base64) to permit the latest version. - [Changelog](https://github.com/marshallpierce/rust-base64/blob/master/RELEASE-NOTES.md) - [Commits](https://github.com/marshallpierce/rust-base64/compare/v0.22.0...v0.23.0) --- updated-dependencies: - dependency-name: base64 dependency-version: 0.23.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
Updates the requirements on [jsonschema](https://github.com/Stranger6667/jsonschema) to permit the latest version. - [Release notes](https://github.com/Stranger6667/jsonschema/releases) - [Changelog](https://github.com/Stranger6667/jsonschema/blob/master/CHANGELOG.md) - [Commits](https://github.com/Stranger6667/jsonschema/compare/cli-v0.46.0...cli-v0.52.0) --- updated-dependencies: - dependency-name: jsonschema dependency-version: 0.52.0 dependency-type: direct:production ... Signed-off-by: dependabot[bot] <support@github.com>
* fix(crypto): drop redundant reference in Signature's Debug impl
clippy 1.97 promotes `useless_borrows_in_formatting` to fire on
`write!(f, "{}", &BASE64.encode(..))`. CI pins `rust-toolchain@stable`,
so this fails the clippy job as runners pick up the new release, and it
already fails the pre-commit hook locally.
* docs(readme): add a compatibility matrix and acceptance-suite coverage
The README documented what algonaut does but never stated how it compares
to the reference SDK or what it is verified against, so a reader had no way
to judge coverage or find the gaps without reading the source.
Add a Compatibility section with two reference points:
- The cross-SDK algorand-sdk-testing acceptance suite: per-feature status
for all 30 upstream features (13/13 integration, 5/17 unit), the 274/0
fresh-harness result, and the rationale behind every skipped scenario.
- js-algorand-sdk v3.7.0: a surface-by-surface capability matrix across
clients, transactions, signing, groups/ABI, and tooling.
Gaps are stated explicitly rather than omitted — algod 5.0 / Falcon-1024
post-quantum accounts and resource access lists, TEAL signing, ufixedNxM
and anonymous tuples in contract! (#345), the 12 unit features awaiting
step definitions, and the lack of a pluggable HTTP transport.
* fix(cucumber): drop the dryrun features removed upstream
algorand-sdk-testing removed dryrun.feature, dryrun_testing.feature and
dryrun_trace.feature in algorand/algorand-sdk-testing#325 (2026-07-14).
test.env tracks that repo, so a fresh CI clone no longer ships those files
while the runner still listed the first two as live. cucumber reported two
parsing errors and the suite exited 1 — on a docs-only branch, a month
after the upstream change landed.
Drop all three Feature entries, along with the step definitions they were
the only callers of: the integration dryrun module, the World's
dryrun_response and dryrun_kind fields, the two unit dryrun steps (upstream
stripped dryrun from v2algodclient_responses.feature in the same commit),
and UnitResponse::Dryrun. Every step phrase involved was exclusive to the
deleted features.
The SDK's dryrun support is untouched: algonaut::dryrun, algod.teal_dryrun,
the models and the trace printer all ship, covered by the unit tests in
src/dryrun.rs. What is gone is the live-node coverage, and that went when
upstream deleted the fixtures.
* ci(cucumber): pin the test harness to a commit
test.env tracked algorand-sdk-testing's master, so any upstream edit to the
shared feature files landed as a red build on whatever unrelated PR ran
next. The dryrun removal in algorand/algorand-sdk-testing#325 broke a
docs-only branch a month after it was merged, with nothing in this repo
having changed.
Pin SDK_TESTING_BRANCH to 0fbe354f, the tree the suite was last verified
green against. algorand-sdk-testing publishes no tags or releases, so a
commit SHA is the only stable ref available.
`git clone --branch` accepts a branch or tag but not a SHA, so fetch the ref
explicitly instead. The fetch stays shallow and resolves all three kinds of
ref, so SDK_TESTING_BRANCH=master still works for testing against upstream
tip. The script now logs which ref it resolved.
* docs(readme): refresh acceptance-suite counts after the dryrun removal
The compatibility matrix was measured against the pre-removal harness. With
dryrun.feature, dryrun_testing.feature and dryrun_trace.feature gone
upstream, the suite is 11/11 integration and 5/16 unit across 27 features,
and a fresh harness reports 249 scenarios passed, 0 failed (265 collected,
16 excluded).
Verified twice against the now-pinned harness at 0fbe354f, both runs
identical. The 227 offline-test figure is unchanged.
* docs(readme): correct the simulate exclusion causes and unit counts
Two review findings on the compatibility matrix, both pre-existing in the
section as first written.
The three simulate exclusions were all attributed to the group builder's
allow-empty-signatures behaviour, but tests/cucumber/main.rs assigns them
three separate causes: allow-empty-signatures covers only "Simulating
unsigned transactions in the ATC group", exec_trace_with_stack_scratch is
the ATC base64-decode issue in #266, and exec_trace_with_state_change_and_hash
needs a create-and-optin on-complete combo. Misattributing them undercuts
the section's claim that every exclusion names a concrete gap.
The unit row read "11 await step definitions, not SDK capability", which is
false for tealsign — the table marks it ❌ for a capability gap, not ⏳.
Split the count: 10 need only step definitions, tealsign also needs the
capability. The 11 total is kept in the gaps list, since that bullet counts
features that are not live rather than features blocked on step definitions
alone.
The simulate causes stay inside footnote 2; the list is keyed to the ¹-⁵
superscripts in the tables above, so a new item would misalign them.
Two review findings on the compatibility matrix, both pre-existing in the section as first written. The three simulate exclusions were all attributed to the group builder's allow-empty-signatures behaviour, but tests/cucumber/main.rs assigns them three separate causes: allow-empty-signatures covers only "Simulating unsigned transactions in the ATC group", exec_trace_with_stack_scratch is the ATC base64-decode issue in #266, and exec_trace_with_state_change_and_hash needs a create-and-optin on-complete combo. Misattributing them undercuts the section's claim that every exclusion names a concrete gap. The unit row read "11 await step definitions, not SDK capability", which is false for tealsign — the table marks it ❌ for a capability gap, not ⏳. Split the count: 10 need only step definitions, tealsign also needs the capability. The 11 total is kept in the gaps list, since that bullet counts features that are not live rather than features blocked on step definitions alone. The simulate causes stay inside footnote 2; the list is keyed to the ¹-⁵ superscripts in the tables above, so a new item would misalign them.
The compatibility matrix was measured against the pre-removal harness. With dryrun.feature, dryrun_testing.feature and dryrun_trace.feature gone upstream, the suite is 11/11 integration and 5/16 unit across 27 features, and a fresh harness reports 249 scenarios passed, 0 failed (265 collected, 16 excluded). Verified twice against the now-pinned harness at 0fbe354f, both runs identical. The 227 offline-test figure is unchanged.
test.env tracked algorand-sdk-testing's master, so any upstream edit to the shared feature files landed as a red build on whatever unrelated PR ran next. The dryrun removal in algorand/algorand-sdk-testing#325 broke a docs-only branch a month after it was merged, with nothing in this repo having changed. Pin SDK_TESTING_BRANCH to 0fbe354f, the tree the suite was last verified green against. algorand-sdk-testing publishes no tags or releases, so a commit SHA is the only stable ref available. `git clone --branch` accepts a branch or tag but not a SHA, so fetch the ref explicitly instead. The fetch stays shallow and resolves all three kinds of ref, so SDK_TESTING_BRANCH=master still works for testing against upstream tip. The script now logs which ref it resolved.
algorand-sdk-testing removed dryrun.feature, dryrun_testing.feature and dryrun_trace.feature in algorand/algorand-sdk-testing#325 (2026-07-14). test.env tracks that repo, so a fresh CI clone no longer ships those files while the runner still listed the first two as live. cucumber reported two parsing errors and the suite exited 1 — on a docs-only branch, a month after the upstream change landed. Drop all three Feature entries, along with the step definitions they were the only callers of: the integration dryrun module, the World's dryrun_response and dryrun_kind fields, the two unit dryrun steps (upstream stripped dryrun from v2algodclient_responses.feature in the same commit), and UnitResponse::Dryrun. Every step phrase involved was exclusive to the deleted features. The SDK's dryrun support is untouched: algonaut::dryrun, algod.teal_dryrun, the models and the trace printer all ship, covered by the unit tests in src/dryrun.rs. What is gone is the live-node coverage, and that went when upstream deleted the fixtures.