1. 22 Jun, 2020 1 commit
    • Andrew Jones's avatar
      Extern function to generate metadata (#460) · 9eb92645
      Andrew Jones authored
      * Hack to see if #[start] works
      
      * Hack to see if #[no_mangle] works
      
      * Remove incrementer bin target
      
      * Use Rust extern api and pass back InkProject struct directly
      
      * Uglify name
      
      * Update remaining examples to use generate metadata function
      
      * Do not generate for ink-as-dependency to make delegator work
      
      * Remove explicit version from abi dependency
      
      * Remove duplication
      
      * Remove GenerateAbi trait
      9eb92645
  2. 17 Jun, 2020 1 commit
    • Hero Bird's avatar
      Avoid heap allocations for contract dispatch (#449) · f5b3c481
      Hero Bird authored
      * [core] add Env::decode_input
      
      * [lang/macro] remove unneeded crate dependencies
      
      # Conflicts:
      #	lang/macro/Cargo.toml
      
      * [lang, lang/macro] add message dispatcher type code generation
      
      * [lang/macro] add constructor dispatch enum code generation
      
      * [lang] add executor functions and Execute trait
      
      * [core] add decode_input to public env API
      
      * [lang] fix incorrect trait bound in execute_message
      
      * [lang/macro] add code generation for ink_lang::Execute
      
      * [lang/macro] integrate Execute trait impls into contract dispatch
      
      * [lang/macro] fix bug with constructors and messages with multiple inputs
      
      * [lang] apply rustfmt
      
      * [lang/macro] apply rustfmt + fix clippy warnings
      
      * [lang] remove testable module
      
      * [lang] clean-up lang module after implementing new dispatch codegen
      
      # Conflicts:
      #	lang/src/dispatcher.rs
      
      * [lang] re-enable alloc init and finalize
      
      * [lang] apply rustfmt
      
      * [core] remove Env::input function
      
      It has been deprecated. Users should use Env::decode_input function instead.
      
      # Conflicts:
      #	core/src/env/engine/off_chain/mod.rs
      
      * [core, examples] fix move of CallData to env::test API
      
      * [core] apply rustfmt
      
      * [examples] fix examples Selector::from_str -> new
      
      * [examples] fix multisig_plain doc-test import
      
      * [examples] apply rustfmt to multisig_plain example
      
      * [lang/macro] resolve some code dupes
      f5b3c481
  3. 13 Jun, 2020 1 commit
    • Hero Bird's avatar
      Make ink! lang use ink_core::storage2 module (#422) · 1e312d1e
      Hero Bird authored
      * [abi] create new layout trait and structures
      
      * [abi] remove unused import
      
      * [abi] add missing license header
      
      * [abi] fix clippy warning
      
      * [primitives] add KeyPtr to ink_primitives
      
      * [core] use KeyPtr through ink_primitives and add ExtKeyPtr trait
      
      * [abi] use KeyPtr of ink_primitives
      
      * [abi] make EnumLayout use StructLayout
      
      * [abi] implement custom serde::Serialize for LayoutKey
      
      * [abi] implement IntoCompact for layout2 module types
      
      * [abi] add doc comment
      
      * [abi] apply rustfmt
      
      * [abi] add unit test for LayoutKey serialization
      
      * [abi] rename ArrayLayout::array -> new
      
      * [abi] add dispatch_key field to enum layout
      
      * [abi] derive From for all Layout variants
      
      * [abi] add unit tests for the new layout traits and data structures
      
      * [abi] add experimental CellLayout
      
      * [abi] make tests work again for layout2
      
      * [abi] use specialized serializer function for LayoutKey
      
      * [abi] refactor UnboundedLayout
      
      * [abi] add unit test for UnboundedLayout
      
      * [abi] apply rustfmt
      
      * [core/derive] slightly refactor code
      
      * [abi] simplify enum test
      
      * [primitives] derive Debug, Copy and Clone for KeyPtr
      
      * [abi] simplify CellLayout::new
      
      * [abi] fix calling incorrect constructor for LayoutKey
      
      * [abi] move layout2 module file into directory
      
      * [core] add StorageLayout trait to storage2 module
      
      * [abi_derive, core_derive] remove unnecessary extern crate proc_macro
      
      * [core] imply ink-generate-abi feature by std feature
      
      * [core] derive Metadata for env types for std feature
      
      * [core] add Key, Hash, AccountId and String StorageLayout impls
      
      * [core/derive] add initial structure for StorageLayout derive
      
      * [core] add StorageLayout impls for some more prelude types
      
      * [core] fix Box<T> impl for StorageLayout trait
      
      * [core] implement StorageLayout for storage2::{Memory, Pack, LazyArray}
      
      * [core] fix StorageLayout impl for LazyArray
      
      * [core] implement StorageLayout for LazyIndexMap
      
      * [abi] add HashLayout
      
      * [abi] rewrite UnboundedLayout test to HashLayout test
      
      * [abi] remove unbounded layout
      
      * [abi, core] apply rustfmt
      
      * [core] add initial skeleton for StorageLayout tests
      
      * [core] add StorageLayout impls for Lazy, LazyCell and LazyHashMap
      
      * [core] add StorageLayout impls for Option and Result
      
      * [core] add LayoutCryptoHasher trait
      
      * [core] fix StorageLayout impl for LazyHashMap
      
      * [core] apply rustfmt
      
      * [core] add StorageLayout impl for storage2::Vec
      
      * [core] add StorageLayout for storage2::SmallVec
      
      * [core] implement StorageLayout for storage2::Stash
      
      * [core] implement StorageLayout for storage BitStash, Bitvec and HashMap
      
      * [core] improve StorageLayout impl for storage2::Vec
      
      * [core] apply rustfmt
      
      * [abi] fix clippy warning
      
      * [core] add StorageLayout impl for storage2::alloc::Box
      
      * [core] add StorageLayout impl for DynamicAllocator
      
      * [core/derive] impl StorageLayout derive for struct items
      
      * [core/derive] make StorageLayout derive work for enum items
      
      * [core/derive] fix expansion for nested enums
      
      * [core/derive] fix a bug with nested enums
      
      * [core/derive] add unit test for MixedEnum
      
      * [core/derive] apply rustfmt
      
      * [lang] add revision 2 module
      
      * [core] remove generic T: EnvTypes param from Dispatch trait
      
      * [lang] remove unnecessary import
      
      * [lang] remove unnecessary generic parameter
      
      * [lang/macro] generate codegen for the new v2 traits
      
      * [core] re-export SpreadLayout and PackedLayout macros from within ink_core
      
      * [lang] further adjustments to make ink_lang_macro work with storage2
      
      * [lang, core] apply rustfmt
      
      * [lang] fix clippy warning
      
      * [lang] fix some bugs with constructors without inputs
      
      * [examples] adjust the Flipper example contract for the changes
      
      * [lang] remove codegen for testing ink! contracts
      
      No longer needed.
      
      * [lang] remove test-env crate feature
      
      * [lang] minor improvements to EnvAccess utility type
      
      * [examples] remove unused import for Flipper
      
      * [examples] remove test-env crate feature for Flipper
      
      * [lang] remove unused IdentType::span method
      
      * [examples] Flipper: adjust contract for ink_lang changes
      
      * [examples] adjust Erc20 for the ink_lang changes
      
      * [examples] fix some indentation in Cargo.toml
      
      * [examples] adjust DNS contract for ink_lang changes
      
      * [examples] adjust ERC721 for ink_lang changes
      
      There is still a bug that we need to fix in ink_core.
      
      * [example] adjust lib.rs of ERC721 to ink_lang changes
      
      * [examples] adjust Delegator example contract for ink_lang changes
      
      * [lang_macro] generate SpreadLayout and PackedLayout impls for cross-calling wrappers
      
      * [core] release storage2::Stash::entries() iterator for non-testing API
      
      * [core] add SpreadLayout and PackedLayout impls for () type
      
      * [examples] convert multisig contract example to new ink_lang
      
      * [examples] fix incrementer Cargo.toml indentations
      
      * [examples] adjust runtime-storage example contract for ink_lang changes
      
      * [core] apply rustfmt
      
      * [lang] generate correct attributes for messages
      
      * [examples] make use of derive(Default) for DNS example
      
      * [lang_macro] improve some ink! error messages
      
      * [lang_macro] update all compile tests
      
      * [examples] multisig: ignore doc test
      
      This needs serious fixing later! @athei
      
      * [lang] remove old ink_lang abstractions
      
      * [lang] remove no longer needed ink_lang modules
      
      * [lang_macro] add compile test for derive on storage struct
      
      * [examples] ignore failing doc test
      
      * [examples] actually ignore the failing doc-test for multi-sig
      
      * [lang] move v2 module back to origin
      
      * [lang_macro] adjust codegen for new dispatch module structure of ink_lang
      
      * [lang_macro] no longer impl ink_core::{Flush, AllocateUsing} for ink! dependencies
      
      * [lang_macro] use root namespaces in codegen everywhere
      
      * [lang] apply rustfmt
      
      * [lang_macro] use only root namespaces in codegen (forgot some)
      
      * [lang] remove nightly Rust feature usage
      
      * [core] re-export StorageLayout from ink_core::storage2::traits
      
      * [lang,abi] adjust ink! metadata generation codegen to new layout
      
      * [lang] use root namespaces in codegen
      
      * [examples] apply rustfmt
      
      * [lang] update cross-calling codegen for new storage layout
      
      * [examples] update Delegator example contract
      
      * [examples] apply rustfmt
      
      * [abi] remove StorageLayout trait from ink_abi crate
      
      * [examples] apply rustfmt
      
      * [examples] fix clippy warning
      
      * [examples] fix multisig_plain contract
      
      * [examples] apply rustfmt
      
      * [examples] fix clippy warning
      
      * [examples] remove commented out code from multisig_plain example
      
      * [lang] refactor codegen for contract storage struct
      
      * [lang] fix unused import warning
      
      * [lang] eliminate CrossCallingConflictCfg
      
      * [lang] do not generate normal storage struct as dependency
      
      * [lang] re-introduce cross calling conflict cfg codegen
      
      * [lang/macro] refactor codegen for cross-calling
      
      * [lang] add new traits for Event connectors
      
      * [lang/macro] use connectors API for event codegen
      
      * [lang/macro] apply rustfmt
      
      * [lang/macro] remove out-of-ink-module export
      
      * [abi] fix selector encoding
      
      * [lang/macro] fix unused warning
      
      * [examples] adjust example smart contracts for recents ink_lang_macro changes
      
      * [abi] fix unit test for selector
      
      * [chores] update README ink! example
      
      * [alloc] silence warnings of unused unsafe for core::intrinsics::abort
      
      * [examples] apply rustfmt
      
      * [lang/macro] fix codegen for `cargo test`
      
      * [*] replace ink-generate-abi crate feature everywhere with std
      
      * [examples] fix Cargo.toml for generating metadata
      
      * [examples] move flipper/src/lib.rs one up
      
      * [examples] move lib.rs to root folder
      
      * [examples] fix Cargo.toml of ERC721
      
      * [examples] apply rustfmt to ERC20
      
      * [examples] apply rustfmt to ERC721
      
      * [examples] apply rustfmt to all examples
      
      * [abi] remove unused serialize_selector function
      
      * [examples] fix bug that DNS example still used type-metadata crate
      
      * [example] fix bug in multisig_plain example
      1e312d1e
  4. 25 May, 2020 1 commit
  5. 03 Feb, 2020 1 commit
    • Hero Bird's avatar
      Implementation of ink! env (revision 3) (#312) · 321fe03a
      Hero Bird authored
      
      
      * [core] initial implementation of env revision 3
      
      * add engine abstraction layer and implement api functions
      
      * add support for dispatch_call to env3
      
      * add missing invoke_runtime to api.rs
      
      * [core] fix restore_contract docs
      
      * [core] initial implementation of off-chain environment
      
      * [core] clean-up of env3 fundamental types
      
      * [core] add WasmEnv::reset_buffer
      
      * show test submodule of env3 when compiling with rustdoc
      
      * [core] initial implementation of the off-chain env instance
      
      Also many other adjustments.
      
      * [core] further enhancements to off-chain env
      
      * [core] implement untyped Env for off-chain environment
      
      * [core] implemented a good chunk of TypedEnv for the off-chain environment
      
      * [core] minor improvements to env3
      
      * [core] further improvements and additions to test-api of env3
      
      * [core] remove former test-api file
      
      * [core] env3: add support for ext_tombstone_deposit
      
      * [core] env3: add setting of rent allowance in off-chain env
      
      * [core] env3: remove buffer.rs
      
      * [core] env3: remove property.rs
      
      * [core] env3: mark some TypedEnv methods as not-todo
      
      * [core] env3: enable off-chain api for non test/doc builds
      
      * [core] env3: use a static buffer instead of Vec<u8>
      
      * [core] env3: move static buffer into its own module
      
      * fix doc comment
      
      Co-Authored-By: Michael Müller's avatarMichael Müller <mich@elmueller.net>
      
      * [core] env3: add missing license header
      
      * [core] env3: remove deprecated doc note
      
      * [core] env3: add off-chain {set/get}_runtime_storage
      
      * [core] env3: add off-chain invoke_runtime dispatch
      
      This also enables support for registering custom runtime call handlers.
      
      * [core] env3: slightly improve env3::random docs comment
      
      * [core] env3: move off-chain errors under EnvError
      
      * [core] env3: add ext_random support for the off-chain environment
      
      * [core] env3: minor clean ups
      
      * [core] env3: improve TypedEncoded::assign
      
      * [core] env3: un-mut some variables
      
      * [core] env3: fix some clippy warnings
      
      * [core] env3: add past_printlns to off-chain test api
      
      * [core] env3: minor refactoring
      
      * [core] env3: apply rustfmt
      
      * [core] env3: clean up of call and instantiate contract
      
      * [core] env3: rename moment -> time_stamp
      
      * [core] env3: make get_runtime_storage return a Result instead of RetCode
      
      * [core] env3: remove unneeded import
      
      * [core] env3: add some trait impls for EnvTypes::Hash
      
      * [core] env3: remove last remaining usages of RetCode
      
      * [core] env3: refactor some errors
      
      * [core] env3: document the EnvError enum
      
      * [core] env3: add impls for fire methods on call and create builders
      
      * [core] env3: add doc comment to past_printlns
      
      * [core] env3: apply rustfmt
      
      * [core] env3: update license headers
      
      * [core] env3: support querying and emitting of events in off-chain env
      
      * [core] env3: missing license header adjustment
      
      * [core] env3: apply rustfmt
      
      * [core] env3: rename some methods in off-chain test-api
      
      * [core] env3: add doc comment to test::emitted_events
      
      * [core] env3: add stub for test::advance_block
      
      * [core] env3: rename some more test API methods
      
      * [core] env3: initialize entropy of block randomly
      
      * [core] env3: extend EnvTypes trait bounds
      
      This change makes the trait bounds more similar to what Substrate defines.
      
      * [core] env3: document SimpleArithmetic trait
      
      * [core] env3: add From<u32> to SimpleArithmetic trait
      
      * [core] env3: made some trait bounds more explicit in SimpleArithmetic trait
      
      * [core] env3: add comment describing potential future extensions to SimpleArithmetic trait
      
      * [core] env3: rename EnvTypes::Moment to TimeStamp
      
      * [core] env3: add block_time to ChainSpec
      
      * [core] env3: remove CodeDb again
      
      Not needed right now. Maybe re-added at a later point.
      
      * [core] env3: apply rustfmt
      
      * [core] env3: implement off-chain test::advance_block
      
      * [core] env3: fix bug in off-chain test::advance_block impl
      
      * [core] env3: made SimpleArithmetic trait more explicit towards Output types
      
      * [core] env3: add default initialization routines for off-chain environment
      
      * [core] env3: remove test::create_user_account for now
      
      * [core] env3: fix missing renaming from Moment -> TimeStamp
      
      * [core] env3: impl PartialEq and Eq for off-chain error types
      
      * [core] env3: add test::run_test for off-chain testing with default setup
      
      * [core] env3: fix several minor bugs with the off-chain environment
      
      * [core] convert key.rs tests to new env3
      
      * [core] remove commented out code in key.rs tests
      
      * [core] evn3: add test::get_contract_storage_rw
      
      * [core] use env3 instead of env1 in storage cells
      
      * [core] integrate env3 into storage::TypedChunk
      
      * [core] remove storage::RawChunk and NonCloneMarker
      
      * [core] adjust SyncChunk slightly for TypedChunk modifications
      
      * [core] simplify transitioned env3 tests for TypedChunk
      
      * [core] transition tests for SynChunk to env3
      
      * [core] transition storage::Stash tests to env3
      
      * [core] transition storage::HashMap tests to env3
      
      * [core] transition storage::BinaryHeap tests to env3
      
      * [lang] remove the entire ink! lang crate
      
      It has been deprecated for a whole while.
      
      * [model] remove ink! model crate entirely
      
      It has been deprecated for a whole while.
      
      * [core] remove the old env1 sub-module of ink_core
      
      It has been deprecated for a whole while.
      
      * [examples] remove model examples
      
      * [examples] remove lang examples
      
      * [examples] remove core examples
      
      * remove "If given too few endowment" from docs
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * fix doc comment
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * fix doc comment
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * [lang2] initial steps towards basing on env3 instead of env2
      
      With this commit `cargo contract build` already works.
      However, cargo test etc. are still broken.
      
      * [lang2] make macros work for `cargo test`
      
      * [core, lang2] make contracts compile as ink-as-dependency
      
      * [lang2] make events work for ink_lang2 on env3
      
      * [lang2] remove AccessEnv - no longer needed
      
      * [core] remove env2
      
      * [lang2] fix tests
      
      - Fix warning in ink_lang2
      - Remove no longer needed test case
      - Adjust some passing tests after default module import removal
      
      * [*] apply rustfmt
      
      * [lang2] silence unused warning for now
      
      * [core] rename {create|Create}* to {instantiate|Instantiate}*
      
      - CreateBuilder -> InstantiateBuilder
      - CreateParams -> InstantiateParams
      - create -> instantiate
      
      * [core] rename endowment -> transferred_value for CallBuilder/Params
      
      * [examples] adjust Delegator contracts for recents changes
      
      * [core] rename now_in_ms -> block_timestamp
      
      * [core] follow-up of the call renamings (transferred_value)
      
      * [lang2] rename now_in_ms -> block_timestamp
      
      * [examples] move examples out of the examples/lang2 folder
      
      * [examples] fix runtime-storage example contract
      
      * [examples] fix Flipper contract
      
      * [examples] fix Incrementer contract
      
      * [examples] fix Erc20 contract
      
      * [utils] add Key and byte_utils to ink_utils
      
      * [utils -> primitives] rename ink_utils -> ink_primitives
      
      * [*] move all links from ink_utils -> ink_primitives
      
      * [primitives] update Cargo.toml description
      
      * [*] use ink_primitives::Key remove ink_core::Key
      
      * [primitives] refactor new crate, make it more usable in ink! context
      
      * [*] relink to ink_primitives for Key usage
      
      * [abi] refactor macros and relink to ink_primitives::Key
      
      * [lang2] fix usage of renamed Create{Builder, Params}
      
      * [examples] fix examples under recent changes with ink_primitives
      
      * [*] apply rustfmt
      
      * [lang2/macro] remove deprecated feature usage of proc_macro_hygiene
      
      * [examples] remove deprecated proc_macro_hygiene feature
      
      * [core] remove test_utils
      
      * [core] rename env3 to env
      
      * [*] rename all usages of env3 to env
      
      * [core] fix feature usage in num-traits of ink_core Cargo.toml
      
      * [*] update README
      
      * [primitives] conditionally compile type_metadata from ink_primitives
      
      * [core] make env::get_contract_storage return Option<Result<T>>
      
      * [core] fix some faulty doc comments
      
      * [ci] fix GitLab CI
      
      * [primitives] fix no_std compilation
      
      * [primitives] fix warning
      
      * [core] make `rand` dependency optional for `std` crate feature
      
      * [core] remove the test-env crate feature from the ink_core crate
      
      * [core,primitives] move some tests from primitives to core
      
      * [lang] move lang2/ to lang/
      
      * [*] rename all instances of ink_lang2 or lang2 to ink_lang or lang
      
      * [lang/macro] fix ink_primitives dependency
      
      * [*] apply rustfmt
      
      * [core] fix clippy warning
      
      * [ci] eliminate README from examples CI checks
      
      * [examples] apply rustfmt
      
      * [lang/macro] improve event codegen
      
      * [core] rename TimeStamp/time_stamp to Timestamp/timestamp
      
      * [lang] remove unused extern crate alloc
      
      * [core] rename env::address to env::account_id
      
      * [lang] perform renamings on ink_lang::EnvAccess but with deprecation instead of removal
      
      * [core] fix missing time_stamp renamings
      
      * [lang] fix missing TimeStamp renamings
      
      * improve doc comment
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * improve doc comment
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * rename create_contract -> instantiate_contract
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * rename create_contract -> instantiate_contract
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * improve doc comment
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * impr
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * improve doc comment
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * improve doc comment
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * improve doc comment
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * rename endowment -> transferred_value
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * improve doc comment
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * rename create_contract -> instantiate_contract
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * rename create_contract -> instantiate_contract
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * rename time stamp to timestamp
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * rename SRML to env in docs
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * remove SRML word from docs
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * remove SRML word from docs
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * [lang] fix doc comment for filtered_keys in restore_contract
      
      * [core] rename create_contract -> instantiate_contract
      
      * [core] rename create_contract -> instantiate_contract
      
      * [core] fix some renamings around endowment -> transferred_value
      
      * [lang] rename create_contract -> instantiate_contract follow-up
      
      * [core] apply rustfmt
      
      * [core] improve restore_contract doc comment
      
      * [core, lang] link to ink_core::env::* doc comments from all api places
      
      * [core] apply rustfmt
      
      Co-authored-by: Michael Müller's avatarMichael Müller <mich@elmueller.net>
      Co-authored-by: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      321fe03a
  6. 20 Nov, 2019 1 commit
  7. 19 Aug, 2019 1 commit
    • Hero Bird's avatar
      Reintroduce old ABI format generation (#174) · 7b5486af
      Hero Bird authored
      * [lang] reintroduce the old ABI generation
      
      We keep this in ink! until the new ABI format support is stable enough.
      
      * [examples] update examples to be able to use the old ABI generation
      
      * [cli] update template for old ABI generation
      7b5486af
  8. 14 Aug, 2019 1 commit
    • Hero Bird's avatar
      ink! ABI (#104) · fa6b0065
      Hero Bird authored
      
      
      * [abi] Create ink_abi sub crate
      
      * [abi] Add initial types for abi generation
      
      * [abi] Add EventParamSpec to include indexed event params
      
      * [abi] Add documentation field to specs
      
      * [abi] Add license and readme links and clean up authors
      
      * [abi] Add missing license headers
      
      * [abi] Fix some compile errors
      
      * [abi] Make macros usable internally
      
      * [abi] Create type_spec_of_tuple constructor macro
      
      * [abi] Implement serialization for tuples
      
      * [abi] Implement serialize for array types
      
      * [abi] Remove module prefix of Vec<T>
      
      * [abi] Apply rustfmt
      
      * [abi] Improve minor formatting
      
      * [abi] Add trait to allow external crate to specify serialize of TypeSpec<T>
      
      * [abi] Make rustfmt happy
      
      * [abi] Handle missing Vec in no_std environment
      
      We really need a further abstraction to handle memory types.
      Right now they life in ink_core but we shouldn't depend on ink_core from within ink_abi.
      So we want to extract the memory sub module out of ink_core into its own crate that we can from then on depend on.
      
      * [abi] Use same array pre-impls as metadata prototype impl
      
      * [abi] Depend on cennznet/type-metadata + adjustments
      
      * [abi] add missing license headers
      
      * [abi] fixes for renamings in type-metadata crate
      
      * [abi] add IntoCompact impls for layout types
      
      * [abi] properly forward std feature
      
      * [abi] implement Serialize for Key
      
      * [abi] apply rustfmt and add some layout constructors
      
      This also removes the dependency from ink_abi to ink_core and adds derive feature to type-metadata dependency.
      
      * [core] implement ink_abi traits for ink_core abstractions
      
      * adjust ink_abi Cargo.toml to using std feature by default
      
      # Conflicts:
      #	abi/Cargo.toml
      
      * [core] Integrate ink_abi no_std compat into ink_core
      
      * [lang] initial skeleton of codegen for ink_abi
      
      * Enhance Flush (#136)
      
      * [core] Enhance Flush trait to make it work with SyncCell and SyncChunk
      
      * apply rustfmt
      
      * [core] implement ink_abi traits for ink_core abstractions
      
      * [core] Integrate ink_abi no_std compat into ink_core
      
      * [core] Apply cargo fmt
      
      * [cli] initial adjustments for ink_abi to ink! template
      
      * [abi] clean-up of Cargo.toml
      
      * [abi] remove invalid lib docs
      
      * [utils] Update utilities docs
      
      * [abi] improve JSON encoding of layout structs
      
      * [abi] improve JSON encoding and add builder pattern constructors
      
      * [abi] Add InkProject meta type
      
      * [abi] temporarily depend on improve-json-output type-metadata branch
      
      * [core] adjust type-metadata temporary branch to use the same as ink_abi
      
      * [ci] add travis CI nightly-2019-08-01 channel (experimental)
      
      * [abi] add MessageSpecBuilder::{args, docs} methods
      
      * [core] implement Metadata for AccountId and Hash of DefaultSrmlTypes
      
      * [abi] change type of selector from u64 to u32
      
      * [lang] add some helper routines
      
      * [lang] add code generation for new ABI format
      
      * [abi,core] use master branch for type-metadata again
      
      * [lang] implement initial code gen for ABI generation
      
      * [examples] adjust Flipper contract example to ink_abi generation
      
      * [lang] remove old generate-abi-description feature and associated code
      
      * [examples] remove traces of removed generate-api-description feature
      
      * [core] make cells_origin and chunks_origin only visible for test-env
      
      * [cli] adjust template for ink-abi update
      
      * [abi] implement ink_abi_derive for HasLayout derive macro
      
      * [lang] make use of new ink_abi_derive functionality
      
      * [examples] adjust Flipper for new ink_abi derive crate feature
      
      This is needed because we disable default features.
      
      * [abi] remove some commented-out code
      
      * [chores] update README and include ink_abi docs
      
      * [abi] apply rustfmt
      
      * [lang] apply rustfmt
      
      * [abi] apply rustfmt to non derive crate
      
      * [core] apply rustfmt
      
      * [lang] trim doc strings coming from syn::Attribute
      
      * [examples] rename .tools directory to .ink
      
      * [examples] fix bug with no_std and "std" crate feature
      
      * [lang] fix bug in abi generation for events
      
      * [examples] adjust events example to new ink_abi
      
      * [lang] fix some more edge cases with doc string trimming
      
      * [lang] fix a bug that path matching for function arguments was off
      
      * [examples] adjust Incrementer to new ink_abi
      
      * [cli] rename .tools to .ink in template
      
      * [cli] update template Cargo.toml
      
      * [examples] temporarily fix type-metadata hick-up
      
      * [examples] make ink_abi optional
      
      * [examples] adjust Erc20 token example to new ink_abi
      
      * [cli] fix template no_std support
      
      * [*] use master branch of type-metadata crate again
      
      * [examples] replace parity-codec/std with scale/std
      
      * [core] derive Metadata for some util types
      
      This unfortunately was lost upon the latest rebase.
      
      * [ci] update from nightly-2019-08-01/2019-07-19 to just nightly-2019-08-09
      
      * [abi] remove commented-out code
      
      * [abi] add some docs to specs items
      
      * Update abi/src/specs.rs
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * Update abi/src/specs.rs
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * Update core/src/storage/collections/stash/impls.rs
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * Update core/src/storage/collections/stash/impls.rs
      
      Co-Authored-By: Andrew Jones's avatarAndrew Jones <ascjones@gmail.com>
      
      * [examples] remove some more commented-out code
      
      * [lang] remove outdated docs
      
      * [lang] extract fn docs impl into helper method
      
      * [lang] fix compile-error in `filter_doc_attributes`
      
      * [core] use derive feature from ink_abi
      
      * [examples] adjust shared_vec example for ink_abi
      
      * [lang] trim doc comments raw string escape sequence
      
      * [lang] adjust noop test for ink_abi
      
      * [lang] adjust flipper test for ink_abi
      
      * [lang] improve raw-string char sequence fix
      
      * [lang] adjust incrementer test for ink_abi
      
      * [lang] adjust events test for ink_abi
      
      * [lang] fix whitespace (tabs) issues in lang tests
      
      * [ci] add examples to CI
      
      * [ci] remove +nightly attribute for examples
      
      * [abi] remove instances of std usage
      
      * [core] remove instances of std usage
      
      * [examples] erc20: remove std usage in no_std environment
      
      * [core] factor out ink_abi and type-metadata and guard their use with ink-generate-abi feature
      
      * [examples] adjust examples to newest refactoring in ink_core
      
      * [cli] adjust template to ink_core refactorings
      
      * [scripts] add new script to quickly check all example smart contracts
      
      * [ci] make use of new check-examples script
      
      * [*] apply rustfmt
      
      * [scripts] adjust check-examples to no longer set test-env
      
      * [scripts] Add check-workspace script
      
      * [examples] make test-env a default feature
      
      * [cli] make test-env a default feature for the template
      
      * [ci] update CI to use the new check-workspace script
      fa6b0065
  9. 29 May, 2019 1 commit
    • Hero Bird's avatar
      Ink cleanup (#101) · d803c2e2
      Hero Bird authored
      * [ink] Fix some clippy warnings
      
      * [lang] Major clean ups in preparation of greater refactorings
      d803c2e2
  10. 24 Apr, 2019 1 commit
  11. 22 Apr, 2019 1 commit
  12. 28 Mar, 2019 3 commits
  13. 27 Mar, 2019 1 commit
  14. 26 Mar, 2019 2 commits
  15. 22 Mar, 2019 1 commit
  16. 19 Mar, 2019 2 commits
  17. 18 Mar, 2019 1 commit
  18. 14 Mar, 2019 3 commits
  19. 12 Mar, 2019 1 commit
  20. 11 Mar, 2019 2 commits
  21. 07 Mar, 2019 1 commit