Skip to content

v11.8.0

Choose a tag to compare

@ryanio ryanio released this 13 Aug 00:05
· 1 commit to main since this release

What's Changed

Minor

  • Check the payment token before fulfilling an ERC20-denominated listing. fulfillOrder now reads the buyer's balance and their allowance for the address Seaport pulls the payment through, and throws an error naming the spender and the exact approve amount instead of letting the transaction revert with a bare "execution reverted". The spender is the conduit registered for fulfillerConduitKey, or Seaport itself when that key is bytes32(0). Native-priced listings and offer fulfillments are unaffected, and an unreadable response shape or a failed RPC read skips the check rather than blocking the purchase. (#597)

Patch

  • createListingAndValidateOnchain(), createOfferAndValidateOnchain(), buildListingOrderComponents() and buildOfferOrderComponents() no longer request an EIP-712 signature. They built the order by running seaport-js executeAllActions(), which signs, then discarded the signature before validating onchain. Callers got a wallet prompt for nothing, and contract accounts that cannot produce an offchain signature could not use the onchain path at all, which is the case it exists for. Token approvals still run and each is confirmed before the order is validated. validateOrderOnchain() takes an optional third protocolAddress argument and rejects an unsupported protocol, matching approveOrder() and the fulfillment methods. Requires @opensea/seaport-js 4.2.0. (#609)

Full Changelog: ProjectOpenSea/opensea-devtools@sdk-v11.7.2...sdk-v11.8.0