All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Update to
scale-info1.0 and support new metadata versioning - #342 - Update
cargo contract newtemplate dependencies to ink!rc6- #342
- Add option for JSON formatted output - #324
- Use new dependency resolver for template contract - #325
- Do not strip out panic messages in debug builds - #326
- Fixed a Windows issue with contract files in sub-folders - #313
- Convenient off-chain testing through
cargo contract test- #283 - Build contracts in debug mode by default, add
--releaseflag - #298 - Add
--keep-symbolsflag for better Wasm analysis capabilities - #302
- Change default optimizations pass to focus on code size - #305
- Suggest
binaryeninstallation from GitHub release on outdated version - #274
- Always use library targets name for contract artifacts - #277
- Fixed
ERROR: The workspace root package should be a workspace memberwhen building a contract under Windows - #261
- Remove support for
--binaryen-as-dependency- #251 - Remove support for the deprecated
cargo contract generate-metadatacommand - #265 - Remove pinned
funtydependency from "new project" template - #260
- Fix
wasm-opt --versionparsing - #248
- Improve error output for
wasm-optinteraction - #244 - Check optimized Wasm output file exists - #243
- Detect
wasm-optversion compatibility and improve error messages - #242 - Detect version mismatches of
parity-scale-codecin contract and ink! dependency - #237 - Support specifying
optimization-passesin the release profile - #231 - Support specifying
optimization-passeson the CLI - #216 - Use
ink::testattribute in "new project" template - #190
- Only allow new contract names beginning with an alphabetic character - #219
- Upgrade
cargo-metadataand fix usages - #210
- no periods in new contract names - #192
- Update
cargo contract newtemplate dependencies forink!rc3- #204
- Fix linker error when building complex contracts - #199
- Implement Wasm validation for known issues/markers - #171
- Use either
binaryen-rsdep orwasm-optbinary - #168 - Update to scale-info 0.5 and codec 2.0 - #164
- Put build artifacts under
target/ink/- #122
- Fix
wasm-optregression - #187 - Generate metadata explicitly for the contract which is build - #174
- Fix bug with empty Wasm file when using system binaryen for optimization - #179
- Suppress output on
--quiet- #165 - Do not generate build artifacts under
targetforcheck- #124 - update wasm-path usage name - #135
- Exit with 1 on Err #109
- Use package name instead of lib name for metadata dependency #107
- Do not prettify JSON for bundle #105
- Make
source.hashnon-optional, remove metadata-only #104 - Implement new commands
buildandcheck+ introduce bundles (.contract files) #97 - Replace xbuild with cargo build-std #99
- Use binaryen-rs as dep instead of requiring manual wasm-opt installation #95
- Specify optional --manifest-path for build and generate-metadata #93
- Update new command template to ink! 3.0-rc2 #85
- Fix deprecation warnings #82
- Use ink 3.0.0-rc1 #82
- [template] now uses ink_env and ink_storage #81
- Update new command template to ink! 3.0 syntax #80
- Extract contract metadata to its own crate #69
- Fix ManifestPath compiler errors #73
- Upgrade cargo-xbuild and other dependencies #71
- Update subxt and async-std dependencies #66
- Generate extended contract metadata #62
- Autogenerate abi/metadata package #58
- Extract workspace to module directory #59
- Add preferred default release profile settings #55
- Add option to build with unmodified original manifest #51
- Update cargo-xbuild #54
- Fix LTO regressions in nightly toolchain #52
- First release to crates.io
- Use
subxtrelease from crates.io
- Fix: fail the whole build process if the contract build fails.
- Minimize contract wasm binary size:
- Run
wasm-opton the contract Wasm binary. - Uses
cargo-xbuildto build custom sysroot crates without panic string bloat. - Automatically removes the
rlibcrate type fromCargo.toml, removing redundant metadata.
- Run
- Removes requirement for linker args specified in
.cargo/config. - Added
--verboseand--quietflags forbuildandgenerate-metadatacommands.