summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--python-lto-cli.spec584
-rw-r--r--sources1
3 files changed, 586 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index e69de29..a294f2b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -0,0 +1 @@
+/lto-cli-1.2.3.tar.gz
diff --git a/python-lto-cli.spec b/python-lto-cli.spec
new file mode 100644
index 0000000..456c81d
--- /dev/null
+++ b/python-lto-cli.spec
@@ -0,0 +1,584 @@
+%global _empty_manifest_terminate_build 0
+Name: python-lto-cli
+Version: 1.2.3
+Release: 1
+Summary: LTO Network CLI
+License: MIT License
+URL: https://github.com/ltonetwork/lto-cli
+Source0: https://mirrors.nju.edu.cn/pypi/web/packages/4e/6b/49cfe0ff6196a660ffaa028bb2c8c8ef50498b5b21af315eea4c0dff1e46/lto-cli-1.2.3.tar.gz
+BuildArch: noarch
+
+Requires: python3-lto
+Requires: python3-argparse
+Requires: python3-configparser
+Requires: python3-pathlib
+Requires: python3-importlib-metadata
+
+%description
+![LTO github readme](https://user-images.githubusercontent.com/100821/196711741-96cd4ba5-932a-4e95-b420-42d4d61c21fd.png)
+
+# CLI client
+
+## Installation
+
+```
+pip install lto-cli
+```
+
+[pip](https://pip.pypa.io/en/stable/) is the package installer for Python.
+
+## Usage
+
+```
+lto --help
+lto [command] --help
+```
+
+### Manage accounts
+
+```
+lto account create
+echo "my seed" | lto account seed
+lto account list
+lto account set-default foobar
+lto account remove 3JuijVBB7NCwCz2Ae5HhCDsqCXzeBLRTyeL
+lto account show 3JuijVBB7NCwCz2Ae5HhCDsqCXzeBLRTyeL
+```
+
+### Public node
+
+```
+lto node set https://nodes.lto.network
+lto node show
+lto node status
+```
+
+### Broadcast
+
+Takes as input a transaction, signs it and broadcast it to the network
+
+```
+echo $TX_JSON | lto broadcast
+```
+
+If the input transaction is already signed, a second signature is added, which can be used for a multisig smart account.
+To broadcast a signed transaction without adding a second signature use `--unsigned`.
+
+### Balance
+
+Display the balances of the default address or if specified of a specific address
+```
+lto balance
+lto balance 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK
+```
+
+## Transactions
+
+### Anchor
+
+```
+lto anchor --hash d4735e3a265e16eee03f59718b9b5d03019c07d8b6c51f90da3a666eec13ab35
+lto anchor --hash FJKTv1un7qsnyKdwKez7B67JJp3oCU5ntCVXcRsWEjtg --encoding base58
+cat somefile.txt | lto anchor --algo sha256
+```
+
+Anchor multiple hashes in one transaction by repeating `--hash`:
+```
+lto anchor --hash HASH1 --hash HASH2 --hash HASH3
+```
+
+#### Mapped Anchor
+
+Create a mapped anchor by specifying a key/value pair, seperated by a `:` (double colon).
+
+```
+lto anchor --hash a10933ea8afa05af54bc2ed0c9780bbc7e2e69964b76dcc69992a3fce94f11c5:48dbb907e9777a49af2f824b41278f27ef1cc0de2a926b3da19cfca897c08416
+```
+
+### Associations
+
+```
+lto association issue --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --type 1 --subject e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+lto association revoke --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --type 1 --subject e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+lto association incoming
+lto association outgoing
+```
+
+### Transfer
+
+```
+lto transfer --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --amount 742.6
+```
+
+### Mass-transfer
+
+```
+echo "3N6MFpSbbzTozDcfkTUT5zZ2sNbJKFyRtRj 742.6
+3NBC7ETcdPbf4QAXSop5UCJ53yX34aGPXoz 2184.2" | lto mass-transfer
+```
+
+_Recipient/amount pairs are read from stdin._
+
+### Leasing
+
+```
+lto lease create --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --amount 742.6
+lto lease cancel --leaseid 6XmeG7SRWiw8pD6Uad6D9AAaY354v5TV6AJMhPpHMkqy
+lto lease incoming
+lto lease outgoing
+```
+
+### Sponsorship
+
+```
+lto sponsorship create --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK
+lto sponsorship cancel --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK
+lto sponsorship incoming
+```
+
+### Data
+
+```
+lto data set <<< '{"foo": "bar"}'
+lto data get
+lto data get 3Jvtrp1GZ7r5J8SXXFqeKyH9GE5Q78meHzN
+lto data get --key foo
+```
+
+
+### Script
+
+```
+echo $SCRIPT | lto script
+```
+
+## Common options
+
+```
+--network CHAINID
+--account NAME|ADDRESS
+--sponsor NAME|ADDRESS
+--no-broadcast
+--unsigned
+```
+
+#### `--network`
+
+Use `--network T` to use testnet instead of mainnet. You need to setup accounts specifically for testnet.
+
+#### `--account`
+
+Select one of the accounts configured during setup. The account can be referenced by name or address. The name is only known locally.
+If this option is omited, the default account is used.
+
+#### `--sponsor`
+
+Choose an account to sponsor the transaction. The sponsor will co-sign the transaction and pay the transaction fee.
+
+_This feature is not yet available as it requires the Cobalt update to be activated._
+
+#### `--no-broadcast`
+
+Create and sign the transaction, but don't broadcast it to the node. The JSON will be outputted.
+
+#### `--unsigned`
+
+Create the transaction, but don't sign it. This option should only be used in combination with `--no-broadcast`.
+
+
+%package -n python3-lto-cli
+Summary: LTO Network CLI
+Provides: python-lto-cli
+BuildRequires: python3-devel
+BuildRequires: python3-setuptools
+BuildRequires: python3-pip
+%description -n python3-lto-cli
+![LTO github readme](https://user-images.githubusercontent.com/100821/196711741-96cd4ba5-932a-4e95-b420-42d4d61c21fd.png)
+
+# CLI client
+
+## Installation
+
+```
+pip install lto-cli
+```
+
+[pip](https://pip.pypa.io/en/stable/) is the package installer for Python.
+
+## Usage
+
+```
+lto --help
+lto [command] --help
+```
+
+### Manage accounts
+
+```
+lto account create
+echo "my seed" | lto account seed
+lto account list
+lto account set-default foobar
+lto account remove 3JuijVBB7NCwCz2Ae5HhCDsqCXzeBLRTyeL
+lto account show 3JuijVBB7NCwCz2Ae5HhCDsqCXzeBLRTyeL
+```
+
+### Public node
+
+```
+lto node set https://nodes.lto.network
+lto node show
+lto node status
+```
+
+### Broadcast
+
+Takes as input a transaction, signs it and broadcast it to the network
+
+```
+echo $TX_JSON | lto broadcast
+```
+
+If the input transaction is already signed, a second signature is added, which can be used for a multisig smart account.
+To broadcast a signed transaction without adding a second signature use `--unsigned`.
+
+### Balance
+
+Display the balances of the default address or if specified of a specific address
+```
+lto balance
+lto balance 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK
+```
+
+## Transactions
+
+### Anchor
+
+```
+lto anchor --hash d4735e3a265e16eee03f59718b9b5d03019c07d8b6c51f90da3a666eec13ab35
+lto anchor --hash FJKTv1un7qsnyKdwKez7B67JJp3oCU5ntCVXcRsWEjtg --encoding base58
+cat somefile.txt | lto anchor --algo sha256
+```
+
+Anchor multiple hashes in one transaction by repeating `--hash`:
+```
+lto anchor --hash HASH1 --hash HASH2 --hash HASH3
+```
+
+#### Mapped Anchor
+
+Create a mapped anchor by specifying a key/value pair, seperated by a `:` (double colon).
+
+```
+lto anchor --hash a10933ea8afa05af54bc2ed0c9780bbc7e2e69964b76dcc69992a3fce94f11c5:48dbb907e9777a49af2f824b41278f27ef1cc0de2a926b3da19cfca897c08416
+```
+
+### Associations
+
+```
+lto association issue --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --type 1 --subject e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+lto association revoke --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --type 1 --subject e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+lto association incoming
+lto association outgoing
+```
+
+### Transfer
+
+```
+lto transfer --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --amount 742.6
+```
+
+### Mass-transfer
+
+```
+echo "3N6MFpSbbzTozDcfkTUT5zZ2sNbJKFyRtRj 742.6
+3NBC7ETcdPbf4QAXSop5UCJ53yX34aGPXoz 2184.2" | lto mass-transfer
+```
+
+_Recipient/amount pairs are read from stdin._
+
+### Leasing
+
+```
+lto lease create --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --amount 742.6
+lto lease cancel --leaseid 6XmeG7SRWiw8pD6Uad6D9AAaY354v5TV6AJMhPpHMkqy
+lto lease incoming
+lto lease outgoing
+```
+
+### Sponsorship
+
+```
+lto sponsorship create --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK
+lto sponsorship cancel --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK
+lto sponsorship incoming
+```
+
+### Data
+
+```
+lto data set <<< '{"foo": "bar"}'
+lto data get
+lto data get 3Jvtrp1GZ7r5J8SXXFqeKyH9GE5Q78meHzN
+lto data get --key foo
+```
+
+
+### Script
+
+```
+echo $SCRIPT | lto script
+```
+
+## Common options
+
+```
+--network CHAINID
+--account NAME|ADDRESS
+--sponsor NAME|ADDRESS
+--no-broadcast
+--unsigned
+```
+
+#### `--network`
+
+Use `--network T` to use testnet instead of mainnet. You need to setup accounts specifically for testnet.
+
+#### `--account`
+
+Select one of the accounts configured during setup. The account can be referenced by name or address. The name is only known locally.
+If this option is omited, the default account is used.
+
+#### `--sponsor`
+
+Choose an account to sponsor the transaction. The sponsor will co-sign the transaction and pay the transaction fee.
+
+_This feature is not yet available as it requires the Cobalt update to be activated._
+
+#### `--no-broadcast`
+
+Create and sign the transaction, but don't broadcast it to the node. The JSON will be outputted.
+
+#### `--unsigned`
+
+Create the transaction, but don't sign it. This option should only be used in combination with `--no-broadcast`.
+
+
+%package help
+Summary: Development documents and examples for lto-cli
+Provides: python3-lto-cli-doc
+%description help
+![LTO github readme](https://user-images.githubusercontent.com/100821/196711741-96cd4ba5-932a-4e95-b420-42d4d61c21fd.png)
+
+# CLI client
+
+## Installation
+
+```
+pip install lto-cli
+```
+
+[pip](https://pip.pypa.io/en/stable/) is the package installer for Python.
+
+## Usage
+
+```
+lto --help
+lto [command] --help
+```
+
+### Manage accounts
+
+```
+lto account create
+echo "my seed" | lto account seed
+lto account list
+lto account set-default foobar
+lto account remove 3JuijVBB7NCwCz2Ae5HhCDsqCXzeBLRTyeL
+lto account show 3JuijVBB7NCwCz2Ae5HhCDsqCXzeBLRTyeL
+```
+
+### Public node
+
+```
+lto node set https://nodes.lto.network
+lto node show
+lto node status
+```
+
+### Broadcast
+
+Takes as input a transaction, signs it and broadcast it to the network
+
+```
+echo $TX_JSON | lto broadcast
+```
+
+If the input transaction is already signed, a second signature is added, which can be used for a multisig smart account.
+To broadcast a signed transaction without adding a second signature use `--unsigned`.
+
+### Balance
+
+Display the balances of the default address or if specified of a specific address
+```
+lto balance
+lto balance 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK
+```
+
+## Transactions
+
+### Anchor
+
+```
+lto anchor --hash d4735e3a265e16eee03f59718b9b5d03019c07d8b6c51f90da3a666eec13ab35
+lto anchor --hash FJKTv1un7qsnyKdwKez7B67JJp3oCU5ntCVXcRsWEjtg --encoding base58
+cat somefile.txt | lto anchor --algo sha256
+```
+
+Anchor multiple hashes in one transaction by repeating `--hash`:
+```
+lto anchor --hash HASH1 --hash HASH2 --hash HASH3
+```
+
+#### Mapped Anchor
+
+Create a mapped anchor by specifying a key/value pair, seperated by a `:` (double colon).
+
+```
+lto anchor --hash a10933ea8afa05af54bc2ed0c9780bbc7e2e69964b76dcc69992a3fce94f11c5:48dbb907e9777a49af2f824b41278f27ef1cc0de2a926b3da19cfca897c08416
+```
+
+### Associations
+
+```
+lto association issue --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --type 1 --subject e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+lto association revoke --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --type 1 --subject e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855
+lto association incoming
+lto association outgoing
+```
+
+### Transfer
+
+```
+lto transfer --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --amount 742.6
+```
+
+### Mass-transfer
+
+```
+echo "3N6MFpSbbzTozDcfkTUT5zZ2sNbJKFyRtRj 742.6
+3NBC7ETcdPbf4QAXSop5UCJ53yX34aGPXoz 2184.2" | lto mass-transfer
+```
+
+_Recipient/amount pairs are read from stdin._
+
+### Leasing
+
+```
+lto lease create --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK --amount 742.6
+lto lease cancel --leaseid 6XmeG7SRWiw8pD6Uad6D9AAaY354v5TV6AJMhPpHMkqy
+lto lease incoming
+lto lease outgoing
+```
+
+### Sponsorship
+
+```
+lto sponsorship create --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK
+lto sponsorship cancel --recipient 3MyGpJh6Bb8auF3HtSr2dSJjqQVxgqLynpK
+lto sponsorship incoming
+```
+
+### Data
+
+```
+lto data set <<< '{"foo": "bar"}'
+lto data get
+lto data get 3Jvtrp1GZ7r5J8SXXFqeKyH9GE5Q78meHzN
+lto data get --key foo
+```
+
+
+### Script
+
+```
+echo $SCRIPT | lto script
+```
+
+## Common options
+
+```
+--network CHAINID
+--account NAME|ADDRESS
+--sponsor NAME|ADDRESS
+--no-broadcast
+--unsigned
+```
+
+#### `--network`
+
+Use `--network T` to use testnet instead of mainnet. You need to setup accounts specifically for testnet.
+
+#### `--account`
+
+Select one of the accounts configured during setup. The account can be referenced by name or address. The name is only known locally.
+If this option is omited, the default account is used.
+
+#### `--sponsor`
+
+Choose an account to sponsor the transaction. The sponsor will co-sign the transaction and pay the transaction fee.
+
+_This feature is not yet available as it requires the Cobalt update to be activated._
+
+#### `--no-broadcast`
+
+Create and sign the transaction, but don't broadcast it to the node. The JSON will be outputted.
+
+#### `--unsigned`
+
+Create the transaction, but don't sign it. This option should only be used in combination with `--no-broadcast`.
+
+
+%prep
+%autosetup -n lto-cli-1.2.3
+
+%build
+%py3_build
+
+%install
+%py3_install
+install -d -m755 %{buildroot}/%{_pkgdocdir}
+if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
+if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
+if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
+if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
+pushd %{buildroot}
+if [ -d usr/lib ]; then
+ find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/lib64 ]; then
+ find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/bin ]; then
+ find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+if [ -d usr/sbin ]; then
+ find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
+fi
+touch doclist.lst
+if [ -d usr/share/man ]; then
+ find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
+fi
+popd
+mv %{buildroot}/filelist.lst .
+mv %{buildroot}/doclist.lst .
+
+%files -n python3-lto-cli -f filelist.lst
+%dir %{python3_sitelib}/*
+
+%files help -f doclist.lst
+%{_docdir}/*
+
+%changelog
+* Mon May 29 2023 Python_Bot <Python_Bot@openeuler.org> - 1.2.3-1
+- Package Spec generated
diff --git a/sources b/sources
new file mode 100644
index 0000000..191ebdd
--- /dev/null
+++ b/sources
@@ -0,0 +1 @@
+171a2d2eab598e5103f14de3d39dcb15 lto-cli-1.2.3.tar.gz