Releases: aave-dao/aave-v3-origin
Releases · aave-dao/aave-v3-origin
v3.5.0
v3.4.0
Minor Changes
- 2f25963: Release of Aave v3.4.0
Patch Changes
- bb6ea42: Added changesets, Added release workflow, Updated gas snapshots to run in isolation
- a0512f8: In order to separate "dust", that is initially deposited on asset listing, from the treasury income a new "dustBin" contract was introduced. It does not hold any functionality, besides being upgradable by the DAO.
v3.3.0
Summary
v3.3 version of the Aave protocol, including:
- Introduction of bad debt accounting, to be compatible with the upcoming Umbrella system.
- Improvement of the liquidations close factor mechanism, and complementary ones.
- Optimisation of ReserveConfiguration bit operations.
- Misc integrations changes on Pool, PoolDataProvider, different peripheral contracts.
Changelog
-> Core
ReserveConfiguration
- The bitmasks and bit operations have been inverted, causing exactly the same output on the bitmaps data, but in a more efficient way.
Pool
- Added new events related with deficit data
- Added permissioned
eliminateReserveDeficit(), by a new Umbrella role registered on the PoolAddressesProvider. - Added new getters for commonly used addresses (a/v Token) and deficit.
- [BREAKING] Removed
getReserveDataExtended(), marked as deprecated on 3.2.
Errors
- New 101-105 codes
DataTypes
__deprecatedStableBorrowRate(not exposed already) has been replaced bydeficit
ConfiguratorLogic
- Minor internal changes to fetch data more efficiently from the Pool.
ReserveLogic
- On updateState(), use reserveCache.reserveLastUpdateTimestamp as .cache() is always done just before in the protocol flow. Same for
getIsVirtualAccActive(). - Added
eliminateDeficit()function
LiquidationLogic
- Added new MIN_BASE_MAX_CLOSE_FACTOR_THRESHOLD and MIN_LEFTOVER_BASE public constants
- Added management of bad debt accounting (deficit) and burning, whenever it accrues.
- Introduced new logic to avoid protocol dust.
-> Periphery
AaveProtocolDataProvider
- Uses more granular getters on the Pool, saving gas and reducing future problems with backwards compatibility.
- Exposes the new deficit reserve data field via a
getReserveDeficit()getter.
UIPoolDataProvider
- [BREAKING] The AggregatedReserveData struct returned from
getReservesData()now has an extradeficitfield. - Backwards compatible change of type returned for networkBaseTokenPriceInUsdProxyAggregator and marketReferenceCurrencyPriceInUsdProxyAggregator.
WrappedTokenGatewayV3
- Uses more granular getters on the Pool, saving gas and reducing future problems with backwards compatibility.
- Now exposes WETH & POOL as public variables
ParaswapAdapters
- Uses more granular getters on the Pool, saving gas and reducing future problems with backwards compatibility.
EmissionManager
setRewardOracle()now requires a different input type for rewardOracle, but backwards compatible
RewardsController
- Transparent changes on internal interface types used, no effect externally
All instances of the ChainlinkOracle interface have been aligned to a single version containing all methods.
While we are aware that non of the contract actually needs all methods, it improves DX within the aave-v3-origin repo to assume they do.