1. Nov 13, 2020
  2. Nov 11, 2020
  3. Nov 10, 2020
    • Michael Müller's avatar
    • 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: default avatarAlexander Theißen <[email protected]>
      
      * Introduce '--skip-packing' and '--skip-metadata'
      
      * Apply suggestions from code review
      
      Co-authored-by: default avatarAlexander Theißen <[email protected]>
      
      * 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: default avatarAlexander Theißen <[email protected]>
      
      * 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: default avatarAlexander Theißen <[email protected]>
      144ea274
  4. Nov 05, 2020
  5. Nov 02, 2020
  6. Oct 29, 2020
  7. Oct 13, 2020
    • 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
      v0.7.0
      ec3394a0
  8. Sep 10, 2020
    • Andrew Jones's avatar
      Extract contract metadata to its own crate (#69) · f0e7cabb
      Andrew Jones authored
      * Extract contract metadata to its own crate
      
      * Add json serialization test
      
      * Add json test for excluding optional fields
      
      * Add doc tests and rename to contract-metadata
      
      * Fmt
      
      * Fix tests
      
      * Fmt
      
      * Builder API for contract metadata
      
      * Tests for builder pattern
      
      * Fmt
      
      * Make metadata version camel case
      
      * Builder optional fields
      
      * Check whether fields have not already been set
      
      * Check at least one author
      
      * I really should check it compiles before pushing
      
      * Oh yeah and cargo fmt fml
      
      * Yeah
      f0e7cabb
  9. Aug 14, 2020
  10. Jul 23, 2020
    • Andrew Jones's avatar
      Generate extended contract metadata (#62) · d28a743b
      Andrew Jones authored
      * Generate main.rs with quote for passing extension metadata
      
      * Update template to scale-info 0.3
      
      * Rename ink_abi package to ink_metadata
      
      * Temporarily change ink dependency branch to aj-extra-metadata
      
      * Fix up metadata generation codegen
      
      * Promote metadata mod to directory
      
      * Move InkProjectExtension data structure over from ink! PR
      
      * Revert "Generate main.rs with quote for passing extension metadata"
      
      This reverts commit 0929ce8a
      
      * Make it compile
      
      * Flatten metadata struct
      
      * Fmt
      
      * Capture ink metadata from stdout
      
      * Update comment
      
      * Construct hardcoded metadata values
      
      * Remove contract metadata builder, it is redundant
      
      * Generate contract wasm hash
      
      * Refactor: extract CrateMetadata for use in both metadata and build
      
      * Fmt
      
      * Rust version
      
      * Contract version
      
      * Add remaining optional enhanced metadata
      
      * Move wasm build, make repo and license work
      
      * Just use a String for the license
      
      * Remove unused variants
      
      * Read docs and homepage urls directly from manifest
      
      * Read user defined metadata
      
      * Fmt
      
      * This PR no longer depends on an updated version of ink!
      
      * Fix test error, refactor commands to use common method name
      
      * Fmt
      
      * Refactor crate metadata collection
      
      * Remove ink_lang dependency from generated metadata crate
      
      * Fmt
      
      * Return metadata path from generation
      
      * Fmt
      
      * Test metadata wasm hash
      
      * Fmt
      
      * Read ink language version
      
      * Ensure tmp dir is cleaned up after build
      
      * Make cargo-contract tmp dir not hidden
      
      * Fmt
      
      * Test source compiler, contract name, contract version
      
      * Use ink branch temporarily
      
      * Test for authors and documentation
      
      * Test user provided metadata section
      
      * Drop automatically handles tempdir removal
      
      * Remove redundant unwind bound
      
      * Comment crate features
      
      * Revert template to point at ink master
      
      * Self
      
      * Update comment
      
      * Remove redundant comment
      d28a743b
  11. Jul 09, 2020
  12. Jun 25, 2020
  13. Jun 24, 2020
    • Andrew Jones's avatar
      Autogenerate abi/metadata package (#58) · 80716750
      Andrew Jones authored
      * Use into for constructing toml values
      
      * Promote workspace mod to directory
      
      * Fix import warnings
      
      * Update license headers
      
      * Remove abi package from template, generate it instead
      
      * Extract contract name and generate files
      
      * Fix some errors
      
      * Insert ink_lang dependency
      
      * Fmt
      
      * ink! v2 compatibility
      
      * Use new generate_metadata extern
      
      * Warn the user if they have legacy abi_gen artifacts
      
      * Move existing abi package check to the right place
      
      * Remove v2 backwards compat, use ink! master in template
      
      * Remove type_metadata dependency
      
      * Fix up template for working with ink! master
      
      * Update template lib.rs for ink! 3
      
      * Fix template
      
      * Fix template constructors
      
      * Try again with template
      
      * Move template files to templates dir
      
      * Rename abi to metadata
      
      * Rename abi constant and update warning
      
      * More renames from abi to metadata
      
      * Document generate_package function
      
      * Fmt
      
      * More abi to metadata renames
      
      * Update template parity-scale-codec
      
      * Bump version
      ink-ci
      80716750
  14. Jun 19, 2020
  15. Jun 16, 2020
    • Andrew Jones's avatar
      Add preferred default release profile settings (#55) · 4a265c3d
      Andrew Jones authored
      * Add preferred defaults to `[profile.release]` section
      
      * Add preferred profile.release defaults for contract build
      
      * Remove [release.profile] section, update to scale-info release
      
      * Fmt
      
      * Fix remaining type-metadata reference in template
      
      * Remove unused default impl of Profile
      
      * OptLevel refactoring
      
      * Indent test toml for readability
      
      * Specify exact Lto values
      
      * Make OptLevel consistent with Lto (no option)
      
      * Revert to using type-metadata until ink! 3.0 release
      4a265c3d
  16. May 22, 2020
  17. May 13, 2020
  18. May 12, 2020
  19. Feb 26, 2020
    • Andrew Jones's avatar
      Fail the build if xbuild fails (#41) · 2e8f9e6f
      Andrew Jones authored
      * Fail the build if xbuild fails
      
      * Debug log now redundant
      
      * Add wasm-opt to release notes
      2e8f9e6f
    • 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
      v0.4.0
      ec118fff
  20. Feb 04, 2020
  21. Feb 03, 2020
    • Andrew Jones's avatar
      Fix default features build (#26) · e3ba2212
      Andrew Jones authored
      * Check default features build in CI
      
      * Hide extrinsics only stuff behind feature
      
      * Make submit_extrinsic crate public
      
      * Fmt
      
      * Make build run on CI with default features
      e3ba2212
  22. Jan 31, 2020
  23. Jan 08, 2020
  24. Jan 07, 2020
  25. Jan 06, 2020
  26. Dec 18, 2019
    • 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
  27. Nov 28, 2019
  28. Nov 26, 2019
  29. Nov 25, 2019
    • Andrew Jones's avatar
      Update to subxt v0.3 (#275) · 8a5d89c6
      Andrew Jones authored
      * Update to subxt v0.3
      
      * rustfmt
      
      * bump cargo-contract version
      8a5d89c6
    • Hero Bird's avatar
      Fix CI (finally) (#265) · 708b3dc8
      Hero Bird authored and Andrew Jones's avatar Andrew Jones committed
      
      
      * Update some deps
      
      Signed-off-by: default avatarkoushiro <[email protected]>
      
      * Format
      
      Signed-off-by: default avatarkoushiro <[email protected]>
      
      * Fix clippy-wasm
      
      Signed-off-by: default avatarkoushiro <[email protected]>
      
      * [examples] fix minor formatting issues
      
      * [examples] fix some clippy warnings
      
      * [lang2/macro] silence warning for ink! constructors named "new"
      
      * [*] replace documentation link in Cargo.toml to ink! tutorial
      
      * [abi] specify allow(clippy::trivially_copy_pass_by_ref) in a smaller scope
      
      * [abi] specify allow(clippy::new_ret_no_self) in smaller scope
      
      * [ci] adjust gitlab-ci.yml
      
      * [ci] update Travis CI to just do coverage reporting
      708b3dc8
  30. Nov 15, 2019
  31. Nov 14, 2019
    • Hero Bird's avatar
      Improve GitLab CI (#235) · e8149bed
      Hero Bird authored
      * [lang2/macro] add some dev-dependencies to make CI work better
      
      * [scripts] improve check-workspace script
      
      We introduced "hacks" to make it work with the currently buggy nightly version of cargo ... We hope we can move back to were we came once cargo nightly has been fixed again.
      
      * [*] fix formatting issues
      
      * [cli] re-enable build_template test
      
      * [lang2] fix some clippy warnings
      
      * [cli] fix formatting
      
      * test what's faster
      
      * typo
      
      * debug no config and job name
      
      * bench CI var2
      
      * set of jobs for every crate
      
      * ordered set of jobs for every crate
      
      * right commands for the crates and examples. H/e examples will work after dockerfile update.
      
      * comparing two CI approaches
      
      * typo
      
      * forgot to exclude model and lang crates
      
      * bench CI 2
      
      * will bench in other branch
      
      * fix return in cycle
      
      * review 1
      
      * unset allow_failures
      
      * changed cd to popd
      
      * changed cd to popd
      
      * Update .gitlab-ci.yml
      
      * Update .gitlab-ci.yml
      
      * Update .gitlab-ci.yml
      
      * Update .gitlab-ci.yml
      
      * Update .gitlab-ci.yml
      
      * Update .gitlab-ci.yml
      
      * Update cli/src/cmd/abi.rs
      e8149bed
  32. Nov 13, 2019
  33. Nov 09, 2019
    • Andrew Jones's avatar
      [cli] add generate-abi command (#209) · 2bfba5ab
      Andrew Jones authored
      * [cli] add flag to `build` command to generate abi
      
      * [cli] fix abi console output
      
      * [cli] restore +nightly
      
      * [cli] separate generate-abi command
      
      * [cli] move nightly check to exec_cargo fn
      
      * [cli] add test for generate_abi
      2bfba5ab
  34. Oct 25, 2019
  35. Oct 24, 2019
    • Andrew Jones's avatar
      [cli] fix `new` command tests, pass in optional target dir (#197) · 8a97f6a4
      Andrew Jones authored
      * [cli] use temp dir for `cargo contract new` tests
      
      * [cli] pass in temp dir to build command
      
      * [cli] rustfmt
      
      * [cli] remove some spaces
      
      * [cli] rustfmt
      
      * [cli] fix unused warnings
      
      * [cli] TEMPORARY: see if test works on CI without nightly flag
      
      * [cli] build: check if nightly toolchain is the default
      
      * [cli] TEMPORARY: dump cargo output of build command test
      
      * [cli] TEMPORARY: fix error in las commit
      
      * [cli] TEMPORARY: add some diagnostics to see if .cargo/config is there
      
      * [cli] TEMPORARY: use cat
      
      * [cli] fix merge compilation error
      
      * [cli] change ls and cat commands to current_dir
      
      * [cli] fix troubleshooting logging
      
      * [cli] TEMPORARY: comment out RUSTFLAGS for troubleshooting
      
      * [cli] add link-dead-code args to top level .cargo/config
      
      Avoids RUSTFLAGS env var overriding contract project's rust flags
      
      * [cli] revert temporary CI build troubleshooting
      
      * [cli] make rustflags not target specific
      
      * [cli] only link-dead-code in CI
      
      * [cli] TEMP: output .cargo/config
      
      * [cli] printf instead of echo
      
      * [ci] create cargo config in $CARGO_HOME instead of workspace root
      
      * [ci] fix cargo_home path
      
      * [ci] overwrite rather than append cargo home config
      
      * [ci] restore original RUSTFLAGS, ignore failing build test
      
      * [ci] remove stray echo
      8a97f6a4