EOSIO.Contracts v1.8.0-rc1 Release Notes
Pre-releaseUnit tests no longer build by default (#320)
To build unit tests, the user must now explicitly request them to be built by setting the BUILD_TESTS
CMake variable to true
. When using the cmake
command, this can be done by passing -DBUILD_TESTS=true
as a command line argument. Alternatively, when using the build.sh
script, the user can simply pass in the -t
flag.
By making unit test builds opt-in, EOSIO now becomes an optional dependency of EOSIO.Contracts. Although it was always possible to build the contracts without installing EOSIO, many users were confused by the error messages that resulted when the process unsuccessfully attempted to build the unit tests. Now, users who do not care about the unit tests can easily build the contracts without seeing distracting error messages. They only need to satisfy the EOSIO.CDT dependency, which can be easily installed using the binaries. If users do wish to build unit tests, they will still be required to build and install the EOSIO dependency from source.
System contract
Configurable Inflation (#247, #301)
A new action setinflation
has been added to the eosio.system contract. This action enables configuring the overall inflation rate as well as adjusting the fraction of the inflation that goes towards block producer pay versus accumulating in eosio.saving
and the fraction of block producer pay that gets divided between block production rewards versus vote pay rewards.
Other changes
- (#238) Created Universal Pipeline Configuration File
- (#242) Update contracts to be up-to-date with
eosio.cdt
v1.6.1 - (#257) workaround check_transaction_authorization bug
- (#253) Small Changes to the System Contract
- (#256) fix assertion in create_core_token; clean up inconsistent license references - develop
- (#259) Custom path support for contract build script.
- (#264) Add Ricardian contracts - develop
- (#266) remove unnecessary EOSIO_DISPATCH macros; add action wrappers for activate and reqactivated actions - develop
- (#270) Add is_account check to token::open
- (#268) separately compile cpp files in system contract; add Ricardian for setinflation action
- (#274) fix double-move bug in system_contract::registration - develop
- (#283) pass through Boost variables to unit tests external project - develop
- (#298) Default list of eosio subdirs as empty. Check the default directory only if it exists.
- (#315) Travis CI and Buildkite 2.0
- (#323) Add IMPORTANT file and update README
- (#326) rename IMPORTANT to IMPORTANT.md - develop
Dependencies
This release depends on eosio.cdt v1.6.x and (optionally) on eosio v1.8.x. To compile the contracts in this release, first install eosio.cdt v1.6.2. To also compile the unit tests, first build and install eosio v1.8.1. The eosio.bios and eosio.system contracts in particular also require that the PREACTIVATE_FEATURE
consensus protocol upgrade has been activated on the EOSIO blockchain before they can be deployed.
Thanks!
Special thanks to the community contributors that submitted patches for this release:
Disclaimer: All repositories and other materials are provided subject to this IMPORTANT notice and you must familiarize yourself with its terms. The notice contains important information, limitations and restrictions relating to our software, publications, trademarks, third-party resources, and forward-looking statements. By accessing any of our repositories and other materials, you accept and agree to the terms of the notice.