Releases: use-ink/cargo-contract
Releases · use-ink/cargo-contract
v5.0.0
This release concludes the migration of ink! from Parity to the outside world. It doesn't come with any new features, we just:
- …changed the Parity URLs to ones for our new GitHub organization
@use-ink. - …upgraded many dependencies to newer versions, which results in two particular
breaking changes regarding compatibility:- We had to remove support for Substrate metadata that is below
V14
in #1722. Metadata formats belowV14
are quite old and we hope this doesn't affect anyone. cargo-contract
v5 works only with Rust >= 1.81.
- We had to remove support for Substrate metadata that is below
For the linter in cargo-contract
the Rust toolchain version changed. To upgrade:
export TOOLCHAIN_VERSION=nightly-2024-09-05
rustup install $TOOLCHAIN_VERSION
rustup component add rust-src --toolchain $TOOLCHAIN_VERSION
rustup run $TOOLCHAIN_VERSION cargo install cargo-dylint dylint-link
Changed
- Updated the toolchain version used by
ink_linting
- #1616 - Update repository URLs & references from
paritytech
GitHub organization to newuse-ink
one ‒ #1663 - Bump the version of
subxt
andsubxt-signer
- #1722
Removed
- Remove support for
V11
metadata #1722
v4.1.3
v4.1.2
v5.0.0-alpha
What's Changed
Fixed
- Remove parity-wasm dependency from contract-build crate - #1594
- chore: Update toolchain for
ink_linting
- #1616 - chore: bump
subxt
andsubxt-signer
versions - #1722
Added
- Add support for cargo build --verifiable --lint command - #1512
- Add new image deployment repo - #1620
- Switch to useink image in verifiable build command - #1622
Full Changelog: v4.1.1...v5.0.0-alpha
v4.1.1
v4.1.0
v4.0.2
v4.0.1
v4.0.0
This cargo-contract
release is compatible with Rust versions >=1.70
and ink! versions >=5.0.0
_ℹ️ We have created a migration guide from ink! 4 to ink! 5. It also contains an
overview over newly added features in this release of cargo-contract
and explains
e.g. the newly added contract verification in more detail.
You can view it here._
Notable changes:
- Verifiable builds inside a docker container - #1148
- Extrinsics extracted to separate crate - #1181
- Fix building contracts with Rust >= 1.70: enable
sign_ext
Wasm opcode - #1189 - Support for multiple versions of
pallet-contracts
- #1399
Added
- Export
ink_metadata
types intranscode
crate - #1522 - Improved error message for Strings as CLI arguments - #1492
- Add a user-friendly view of contract storage data in the form of a table - #1414
- Add
rpc
command - #1458 - Add schema generation and verification - #1404
- Compare
Environment
types against the node - #1377 - Detect
INK_STATIC_BUFFER_SIZE
env var - #1310 - Add
verify
command - #1306 - Add
--binary
flag forinfo
command - #1311 - Add
--all
flag forinfo
command - #1319 - Add contract language detection feature for
info
command - #1329 - Add warning message when using incompatible contract's ink! version - #1334
- Add workspace support -#1358
- Add
Storage Total Deposit
toinfo
command output - #1347 - Add dynamic types support - #1399
- Basic storage inspection command - #1395
- Standardised verifiable builds - #1148
- Enable Wasm sign_ext #1189
- Expose extrinsics operations as a library - #1181
- Suggest valid message or constructor name, when misspelled - #1162
- Add flag -y as a shortcut for --skip-confirm - #1127
- Add command line argument --max-memory-pages - #1128
- Show Gas consumption by default for dry-runs - #1121
Changed
- Print type comparison warning only on
--verbose
- #1483 - Mandatory dylint-based lints - #1412
- Add a new tabular layout for the contract storage data - #1485
- Run wasm-opt first, remove sign_ext feature - #1416
- Bump
subxt
to0.32.0
- #1352 - Remove check for compatible
scale
andscale-info
versions - #1370 - Dry-run result output improvements - 1123
- Display build progress with --output-json, print to stderr - 1211
- Upgrade wasm-opt to 0.113 - #1188
- Update substrate dependencies - #1149
- Make output format of cargo contract info consistent with other subcommands - #1120
- set minimum supported
rust-version
to1.70
- #1241
Fixed
- Fix parsing of docker STDOUT - #1526
- Remove docker container on build failure - #1531
- Fix build
--verifiable
command #1511 - Do not allow to execute calls on immutable contract messages - #1397
- Improve JSON Output for Upload and Remove Commands - #1389
- Fix for a Url to String conversion in
info
command - #1330 - Configure tty output correctly - #1209
- Set
lto = "thin"
for metadata build to fixlinkme
on macOS - #1200 - fix(build): An error when running with
--lint
- #1174 - Dry-run result output improvements - #1123
- feat: use
CARGO_ENCODED_RUSTFLAGS
instead ofRUSTFLAGS
- #1124