Part of [Create a public laconicd testnet](https://www.notion.so/Create-a-public-laconicd-testnet-896a11bdd8094eff8f1b49c0be0ca3b8)
Requires cerc-io/registry-sdk#22
Behaviour in different configuration scenarios:
- Gas set, fees set to `Xalnt`:
```bash
# Example
gas: 500000
fees: 500000alnt
gasPrice:
```
- `gasPrice` config ignored
- tx rejected if given `fees` < `gas` * `min-gas-price` set by the node
- tx fails mid-execution if it runs out of given `gas`
- Fees not set, gas price set to `Xalnt`:
```bash
# Example
gas:
fees:
gasPrice: 1alnt
```
- `gas` config ignored
- uses `auto` fee calculation using gas estimation with [default multiplier](https://git.vdb.to/cerc-io/registry-sdk/src/branch/main/src/constants.ts) (`2`) value from `registry-sdk`
- tx rejected if given `gasPrice` < `min-gas-price` set by the node
- tx fails mid-execution if it runs out of calculated gas
- Fees set to a `X` (without `alnt` suffix), gas price set to `Yalnt`:
```bash
# Example
gas:
fees: 1.8
gasPrice: 1alnt
```
- `gas` config ignored
- uses `auto` fee calculation using gas estimation with `fees` as the multiplier
- tx rejected if given `gasPrice` < `min-gas-price` set by the node
- tx fails mid-execution if it runs out of calculated gas, can be retried with a higher gas estimation multiplier (`fees`)
- Fees and gas price both not set:
```bash
# Example
gas:
fees:
gasPrice:
```
- `gas` config ignored
- uses `auto` fee calculation using gas estimation
- throws error:
```bash
Gas price must be set in the client options when auto gas is used.
```
The provided config can be overridden with CLI args if required.
Co-authored-by: IshaVenikar <ishavenikar7@gmail.com>
Reviewed-on: #81
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Co-committed-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
The current code throws an exception if no address is specified. It is supposed to return the current account info.
Reviewed-on: #77
Reviewed-by: David Boreham <dboreham@noreply.git.vdb.to>
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
Part of https://www.notion.so/Create-laconic-registry-SDK-d3a636d4aba44f7cbba3bd99b7146811
- Use user key as transaction private key in record publish cmd
Co-authored-by: neeraj <neeraj.rtly@gmail.com>
Co-authored-by: Prathamesh Musale <prathamesh.musale0@gmail.com>
Reviewed-on: #56
Co-authored-by: Nabarun <nabarun@deepstacksoft.com>
Co-committed-by: Nabarun <nabarun@deepstacksoft.com>
The `cns name resolve` does not return the result. Obviously it should.
Reviewed-on: #42
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>
This allows us to support attributes in YAML like this:
```
meta:
foo: bar
bar:
baz: boz
```
Which will automatically become:
```
"meta": "{\"foo\":\"bar\",\"bar\":{\"baz\":\"boz\"}}"
```
> Note: cosmos-sdk's protobuf code does not support maps (https://github.com/cosmos/cosmos-sdk/issues/15254), or else we would just use a map.
Reviewed-on: #38
Co-authored-by: Thomas E Lackey <telackey@bozemanpass.com>
Co-committed-by: Thomas E Lackey <telackey@bozemanpass.com>