Full changelog coming soon. For now, here are the most important changes for doing major migrations:
OpenSeaPort::computeFees()No longer accepts afeesparameter, relying solely onasset.
Version 1.0 introduces bundling for semi-fungible and fungible assets, serialized asset collections, a smaller bundle size, and more, along with many bug fixes.
Breaking directory changes
- Many constants inside of
/utilshave been moved to/constants. - Other utils have been moved to
/utils/utils
Breaking type changes
profile_img_urlin theOpenSeaAccounttype has been renamed toprofileImgUrlOpenSeaPort::computeFees()now returns a new type,ComputedFees, which expands "BPS" to "BasisPoints" for each of its member keys
Breaking interface changes
OpenSeaPort::computeFees()now takes in a single asset, and returns a new and more consistent type,ComputedFeesschemaNamehas been moved out of main method calls and into theAssettypeOpenSeaAPI::getAsset()now accepts named arguments, consistent with other methodsOpenSeaPort::createFactorySellOrdersnow accepts anassetsparameter consistent with the otherAssettype parameters in other methodsOpenSeaPort::getTokenBalance()no longer defaults to the WETH address if notokenAddressis set. And it accepts aschemaNameparameter instead of an ABIOpenSeaPort::approveNonFungibleToken()has been renamed toapproveSemiOrNonFungibleToken(), though it always worked for semi-fungible tokens like ERC-1155
Removed deprecations:
OpenSeaPort::transferOne(), replaced byOpenSeaPort::transfer()tokenIdandtokenAddressparameters for most SDK methods, replaced by creating anAssettype and passing that in
Version 0.6 introduces some major new features, including trading fungible and semi-fungible assets (including ERC-20 and ERC-1155 assets). These have been architected to maximize backwards compatibility, but there were a few breaking changes:
- The
Assettype now hasversioninstead ofnftVersionas a property - Similarly, the
NFTVersiontype has been renamedTokenStandardVersion computeFeesnow takes in a single, annotated OpenSeaAsset as a parameter instead of a list of assets- In
isAssetTransferrable,didOwnerApprovewas renamed touseProxy
Non-breaking changes with deprecation notices:
getFungibleTokenshas been deprecated. Useapi.getPaymentTokens- Methods now show a deprecation warning when used with
tokenIdortokenAddressas arguments, instead of usingassetorassets(of typeAsset/Asset[])