Skip to content

chore: bump aleph-cli to 0.10.3#18

Merged
odesenfans merged 3 commits into
mainfrom
od/chore-bump-aleph-cli-0.10.3
May 28, 2026
Merged

chore: bump aleph-cli to 0.10.3#18
odesenfans merged 3 commits into
mainfrom
od/chore-bump-aleph-cli-0.10.3

Conversation

@odesenfans
Copy link
Copy Markdown
Contributor

Bumps the aleph-cli pin from 0.9.2 → 0.10.3.

The jump crosses the 0.10.0 boundary, which carried several breaking CLI changes. Most of the diff adapts the test suite and crn-up.sh to the new command surface.

What would have broken

Breaking change (aleph-rs) Where it bites Fix
--ccn-url global flag → --ccn (#176) conftest.py central fixture (→ every test) + crn-up.sh ×3 rename flag
--chain now required when signing via ALEPH_PRIVATE_KEY (#168) every signing call in tests + script add --chain eth (testnet uses Anvil/EVM accounts)
name is positional on create/import (#173) instance create, node create-ccn, node create-crn drop --name, pass positionally
CRN endpoint --address--url (#171) node create-crn in crn-up.sh rename flag

The --ccn-url rename is the widest blast radius — the fixture puts it on every invocation, so the whole suite would fail at argument parsing. The --chain requirement is the subtle one: the CLI now bails with Error: --chain is required when signing with --private-key (or ALEPH_PRIVATE_KEY).

Verified unchanged (left alone)

post create/amend/list, aggregate create, message list, file upload/download flags, node link --crn, and the item_hash JSON output are all unchanged. Read-only commands correctly do not get --chain.

Verification

  • v0.10.3 linux release asset resolves (HTTP 200).
  • Each changed invocation validated against aleph-cli 0.10.3 via --help and --dry-run (local signing, no network).
  • bash -n + py_compile pass.

⚠️ Not run end-to-end against a live testnet/CCN — fixes are validated at the argument-parsing + local-signing level.

Bumps the aleph-cli pin from 0.9.2 to 0.10.3. The jump crosses the
0.10.0 boundary, which carried several breaking CLI changes; this
adapts the test suite and crn-up.sh to the new surface:

- `--ccn-url` global flag renamed to `--ccn` (aleph-rs #176)
- `--chain` is now required when signing via ALEPH_PRIVATE_KEY (#168);
  the testnet uses Anvil/EVM accounts, so `--chain eth`
- node/instance create take NAME as a positional arg, not `--name` (#173)
- `node create-crn` endpoint flag `--address` renamed to `--url` (#171)

Verified each changed invocation against aleph-cli 0.10.3 via --help
and --dry-run (local signing, no network).
The first pass missed test_messages.py and test_migration.py (I'd
truncated the file enumeration). Same 0.10.0 break: signing via
ALEPH_PRIVATE_KEY now requires --chain. Adds --chain eth to post
create (×2), message forget, file upload, instance create, and
node unlink, plus the now-positional instance name in the migration
test.
Copy link
Copy Markdown

@foxpatch-aleph foxpatch-aleph left a comment

Choose a reason for hiding this comment

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

This PR correctly bumps the aleph-cli pin from 0.9.2 to 0.10.3, adapting all test code and the crn-up.sh provisioning script to the breaking CLI changes introduced in aleph-rs 0.10.0: --ccn-url -> --ccn, --name becoming positional, --address -> --url, and the new --chain=eth requirement for signing commands. Each invocation was verified against the new CLI's help output, and the diff is minimal and surgical with no unnecessary refactoring. Read-only commands correctly omit --chain. The one nit (test_create_node's check=False pattern) is pre-existing and not a regression.

v0.10.x adds an interactive [y/N] confirmation to destructive commands.
Non-interactively, `message forget` reads EOF, prints "Aborted." to
stderr, and exits 0 with empty stdout — which broke parse_json with a
JSONDecodeError. Pass -y to skip the prompt and submit. (node unlink
has no such prompt; the migration test confirms it executes.)
Copy link
Copy Markdown

@foxpatch-aleph foxpatch-aleph left a comment

Choose a reason for hiding this comment

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

Correctly handles all breaking changes between aleph-cli 0.9.2 and 0.10.3: the --ccn-url→--ccn rename (widest blast radius affecting every test via conftest.py and three crn-up.sh calls), --chain eth addition on all signing commands, positional name arguments for create subcommands, and --address→--url for CRN creation. The -y flag on message forget handles the new interactive prompt in v0.10.x. All changes are mechanical and well-motivated, with no logic errors, security regressions, or missing adaptations. Read-only commands correctly remain unchanged. The PR is consistent, focused, and correctly adapted to the new CLI surface.

tests/test_messages.py (line 41): The -y flag addition is critical — without it, the CLI's new interactive [y/N] prompt reads EOF in non-interactive mode, exits 0 with empty stdout, and breaks parse_json=True with a JSONDecodeError. Correctly handled here.

tests/conftest.py (line 55): This single line (--ccn-url--ccn) is the widest blast-radius change — it affects every single test invocation. Correctly renamed.

@odesenfans odesenfans merged commit 15e7610 into main May 28, 2026
1 of 2 checks passed
@odesenfans odesenfans deleted the od/chore-bump-aleph-cli-0.10.3 branch May 28, 2026 12:43
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.

2 participants