Silkaj team is pleased to announce the stable release of Silkaj version 0.10.0
The most important changes are highlighted in this article, if you are looking for a comprehensive list of changes, check out the changelog.
This release comes with the handling of the complete life cycle of the revocation file,
the ability to read transaction amounts and recipients listing from a file, convenient for recurrent transaction.
Last but not least, the code handling Ğ1 monetary license has been refactored.
The upstream changes have been retrieved and now features the license into six languages.
Under the hood, Silkaj codebase has been updated to use DuniterPy v1.0,
which comes with breaking backward compatible changes on the
Documents classes and
the drop of the asynchronous property.
As always, this release also comes with an emphasis on the development environment,
pre-commit usage generalization with the introduction of new hooks.
The complete lifecycle of the revocation document and its storage in a file is now supported!
revocation command comes with four sub-commands:
silkaj revocation --help Usage: silkaj revocation [OPTIONS] COMMAND [ARGS]... Create, save, verify or publish revocation document. Subcommands optionally take the path to the revocation document. Options: -h, --help Show this message and exit. Commands: publish Publish revocation document. revoke Create and publish revocation document. save Create and save a revocation document. verify Verifies that a revocation document is correctly formatted and...
With these command, you can generate a revocation file, verify its integrity and publish to actually revoke an identity.
For the first time we implemented sub-subcommands thanks to Click.
In the future, we will implement more commands using this feature, since we now know how to implement it.
You can now define a file following this format. For instance, a file named
<ABSOLUTE|RELATIVE> # comment 1 <amount1> <pubkey1> # comment 2 <amount2> <pubkey2>:[<checksum2>]
It lists the amounts and the recipients’ pubkeys for which the multi-recipients transaction will be issued.
The checksum can be append to the pubkey to have its integrity checked.
And pass it to
silkaj tx command as follow:
silkaj --gtest tx -f recipients.txt
It will generate a multi-recipients transaction with the amounts in absolute or relative reference depending of the setted header (
The upstream repository containing the licenses has been updated.
This update brings fixes and improvements on the existing languages and brings additional new languages: Esperanto, Espagnol, Italian, and Portuguese
The display is now only displaying the embedded license files in the console, since it’s available in six up-to-date languages.
silkaj license In which language would you like to display Ğ1 monetary license? (es, en, eo, it, fr, pt) [en]: fr
The display in the browser has been removed since there were just two websites links to outdated licences in French and English.
If you missed DeathReaper crowdfunding completion, you can check this message or the complete post if you have not been aware of.
The automated generation of Silkaj Docker images has been implemented in the first place to distribute DeathReaper.
This is a new way to install Silkaj and its environment. This is convenient to distribute non-stable releases.
You can find the documentation on how to use these images.
- The asynchronous property has been dropped. The HTTP library usage has been migrated from
- The global option to specify a custom endpoint has been renamed from
- Silkaj network layer has been refactored, bringing a more robust code
Support have been added to support DuniterPy v1.0 which came with many breaking backward compatible changes in the
This release introduces support for Python v3.10 and drops support for Python v3.6.
pre-commit usage has been generalized with
These hooks are run as jobs into the CI.
pre-commit hooks (
mypy) will be introduced to have more guardrails in order to ensure that future implementations will allow to reach higher code quality. Then, it’s planned to migrate from
Texttable, and then restructure the repository. Once these prerequisites have been completed, the emphasis will be put onto migrating to Duniter v2 using Substrate. This means using new APIs: RPC, Subsquid, Using new documents called extrinsincs, and probably other changes.