- Add
ICeloGasToken
andIFiatTokenFeeAdapter
per Celo documentation - Add
FiatTokenFeeAdapterProxy
andFiatTokenFeeAdapterV1
to support USDC as gas on Celo - Implement
debitGasFees
andcreditGasFees
inFiatTokenCeloV2_2
- Add ERC-1271 signature validation support to EIP-2612 and EIP-3009 functions
- Combine the balance state and the blacklist state for an address in a
balanceAndBlacklistStates
map to reduce gas usage - Update
DOMAIN_SEPARATOR
to be a dynamic value - Remove
notBlacklisted
modifiers forapprove
,increaseAllowance
,decreaseAllowance
andpermit
- Enable bypassing
TIMESTAMP
opcode inpermit
by usinguint256.max
- Add the multi-issuer minter contracts from the
multi-issuer
branch
- Move locked USDC to a "lost and found" address and blacklists itself so that accidental sends will no longer be possible
- Conform to EIP-3009 in FiatToken
- Add
receiveWithAuthorization
- Remove
approveWithAuthorization
,increaseAllowanceWithAuthorization
anddecreaseAllowanceWithAuthorization
- Add
- Add support for EIP-2612 in FiatToken
- Add
transferWithAuthorization
,approveWithAuthorization
,increaseAllowanceWithAuthorization
,decreaseAllowanceWithAuthorization
to enable ETH-less transactions - Add
increaseAllowance
anddecreaseAllowance
to mitigate the multi-withdrawal attack vulnerability in ERC-20approve
function - Update Solidity version to
0.6.12
- Add Rescuable functionalities to FiatToken
- Update Solidity version to
0.6.8
- Remove
ifAdmin
modifier from admin() and implementation() in FiatTokenProxy
- Create ERC-20 compliant FiatToken contract
- Add Ownable, Pausable and Blacklistable functionalities to FiatToken
- Create FiatTokenProxy contracts based on Zeppelinos's Unstructured-Storage Proxy pattern