Skip to content
This repository has been archived by the owner on Nov 29, 2024. It is now read-only.

Latest commit

 

History

History
194 lines (123 loc) · 10.3 KB

CHANGELOG.md

File metadata and controls

194 lines (123 loc) · 10.3 KB

Next release

v2.2.0

  • Support for private auctions. Bidders of a private auction must obtain an authorization from a central service.
  • Distribute the shares of joint accounts directly in USDC.

v2.0.0

  • Make SimpleAuction, SimpleExchange, and FiatGateway work with ERC20 directly.
  • Remove the function FiatGateway.buyCereFromUsd.

v1.1.0

  • Fix a bug of incorrect royalty collection in auctions.
  • Fix a vulnerability that may allow a buyer to disrupt an auction.
  • Additional public function transferFrom has been implemented in Freeport contract to support the above fixes.

2022-01-28: Upgradeability

Make Freeport, FiatGateway, SimpleAuction, and NFTAttachment upgradeable.

2022-01-07: Extended NFT Attachments

NFT Attachments now support variable-sized attachment data, and separate events for minter, owner, and anonymous senders. This is included in the deployment 2021-12-31 below.

2021-12-31: ERC20 Adapter

Use an ERC20 adapter instead of a Polygon bridge adapter. Commit caefd460 deployed.

Mainnet

Contracts: Freeport and Fiat Gateway and Simple Auction and NFT Attachment and Forwarder and Bypass Forwarder and USDC ERC20.

Accounts: Fiat-to-NFT Service ( see prod_setup). No Meta-tx Relayer Account yet. Admin.

Stage

Contracts: Freeport and Fiat Gateway and Simple Auction and NFT Attachment and Forwarder and Bypass Forwarder and TestERC20.

Accounts: Fiat-to-NFT Service ( see stage_setup). No Meta-tx Relayer Account yet. Admin.

Dev

Contracts: Freeport and Fiat Gateway and Simple Auction and NFT Attachment and Forwarder and Bypass Forwarder and TestERC20.

Accounts: Fiat-to-NFT Service ( see dev_setup). No Meta-tx Relayer Account yet. Admin.

2021-11-08: CID Attachments

  • Attach arbitrary objects to NFTs.

NFTAttachment commit 89696561 deployed for Freeport version 2021-09-13 and 2021-11-03 below.

2021-11-04: Auction with getter

  • Add the getter for bids (sellerNftBids).
  • Prevent potential reentrancy bug.

SimpleAuction commit a74e4db0 deployed for Freeport version 2021-09-13 and 2021-11-03 below.

2021-11-03: Auction with royalties (dev deployment)

  • Auction sales now capture royalties, if any.

Commit 6df6c349 deployed on Polygon Mumbai.

Contracts Freeport and Fiat Gateway and Simple Auction and NFT Attachment.

Fiat-to-NFT Service Account ( see dev_setup). Admin Account (Aurel).

Exchange rate of 0.1 CERE_stage for $0.01.

2021-10-21: Simple Auction

  • A contract that holds auctions and make transfers in the main Freeport contract.
  • An external function captureFee on the Freeport contract that can be used by authorized contracts (i.e., the auction contract).
  • Note: The call to captureFee is disabled in this deployment in order to work with the previous versions of Freeport. After deployment of the Freeport of this commit, this call can be reenabled (see TODO in SimpleAuction.sol).

Commit 032fbc7d deployed in dev and staging, see the links to "Simple Auction" in the sections below.

2021-09-13: Staging deployment

  • Reduce permissions in migrate and dev_setup scripts.

Commit 7eb3e339 deployed on Polygon Mumbai.

Contracts Freeport and Fiat Gateway and Simple Auction and NFT Attachment.

Fiat-to-NFT Service Account ( see stage_setup).

Admin Account (Aurel).

Exchange rate of 0.1 CERE_stage for $0.01.

2021-09-06: Exchange rate event and getter

  • Add event SetExchangeRate and function getExchangeRate.

Commit 07c8ad0f on Polygon Mumbai: Freeport and Fiat Gateway and Simple Auction.

2021-09-03: Fiat Gateway and Simple Exchange

  • Validate that enough CERE were bought. See FiatGateway.
  • Add getOffer function to get the NFT price. See Freeport.

Commit e8d42c55 on Polygon Mumbai: Freeport and Fiat Gateway

2021-08-11: Fiat Gateway

  • Add a contract to handle fiat payments and buy CERE and NFTs. See FiatGateway.

Commit be6ed7dc on Polygon Mumbai: Freeport and Fiat Gateway

2021-08-09: Simple Exchange

  • Add a basic NFT sale functionality with make / take functions. This captures variable royalties based on the NFT price. See SimpleExchange.

Commit e1852250 on Polygon Mumbai: 0x656E87eC4607E81896C41de2135db72ee8abce13

2021-07-23: Integration with meta-transactions, marketplaces, and royalties bypass

  • Add access control mechanism to support other features in a flexible way.

  • Introduce a meta-transactions forwarder contract and deployment. See MinimalForwarder and the deploy script.

  • Support meta-transactions using the standard ERC2771. See the role META_TX_FORWARDER in MetaTxContext

  • Add a mechanism to bypass royalties. There can be a meta-transaction forwarder whose transactions are not subject to royalties. See the role BYPASS_SENDER in TransferFees, used for BypassForwarder.

  • Support marketplaces in a generic way. The smart contracts from marketplaces can be connected by giving them permissions to make transfers. See the role TRANSFER_OPERATOR in TransferOperator.sol

2021-07-14: ERC20 bridge

  • Add support for Polygon Bridge with the deposit and withdraw functions.
  • Make the contract verifiable on Polyscan (solidity version, dependencies, flattening).

Commit 309ba894 on Polygon Mumbai: 0x09cA13A8dA7A049696dEc9df57f8948ed6702a71

This contract is bridged to a test ERC20 on Ethereum Goerli: 0x35C33219cFC617BA362860e28E7cf25085cA1355 . Try it with Polygon UI.

Polygon bridge

2021-07-05: First version

  • ERC1155 and mint function
  • Royalties configurable per NFT
  • Royalties capture in transfers
  • Joint Accounts

Commit 021f0116 on Polygon Mumbai 0x509Dfd7c670AC89246723EFe0f80f433BfbB6E5c