Type of change request

Epic link

Target release

What happened to existing iroha-cli?

The existing CLI tool for Iroha is built on C++ and uses legacy primitives. It was not updated for a long time and it is considered relatively hard to maintain. It was decided to discontinue support of the existing CLI and archive its source code.

What's next?

The new CLI is going to be developed to substitute the outdated one.
The key features of the new CLI are:

Besides the items listed above, the new CLI is going to be written in Python 3 and uploaded to PyPi repository. Such an approach gives us a benefit of ease of use and there will be no more need to compile and, in the worst case, the need to set up an environment to build a C++ app with potential dependency hell resolution pleasure.

* -  the last item is considered as the last priority feature due to quite developed state of Iroha client libraries (Java, Python, Swift, JS)?

Functional details

If possible, the new CLI has to use all the benefits of protobuf reflection opportunities. For example, whenever it possible CLI code should not be necessary updated when a new Iroha proto scheme is released (it should be enough just to specify the path to updated proto files).