Program Changes

With the revamped programs, some features have moved places and new features got introduced.
The new architecture is finally semantically grouped instead of historically grown!

Moved Features

FeatureBeforeAfter
Pools and pool related instructionsTSWAPAMM
Legacy/T22/WNS listings and listing related instructionsTSWAPMarketplace
Legacy/T22/WNS single NFT bidsTB1DMarketplace

Summarized:

  1. TB1D is deprecated and all of its functionality got moved to Marketplace.
  2. TSWAP went from having pools, listings, and shared escrows to only shared escrow support going forward.
    Its prior functionalities got semantically split into AMM for pools and into Marketplace for listings & bids.

New Features

The new programs are introducing a few changes that improve usability and add additionally features.

  • Collection Bids are now possible for all supported token standards - that means that you don't necessarily have to create pools anymore to make a collection bid for legacy collections
  • Fee sharding got introduced to allow better parallelized transaction throughput by decreasing write-lock contention
  • Fee splitting allows external frontends or programs to receive a share on generated fees by specifying a fee wallet as makerBroker or takerBroker
  • Marketplace now has an optional cosigner to allow other frontends to make permissioned listings that can only get taken via their frontend
  • Private taker enables the possibility of making listings only takeable for an arbitrary taker wallet
  • Listings can specify any SPL as currency. Non-SOL orders won't show up on the Tensor.Trade frontend, but can easily be integrated in any custom frontend
  • AMM deposit receipts allow the on-chain mapping of price-lock orders to associated NFT deposits without indexing past transactions