- 28 Jan, 2021 2 commits
-
-
Andrew Jones authored
* Update to scale-info 0.5 * Update TypeInfo manual impls * Update parity-scale-code to 2.0 * Add Encode ?Sized bounds * Change type display name for Key custom TypeInfo impl * Add missing ?Sized constraint * Fmt * Missing ?Sized bound in example
-
tylerztl authored
-
- 19 Jan, 2021 1 commit
-
-
Andrew Jones authored
* WIP * Add salt argument to instantiate call * Fix lang compilation * Fix salt to [u8; 4] * Make create builder generic over Salt * Use type state instead of () * Rename salt to salt_bytes * Fmt * Apply review suggestion: type state enum * Apply review suggestion: separate impl block for salt_bytes getter * Apply review suggestion: take salt bytes directly to avoid copy overhead * Apply review suggestion: use Salt type state instead of leftover concrete type * Apply review suggestion: fix doc tests
-
- 13 Jan, 2021 1 commit
-
-
Hero Bird authored
* [lang/ir] generalize conflicting attribute error reporting # Conflicts: # crates/lang/ir/src/ir/chain_extension.rs * [lang/macro] add UI tests for payable constructors * fix docs (review suggestion) Co-authored-by:
Michael Müller <michi@parity.io> * fix docs (review suggestion) Co-authored-by:
Michael Müller <michi@parity.io> Co-authored-by:
Michael Müller <michi@parity.io>
-
- 12 Jan, 2021 1 commit
-
-
Hero Bird authored
* add new tests for #[ink(namespace = ..)] and #[ink(selector = ..)] attrs * [lang] implement new errors for ink! attributes: namespace, selector * add #[ink(extension = N: u32)] attribute * apply rustfmt * [lang] add initial implementation of chain extension proc. macro * [lang] rename AttributeArg -> AttributeFrag * rename AttributeFrag::kind field to arg * rename AttributeArgKind -> AttributeArg Also introduce a new AttributeArgKind type and AttributeArg::kind method. * [lang] apply rustfmt * add Display impl for AttributeArgKind * [lang] use AttributeArgKind in sanitize_attributes and ensure_first methods * [lang/ir] improve error reporting for duplicate ink! attributes * [lang/ir] refactoring and improvements to chain extension IR impl * [lang/ir] add tests for IR implementation of chain extensions * [lang/ir] remove some code dupe * [lang/ir] add getters to ChainExtension * [lang/ir] add re-exports for ChainExtension definitions * [lang/codegen] add initial impl for ChainExtensions * [env] add ChainExtension assoc type to the Environment trait * [lang] initial impl to make it possible to use chain extension syntax * [env] improvements to chain extensions API Also removes the unstable crate feature guarding the feature. * [lang/macro] add UI test for chain extension * [lang/macro] register new UI test * [lang/codegen] fix some codegen bugs with new chain extension feature * [lang, env] apply rustfmt * [lang/ir] apply clippy suggestions and fix outdated error messages * [lang/ir] fix some tests and incorrect error messages * [examples] apply clippy suggestion * add ErrorCode to ink! chain extension trait * add FromStatusCode trait to ink_lang * add #[ink(expect_output)] and #[ink(expect_ok)] attributes Also add their handling for the #[ink::chain_extension] proc. macro. * add ink_lang::IsResultType trait * add ChainExtensionMethodInputs iterator * hide docs for IsResultType trait * add some docs to chain extension codegen * implement expect_ok and expect_output where bounds in codegen * apply code review suggestions by (cmichi) * add ReturnCode::into_u32 getter * change return type of ext::call_chain_extension: RetCode -> u32 Chain extensions do not follow the general scheme of error return code because they have their own set of errors that is custom defined by the author of the chain extension. * [lang] add ChainExtension trait Not yet sure we need it. * change EnvBackend::call_chain_extension signature The new signature is much more low-level and supports all the different ways to call a chain extension method. This commit already implements the chain extension call on the on-chain environment. More work needs to be done to properly support this for the off-chain environment. * remove old high-level API for calling chain extension methods * [env] add new high-level module to handle chain extension calls * rename ChainExtensionMethodInstance -> ChainExtensionMethod * [env] add doc examples to chain extension method API * apply rustfmt * [env] clippy: allow complex type in ChainExtensionMethod type state * silence some warnings * re-export IsResultType from ink_lang crate * [lang] remove FromStatusCode trait This trait already exists in the ink_env crate. * [lang] update codegen for chain extensions Not yet done but close. * [lang] update simple chain extension test Compiles now again. * apply rustfmt * update some license headers * [env] fix where bound * extend chain extension test case to cover all cases * add messages for read_small, access and unlock_access * fix some bugs with chain extension method signatures in test * fix some bugs and docs in chain extension test * fix test * update quickcheck to 1.0 * [env] implement chain extension calling for off-chain env The new interface is much more lower-level and it is still impossible to use chain state from within the chain extension call. The latter must be fixed as soon as the off-chain environment receives its rework. * apply rustfmt * add docs to #[ink::chain_extension] proc. macro * rename env_types -> env everywhere * make doc examples for #[ink::chain_extension] compile * add yet another technical limitation * make link to simple.rs test case more stable (point to revision) * fix docs (code suggestion) Co-authored-by:
Michael Müller <michi@parity.io> * fix docs (code suggestion) Co-authored-by:
Michael Müller <michi@parity.io> * fix docs (code suggestion) Co-authored-by:
Michael Müller <michi@parity.io> * fix docs (code suggestion) Co-authored-by:
Michael Müller <michi@parity.io> * add dev. note to Backend::call_chain_extension * fix docs example (code suggestion) Co-authored-by:
Andrew Jones <ascjones@gmail.com> * [env] chain extension: make doc examples/tests compile * fix some doc comments according to review suggestions * review suggestion: telling -> meaning * fix docs (review suggestion) Co-authored-by:
Andrew Jones <ascjones@gmail.com> * fix docs (review suggestion) Co-authored-by:
Andrew Jones <ascjones@gmail.com> * improve docs (review suggestion) Co-authored-by:
Andrew Jones <ascjones@gmail.com> * rename chain extension test file * analyse_error_code add doc comments for possible errors * rename expect_ok -> returns_result and expect_output -> handle_status Some examples and docs might be invalidated or outdated. * [lang/ir] improve error reporting for ink! namespace attribute with missing parameter * [lang/*] implement new handle_status and returns_result attributes * [env] apply rustfmt Co-authored-by:
Michael Müller <michi@parity.io> Co-authored-by:
Andrew Jones <ascjones@gmail.com>
-
- 05 Jan, 2021 1 commit
-
-
Hero Bird authored
-
- 04 Jan, 2021 1 commit
-
-
Andrew Jones authored
-
- 28 Dec, 2020 1 commit
-
-
dependabot[bot] authored
Updates the requirements on [itertools](https://github.com/bluss/rust-itertools) to permit the latest version. - [Release notes](https://github.com/bluss/rust-itertools/releases) - [Changelog](https://github.com/rust-itertools/itertools/blob/master/CHANGELOG.md) - [Commits](https://github.com/bluss/rust-itertools/compare/v0.9.0...v0.10.0 ) Signed-off-by:
dependabot[bot] <support@github.com> Co-authored-by:
dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
-
- 11 Dec, 2020 1 commit
-
-
Michael Müller authored
-
- 07 Dec, 2020 1 commit
-
-
Michael Müller authored
-
- 02 Dec, 2020 3 commits
-
-
Michael Müller authored
* [storage] Implement `Drop` for `Pack` * Implement comments * Make `new_with_key` non-public * Remove `new_with_key`
-
Michael Müller authored
* Ensure topics are unique * Remove unavailable method * Fix salt appending in Wasm * Remove salt param * Add missing assignment * Update crates/lang/src/events.rs Co-authored-by:
Hero Bird <robin.freyler@gmail.com> * Add suggestions * Remove always inline * Fix event hashing in examples * Make nightly clippy happy * Remove unnecessary return param * Do not use internal type for hash calculation * Hide internal type from docs * Expose `PrefixedValue` from ink_env::topics * Apply cargo fmt * Apply cargo fmt * Apply comments * Apply comments * Apply comments Co-authored-by:
Hero Bird <robin.freyler@gmail.com>
-
Michael Müller authored
* Remove dead impls * Remove dead code from test (subtract not implemented for Key) * Make nightly clippy happy
-
- 27 Nov, 2020 1 commit
-
-
Michael Müller authored
* Make `Lazy::Drop` always clear up all its storage * Fix typo: yet ➜ get * Fix macro import * Make tests off-chain since they interact with storage now due to Drop * Make use of `REQUIRES_DEEP_CLEAN_UP` * Clear up all footprint cells * Fix typo: yet ➜ get * Fix case * Macro ➜ fn
-
- 26 Nov, 2020 1 commit
-
-
Michael Müller authored
* Migrate magic number to global const * Replace format! * Make nightly clippy happy * Remove unnecessary return param * Apply comments * Update crates/storage/src/lazy/lazy_cell.rs Co-authored-by:
Hero Bird <robin.freyler@gmail.com> * Fix binding * Add binding Co-authored-by:
Hero Bird <robin.freyler@gmail.com>
-
- 23 Nov, 2020 1 commit
-
-
Michael Müller authored
* Fix typo * Fn does not need to take mutable self * Fix naming: #[ink(implemenetation)] ➜ #[ink(impl)] * #[ink(storage)] can not be applied to enum * Fix typo: accesses ➜ accessed * Fix typo: sturctures ➜ structures
-
- 17 Nov, 2020 1 commit
-
-
Michael Müller authored
* Fix typo: invariances ➜ invariants * Fix comment * Reduce code duplication in HashMap tests * Add test api getters for used storage * Add regression tests for complete storage clearance of nested Lazy's * Always clear inner cell * Bring costs of bug fix down * Apply suggestions from code review Co-authored-by:
Hero Bird <robin.freyler@gmail.com> * Rename function * Throw out convenience method, clarify variable names * Clarify comment Co-authored-by:
Hero Bird <robin.freyler@gmail.com>
-
- 12 Nov, 2020 1 commit
-
-
Michael Müller authored
* Simplify regression test * Add asserts for Some/None * Add assertions for expected ptr * Introduce second regression test * Introduce second regression test * Fix syntax
-
- 11 Nov, 2020 1 commit
-
-
Michael Müller authored
* [ci] Check format of UI tests as well * [lang] Apply our formatting guidelines to UI tests * [ci] Make Gitlab happy * [ci] Remove superfluous space * [ci] Output rustfmt version * [ci] Tune rustfmt params * Remove todo's * Migrate erc721 ui test contract to recent example contract * Remove --version command used to debug * Apply cargo fmt * .gitlab-ci.yml formatting * Add main fn * Remove todo from stderr expect * Adapt fixtures * Revert "Adapt fixtures" This reverts commit 174c012e. * Adapt fixtures
-
- 10 Nov, 2020 1 commit
-
-
Michael Müller authored
* Advance ptr, even when 'None' * Revert me: Add minimal contract which reproduces bug * Fix typo: explicitely ➜ explicitly * Add regression test * Improve structure * Revert "Revert me: Add minimal contract which reproduces bug" This reverts commit 69cd40e2. * Fix clippy error 'result_unit_err' * Fix clippy error 'result_unit_err' * Fix typo: sucesful ➜ successful * Improve comment * Remove no-op * Remove type aliases for V1/V2
-
- 06 Nov, 2020 1 commit
-
-
Michael Müller authored
* [storage] Remove iter_mut() for BinaryHeap * [storage] Remove unused import
-
- 04 Nov, 2020 1 commit
-
-
Michael Müller authored
* [lang] Improve invalid selector message * [lang] Improve span * [lang] Return syn::Error instead of panicking * Make clippy happy * [lang] Reduce code dup with non_hex_err * [lang] Rename fn * [lang] Fix err functions * [lang] Add comments * [lang] Remove unnecessary lifetime
-
- 03 Nov, 2020 1 commit
-
-
Michael Müller authored
* [chores] implicitely ➜ implicitly * [examples] Add demonstration of how to mock transferred_balance * [lang] Fix clippy 'needless_lifetimes' Error was: explicit lifetimes given in parameter types where they could be elided (or replaced with `'_` if needed by type declaration) * [lang] Apply cargo fmt * [examples] Fix param
-
- 30 Oct, 2020 1 commit
-
-
Michael Müller authored
* [chores] Fix typo: invokation ➜ invocation * [chores] Fix typo: timstamp ➜ timestamp * [chores] Fix typo: ininitialized ➜ initialized * [env] Implement terminate_contract in off-chain env * [examples] Add lock-until * [env] Implement proper off-chain testing for ext_terminate * Apply suggestions from code review Co-authored-by:
Hero Bird <robin.freyler@gmail.com> * [env] Fix Environment type * [env] Derive Balance/AccountId from Environment * [env] Fix types in macro * [examples] Remove lock-until * [examples] Add contract-terminate * [examples] Add contract-transfer * [examples] Make clippy happy * [examples] Fix example name * [examples] Remove Default impls * [examples] Move macro to contract-terminate/test_utils * [env] Migrate macro to fn which gets Environment type param * [env] Add explanatory dev comment * [examples] Allow clippy::new_without_default Co-authored-by:
Hero Bird <robin.freyler@gmail.com>
-
- 27 Oct, 2020 3 commits
-
-
Michael Müller authored
This reverts commit f581caae.
-
Michael Müller authored
* Revert me: Make fuzz test fail * Revert me: Do not run fuzz tests for codecov
-
Michael Müller authored
* Prefix fuzz tests * Fuzz extensively after master merge + create issue on failure * Do not fuzz on regular test runs * Migrate deprecated 'only' to 'rules' * Indent correctly * Fuzz each crate separately * Add feature ink-fuzz-tests to crates which are missing it * Increase QUICKCHECK_TESTS to 50k * Set timeout to 1h * Improve issue title + body * Revert "Set timeout to 1h" This reverts commit 5888abaf. * Revert "Add feature ink-fuzz-tests to crates which are missing it" This reverts commit e0ece29e. * Fuzz only crates which have the ink-fuzz-tests feature * Indent consistently with two spaces * Make GitLab CI linter happy * Create issue when at least one test fails
-
- 26 Oct, 2020 1 commit
-
-
Michael Müller authored
* Fix typo * Make minimum_balance docs clearer * Fix transfer() docs
-
- 22 Oct, 2020 3 commits
-
-
Robin Freyler authored
-
Hero Bird authored
* [releases] add release notes for ink! 3.0-rc2 * [*] bump crate versions to ink! 3.0-rc2 * [releases] add missing ink! 3.0-rc2 release note
-
Hero Bird authored
* [benches] fix lazy benchmarks * [*] fix Cargo.toml documentation links * [readme] show CI status of master branch always * [readme] misc improvements * [storage] make re-export of LazyHashMap inline * [releases] add notes about ink_core split * [allocator] add some crate level docs * [storage] impl scale_info::TypeInfo for ink_storage::alloc::Box * [metadata] improve docs slightly * [storage] re-introduce StorageLayout impl for storage::Box
-
- 21 Oct, 2020 4 commits
-
-
Michael Müller authored
* [chores] Fix typo entitiy ➜ entity * [storage] Extract push_pull_works_for_primitive macro * [storage] Add tests for Tuple * [storage] Add tests for Option, Result, Box * [storage] Add tests for Array * [storage] Add fuzz tests for primitives * [chores] Fix typo * [storage] Add fuzz test for HashMap::defrag * [storage] Improve unit tests * [storage] Clarify TestResult::discard
-
Hero Bird authored
* [storage] make Lazy::laze constructor crate private * [storage] fix Lazy SpreadLayout impl behaving incorrectly when not used * [storage] remove redundant state replacement in StorageEntry::push_packed_root * [storage] add regression test for the fixed bug * [storage] clean up code between LazyCell and StorageEntry * [storage] apply rustfmt
-
Michael Müller authored
* BinaryHeap::new() * Failing FromIterator test * Dumb push impl * Dumb peek impl * Naive push implementation * Copy in some reference impls for inspiration * WIP: use storage2::Vec and implement pop * Fix sift_up * Fix sift_down * Test with heap from slice * Add pass through clear impl * Add storage trait impls * Add binary_heap bench, start experimentation # Conflicts: # core/Cargo.toml * Add tests for push/pull from storage * Get basic bench working for pushing largest value * Fmt * Prevent storage from being cleared in test env * iter batched * Make inline setup to test consistency * Revert to iter_batch tests * Add populated cache benches * Fmt * Factor out bench push * Refactor benchmark loop on push * Configure warm-up and measurement times to improve consistency * Remove redundant test * Refactor push benches * Refactor push benches again * Add Pop benchmark * Fmt * Add some comments to the benchmarks * Remove some todos * Use iter_batched_ref * Fix pop benchmark name * Add test for worst case O(log n) push * Fmt * Add push test * Add peek and pop test * Fix up sift comments and log tests * Comments * Add Reverse wrapper type for min heaps * Fmt * Peek mut * Fmt * Add empty tests * Check complexity of pushing smallest value * Test drop clears cells * Fix stable build * Basic property test * Fix wasm build * Fmt * Derive Default, PartialEq, Eq * Add property test to feature * Fix doc links * Fmt * Remove commented out println * Avoid potential false positive * Add punctuation * Comments * Fmt * [core] Fix comment * [core] Remove unnecessary println * [core] Store two children in one Cell * [core] Add group_count() for fuzz tests * [core] Apply cargo fmt * [core] Fix imports for std env * [core] Improve comments describing read/write ops * [core] Improve feature switch * [core] Improve code readability * [core] Apply general comments * [core] Add group.exists() and make more use of Group API * [core] Major renaming * [core] Implement AlwaysPacked for Children * [core] Improve comments and panic messages * [core] Improve comments * [core] Improve comments * [core] Improve comments * [core] Improve comments * [core] Improve comments * [core] Improve comments * [core] Migrate children.exists() to children.is_empty() * [core] Fix children.is_empty() * [core] Bring back PackedLayout impl * Move binary_heap to crates * Make it compile * Fix up doc test and benches * Fmt * Fix license headers * [core] Improve Children API * [core] Use super instead of crate import * [core] Fix comments * [core] Rename Elements to ChildrenVector * [core] Fix comments * [core] Fix footprint * [core] Improve count() * [core] Move iterator to correct file * [core] Restrain visibility * [core] Fix comments * [core] Fix imports * [core] Rename ChildrenVector to ChildrenVec * [core] Improve imports * [storage] Use crate import instead of super * [storage] Remove some pub(super) * [storage] Add #[inline] * [storage] Rename push_to to insert * [storage] Add rational for child_count * [storage] Apply cargo fmt * [core] Give me back my blank line Co-authored-by:
Andrew Jones <ascjones@gmail.com>
-
Andrew Jones authored
* BinaryHeap::new() * Failing FromIterator test * Dumb push impl * Dumb peek impl * Naive push implementation * Copy in some reference impls for inspiration * WIP: use storage2::Vec and implement pop * Fix sift_up * Fix sift_down * Test with heap from slice * Add pass through clear impl * Add storage trait impls * Add binary_heap bench, start experimentation # Conflicts: # core/Cargo.toml * Add tests for push/pull from storage * Get basic bench working for pushing largest value * Fmt * Prevent storage from being cleared in test env * iter batched * Make inline setup to test consistency * Revert to iter_batch tests * Add populated cache benches * Fmt * Factor out bench push * Refactor benchmark loop on push * Configure warm-up and measurement times to improve consistency * Remove redundant test * Refactor push benches * Refactor push benches again * Add Pop benchmark * Fmt * Add some comments to the benchmarks * Remove some todos * Use iter_batched_ref * Fix pop benchmark name * Add test for worst case O(log n) push * Fmt * Add push test * Add peek and pop test * Fix up sift comments and log tests * Comments * Add Reverse wrapper type for min heaps * Fmt * Peek mut * Fmt * Add empty tests * Check complexity of pushing smallest value * Test drop clears cells * Fix stable build * Basic property test * Fix wasm build * Fmt * Derive Default, PartialEq, Eq * Add property test to feature * Fix doc links * Fmt * Remove commented out println * Avoid potential false positive * Add punctuation * Comments * Fmt * Move binary_heap to crates * Make it compile * Fix up doc test and benches * Fmt * Fix license headers
-
- 20 Oct, 2020 1 commit
-
-
Michael Müller authored
-
- 16 Oct, 2020 1 commit
-
-
Andrew Jones authored
* Add 0x prefix if missing * Fmt
-
- 09 Oct, 2020 3 commits
-
-
Robin Freyler authored
-
Robin Freyler authored
-
Hero Bird authored
* [*] normalize authors for all ink! crates * [lang, storage] add extern crate proc_macro This is somehow needed for cargo publishing.
-