anoma / namada

Rust implementation of Namada, a Proof-of-Stake L1 for interchain asset-agnostic privacy
https://namada.net
GNU General Public License v3.0
2.4k stars 951 forks source link

Investigate, remove and disallow the usage of the floats in WASM #3298

Open tzemanovic opened 4 months ago

tzemanovic commented 4 months ago

follow-up to #3275

We need to investigate, remove and disallow usage of the floats. I had a look and some usage comes from tendermint-rs and its use serde_json which should be easy to replace by serde_json_wasm. Other use in wasm tx_ibc seems to be pulled in from schemars (transitive dep of ibc) and ethbridge-structs, but those may not be an issue.

While at it, we should also replace our usage of serde_json by serde_json_wasm

tzemanovic commented 4 months ago

I found one of the sources of floats in tx_ibc wasm is ClientState protobuf decoding, but I tried to temp remove that code and there seem to be more than that