concordium-rust-smart-contracts
concordium-rust-smart-contracts copied to clipboard
Libraries and tools for writing and testing smart contracts on Concordium
**Task description** The library documentation of serialization is not entirely comprehensive. In https://docs.rs/concordium-std/0.5.0/concordium_std/derive.Serial.html we could be more structured and clear. - link to the actual trait In https://docs.rs/concordium-std/0.5.0/concordium_std/trait.Serial.html we do...
**Task description** The parameter to smart contracts is accessible via the context as `context.parameter_cursor()`. This is a cursor that implements `Read` and `HasParameter`, so parameters can either be read lazily,...
Some types and values (e.g., account addresses) are likely to benefit from a more efficient serialization scheme, both in code space and execution time. This will also allow removing the...
We discussed such an example in the past. Commitments could be simple hash computations, which might give an example of a contract using cryptographic primitives once that is implemented.
A user can now write the following code: ```rust #[derive(Reject)] enum MyReceiveError { MyErrorVariant, ... } fn receive(...) -> Result { ... } ``` We would like to be able...
In the developer documentation, clarify how the GTU that is passed into a receive function relates to the account balance. Specifically, explain that the receive-context balance excludes the GTU passed...
We have a brief mention of the fact you can’t use floats, but we do not have any more details on the limitations on resources, and more importantly, limitations on...
**Task description** Add documentation metadata to the published crates, in particular we should set the logo and issue tracker urls, see https://doc.rust-lang.org/rustdoc/the-doc-attribute.html#at-the-crate-level **Sub-tasks** - [ ] Add favicon to std,...
**Task description** Currently we export some datatypes (e.g., BTreeMap) but not some auxiliaries. It probably makes sense that we export the entire module as is done by the `std` crate....
**Task description** It might make sense to have a type to represent fixed-point fractional values and support calculations on it as part of concordium-std. The design needs to be well...