1. 28 Jun, 2022 1 commit
  2. 19 May, 2022 1 commit
  3. 18 May, 2022 1 commit
  4. 17 May, 2022 1 commit
  5. 13 May, 2022 1 commit
    • Chevdor's avatar
      Add missing dep (#542) · b673c39b
      Chevdor authored
      * Add missing dep
      
      openssl is required to build cargo-dylint
      
      * Fixed order
      
      * Add --locked
      
      * Cosmetic
      b673c39b
  6. 14 Mar, 2022 1 commit
  7. 24 Feb, 2022 1 commit
  8. 23 Feb, 2022 1 commit
    • Michael Müller's avatar
      Add ink! linting MVP stage (#431) · 836acbff
      Michael Müller authored
      
      
      * Add ink! linting MVP stage
      
      * CI: cache cargo installations; update versions
      
      * Apply suggestions from code review
      Co-authored-by: default avatarSergejs Kostjucenko <85877331+sergejparity@users.noreply.github.com>
      
      * Update changelog
      
      * Check if `dylint` requirements are installed
      
      * Make `clippy` happy
      
      * Make tests happy
      
      * Make `LICENSE` symlink
      
      * Make error handling and panic's consistent
      
      * Improve code structure
      
      * Remove unneeded `--workspace`
      
      * Fix `mapping-two-constructor` test file
      
      * Simplify `Option<Vec<_>>` to `Vec`
      
      * Generalize unsetting of env variables in `invoke_cargo`
      
      * Move special case of `dylint` verbosity to call site
      
      * Keep calm and return an `Err`
      
      * Move checking for `dylint-link` to `build.rs`
      
      * Add `ink_linting/Cargo.lock`
      
      * Move `bool_to_exit_code` inline
      
      * Add test for non-fully-qualified path call of `initialize_contract`
      
      * Fix panic when no manifest path was supplied
      
      * Improve structure of `build.rs`
      
      * Make linting error message non-blaming
      
      * Remove incorrect note on not detecting indirections
      
      * Make `clippy` happy
      
      * Impprove text
      
      * Build `ink_linting` with `--locked`
      
      * Fix path separators for Windows CI
      
      * Revert "Fix path separators for Windows CI"
      
      This reverts commit b59983137305eeb2df68c38696f13bccfd849ba4.
      
      * Revert me: Debug failing Windows CI
      
      * Revert me: Debug failing Windows CI
      
      * Revert me: Debug failing Windows CI
      
      * Revert me: Debug failing Windows CI
      
      * Revert me: Debug failing Windows CI
      
      * Revert me: Debug failing Windows CI
      
      * Revert me: Debug failing Windows CI
      
      * Use `which` for detecting `dylint-link` installation
      
      * Remove `DYLINT_DRIVER_PATH`
      
      * Add `--lib`
      
      * Revert "Remove `DYLINT_DRIVER_PATH`"
      
      This reverts commit d0d209fe60972fa9d242767079423c0b9913f3f0.
      
      * Use temporary `DYLINT_DRIVER_PATH` path during tests
      
      * Give `template` variable a speaking name
      
      Co-authored-by: CI system <>
      Co-authored-by: default avatarSergejs Kostjucenko <85877331+sergejparity@users.noreply.github.com>
      836acbff
  9. 16 Feb, 2022 1 commit
    • Andrew Jones's avatar
      Interact with contracts: upload, instantiate and call commands (#79) · 4195197c
      Andrew Jones authored
      * WIP display all events
      
      * Clean up and generalize displaying events
      
      * Fix multiple event new lines
      
      * Fmt
      
      * Create wrapper types for Display, derive Debug for originals
      
      * Control indentation of pretty printing
      
      * Indent events display
      
      * More tuning of runtime events pretty printing
      
      * Fmt
      
      * Use Display impls for printing events
      
      * Add DisplayTransferEvent
      
      * Namespace events
      
      * Add CodeStored and Instantiated events
      
      * Refactor Deploy command and use verbosity for events display
      
      * Fix up string message return
      
      * Code hash LowerHex and println after events
      
      * Use LowerHex api for Bytes
      
      * Parse code hash with 0x prefix
      
      * Fmt
      
      * Spawn canvas node for integration test
      
      * Increment attempts
      
      * Get the test running with spawned canvas node
      
      * Instantiate deploy works with manual node
      
      * Test works locally and cleans up temp dir
      
      * Fmt
      
      * Fix duplicate import
      
      * Build before testing so cargo-contract bin available for testing
      
      * Separate line for build
      
      * Extract decode_hex util fn
      
      * WIP failing Literal tests for SS58 account ids
      
      * Upgrade to nom 0.6
      
      * Use nom error in custom error, impl FromStr
      
      * Fmt
      
      * Update lockfile after merge
      
      * Make TryFrom take reference for verbosity conversion
      
      * Fix parsing literals
      
      * Plumbing for custom encoders
      
      * Implement AccountId32 custom encoder
      
      * Refactor: extract env types
      
      * Test for encoding ss58 literal
      
      * Fmt and add back failing struct test
      
      * Use AccountId type in test
      
      * TEMP: Use github dependencies of scale-info and ink
      
      * Err for 256 bit ints
      
      * Use new registry type enumeration
      
      * Extract type lookup and introduce Encoder
      
      * WIP: extract Transcoder and implement env type decoding
      
      * Implement env type decoding, removes generic Input.
      
      Custom env decoders are trait objects so can't have generic type parameters on its decode method.
      
      * Fix AccountId decoding, add some debug logging
      
      * Test for different AccountId aliasing
      
      * Passing tests for AccountId encoding and fmt
      
      * Update scale-info and ink deps, patch ink deps for now
      
      * Update scale-info and ink deps, patch ink deps for now
      
      * Remove extrinsics feature
      
      * Dependencies
      
      * More deps
      
      * Cargo.lock
      
      * Cargo.lock
      
      * WIP upgrading to latest subxt and scale-info
      
      * More upgrading to latest subxt
      
      * Fix more errors
      
      * Fix up extrinsic commands
      
      * Refactor transcoder decode, handle Compact
      
      * Refactor transcoder encode, initial compact support
      
      * Fmt
      
      * Fix metadata file loading
      
      * Constructor arg rename
      
      * Enable tokio
      
      * Make instantiate work
      
      * Update contracts runtime from substrate-contracts-node
      
      * Fix warnings and add todo
      
      * Update subxt
      
      * Add missing import
      
      * Use explicit substrate branch to match subxt import
      
      * Remove sp_rpc dependency
      
      * Remove sp_rpc dependency
      
      * Use metadata to decode events
      
      * Fmt
      
      * Pretty print events
      
      * WIP custom transcoders for events
      
      * Custom transcoders for events working
      
      * Fix some warnings
      
      * Slim down bat dependency
      
      * Decode contract events
      
      * Use correct field for instantiated contract account
      
      * Fix warnings
      
      * Fix multiple line warning
      
      * Update contracts RPC types
      
      * Fmt
      
      * Fix deploy contract account
      
      * Use ink! master branch
      
      * Oops
      
      * Remove patches
      
      * Bump ink deps to rc6
      
      * Update to latest subxt
      
      * Update to latest subxt
      
      * Fix errors after subxt update
      
      * Fix instantiate_with_code.rs
      
      * Update subxt
      
      * Add deserializing context
      
      * Fmt
      
      * Expose public metadata fields
      
      * Implement full metadata decoding
      
      * Cargo.lock
      
      * Update calls to work with storage_gas_limit from https://github.com/paritytech/substrate/pull/10082
      
      
      
      * Cargo.lock
      
      * Update to latest subxt
      
      * Fmt
      
      * WIP unify instantiate command
      
      * Fix call command errors
      
      * Main warning unused result
      
      * Call and instantiate warns and errors and fmt
      
      * Update to ink rc7
      
      * Default to local contract wasm if none specified
      
      * Change instantiate endowment to value
      
      * Use latest subxt branch
      
      * Update to latest subxt
      
      * Unify call and instantiate arg names
      
      * Instantiate and call args consistency
      
      * Add todo comment for encoding message args
      
      * Refactor, tidy up call and instantiate
      
      * Display decoded contract event separately
      
      * Register env types with and without aliases
      
      * Add pretty print flag
      
      * WIP add upload
      
      * Wiring up upload code extrinsic
      
      * Download latest contracts node metadata
      
      * Wire up upload command and WIP manifest path
      
      * in! default features and cargo update
      
      * Add manifest path argument for extrinsics
      
      * Only fetch crate metadata once
      
      * Fmt
      
      * Cargo upgrade
      
      * Update substrate dependencies
      
      * Pretty print code upload dry run values
      
      * Extract name value println macro
      
      * Print code hash from upload extrinsic
      
      * Refactor upload code command
      
      * Pretty print instantiate results
      
      * Add salt arg to instantiate command
      
      * WIP custom events display, removes big bat dep
      
      * Extract method for printing RPC contract result
      
      * Ugly printing of events
      
      * Fix contract event decoding
      
      * Fmt
      
      * Pretty print event fields
      
      * Only print event fields if verbose
      
      * More event prettification
      
      * Fmt
      
      * Resolve some todos
      
      * Remove some code comments, moved to follow ups in PR
      
      * Refactor: extract compact encoding function
      
      * Fix storage_deposit_limit and add todo re: compact primitives
      
      * Add todo re: compact primitives
      
      * Cargo.lock
      
      * Use released substrate crates and subxt master
      
      * Fix encoding compact, inline for each uint
      
      * Fix encoding compact, inline for each uint
      
      * Add extrinsics markdown outline
      
      * Dynamic compact encoding
      
      * Replace bitvec todos with errs, added follow up in PR
      
      * Remove todo about friendly encoding error, add to PR follow ups
      
      * Rename codec to scale for test contract, fix some transcoding tests
      
      * Attempt to fix linking with __ink_generate_metadata
      
      * Update to ink rc8
      
      * Add test for out of order composite fields
      
      * Update ink metadata version
      
      * Update ink metadata types and methods
      
      * Fix metadata error message
      
      * Add std feature to fix test compilation with inline contract
      
      * Fix out of order struct fields
      
      * Improve encoding of field error message
      
      * Fmt imports
      
      * Rename TypeLookupId to TypeLookup
      
      * Remove alias matching for custom env type transcoding
      
      * Fix variant encoding for maps and out of order fields
      
      * Add failing test & impl for compact struct transcoding
      
      * Use released version of pallet-contracts primitives
      
      * WIP attempting to fix compact struct transcoding
      
      * Fix compact struct decoding
      
      * Add todo for integration test
      
      * Renamed SconParseError
      
      * Failing test for invalid integer
      
      * Use nom-supreme for combinators, error handling
      
      * Use released subxt
      
      * Refactor integer parsing
      
      * Refactor char parsing
      
      * Refactor seq parsing
      
      * Refactor tuple parsing
      
      * Refactor unit tuple parsing
      
      * Refactor map parsing
      
      * Refactor bytes parsing
      
      * Remove final nom `map` free function usage
      
      * Use some postfix recognizes
      
      * Remove final recognize combinator
      
      * Use postfix value combinator
      
      * Use opt postfix combinator
      
      * Move entry point and top level parser to the top of the file
      
      * Inline some string parsers
      
      * Inline some local helper functions
      
      * Fix failing integer tests
      
      * Fix Rust ident parsing
      
      * Fix up integration test
      
      * Make clippy happy
      
      * Fmt
      
      * Clippy clippy clippy
      
      * Ignore integration test for CI
      
      * Support parsing underscore separators for integer literals
      
      * + sign prefix parses to signed int
      
      * Allow underscores for balance CLI args
      
      * Add helper function for handling runtime errors
      
      * Add helper function for displaying runtime module errors
      
      * Elide lifetime
      
      * Add some basic module level docs for transcoding
      
      * Improve error message where metadata file not found
      
      * Adding common args section to extrinsics.md
      
      * Move --dry-run to extrinisic opts and more docs
      
      * Move --storage-deposit-limit to ExtrinsicOpts, move ExtrinsicOpts to extrinsics.
      
      * Add instantiate docs
      
      * Add call docs
      
      * Update Extrinsics docs
      
      * Update Cargo.toml
      Co-authored-by: Alexander Theißen's avatarAlexander Theißen <alex.theissen@me.com>
      
      * Don't wait for finalization before displaying transaction success
      
      * Update docs/extrinsics.md
      Co-authored-by: Alexander Theißen's avatarAlexander Theißen <alex.theissen@me.com>
      
      * Remove static error detail lookup, since it may be inaccurate if the target chain differs
      
      * CLIPPY
      
      * Print debug message lines
      
      * Display not Debug return value
      
      * Fmt
      Co-authored-by: Alexander Theißen's avatarAlexander Theißen <alex.theissen@me.com>
      4195197c
  10. 10 Feb, 2022 1 commit
  11. 19 Oct, 2021 1 commit
  12. 09 Sep, 2021 2 commits
  13. 06 Sep, 2021 1 commit
  14. 05 Aug, 2021 1 commit
  15. 03 Jul, 2021 1 commit
  16. 21 Apr, 2021 2 commits
  17. 12 Apr, 2021 1 commit
  18. 06 Apr, 2021 1 commit
  19. 31 Mar, 2021 1 commit
  20. 24 Mar, 2021 1 commit
    • Michael Müller's avatar
      Support `optimization-passes` in the release profile (#231) · 3454c125
      Michael Müller authored
      * Reduce code for `OptimizationPasses`
      
      * Fix typo: zeros ➜ zeroes
      
      * Reduce code for `OptimizationPasses`
      
      * Add log output for optimization flags
      
      * Support `optimization-passes` in the release profile
      
      * Add link to Windows binary releases to Readme
      
      * Improve failed assert message
      
      * Account for `binaryen-rs` behavior
      
      * Link GitHub issue in comment
      
      * Implement comments
      
      * Update `--help`
      3454c125
  21. 02 Mar, 2021 1 commit
  22. 22 Feb, 2021 1 commit
    • Michael Müller's avatar
      Fix `wasm-opt` regression (#187) · 95c5ee85
      Michael Müller authored
      * Use `--zero-filled-memory` for `wasm-opt`
      
      * Assert that compiled contract template is below 3k
      
      * Apply cargo fmt
      
      * Remove superfluous comment
      
      * Improve error message on `wasm-opt` error
      
      * Specify minimum binaryen version
      95c5ee85
  23. 04 Feb, 2021 1 commit
    • Michael Müller's avatar
      Use either `binaryen-rs` dep or `wasm-opt` binary (#168) · 0e80763c
      Michael Müller authored
      * Fix `#[warn(clippy::ptr_arg)]`
      
      * Use either `binaryen-rs` dep or `wasm-opt` binary
      
      * Implement reviewers suggestions
      
      * Rename `optimization_level` to `optimization_passes`
      
      * Revert "Rename `optimization_level` to `optimization_passes`"
      
      This reverts commit 1fd35bcdc1893b6908af9eb9cf4d130ac41a5af8.
      
      * Update installation instructions
      
      * Update readme
      
      * Add package manager links
      0e80763c
  24. 07 Dec, 2020 1 commit
  25. 10 Nov, 2020 1 commit
    • Michael Müller's avatar
      Implement new commands `build` and `check` + introduce bundles (.contract files) (#97) · 144ea274
      Michael Müller authored
      
      
      * Fix URIs
      
      * Make `generate-metadata` output consistent with `build`
      
      * Add `cargo contract pack`
      
      * Return error instead of panicking
      
      * Use blake2_hash()
      
      * Replace match with if
      
      * Pass reference instead of ownership
      
      * Generate metadata.json and <contract>.pack
      
      * Output .wasm, .json, .pack
      
      * Return result object instead of tuple
      
      * Get it to run with '--features test-ci-only'
      
      * Rename .pack to .contract
      
      * Apply suggestions from code review
      Co-authored-by: Alexander Theißen's avatarAlexander Theißen <alex.theissen@me.com>
      
      * Introduce '--skip-packing' and '--skip-metadata'
      
      * Apply suggestions from code review
      Co-authored-by: Alexander Theißen's avatarAlexander Theißen <alex.theissen@me.com>
      
      * Short help message
      
      * Output deprecated error for 'generate-metadata'
      
      * Rename pack ➜ bundle
      
      * Add 'cargo contract check' command
      
      * Optimize resulting Wasm file, except on 'check'
      
      * Do not make unoptimized file easily mistake for optimized one
      
      * Get it to run with
      
      * Update readme
      
      * Make unoptimized wasm not show up in target folder
      
      * Update comments
      
      * Remove 'generate-metadata' variants
      
      * Move dispatch logic into metadata
      
      * Update src/main.rs
      Co-authored-by: Alexander Theißen's avatarAlexander Theißen <alex.theissen@me.com>
      
      * Move logic into build.rs
      
      * Improve progress output
      
      * Make clippy happy
      
      * Fix progress output
      
      * Make it work with `--features test-ci-only`
      
      * Apply cargo fmt
      
      * Always use optimized Wasm for metadata hash
      
      * Always use optimized Wasm for metadata hash
      
      * Make it work with `--features test-ci-only`
      
      * Switch naming
      
      * Fix metadata/bundle output
      
      * Use enum `BuildArtifacts` instead of boolean flags
      
      * Improve misleading fn name
      
      * Make it work with `--features test-ci-only`
      
      * Make output more concise
      
      * Print optimization result at the end
      
      * Improve output
      
      * Replace 5-tuple return value with struct
      
      * Include hash only for bundle in metadata
      
      * Make it work with `--features test-ci-only`
      
      * Fix doc test
      
      * Remove comments
      
      * Introduce wrapper type CodeHash
      
      * Make it work with `--features test-ci-only`
      
      * Display important results bold
      
      * Include size diff for `code-only` as well
      
      * Remove comment
      
      * Shorten code
      
      * Clone metadata for correct UI output
      
      * Remove unnecessary return
      
      * Fix return type
      
      * Print metadata generation in correct step
      Co-authored-by: Alexander Theißen's avatarAlexander Theißen <alex.theissen@me.com>
      144ea274
  26. 02 Nov, 2020 1 commit
  27. 13 Oct, 2020 1 commit
    • Andrew Jones's avatar
      Release v0.7.0 (#82) · ec3394a0
      Andrew Jones authored
      * Use ink 3.0.0-rc1
      
      * Fix template ink deps
      
      * Fix deprecation warnings
      
      * Update CHANGELOG.md
      
      * Update README
      
      * Fmt
      
      * Add README to metadata crate to allow publishing
      
      * Add templates dir to include for publishing
      
      * Update Cargo.lock
      
      * Just make it 0.7.0 release
      ec3394a0
  28. 13 Aug, 2020 1 commit
  29. 13 May, 2020 1 commit
  30. 26 Mar, 2020 1 commit
    • Andrew Jones's avatar
      Release v0.6.0 (#50) · 25b7234b
      Andrew Jones authored
      * Update subxt and bump version
      
      * Update CHANGELOG
      
      * Update README
      
      * Fail build.rs when error, add diagnostics
      
      * Rename template Cargo.toml files so they are not excluded from the package
      
      It appears any dir with a Cargo.toml (not included in the workspace) is excluded from the package.
      
      * Reorder env vars for clarity
      
      * Add mention of crates.io release in CHANGELOG
      
      * Valid category slugs
      25b7234b
  31. 26 Feb, 2020 1 commit
    • Andrew Jones's avatar
      Reduce wasm binary size with `cargo-xbuild` & removing `rlib` crate-type (#33) · ec118fff
      Andrew Jones authored
      * WIP: building wasm with xargo
      
      * Fix compilation errors
      
      * Fmt
      
      * Run commands with `rustup run nightly`
      
      * Pass separate link-args in rustflags for xargo compat
      
      * Warn user if 'rlib' crate type
      
      * Colourise printed error
      
      * Ignore Xargo.toml in template
      
      * Refactor Xargo file generation, only remove if generated.
      
      * WIP: Add rlib crate-type when generating metadata
      
      * Add rlib when building metadata, remove when building wasm
      
      * Fmt
      
      * Make error bright red
      
      * Fix generating without modified Cargo.toml
      
      * Don't need to check nightly installed, the command will fail
      
      * Only load toml when ready to modify: allow for multi usage
      
      * Fmt
      
      * Show error context
      
      * Debug crate metadata
      
      * Disable rlib by default for template
      
      * Use correct working dir, not workspace root
      
      * Use `cargo-xbuild` as lib
      
      * Check for nightly channel
      
      * Check for correct xbuild configuration
      
      * Add xbuild config to template
      
      * Fix xbuild config check and use latest xbuild version
      
      * Fmt
      
      * Restore tempfile dev dependency
      
      * Move xbuild config to the end of the file
      
      * Enable rlib by default in template
      
      * Don't need nightly for generating the metadata
      
      * Actually do need nightly, and just run plain cargo
      
      * Not verbose: need to pass that flag through properly
      
      * Fmt
      
      * Fix tests
      
      * Error when xbuild config not present, and update README
      
      * Fix tests
      
      * Remove references to xargo and update readmes
      
      * Fmt
      
      * Add error context to cargo invocation
      
      * Fix tests compilation
      
      * Fmt
      
      * Nightly toolchain for CI
      
      * Add docs for nightly toolchain requirement
      
      * Link to nightly docs
      
      * Disable backtrace on CI
      
      * Make tests pass
      
      * Install rust-src
      
      * Disable backtrace to make tests pass
      
      * Move args closer to invocation
      
      * Create temporary Cargo.toml
      
      * Rework temp manifest api
      
      * Target dir is already absolute
      
      * temp dir prefix
      
      * xbuild config with sysroot path and explicit args
      
      * Use custom xbuild branch
      
      * Remove check for xbuild config
      
      * Rewrite relatives paths when using temp file
      
      * Fix dependency path rewrite
      
      * Update cargo-xbuild
      
      * workspaces: parse workspace member manifests
      
      * WIP workspaces
      
      * Implement temp workspace copy
      
      * Fmt
      
      * Rewrite bin relative path
      
      * Handle package rename for contracts
      
      * Fmt
      
      * Pass rustflags by setting env var
      
      * Fmt
      
      * Use abs path for lib default
      
      * Add 1 decimal place to file size
      
      * Make generate-metadata work, introduces ManifestPath
      
      * Fmt
      
      * cargo update
      
      * Rename manifest to workspace
      
      * Fix test compilation and fmt
      
      * Fix link
      
      * Add prerequisites section to readme
      
      * Remove rust-src component (added to image)
      
      * Fix deploy build
      
      * Use builder like method for amending root manifest
      
      * List installed components
      
      * Show active-toolchain and whether rust-src installed
      
      * Install nightly rust-src (temporary)
      
      * Fix metadata test
      
      * Fmt
      
      * Remove manual install of rust-src and diagnostics
      
      * More doc comments
      
      * Add verbosity flags
      
      * Add verbosity flags to metadata command
      
      * Fix working dir for generate-metadata
      
      * Add verbosity to tests
      
      * Add verbosity to tests
      
      * Make url optional and cargo update
      
      * Remove bk file from gitignore
      
      * Bump version
      
      * Fix comment and formatting
      
      * Add CHANGELOG.md
      ec118fff
  32. 09 Jan, 2020 1 commit
  33. 18 Dec, 2019 1 commit
    • Andrew Jones's avatar
      Implement instantiate command (#12) · 25df0b82
      Andrew Jones authored
      * Implement instantiate command
      
      * Bump version
      
      * Doc comments
      
      * Fix invalid default gas value
      
      * Default empty constructor data
      
      * Require constructor data
      
      * Hide instantiate behind deploy feature
      
      * Rename deploy feature to extrinsics to include instantiate
      
      * Format code
      
      * Fix deploy test
      
      * Instantiate test
      
      * Update README
      25df0b82
  34. 28 Nov, 2019 1 commit
  35. 26 Nov, 2019 1 commit
  36. 25 Nov, 2019 1 commit
  37. 22 Apr, 2019 1 commit