From b45ee521a7704e1caf4075bf75ef87aae90af15e Mon Sep 17 00:00:00 2001 From: Cypher Pepe <125112044+cypherpepe@users.noreply.github.com> Date: Thu, 28 Nov 2024 18:11:43 +0300 Subject: [PATCH 1/7] typos README.md --- x/cscalist/README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/x/cscalist/README.md b/x/cscalist/README.md index 0185506a..473b6950 100644 --- a/x/cscalist/README.md +++ b/x/cscalist/README.md @@ -91,7 +91,7 @@ Replace CSCA list proposal { "@type": "/rarimo.rarimocore.cscalist.ReplaceCSCAListProposal", "title": "Init", - "description": "Lorem ipsum dolor sit amet concestetur!", + "description": "Lorem ipsum dolor sit amet consectetur!", "leaves": [ "0x28815c9a1c9d638886d6ac193df55f98824c491d09bbbd712f96b5adfeba742e" ] @@ -103,7 +103,7 @@ Edit CSCA list proposal { "@type": "/rarimo.rarimocore.cscalist.EditCSCAListProposal", "title": "Add", - "description": "Lorem ipsum dolor sit amet concestetur!", + "description": "Lorem ipsum dolor sit amet consectetur!", "toAdd": [ "0x28815c9a1c9d638886d6ac193df55f98824c491d09bbbd712f96b5adfeba742e" ], @@ -127,7 +127,7 @@ Or you can directly edit this sample (replace `@type` and `leaves` for another t "content": { "@type": "/rarimo.rarimocore.cscalist.ReplaceCSCAListProposal", "title": "Init", - "description": "Lorem ipsum dolor sit amet concestetur!", + "description": "Lorem ipsum dolor sit amet consectetur!", "leaves": [ "0x28815c9a1c9d638886d6ac193df55f98824c491d09bbbd712f96b5adfeba742e" ] From e001687c19a65b7b01378e15e1bf51a263d0ee96 Mon Sep 17 00:00:00 2001 From: Cypher Pepe <125112044+cypherpepe@users.noreply.github.com> Date: Thu, 28 Nov 2024 18:13:58 +0300 Subject: [PATCH 2/7] typos 01_concepts.md --- x/evm/spec/01_concepts.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/x/evm/spec/01_concepts.md b/x/evm/spec/01_concepts.md index c96162d5..f9880f37 100644 --- a/x/evm/spec/01_concepts.md +++ b/x/evm/spec/01_concepts.md @@ -6,7 +6,7 @@ order: 1 ## EVM -The Ethereum Virtual Machine (EVM) is a computation engine which can be thought of as one single entity maintained by thousands of connected computers (nodes) running an Ethereum client. As a virtual machine ([VM](https://en.wikipedia.org/wiki/Virtual_machine)), the EVM is responisble for computing changes to the state deterministically regardless of its environment (hardware and OS). This means that every node has to get the exact same result given an identical starting state and transaction (tx). +The Ethereum Virtual Machine (EVM) is a computation engine which can be thought of as one single entity maintained by thousands of connected computers (nodes) running an Ethereum client. As a virtual machine ([VM](https://en.wikipedia.org/wiki/Virtual_machine)), the EVM is responsible for computing changes to the state deterministically regardless of its environment (hardware and OS). This means that every node has to get the exact same result given an identical starting state and transaction (tx). The EVM is considered to be the part of the Ethereum protocol that handles the deployment and execution of [smart contracts](https://ethereum.org/en/developers/docs/smart-contracts/). To make a clear distinction: @@ -17,7 +17,7 @@ The `x/evm` module implements the EVM as a Cosmos SDK module. It allows users to ### State -The Ethereum state is a data structure, implemented as a [Merkle Patricia Trie](https://en.wikipedia.org/wiki/Merkle_tree), that keeps all accounts on the chain. The EVM makes changes to this data structure resulting in a new state with a different State Root. Ethereum can therefore be seen as a state chain that transitions from one state to another by executing transations in a block using the EVM. A new block of txs can be described through its Block header (parent hash, block number, time stamp, nonce, receipts,...). +The Ethereum state is a data structure, implemented as a [Merkle Patricia Trie](https://en.wikipedia.org/wiki/Merkle_tree), that keeps all accounts on the chain. The EVM makes changes to this data structure resulting in a new state with a different State Root. Ethereum can therefore be seen as a state chain that transitions from one state to another by executing transactions in a block using the EVM. A new block of txs can be described through its Block header (parent hash, block number, time stamp, nonce, receipts,...). ### Accounts @@ -45,9 +45,9 @@ Typically smart contracts expose a public ABI, which is a list of supported ways ### Executing EVM bytecode -A contract's EVM bytecode consists of basic operations (add, multiply, store, etc...), called **Opcodes**. Each Opcode execution requires gas that needs to be payed with the tx. The EVM is therefore considered quasi-turing complete, as it allows any arbitrary computation, but the amount of computations during a contract execution is limited to the amount of gas provided in the tx. Each Opcode's [**gas cost**](https://www.evm.codes/) reflects the cost of running these operations on actual computer hardware (e.g. `ADD = 3gas` and `SSTORE = 100gas`). To calculate the gas consumption of a tx, the gas cost is multiplied by the **gas price**, which can change depending on the demand of the network at the time. If the network is under heavy load, you might have to pay a highter gas price to get your tx executed. If the gas limit is hit (out of gas execption) no changes to the Ethereum state are applied, except that the sender's nonce increments and their balance goes down to pay for wasting the EVM's time. +A contract's EVM bytecode consists of basic operations (add, multiply, store, etc...), called **Opcodes**. Each Opcode execution requires gas that needs to be payed with the tx. The EVM is therefore considered quasi-turing complete, as it allows any arbitrary computation, but the amount of computations during a contract execution is limited to the amount of gas provided in the tx. Each Opcode's [**gas cost**](https://www.evm.codes/) reflects the cost of running these operations on actual computer hardware (e.g. `ADD = 3gas` and `SSTORE = 100gas`). To calculate the gas consumption of a tx, the gas cost is multiplied by the **gas price**, which can change depending on the demand of the network at the time. If the network is under heavy load, you might have to pay a higher gas price to get your tx executed. If the gas limit is hit (out of gas execption) no changes to the Ethereum state are applied, except that the sender's nonce increments and their balance goes down to pay for wasting the EVM's time. -Smart contracts can also call other smart contracts. Each call to a new contract creates a new instance of the EVM (including a new stack and memory). Each call passes the sandbox state to the next EVM. If the gas runs out, all state changes are discareded. Otherwise they are kept. +Smart contracts can also call other smart contracts. Each call to a new contract creates a new instance of the EVM (including a new stack and memory). Each call passes the sandbox state to the next EVM. If the gas runs out, all state changes are discarded. Otherwise they are kept. For further reading, please refer to: From 5ba1160072a263beed170ec0bcfca72dbd09801b Mon Sep 17 00:00:00 2001 From: Cypher Pepe <125112044+cypherpepe@users.noreply.github.com> Date: Thu, 28 Nov 2024 18:15:33 +0300 Subject: [PATCH 3/7] typo 03_state_transitions.md --- x/evm/spec/03_state_transitions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/x/evm/spec/03_state_transitions.md b/x/evm/spec/03_state_transitions.md index 73caf55e..fffa76a7 100644 --- a/x/evm/spec/03_state_transitions.md +++ b/x/evm/spec/03_state_transitions.md @@ -70,7 +70,7 @@ After authentication through the `antehandler`, each `sdk.Msg` (in this case `Ms 5. Confirm that EVM params for contract creation (`EnableCreate`) and contract execution (`EnableCall`) are enabled 6. Apply message. If `To` address is `nil`, create new contract using code as deployment code. Else call contract at given address with the given input as parameters 7. Calculate gas used by the evm operation -3. If `Tx` applied sucessfully +3. If `Tx` applied successfully 1. Execute EVM `Tx` postprocessing hooks. If hooks return error, revert the whole `Tx` 2. Refund gas according to Ethereum gas accounting rules 3. Update block bloom filter value using the logs generated from the tx From 02adf42dd29b19e021bb3bc4b4ea86f52d0355b8 Mon Sep 17 00:00:00 2001 From: Cypher Pepe <125112044+cypherpepe@users.noreply.github.com> Date: Thu, 28 Nov 2024 18:16:28 +0300 Subject: [PATCH 4/7] typos 04_transactions.md --- x/evm/spec/04_transactions.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/x/evm/spec/04_transactions.md b/x/evm/spec/04_transactions.md index 4a132cf3..afc3df08 100644 --- a/x/evm/spec/04_transactions.md +++ b/x/evm/spec/04_transactions.md @@ -151,9 +151,9 @@ type LegacyTx struct { This message field validation is expected to fail if: -- `GasPrice` is invalid (`nil` , negaitve or out of int256 bound) +- `GasPrice` is invalid (`nil` , negative or out of int256 bound) - `Fee` (gasprice * gaslimit) is invalid -- `Amount` is invalid (negaitve or out of int256 bound) +- `Amount` is invalid (negative or out of int256 bound) - `To` address is invalid (non valid ethereum hex address) ### `DynamicFeeTx` From e95f77ffbf7e60da737b6f9083f417622e66de7a Mon Sep 17 00:00:00 2001 From: Cypher Pepe <125112044+cypherpepe@users.noreply.github.com> Date: Thu, 28 Nov 2024 18:17:16 +0300 Subject: [PATCH 5/7] typo 05_abci.md --- x/evm/spec/05_abci.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/x/evm/spec/05_abci.md b/x/evm/spec/05_abci.md index 800b6ea3..de0eb7c1 100644 --- a/x/evm/spec/05_abci.md +++ b/x/evm/spec/05_abci.md @@ -4,7 +4,7 @@ order: 5 # ABCI -The Application Blockchain Interface (ABCI) allows the application to interact with the Tendermint Consensus engine. The application maintains several separate ABCI connections with Tendermint. The most relevant for the `x/evm` is the [Consensus connection at Commit](https://docs.tendermint.com/v0.35/spec/abci/apps.html#consensus-connection). This connection is responsible for block execution and calls the fuctions `InitChain` (containing `InitGenesis`), `BeginBlock`, `DeliverTx`, `EndBlock`, `Commit` . `InitChain` is only called the first time a new blockchain is started and `DeliverTx` is called for each transaction in the block. +The Application Blockchain Interface (ABCI) allows the application to interact with the Tendermint Consensus engine. The application maintains several separate ABCI connections with Tendermint. The most relevant for the `x/evm` is the [Consensus connection at Commit](https://docs.tendermint.com/v0.35/spec/abci/apps.html#consensus-connection). This connection is responsible for block execution and calls the functions `InitChain` (containing `InitGenesis`), `BeginBlock`, `DeliverTx`, `EndBlock`, `Commit` . `InitChain` is only called the first time a new blockchain is started and `DeliverTx` is called for each transaction in the block. ## InitGenesis From 4778238fd14f7479440ca97c3781c13a4b05c06d Mon Sep 17 00:00:00 2001 From: Cypher Pepe <125112044+cypherpepe@users.noreply.github.com> Date: Thu, 28 Nov 2024 18:32:47 +0300 Subject: [PATCH 6/7] typo README.md --- x/oraclemanager/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/x/oraclemanager/README.md b/x/oraclemanager/README.md index 2b98a5ad..7e4e3651 100644 --- a/x/oraclemanager/README.md +++ b/x/oraclemanager/README.md @@ -7,7 +7,7 @@ title: x/oraclemanager ## Abstract -The `oraclemanager` cosmos module contains logic for managing distibuted public oracles that supports our bridge by +The `oraclemanager` cosmos module contains logic for managing distributed public oracles that supports our bridge by delivering information about transfers. From f8827671d4715d5b6e948394d7ecccc66f6c1934 Mon Sep 17 00:00:00 2001 From: Cypher Pepe <125112044+cypherpepe@users.noreply.github.com> Date: Thu, 28 Nov 2024 18:38:18 +0300 Subject: [PATCH 7/7] typos README.md --- x/tokenmanager/README.md | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/x/tokenmanager/README.md b/x/tokenmanager/README.md index 5a0723ec..6ca1cd51 100644 --- a/x/tokenmanager/README.md +++ b/x/tokenmanager/README.md @@ -1,13 +1,13 @@ --- layout: default -title: x/tokenamanager +title: x/tokenmanager --- -# `x/tokenamanager` +# `x/tokenmanager` ## Abstract -The `tokenamanager` module is responsible for storing information about all supported tokens. +The `tokenmanager` module is responsible for storing information about all supported tokens. ## Concepts @@ -440,7 +440,7 @@ message RemoveCollectionDataProposal { ### RemoveCollectionProposal -**RemoveCollectionProposal** - removing the hole collection +**RemoveCollectionProposal** - removing the whole collection ```protobuf message RemoveCollectionProposal { @@ -451,4 +451,4 @@ message RemoveCollectionProposal { } ``` ----- \ No newline at end of file +----