Releases: r0gue-io/pop-cli
Pop CLI v0.12.1
A new Pop CLI release with a couple of fixes asked by users in the sub0 Hackathon.
Continuation of https://github.com/r0gue-io/pop-cli/releases/tag/v0.12.0
What's Changed
- fix(chain): call txstatus always waits for finalization. by @al3mart in #755
- fix: ask to execute deployment of contract in interactive flow by @Daanvdplas in #759
Full Changelog: v0.11.0...v0.12.1
🚀 Pop CLI v0.12.0
A new Pop CLI release packed with new features, fixes, smoother UX, upgraded dependencies and way more ready for the sub0 Hackathon
✨ Highlights
- Scaffold UI templates.
- Upgrade polkadot-sdk version.
- Use the newer
ink!v6.0-beta.1version. - Added assets precompile example
- Improve DevEx.
What's Changed
- chore: Bump rustilities by @tsenovilla in #716
- fix: telemetry data field by @moliholy in #719
- refactor: spawn ink-node with --tmp file by @Daanvdplas in #715
- feat: remove network configuration from base-parachain by @moliholy in #711
- chore: update passet-hub spec by @al3mart in #718
- feat: upgrade to rust 1.91 by @moliholy in #708
- fix: chain & contract manual interaction by @Daanvdplas in #712
- feat: rich info for telemetry by @moliholy in #723
- refactor: Update installation instructions for Pop CLI by @Daanvdplas in #724
- fix: remove chain spec generator for newer versions of templates by @AlexD10S in #727
- refactor: remove return types from commands by @moliholy in #726
- feat: scaffold UI templates by @AlexD10S in #676
- feat: add command to upgrade polkadot-sdk version by @moliholy in #728
- fix(install): Support more linux flavours based on already supported distros by @al3mart in #731
- feat: add ink-node to pop up by @moliholy in #730
- chore(passet-hub): update spec by @al3mart in #736
- feat: rust 1.91.1 by @moliholy in #735
- fix: improve message by @moliholy in #741
- feat: improve eth conversion by @moliholy in #742
- chore: update ink! dependencies to beta.1 by @AlexD10S in #745
- fix(pop up contract): signer prompted if not provided by @Daanvdplas in #725
- feat: remove
--dry-runfrom pop call by @moliholy in #744 - fix: add message about how to run pop install with sudo by @moliholy in #748
- feat: add the assets precompile example by @AlexD10S in #749
- feat: bump zombienet version to 0.4.3 by @moliholy in #751
- fix: allow mcp to fetch the contract address upon deployment by @moliholy in #750
- fix: remove --manual-weight flag by @moliholy in #752
- feat: ask chain in pop-up by @moliholy in #754
- fix(contracts): tx always wait for finalization by @al3mart in #753
Full Changelog: v0.11.0...v0.12.0
🚀 Pop CLI v0.11.0
Pop CLI v0.11.0 now defaults smart contracts to ink! v6.0.0-beta.
pop call can read constants and storage, pop up can fetch the polkadot-omni-node and the eth-rpc for the ink! node; and improves pop build spec flows.
✨ Highlights
- Breaking: ink! v6 by default
We’ve switched Pop CLI’s defaults from ink! v5 to ink! v6.0.0-beta (the latest ink! release).- New templates & flows target
ink! v6.0.0-beta - Release notes: https://github.com/use-ink/ink/releases/tag/v6.0.0-beta
- New templates & flows target
pop call chaincan read constants and storage
# Query storage
pop call chain --pallet Balances --function TotalIssuance --url wss://rpc-polkadot.helixstreet.io/
# Query a constant
pop call chain --pallet Balances --function ExistentialDeposit --url wss://rpc-polkadot.helixstreet.io/pop upcan fetchpolkadot-omni-nodeand theeth-rpcbinary in contracts- Interactive chain selection in
pop callandpop up, pick the chain you want to interact with. - Homebrew release channel:
brew install r0gue-io/pop-cli/pop - Smoother UX and various fixes.
Rust compiler versions
Rust Stable: 1.90.0
What's Changed
- ci: optimize ci integration tests by @moliholy in #653
- feat: always build contracts with pop up by @moliholy in #657
- feat: upgrade to rust edition 2024 by @moliholy in #656
- feat: do not ask for confirmation when removing all in the cache by @moliholy in #660
- feat(cli): allow to choose a chain from a list by @moliholy in #658
- chore(ci): mark coverage status project and patch as informational only by @AlexD10S in #662
- ci: publish on homebrew by @moliholy in #666
- feat: build spec runtime by @moliholy in #647
- feat: upgrade to rust 1.90 by @moliholy in #673
- feat: read constants and storage when using
pop call chainby @moliholy in #664 - feat: build the chain with runtime by @moliholy in #671
- feat(cli): fetch latest release when instantiating the template by @moliholy in #680
- fix:
pop installcommand with rustup by @moliholy in #681 - feat: fetch polkadot-omni-node with pop up command by @moliholy in #684
- fix: pop call with composite types by @moliholy in #696
- ci: lint PR title by @moliholy in #698
- feat: force specifying storage parameters if the key is composite by @moliholy in #697
- feat: pop up chain spec cmd by @moliholy in #699
- feat: upgrade zombienet from 0.4.1 to 0.4.2 by @moliholy in #703
- feat: specify optional test filter by @moliholy in #701
- feat: using ink!
v6.0.0-betaby @AlexD10S in #645 - feat: contract call read by @moliholy in #677
- fix: StripPrefixError contract and pallet creation by @Daanvdplas in #702
- feat: add eth-rpc binary to
pop up contractby @moliholy in #705 - refactor: remove psp example and improve pop new contract devex by @Daanvdplas in #700
- feat: remove deprecated templates by @moliholy in #706
Full Changelog: v0.10.0...v0.11.0
🚀 Pop CLI v0.10.0
New Ethereum ↔️ Substrate address conversion with pop convert
Convert between different formats
Usage: pop convert
pop convert <COMMAND>
Commands:
address Convert an Ethereum address into a Substrate address and vice versa
help Print this message or the help of the given subcommand(s)Users can now pass a zombienet configuration file to pop up
Configuration files can be provided directly to the cli like in: pop up ./my_network.toml
Improved pop build spec
Specify a custom base directory (instead of being locked to the current folder).
Run non-interactively with new clap args — perfect for bash scripts and automation.
pop call improvements for contracts
- Autodetect targets when running pop call without a subcommand.
- Highlight write operations.
- Keep calling contracts after deployment.
- Follow node logs until termination.
- No more constant sudo prompts.
What's Changed
- feat: allow to run a network by specifying its configuration by @moliholy in #594
- chore: remove sp-weights from the list of dependencies by @moliholy in #599
- clean up and speed up test suite with
nextestby @AlexD10S in #582 - chore: Improve the hashing command by @moliholy in #603
- Autoremove the network's base directory upon tearing down by @moliholy in #591
- Skip redundant question when calling a contract by @moliholy in #593
- fix: release binary build doesn't generate all binaries by @AlexD10S in #605
- chore: include map account as one of the quick actions in pop call by @AlexD10S in #569
- Add command to convert from/to Ethereum addresses by @moliholy in #592
- feat: make
pop up <contract>interactive by @moliholy in #606 - fix(cli): use plain output in address conversion by @moliholy in #608
- feat(cli): autodetect target when invoking pop call without subcommand by @moliholy in #609
- feat(cli): clearly highlight writing operations when calling smart contracts by @moliholy in #614
- feat(cli): do not ask to run with sudo for every call by @moliholy in #620
- fix: process user input for Strings and None values by @AlexD10S in #618
- feat(cli): follow logs of contracts node before termination by @moliholy in #622
- chore: remove cargo deny job from the CI by @AlexD10S in #627
- fix: all clippy warnings by @moliholy in #625
- Optimize CI with already built docker image by @moliholy in #617
- refactor: all commands to use the CLI module by @AlexD10S in #631
- chore: deprecate pop_evm and parity substrate-contracts-node template by @AlexD10S in #628
- feat(cli): keep making calls to contract after deployment by @moliholy in #629
- docs: remove build command from readme that doesn't build by @talhadaar in #637
- fix(ci): do not build docker image if exists by @moliholy in #638
- ci: several improvements by @moliholy in #648
- chore:
pop build specimprovements by @moliholy in #640 - chore(pop install): update packages to be installed by @AlexD10S in #644
- test: move some tests to integration tests by @AlexD10S in #649
- chore: release 0.10.0 by @al3mart in #652
New Contributors
- @talhadaar made their first contribution in #637
Full Changelog: v0.9.0...v0.10.0
v0.9.0
🚀 Pop CLI v0.9.0
pop up command now supports launching chains without the need for network configuration files.
👉 Try it out now with:
pop up paseo -p asset-hub,passet-hub
pop up paseo -p asset-hub,pop -r stable2412-4
pop up kusama --port 8833 --parachain asset-hub:9944 -r stable2412-4
pop up polkadot --port 8833 --parachain asset-hub:9977,pop#3395:9944 -r stable2412-4
pop up westend -p asset-hubSubcommand rename: parachain has been renamed to chain.
👴 Previously users would run: pop call parachain
👶 Now users should run: pop call chain
Note
parachain and chain are aliased to avoid introducing breaking changes. This alias will be removed in a future release.
A new interactive experience for pop new.
👉 Discover the new interactive flow by just running: pop new
What's Changed
- test(parachains/bench): fix expected error in load_pallet_extrinsics test by @evilrobot-01 in #539
- build(deps): consolidate sp-weights dependency by @evilrobot-01 in #538
- refactor(common/api): use async-aware mutex by @evilrobot-01 in #541
- ci: optimize polkavm contract jobs by @evilrobot-01 in #540
- test(cli/try-runtime): update pallets in try-state test after runtime upgrade by @evilrobot-01 in #543
- feat(up): add support for launching networks without network config files by @evilrobot-01 in #523
- fix(ci): address failing unit tests and cargo-deny issues by @AlexD10S in #548
- feat(bench/pallet): support benchmarking multiple pallets by @chungquantin in #547
- fix(dockerfile): could not launch local network by @AlexD10S in #546
- feat: launch passet hub locally by @AlexD10S in #570
- fix(contracts): update branch for contract template retrieval by @AlexD10S in #577
- feat: add interactive mode to 'pop new' command by @forever8896 in #578
- Change
parachaincommand tochainfor consistency by @ical10 in #564 - chore: release0.9.0 by @AlexD10S in #581
New Contributors
- @forever8896 made their first contribution in #578
- @ical10 made their first contribution in #564
Full Changelog: v0.8.1...v0.9.0
v0.8.1
🚀 Pop CLI v0.8.1
This patch release addresses a bug in Pop CLI v0.8.0 and continues to include two exciting experimental features:
- ink! v6 Smart Contracts on PolkaVM (RISC-V)
Run ink! v6 contracts using pallet-revive, while still supporting ink! v5 (WebAssembly).
👉 Try it out by installing with thepolkavm-contractsfeature:
cargo install pop-cli --no-default-features --locked -F polkavm-contracts,parachain,telemetry
Ready to explore ink! v6? We’ve prepared a step-by-step guide to help you transition from ink! v5 and start experimenting:
👉 Migrating to ink! v6
- New Experimental Hashing Utility
Pop CLI now includes support for hashing using all common SDK hashers: Blake2, Keccak, SHA2, and Twox.
👉 Install with the experimental feature:
cargo install pop-cli--locked --features experimental
Then run
pop hash
to calculate hashes directly from the CLI.
Full list of changes
- fix: template fetching for ink! v5 contracts by pointing to the correct branch by @AlexD10S in #537
- feat:
pop build runtimeandpop build --deterministicby @chungquantin in #510 - chore: source remote binary if version not matches by @chungquantin in #516
- fix: benchmarking logger by @chungquantin in #513
- build(deps): eliminate unnecessary dependencies by @evilrobot-01 in #520
- docs: improve project documentation by @evilrobot-01 in #521
- chore: update required version of the frame-omni-bencher binary by @chungquantin in #527
- feat: hashing by @evilrobot-01 in #517
- ci: update init to use latest rust-cache action by @evilrobot-01 in #533
- ci: enable concurrency controls by @evilrobot-01 in #532
- fix: wrap github rest api access in an apiclient by @evilrobot-01 in #530
- test: no default features by @evilrobot-01 in #522
- fix: separate runtime binary path and project path by @chungquantin in #531
- feat: revive compatibility with feature flag by @AlexD10S in #500
- chore: release v0.8.0 by @AlexD10S in #536
Full Changelog: v0.8.0...v0.8.1
v0.8.0
🚀 Pop CLI v0.8.0 is out!
This release brings two exciting experimental features:
- ink! v6 Smart Contracts on PolkaVM (RISC-V)
Run ink! v6 contracts using pallet-revive, while still supporting ink! v5 (WebAssembly).
👉 Try it out by installing with thepolkavm-contractsfeature:
cargo install pop-cli --no-default-features --locked -F polkavm-contracts,parachain,telemetry
Ready to explore ink! v6? We’ve prepared a step-by-step guide to help you transition from ink! v5 and start experimenting:
👉 Migrating to ink! v6
- New Experimental Hashing Utility
Pop CLI now includes support for hashing using all common SDK hashers: Blake2, Keccak, SHA2, and Twox.
👉 Install with the experimental feature:
cargo install pop-cli--locked --features experimental
Then run
pop hash
to calculate hashes directly from the CLI.
Full list of changes
- feat:
pop build runtimeandpop build --deterministicby @chungquantin in #510 - chore: source remote binary if version not matches by @chungquantin in #516
- fix: benchmarking logger by @chungquantin in #513
- build(deps): eliminate unnecessary dependencies by @evilrobot-01 in #520
- docs: improve project documentation by @evilrobot-01 in #521
- chore: update required version of the frame-omni-bencher binary by @chungquantin in #527
- feat: hashing by @evilrobot-01 in #517
- ci: update init to use latest rust-cache action by @evilrobot-01 in #533
- ci: enable concurrency controls by @evilrobot-01 in #532
- fix: wrap github rest api access in an apiclient by @evilrobot-01 in #530
- test: no default features by @evilrobot-01 in #522
- fix: separate runtime binary path and project path by @chungquantin in #531
- feat: revive compatibility with feature flag by @AlexD10S in #500
- chore: release v0.8.0 by @AlexD10S in #536
Full Changelog: v0.7.0...v0.8.0
v0.7.0
Pop CLI v0.7.0 is Live!
This release brings powerful new features that elevate Pop CLI into a full production-ready tool for Polkadot development.
Summary of New Features
These updates bring deeper infrastructure integration, runtime upgrade tooling, and advanced benchmarking, making it easier than ever to build, deploy, and manage Polkadot-based chain and smart contracts.
- Adapted
pop upto support direct deployment to the Polkadot Development Portal (PDP), including para ID reservation, spec generation, proxy registration, and building runtime determinism with srtool. → #459 pop benchcommand provides a unified interface for:- Benchmarking pallets
- Measuring runtime overhead
- Testing block and storage performance
- Benchmarking machine specs
→ #424
- Integrates
try-runtime-clito test storage migrations and simulate upgrades. → #496
Full list of changes
- fix: check_contracts_node handles skip_confirm by @al3mart in #396
- chore: support specify contract path input with or without -p flag by @ndkazu in #361
- build(release): update upload-artifact to v4 by @al3mart in #398
- build(deps): bump openssl from 0.10.68 to 0.10.70 by @dependabot in #402
- docs:
profilecomment inbuild_parachainby @chungquantin in #406 - fix: increase
DefaultBodyLimitto prevent large payload failures by @AlexD10S in #409 - fix: prevent recursion error with
pallet_collectivemetadata by @AlexD10S in #412 - feat: enable pop up without project type specification by @AlexD10S in #403
- feat: update parachain templates by @AlexD10S in #297
- chore: remove empty onboard.rs file by @AlexD10S in #433
- chore: update cargo-deny-action@v2 by @chungquantin in #439
- fix: hardcoded test failing in the CI by @AlexD10S in #448
- feat: add the filter mode and password to
Cliby @chungquantin in #435 - chore: resolve unmaintained crate & clippy warnings by @chungquantin in #454
- feat: register parachain by @AlexD10S in #404
- fix: display events when wallet signing by @AlexD10S in #463
- feat: enable
pop testwithout project type specification by @AlexD10S in #466 - fix:
fungibletypo inpop new parachaincommand by @franciscoaguirre in #474 - fix(build spec): default bootnode prompt by @Daanvdplas in #482
- fix: improve build spec error messaging by @AlexD10S in #477
- refactor: check binary and prompt by @chungquantin in #429
- fix: sort releases by published_at by @chungquantin in #489
- feat: benchmarking feature by @chungquantin in #424
- feat: build with try-runtime feature enabled by @chungquantin in #476
- feat: integration with deployment provider by @AlexD10S in #459
- refactor: runtime utilities & runtime feature enum by @chungquantin in #490
- fix: argument exists in bench commands & skip parameters flag by @chungquantin in #494
- feat: try-runtime feature by @chungquantin in #496
- feat: canonical command names by @Daanvdplas in #497
- chore: release v0.7.0 by @AlexD10S in #508
New Contributors
- @ndkazu made their first contribution in #361
- @franciscoaguirre made their first contribution in #474
Full Changelog: v0.6.0...v0.7.0
v0.6.0
We are thrilled to announce the release of pop-cli version 0.6.0! This release marks a major milestone with new features and improvements.
Summary of New Features
These features enable developers to seamlessly build, deploy, and manage production-level dApps and parachains.
pop-clinow enables secure transaction signing using your favorite browser wallet extensions #371pop call chainenables seamless interactions with Polkadot SDK-based chains #316pop call contractsimplifies working with smart contracts #306pop build specImproved the build specification file experience #331.pop up parachainEnsures seamless HRMP channel functionality #278.
Full list of changes
- refactor: use command state by @evilrobot-01 in #338
- fix: fetch stable version by @AlexD10S in #328
- fix: templates errors by @AlexD10S in #329
- fix: improve contract experience by @AlexD10S in #330
- refactor: format types by @evilrobot-01 in #339
- feat: integration openzeppelin evm template by @AlexD10S in #284
- chore(v0.5.0): update crates version by @al3mart in #343
- refactor: replace rococo to paseo name by @CocDap in #333
- fix: parse user inputs for Option arguments by @AlexD10S in #332
- feat: guide user to call a contract by @AlexD10S in #306
- fix: solve conflicts and unit tests by @AlexD10S in #359
- fix: support new substrate-contracts-node structure and stabilize integration tests by @AlexD10S in #360
- fix: build spec experience by @AlexD10S in #331
- feat: submit extrinsic from call_data by @AlexD10S in #348
- feat: parse files when the argument values are very big by @AlexD10S in #363
- refactor: use Default derive macro and define constants for test values by @AlexD10S in #366
- feat: flag sudo to wrap extrinsic by @AlexD10S in #349
- refactor: various fixes and improvements by @evilrobot-01 in #367
- refactor: terminology by @evilrobot-01 in #368
- refactor: improvements by @evilrobot-01 in #370
- refactor: rename parachain with chain as the primary command and retain parachain as an alias by @AlexD10S in #373
- feat: guide user to call a parachain by @AlexD10S in #316
- refactor: events by @Daanvdplas in #375
- feat: call parachain events by @Daanvdplas in #372
- bump zombienet version to
v0.2.18by @pepoviola in #352 - chore: set msrv by @evilrobot-01 in #385
- refactor: ensure short args consistency by @evilrobot-01 in #386
- feat(call-parachain): add remark action by @evilrobot-01 in #387
- feat: wallet integration by @peterwht in #371
- fix: hrmp by @evilrobot-01 in #278
- refactor(up): bump fallback versions by @evilrobot-01 in #393
- chore: replace codeowners by @AlexD10S in #388
- build(deps): remove unused dependencies by @evilrobot-01 in #369
- chore(wallet): update frontend with papi support by @peterwht in #395
- chore: release v0.6.0 by @AlexD10S in #394
New Contributors
- @CocDap made their first contribution in #333
- @pepoviola made their first contribution in #352
Full Changelog: v0.5.0...v0.6.0
v0.5.0
This release includes integration with the OpenZeppelin EVM template offering robust and audited parachain templates. Additionally, this update includes several bug fixes for improved stability.
What's Changed
- feat: integration openzeppelin evm template by @AlexD10S in #284
- fix: fetch stable version by @AlexD10S in #328
- fix: templates errors by @AlexD10S in #329
- fix: improve contract experience by @AlexD10S in #330
Full Changelog: v0.4.0...v0.5.0