DUNE v1.1.0 Release Notes
DUNE is a tool to abstract over Leap programs, CDT, and other services/tools to perform the functions of node management, compiling smart contracts, running tests, and several other common tasks required to develop smart contracts on Antelope blockchains.
📝 | Please note that there are pending reviews for Chocolately and Brew support that will be available in the coming weeks. For now, packages have been attached within the release. |
---|
Read on for details.
Features
DUNE plug-in extension
DUNE plugins are Python scripts that allow users to customize and add new functionality to DUNE. They can be used to add new command-line options, interact with DUNE's internals, or perform other tasks related to cleos / nodeos.
They need to be placed in the subdirectory of ../src/plugin/
and define three functions: add_parsing
, set_dune
, and handle_args
. Examples of plugins can be found in the plugin_example
directory.
Installation on Windows
DUNE is now available as a Chocolatey package (*.nupkg
attached to the release) and can be installed on Windows. Steps which are needed to install DUNE using Chocolatey have been updated in the documentation.
Packaging
DUNE can now be packaged as an RPM or DEB package. The documentation for installing DUNE on Linux has been updated.
DUNE image
DUNE now uses pre-built Docker image for running DUNE. The image is automatically downloaded during the first usage, so there's no need to build it from scratch.
Dynamic updates
DUNE now supports dynamic updates. Users can upgrade DUNE image to the latest version with the command dune --upgrade
. Note: To upgrade DUNE python scripts you still need to install latest DUNE version from release page / Chocolatey repository.
Leap/CDT versioning
DUNE is allowing users to change the CDT and leap versions. This can be done by running the command dune --cdt <version>
or dune --leap <version>
. To build an image with specific versions, users can run the script bootstrap.sh
with the appropriate arguments.
Functional tests
Users can validate DUNE by running functional tests using command pytest tests
in the DUNE directory.
Building, compatibility, and upgrading
Upgrading from prior releases
If you have previously cloned DUNE, you may still have an older version of the Docker image. To upgrade to the latest version of DUNE, you can run the command dune --upgrade
, which will download the most recent version of the image from GitHub Packages.
Alternatively, you can remove the old image by running the command dune --destroy-container
followed by docker image rm -f dune:latest
. Please note that upgrading or removing the old image will delete the associated container and image. Before proceeding, be sure to export any wallets or nodes that you want to keep.
To confirm the upgrade was successfull the command dune --version-all
should give you following output:
DUNE v1.1.0
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
Listing...
leap/now 3.2.1 amd64 [installed,local]
WARNING: apt does not have a stable CLI interface. Use with caution in scripts.
Listing...
cdt/now 3.1.0-1 amd64 [installed,local]
Further details on changes since last release
Contributors
Special thanks to the contributors that submitted patches for this release:
Full list of changes since last release
PRs
- (30)Add extra title to section on bootstrapping
- (27)fix bootstrap error
- (34)Fix cause of issues with shared files
- (40)triage new issues by adding label & assigning to project
- (35)New command --debug is added
- (47)Fix of issue #5
- (44)The DUNE installation description has been updated in
- (42)The code has been reformatted according to PEP8 style guide
- (43)A call of Pylint has been added to GitHub Actions
- (52).pylintrc file moved to the project root to config pylint a globally
- (53)Move work dir to app dir
- (59)Fix exception capture exit
- (58)Fix start option
- (67)Config restart fix
- (71)--gdb flag description corrected
- (72)Description for command -- is added
- (73)Fixes for import and export of nodes.
- (77)Correct column widths in
--list
node display to be aesthetically pleasing. - (50)Fix error when starting up DUNE: tail: cannot open '&>'
- (82)Added a memo describes details of work with Docker
- (88)Fix failing test_project.py - merge to functional-tests branch
- (79)Functional tests
- (84)Several errata fixes in the description of DUNE.
- (75)Leap/CDT versioning, dynamic updates and packages
- (89)Run functional tests
- (94)Added creating rpm and Chocolatey packages
- (96)Easy install of DUNE on Windows (publishing DUNE to Chocolatey repository)
- (93)Fixed bootstrap sequence
- (105)DUNE plugin proposal
Full Changelog: v1.0.0...v1.1.0