[refactor] #4029, #4105, #4136: refactor CLIs#4153
Merged
0x009922 merged 43 commits intohyperledger-iroha:iroha2-devfrom Dec 22, 2023
Merged
[refactor] #4029, #4105, #4136: refactor CLIs#41530x009922 merged 43 commits intohyperledger-iroha:iroha2-devfrom
0x009922 merged 43 commits intohyperledger-iroha:iroha2-devfrom
Conversation
eb8b4b3 to
6cc7039
Compare
0x009922
commented
Dec 15, 2023
0x009922
commented
Dec 15, 2023
0x009922
commented
Dec 15, 2023
0x009922
commented
Dec 15, 2023
outoftardis
reviewed
Dec 15, 2023
049474f to
cc7fa52
Compare
0x009922
added a commit
to 0x009922/iroha
that referenced
this pull request
Dec 17, 2023
hyperledger-iroha#4153 (comment) Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
- set `GENESIS_FILE` in env, since `config.json` doesn't have it - strictly specify `config.json` and `genesis.json` files Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com>
Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
- remove `cfg(test)` behaviour from `GenesisNetwork::new()` - refactor `impl TestGenesis for Genesis` - remove extra `bool` + `Option` invariant - allow creating genesis with additional ISIs - remove `test-utils` feature & `GenesisNetwork::transactions_mut()` - update related tests - update error message on signing failure Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com>
0dc8a44 to
394a538
Compare
5 tasks
DCNick3
approved these changes
Dec 22, 2023
Arjentix
approved these changes
Dec 22, 2023
Asem-Abdelhady
pushed a commit
to Asem-Abdelhady/iroha
that referenced
this pull request
Jan 9, 2024
…r-iroha#4136: refactor CLIs (hyperledger-iroha#4153) * [refactor]: refactor cli(s) - `iroha`: use `clap` `v4` - `iroha`: update CLI (`--config`, `--terminal-colors`) - `iroha`: handle user-provided config file strictly - `iroha`: parse ENV config after file config - `iroha_config`: add `genesis.file`, remove `account_*` prefix - `iroha_config`: move some genesis config validation logic from `iroha` - `iroha_client_cli`: upgrade `clap` to `v4` - `iroha_genesis`: remove side effects (bail, logs) - `iroha_genesis`: clarify validation logic (hyperledger-iroha#3075) - `iroha_genesis`: remove `pub` to guard invariant of `GenesisNetwork` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: chore Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: fix & test config - `iroha_config`: use `PathBuf` when appropriate - `iroha_config`: fix `Path` behaviour - `iroha_config`: finally, make `disable_panic_terminal_colors` truly optional (hyperledger-iroha#3506) - `iroha`: resolve all relative paths in config file - `iroha`: improve config error messages - `iroha`: add config integration tests Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: test & refactor - `iroha_client_cli`: adopt `--config` from `iroha` - `iroha_client_cli`: refactor `--metadata` arg - `iroha`: extend tests - update test code overall Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: clippy, tests Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: use `serde_as_str` for paths Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [chore]: re-generate peer config Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: update `test_env.py` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: remove deprecated option from test config Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: update README Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [chore]: remove obsolete comment Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: update `iroha_swarm` Now it relies on that `genesis.file` is set in the config file Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [feat]: `kagami config peer` + `--genesis-file-in-config` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: chores Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Ekaterina Mekhnetsova <mekkatya@gmail.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> * [feat]: use `PATH` as value name Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: align `StatusFailure` message Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: adopt suggestion in `iroha_client_cli` hyperledger-iroha#4153 (comment) Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [build]: exclude `genesis.file` from default config Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [feat]: refine genesis config parse error Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: fix & refactor `test_env.py` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: fix CANNOT_BE_EMPTY message It is updated with a new version of clap Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: return `disable_panic_terminal_colors: null` to test config It is needed so that only `iroha_test_config.json` without defaults layer is valid (will fix on config refactoring) Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: handle configuration properly in `iroha_swarm` - set `GENESIS_FILE` in env, since `config.json` doesn't have it - strictly specify `config.json` and `genesis.json` files Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> * Update client_cli/src/main.rs Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> * [refactor]: eliminate extra `iroha_config` dependency Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: remove dead code Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: use `serde_json::json!` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: remove `disable_panic_terminal_colors` parameter Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: update genesis & its testing - remove `cfg(test)` behaviour from `GenesisNetwork::new()` - refactor `impl TestGenesis for Genesis` - remove extra `bool` + `Option` invariant - allow creating genesis with additional ISIs - remove `test-utils` feature & `GenesisNetwork::transactions_mut()` - update related tests - update error message on signing failure Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: remove extension check from `Path::default()` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: update genesis topology messages Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: use `Popen`'s `env` instead of global `os.environ` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: typo Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: use `Partial`/`Full` terminology Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: inherit env from OS Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: link issue hyperledger-iroha#4161 Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: format Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: apply lints Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [feat]: panic on default path extension Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: update err message Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: update docs of `read_config` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> --------- Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> Co-authored-by: Ekaterina Mekhnetsova <mekkatya@gmail.com> Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com>
Asem-Abdelhady
pushed a commit
to Asem-Abdelhady/iroha
that referenced
this pull request
Jan 22, 2024
…r-iroha#4136: refactor CLIs (hyperledger-iroha#4153) * [refactor]: refactor cli(s) - `iroha`: use `clap` `v4` - `iroha`: update CLI (`--config`, `--terminal-colors`) - `iroha`: handle user-provided config file strictly - `iroha`: parse ENV config after file config - `iroha_config`: add `genesis.file`, remove `account_*` prefix - `iroha_config`: move some genesis config validation logic from `iroha` - `iroha_client_cli`: upgrade `clap` to `v4` - `iroha_genesis`: remove side effects (bail, logs) - `iroha_genesis`: clarify validation logic (hyperledger-iroha#3075) - `iroha_genesis`: remove `pub` to guard invariant of `GenesisNetwork` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: chore Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: fix & test config - `iroha_config`: use `PathBuf` when appropriate - `iroha_config`: fix `Path` behaviour - `iroha_config`: finally, make `disable_panic_terminal_colors` truly optional (hyperledger-iroha#3506) - `iroha`: resolve all relative paths in config file - `iroha`: improve config error messages - `iroha`: add config integration tests Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: test & refactor - `iroha_client_cli`: adopt `--config` from `iroha` - `iroha_client_cli`: refactor `--metadata` arg - `iroha`: extend tests - update test code overall Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: clippy, tests Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: use `serde_as_str` for paths Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [chore]: re-generate peer config Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: update `test_env.py` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: remove deprecated option from test config Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: update README Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [chore]: remove obsolete comment Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: update `iroha_swarm` Now it relies on that `genesis.file` is set in the config file Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [feat]: `kagami config peer` + `--genesis-file-in-config` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: chores Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Ekaterina Mekhnetsova <mekkatya@gmail.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> * [feat]: use `PATH` as value name Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: align `StatusFailure` message Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: adopt suggestion in `iroha_client_cli` hyperledger-iroha#4153 (comment) Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [build]: exclude `genesis.file` from default config Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [feat]: refine genesis config parse error Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: fix & refactor `test_env.py` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: fix CANNOT_BE_EMPTY message It is updated with a new version of clap Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: return `disable_panic_terminal_colors: null` to test config It is needed so that only `iroha_test_config.json` without defaults layer is valid (will fix on config refactoring) Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: handle configuration properly in `iroha_swarm` - set `GENESIS_FILE` in env, since `config.json` doesn't have it - strictly specify `config.json` and `genesis.json` files Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> * Update client_cli/src/main.rs Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> * [refactor]: eliminate extra `iroha_config` dependency Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: remove dead code Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: use `serde_json::json!` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: remove `disable_panic_terminal_colors` parameter Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: update genesis & its testing - remove `cfg(test)` behaviour from `GenesisNetwork::new()` - refactor `impl TestGenesis for Genesis` - remove extra `bool` + `Option` invariant - allow creating genesis with additional ISIs - remove `test-utils` feature & `GenesisNetwork::transactions_mut()` - update related tests - update error message on signing failure Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: remove extension check from `Path::default()` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: update genesis topology messages Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: use `Popen`'s `env` instead of global `os.environ` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: typo Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: use `Partial`/`Full` terminology Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: inherit env from OS Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: link issue hyperledger-iroha#4161 Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: format Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: apply lints Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [feat]: panic on default path extension Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: update err message Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: update docs of `read_config` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> --------- Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> Co-authored-by: Ekaterina Mekhnetsova <mekkatya@gmail.com> Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com> Signed-off-by: Asem-Abdelhady <asemshawkey@gmail.com>
Asem-Abdelhady
pushed a commit
to Asem-Abdelhady/iroha
that referenced
this pull request
Feb 9, 2024
…r-iroha#4136: refactor CLIs (hyperledger-iroha#4153) * [refactor]: refactor cli(s) - `iroha`: use `clap` `v4` - `iroha`: update CLI (`--config`, `--terminal-colors`) - `iroha`: handle user-provided config file strictly - `iroha`: parse ENV config after file config - `iroha_config`: add `genesis.file`, remove `account_*` prefix - `iroha_config`: move some genesis config validation logic from `iroha` - `iroha_client_cli`: upgrade `clap` to `v4` - `iroha_genesis`: remove side effects (bail, logs) - `iroha_genesis`: clarify validation logic (hyperledger-iroha#3075) - `iroha_genesis`: remove `pub` to guard invariant of `GenesisNetwork` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: chore Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: fix & test config - `iroha_config`: use `PathBuf` when appropriate - `iroha_config`: fix `Path` behaviour - `iroha_config`: finally, make `disable_panic_terminal_colors` truly optional (hyperledger-iroha#3506) - `iroha`: resolve all relative paths in config file - `iroha`: improve config error messages - `iroha`: add config integration tests Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: test & refactor - `iroha_client_cli`: adopt `--config` from `iroha` - `iroha_client_cli`: refactor `--metadata` arg - `iroha`: extend tests - update test code overall Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: clippy, tests Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: use `serde_as_str` for paths Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [chore]: re-generate peer config Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: update `test_env.py` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: remove deprecated option from test config Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: update README Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [chore]: remove obsolete comment Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: update `iroha_swarm` Now it relies on that `genesis.file` is set in the config file Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [feat]: `kagami config peer` + `--genesis-file-in-config` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: chores Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: Ekaterina Mekhnetsova <mekkatya@gmail.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> * [feat]: use `PATH` as value name Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: align `StatusFailure` message Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: adopt suggestion in `iroha_client_cli` hyperledger-iroha#4153 (comment) Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [build]: exclude `genesis.file` from default config Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [feat]: refine genesis config parse error Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: fix & refactor `test_env.py` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: fix CANNOT_BE_EMPTY message It is updated with a new version of clap Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: return `disable_panic_terminal_colors: null` to test config It is needed so that only `iroha_test_config.json` without defaults layer is valid (will fix on config refactoring) Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: handle configuration properly in `iroha_swarm` - set `GENESIS_FILE` in env, since `config.json` doesn't have it - strictly specify `config.json` and `genesis.json` files Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * Apply suggestions from code review Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> * Update client_cli/src/main.rs Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> * [refactor]: eliminate extra `iroha_config` dependency Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: remove dead code Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: use `serde_json::json!` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: remove `disable_panic_terminal_colors` parameter Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: update genesis & its testing - remove `cfg(test)` behaviour from `GenesisNetwork::new()` - refactor `impl TestGenesis for Genesis` - remove extra `bool` + `Option` invariant - allow creating genesis with additional ISIs - remove `test-utils` feature & `GenesisNetwork::transactions_mut()` - update related tests - update error message on signing failure Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: remove extension check from `Path::default()` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: update genesis topology messages Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: use `Popen`'s `env` instead of global `os.environ` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: typo Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: use `Partial`/`Full` terminology Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: inherit env from OS Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: link issue hyperledger-iroha#4161 Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [fix]: format Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [refactor]: apply lints Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [feat]: panic on default path extension Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [test]: update err message Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> * [docs]: update docs of `read_config` Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> --------- Signed-off-by: Dmitry Balashov <43530070+0x009922@users.noreply.github.com> Signed-off-by: 0x009922 <43530070+0x009922@users.noreply.github.com> Co-authored-by: Ekaterina Mekhnetsova <mekkatya@gmail.com> Co-authored-by: ⭐️NINIKA⭐️ <DCNick3@users.noreply.github.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Changes:
iroha_genesis:GenesisNetworkinitialisation, remove side effects and simplify logictransactionsinGenesisNetworknon-public, to avoid invariant violationiroha_config:account_public_keyandaccount_private_key, it now haspublic_key,private_key, andfileoptions (according to [suggestion] Simplify genesis config #4029). Move some validation logic here (in form ofParsedConfigurationstruct).disable_panic_terminal_colorsdeprecated parameterPathBufs for all path parameters (genesis.file,kura.block_store_path,snapshot.dir_path,telemetry.file)Path(multiple extensions support) behaviouriroha:clap--configargument,--terminal-colors(or--terminal-colors=false).--submit-genesisremains as is.config.jsonandconfig.json5and doesn't fail if they are not find (same as before)--config,IROHA_CONFIG=) and it is not found, Iroha fails (previously it didn't)iroha_client_cli:claptov4, as in the rest of workspace--metadataargumentirohairoha_swarm: explicitly specifiesconfig.jsonandgenesis.jsonpaths in the generated docker-compose configurationskagami:kagami config peernow accepts an optional argument--genesis-file-in-config <PATH>to setgenesis.filein the output. Semantic analogous tokagami genesis --executor-path-in-genesis <PATH>.Linked issues
Closes #4029 #4105, partially addresses #4136
Benefits
irohaandiroha_client_cliiroha_configChecklist
iroha_toriifromiroha#4139