Questions tagged [no-std]
The no-std tag has no usage guidance.
23
questions
1
vote
1
answer
123
views
Why is serde always std-gated in substrate?
I regularly see serde implemented for various structs across the substrate ecosystem, usually in the single-liner form below. Why is that gated behind the std feature? In serde's documentation, it's ...
0
votes
1
answer
48
views
Bech32 encode/decode library for no_std to convert bytes32 into string address in runtime pallet?
I want to convert bytes into string address.
I have only two options because of Junction limitation: bytes32 or bytes20.
pub enum Junction {
...
AccountId32 { network: Option<NetworkId>, ...
2
votes
2
answers
78
views
Calling std-based host function from a pallet
Based on:
Use std only rust library to extend substrate runtime interface?
How to understand [runtime-interface] and `Externalities`?
I understand that I should be able to:
have a crate that is not ...
4
votes
1
answer
76
views
How to parse an ss58 address in no_std rust
In another question
How do I work with SS58 encoded addresses? the same question was addressed, this is however about how to do it without the std lib.
How to convert an ss58 stored in a String to an ...
2
votes
1
answer
36
views
Why not implement the sp_std::fmt::Debug for AccountId32 in non-std
https://github.com/paritytech/substrate/blob/d443f148ce0aa6a51798b86c6b3ae54113786f94/primitives/core/src/crypto.rs#L584-L595
Why not implement the sp_std::fmt::Debug for AccountId32 in non-std like ...
4
votes
0
answers
122
views
How to check if a pallet can be compiled to no-std/WASM?
How to check if a pallet can be compiled to no-std/WASM?
I ran:
cargo build --no-default-features --target wasm32-unknown-unknown
But this didn't work. IIUC, we need some ENV to build the pallet to ...
1
vote
1
answer
62
views
Why `features = ["std"]` is not necessary in the `[dev-dependencies]` some crates like `sp-io`?
We often use some basic substrate crates such as sp-core, and sp-io while doing pallet tests. In general, those dependencies are put under [dev-dependencies]. But I have an issue with whether we ...
1
vote
1
answer
28
views
Using Valico JSON validator in my pallet
Currently I have problem that Valico is using std based packages like serde and serde_json. Is there any workaround to use this package?
UPDATE1:
I managed to fork repo and fix some dependencies but ...
0
votes
0
answers
29
views
How to TRACE "duplicated lang item in crate std: ..."
I have an error of duplicated std, I know there is a lot of questions with the same problem, that's why I'm asking how to search for the problem.
I basically have an error of this form (I'm trying to ...
0
votes
1
answer
41
views
fail to use a no_std friendly dependence in smart contract
I try to use barebones-x509 which is no_std friendly to parse x509 certificate. But encounter the mistake. Will you have some advice?
error: duplicate lang item in crate `std` (which `barebones_x509` ...
0
votes
2
answers
98
views
How to set timestamp in benchmarks?
Is it possible to use std for benchmarks? If not, how can I get timestamps in a benchmark?
I tried using this but it didn't compile:
#[cfg(feature = "runtime-benchmarks")] extern crate std;...
0
votes
1
answer
51
views
Use std only rust library to extend substrate runtime interface?
I have some rust libraries and they have don't have a no_std implementation.
Can I use runtime interface to call those libraries?
3
votes
2
answers
68
views
Get results of some std operations in benchmarks
We faced a situation the other day where we needed some result of std operations inside of our benchmarks. Specifically, we were looking to generate key pairs and signatures from types given by ...
2
votes
1
answer
1k
views
error: `#[panic_handler]` function required, but not found
I'm trying to add Substrate to my project and am encountering this error when trying to compile. Do I need to set this explicitly somewhere in my runtime? I see there is an implementation in sp_io but ...
0
votes
1
answer
102
views
app_crypto!(sr25519, KEY_TYPE): cannot find trait `TryFrom` in this scope
I am building an ocw demo, the code is from https://github.com/paritytech/substrate/blob/master/frame/examples/offchain-worker/src/lib.rs, when using polkadot-v0.9.25 version, it appears got this ...
1
vote
1
answer
27
views
AssemblyScript Contracts with Javascript Standard Library
I am trying to implement a non-Rust contract using WASM.. Can anyone provide an example, please, of a small contract which returns the balance of an account, completely written in TypeScript / ...
0
votes
1
answer
620
views
duplicate lang item in crate `std` (which `my_crate` depends on): `panic_impl`
I have this hierarchy in my substrate parachain project:
my_parachain/
├── ...
├── runtime folder
└── runtime-common folder
Cargo.lock
Cargo.toml
The above runtime-common has some constants and types ...
0
votes
1
answer
135
views
How can I read JSON files in substrate
I am trying to modify the kitties pallet(https://docs.substrate.io/tutorials/v3/kitties/pt1/) in order to read some json data from an already existing file.
So, I need to read the contents of the file ...
2
votes
1
answer
122
views
Pallet Fails to Build Because of `std` Macros
I am currently facing this Error:
Using rustc version: rustc 1.62.0-nightly (e85edd9a8 2022-04-28)
Compiling frame-support v4.0.0-dev (https://github.com/paritytech/substrate.git?branch=...
1
vote
2
answers
71
views
How to execute an ELF binary after a successful transaction
I am working on figuring out an efficient way to run an ELF binary after successful transaction. I also want to pass arguments along the execution.
Example: /bin/ping 1.1.1.1
OCW might be a solution, ...
2
votes
2
answers
423
views
How to enable `std` features in pallets?
I'm trying to implement simple PoW for my node. After debugging all other stuff I've encountered the problem where finality-grandpa and storage do not get compiled because standard library macros are (...
11
votes
2
answers
156
views
What's the best way to compute square root in Substrate?
I'm working on a quadratic voting function, and I'm trying to use a function like square root. There is no square root function in sp that I could find. What is the best way to do this?
2
votes
2
answers
46
views
Trying to implement Substrate client on IoT, any suggestions?
I'm trying to implement a Substrate client on IoT, to send a basic extrinsic that stores as an example, a key-value. This code needs to run on ARM or ESP32 kinds of chips.
Are there any suggestions on ...