Six months after the previous release, I am pleased to announce Silkaj’s v0.6.0. for the twelfth Libre Currency Meeting.
This release comes with 124 commits including eased installation procedures, multi-recipient transactions, wot
view improvements, Scrypt authentication by default, network performances, and much more.
Highlighted features
Installation eased with Pypi/pip (for users)
Installing Silkaj has been a burning issue: Only Fedora users could install Silkaj with the Pyinstaller binary. The others, would have had to install a development environment with pyenv
and the Python dependencies in order to make it work.
Thanks to @Cebash’s work. Now, we are able to install Silkaj with pip, the Python package manager, which retrieves the package from Pypi:
pip3 install silkaj --user
Developer environment with Pipenv (for developers)
We switched from pyenv+pip
to Pipenv because Pipenv offers a better development environment.
Transactions
Multi-recipient transactions
Thanks to @cgeek, Silkaj is the first client, besides Remuniter, to be able to send multi-ouput transactions.
This means, with just one single transaction users will be able to send money to one or several pubkeys.
To do so, you need to separate the output pubkeys with a colon :
operator, as follow:
silkaj tx --auth-file --amount 2 --gtest --output \
DpJse2t7fyH9LC9FTMQHsMGZToXLmVQ8EV2eP47ipHDC:7KL2QXXFULDpsQY4UdSr5oEVx6rFE6oxeagRdkCX35bf
╒═══════════════════════════╤══════════════════════════════════════════════╕
│ pubkey’s amount before tx │ 15375.33 ĞTest │
├───────────────────────────┼──────────────────────────────────────────────┤
│ tx amount (unit) │ 4.0 ĞTest │
├───────────────────────────┼──────────────────────────────────────────────┤
│ tx amount (relative) │ 0.0104 UD ĞTest │
├───────────────────────────┼──────────────────────────────────────────────┤
│ pubkey’s amount after tx │ 15371.33 ĞTest │
├───────────────────────────┼──────────────────────────────────────────────┤
│ from (pubkey) │ 5B8iMAzq1dNmFe3ZxFTBQkqhq4fsztg1gZvxHXCk1XYH │
├───────────────────────────┼──────────────────────────────────────────────┤
│ from (id) │ moul-test │
├───────────────────────────┼──────────────────────────────────────────────┤
│ to (pubkey) │ DpJse2t7fyH9LC9FTMQHsMGZToXLmVQ8EV2eP47ipHDC │
├───────────────────────────┼──────────────────────────────────────────────┤
│ to (id) │ vit │
├───────────────────────────┼──────────────────────────────────────────────┤
│ to (pubkey) │ 7KL2QXXFULDpsQY4UdSr5oEVx6rFE6oxeagRdkCX35bf │
├───────────────────────────┼──────────────────────────────────────────────┤
│ to (id) │ cuckooland │
├───────────────────────────┼──────────────────────────────────────────────┤
│ comment │ │
╘═══════════════════════════╧══════════════════════════════════════════════╛
Do you confirm sending this transaction? [yes/no]: yes
Generate Transaction:
- From: 5B8iMAzq1dNmFe3ZxFTBQkqhq4fsztg1gZvxHXCk1XYH
- To: DpJse2t7fyH9LC9FTMQHsMGZToXLmVQ8EV2eP47ipHDC
- To: 7KL2QXXFULDpsQY4UdSr5oEVx6rFE6oxeagRdkCX35bf
- Amount: 4.0
Transaction successfully sent.
Notes:
- Each pubkey will receive the same amount of money.
- The purpose of this feature is to remunerate the developers working on Duniter.
Display panel
Before the transaction takes places, there is an indicator that shows the current amount of the pubkey and the amount after the transaction.
See example above.
Two wrappers
WoT view improvements
- Certification stock display
- Membership expiration due to membership document or certification expirations
- Identity status
moul-test (5B8iM…) from block #167750-0000A51F…
received 8 and sent 15/100 certifications:
| received_expire | received | sent | sent_expire |
|-------------------+---------------------+-------------------+---------------|
| 2018-11-21 | esprit ✔ | MeluaTest | 2018-11-19 |
| 2018-12-15 | GAS2000 ✔ | esprit | 2018-11-21 |
| 2018-12-19 | matograine-G1Test ✔ | GAS2000 | 2018-12-10 |
| 2018-12-20 | scanlegentil ✔ | guwop | 2018-12-10 |
| 2019-01-29 | vit ✔ | matograine-G1Test | 2019-02-04 |
| 2019-02-07 | Elois ✔ | Elois | 2019-02-07 |
| 2019-02-15 | cuckooland ✔ | Vincentest | 2019-02-07 |
| 2019-02-16 | piaaf31GT ✔ | cuckooland | 2019-02-07 |
| | | vit | 2019-02-07 |
| | | scanlegentil | 2019-02-07 |
| | | cgeek | 2019-02-07 |
| | | isawien45 | 2019-02-07 |
| | | aguy-dev | 2019-02-07 |
| | | piaaf31GT | 2019-02-14 |
| | | kimamila | 2019-02-15 |
Membership expiration due to certification expirations: 2018-12-20
member: True
Membership document expiration: 2018-12-31
Sentry: True
outdistanced: False
Scrypt authentication by default
Previously, we always had to specify an authentication method.
Now, when no authentication method is specified, two inputs will prompt to authenticate with the scrypt method.
You can still specify other authentication methods, as follow:
Authentication:
for amount, transaction, certification, and generate_auth_file commands
- Scrypt is the default authentication method with 4096,16,1 as default values
you can specify others values specifying following parameters: -n <N> -r <r> -p <p>
- Seed: --auth-seed
- File: --auth-file [--file=<path file>], './authfile' will be taken if there is no path specified
- WIF: --auth-wif
Ğtest
A new option --gtest
has been added allowing to communicate with the Ğ1-test currency network for testing purposes.
It uses the official node https://g1-test.duniter.org.
Network performances
With this update, Silkaj is retrieving information only once. Before, data had to be retrieved every time needed. Now, that the piece of information has been fetched, it is stored.
Python 3.7 support
Silkaj has been tested with Python 3.7. Results show that there has been no issues.
Python 3.7 has been set as the current version for the Pipenv development environment.
New commands
License
Originally built for the certification feature, the license
command allows the consultation of the Ğ1’s license at any time given.
About
A new command displays information about Silkaj:
silkaj about
@@@@@@@@@@@@@
@@@ @ @@@
@@@ @@ @@@@@@ @@. silkaj 0.6.0
@@ @@@ @@@@@@@@@@@ @@,
@@ @@@ &@@@@@@@@@@@@@ @@@ Powerfull and lightweight command line client
@@ @@@ @@@@@@@@@# @@@@ @@(
@@ @@@@ @@@@@@@@@ @@@ @@ Built in Python for Duniter’s currencies: Ğ1 and Ğ1-Test
@@ @@@ @@@@@@@@ @ @@@ @@
@@ @@@ @@@@@@ @@@@ @@ @@ Authors: moul, tortue, jytou, cebash, cgeek
@@ @@@@ @@@ @@@@@@@ @@ @@
@@ @@@@* @@@@@@@@@ @# @@ Website: https://silkaj.duniter.org
@@ @@@@@ @@@@@@@@@@ @ ,@@
@@ @@@@@ @@@@@@@@@@ @ ,@@ Repository: https://git.duniter.org/clients/python/silkaj
@@@ @@@@@@@@@@@@ @ @@*
@@@ @@@@@@@@ @ @@@ License: GNU AGPLv3
@@@@ @@ @@@,
@@@@@@@@@@@@@@@
Logo
Silkaj’s logo which has been designed by @Attilax is now fully funded!
Changelog
For further details, check out the changelog.
Thanks
Special thanks to @Moul, @Cebash, @cgeek, and @Attilax
Thanks to @vit, @Inso, @vincentux, and @jardin.
Install
Future development cycles
-
v0.7.0 will be focusing on refactoring Silkaj in order to migrate to DuniterPy usage, a more robust API implementation to share a common code with Sakia.
-
v0.8.0 will add new features based on DuniterPy such as new authentication methods as well as being allow to send wot documents: identity publication, membership publication and renewal, and revocation.
-
v0.9.0 Let’s see what come to this milestone.
Contribute
If you are pleased with the achievements, please contribute by reporting bugs, contributing to the code or giving Duniter’s developers libre units to improve our little world.