ReleaseRegistry.sol
Inherits: Governance
Author: yearn.finance
Used by Yearn Governance to track on chain all releases of the V3 vaults by API Version.
State Variables​
name​
string public constant name = "Yearn V3 Release Registry";
numReleases​
uint256 public numReleases;
factories​
mapping(uint256 => address) public factories;
releaseTargets​
mapping(string => uint256) public releaseTargets;
Functions​
constructor​
constructor(address _governance) Governance(_governance);
latestFactory​
Returns the latest factory.
Throws if no releases are registered yet.
function latestFactory() external view virtual returns (address);
Returns
Name | Type | Description |
---|---|---|
<none> | address | The address of the factory for the latest release. |
latestRelease​
Returns the api version of the latest release.
Throws if no releases are registered yet.
function latestRelease() external view virtual returns (string memory);
Returns
Name | Type | Description |
---|---|---|
<none> | string | The api version of the latest release. |
newRelease​
Issue a new release using a deployed factory.
Stores the factory address in factories
and the release
target in releaseTargets
with its associated API version.
Throws if caller isn't governance
.
Throws if the api version is the same as the previous release.
Emits a NewRelease
event.
function newRelease(address _factory) external virtual onlyGovernance;
Parameters
Name | Type | Description |
---|---|---|
_factory | address | The factory that will be used create new vaults. |
Events​
NewRelease​
event NewRelease(uint256 indexed releaseId, address indexed factory, string apiVersion);