Releases: dl-solarity/solidity-lib
v2.3.2
v2.3.0
v2.2.0
Release notes v2.2.0
What's new
- Added
TypeCasterlibrary - Added
lowerBound()andupperBound()array functions toArrayHelperlibrary - Added
insert()andreverse()functions support forbytes32arrays
Changes
- Fixed
PriorityQueueinterface - Removed
sqrt()function fromDSMathlibrary as it was added to Openzeppelin 4.8.0 - Moved
asArray()functions fromArrayHelpertoTypeCasterand renamed them toaddSingletonArray()
v2.1.0
Release notes v2.1.0
What's new
- Added
PriorityQueuedata structure library that is based on a heap. - Added an extension to
RBAC-RBACGroupableto organize users into groups. - Added
MerkleWhitelistedcontract to simplify the creation of whitelists that are based on Merkle proofs. - Added functions to
ArrayHelperlibrary to compute prefix sums and return range queries. - Added snarkjs
VerifierHelperlibrary to aid the interaction with the generated verifier that uses static arrays. - Added
sqrtfunction toDSMathlibrary.
Other changes
- Updated Openzeppelin contracts version from
4.5.0to4.8.0. - Fixed typos in README and Natspec
v2.0.0
Release notes v2.0.0
access-control
- Added
RBAC(Role Based Access Control) contract, which allows you to define specific PERMISSIONS for specific RESOURCES and aggregate them into the roles. The roles can be further assigned to the users.
compound-rate-keeper
-
Added
AbstractCompoundRateKeepercontract, which implements the logic of calculating compound interest with different capitalization periods. -
Added preset with ownable logic -
OwnableCompoundRateKeeper.
contracts-registry
-
Added
ContractsRegistrymodule, which can store system contracts, upgrade them, and resolve their dependencies via a special mechanism. The module can be used for maximum flexibility in the system architecture. Comes as a reference implementation of a Contracts Dependencies Registry EIP. -
Added preset with ownable functionality -
OwnableContractsRegistry.
contracts-registry/pools
-
Added
PoolContractsRegistrymodule, which is designed for convenient deployment of pool contracts of different types using aBeaconProxyfactory. The module leverages theContractsRegistryfunctionality by making the pools upgradeable and dependable. -
Added preset with ownable functionality -
OwnablePoolContractsRegistry.
diamond
-
Added
Diamond facetmodule, which provides the custom implementation of the Diamond proxy EIP. -
Added facet with ownable functionality -
OwnableDiamond.
libs
arrays
-
Added
ArrayHelperlibrary, which implements a number of functions for working with arrays:reverse,asArray,insert. -
Added
Paginatorlibrary for convenient contracts pagination. -
Added
SetHelperlibrary to ease work with OpenZeppelinEnumerableSet, as well asStringSetfrom this repository.
data-structures
- Added
StringSetlibrary which is based on OpenZeppelin sets.
decimals
- Added
DecimalsConverterlibrary, which allows you to convert numbers to different precisions. For example, it is good for converting ERC20 tokens with different decimals.
math
- Added
DSMathlibrary, which implements the function of exponentiation with accuracy.
utils
- Added a
Globalsfile that contains various useful constants.