Releases: thirdweb-dev/dotnet
Releases · thirdweb-dev/dotnet
v2.5.1
What's Changed
- Removes
latest
parameter frometh_estimateGas
being used in ThirdwebTransaction.EstimateGasLimit on non-zk chains and methods that use it by extension, fixing issues on chains that do not support that parameter such as Binance Testnet
v2.5.0
What's Changed
- Adds MarketplaceV3 extensions.
- Supports
IDirectListings
,IEnglishAuctions
andIOffers
- Easier to use than direct
ThirdwebContract.Write
calls as the extensions are type safe and able to automatically handle approvals and more (opt-in). - Full reference here - accessible using
contract.Marketplace
extensions.
- Supports
- New Utilities
- Adds standalone
Utils.FetchGasPrice
(legacy tx) andUtils.FetchGasFees
(eip-1559) functions to retrieve chain gas info if needed. - Adds
Utils.HexToBigInt
converting hex strings toBigInteger
directly.
- Adds standalone
v2.4.0
What's Changed
- Speeds up
SmartWallet
transactions and optimizes various internal flows. - Exposes Account Linking functionality (LinkAccount & GetLinkedAccounts) at the
IThirdwebWallet
level.- You may now link accounts directly to a
SmartWallet
signer i.e. personal wallet without needing to fetch the signer withSmartWallet.GetPersonalWallet
or deal with casting to the right types.
- You may now link accounts directly to a
- Adds
Utils.GetSocialProfiles
- fetch ENS, Farcaster and Lens profiles given a wallet address or ENS as well as their metadata and more. - Adds internal feature to automatically detect if a chain is built on the zkSync stack and allow zkSync specific functionality such as Native Account Abstraction automatically.
v2.3.1
What's Changed
- Adds ZkSync Native Account Abstraction support for Creator Testnet.
v2.3.0
What's Changed
- Improved default redirect page visuals when logging in with OAuth from desktop platforms.
- You now have the option to override said html by passing it to
InAppWalletBrowser
(.NET default when not overriden) orCrossPlatformUnityBrowser
(Unity default when using ThirdwebManager) constructors.
- You now have the option to override said html by passing it to
ThirdwebClient.Create
no longer takes in raw headers, now only takes in general sdk information optionally. This should not affect most users.- Improved http client cloning when needed in external modules.
v2.2.2
What's Changed
- Significantly reduce CPU load when making long running requests.
v2.2.1
What's Changed
- New AuthProvider:
Coinbase
forInAppWallet
andEcosystemWallet
. - Fixed issue where
EcosystemWallet
account linking could fail when linking OAuth.
v2.2.0
What's Changed
- Ecosystem Wallets implementation in .NET is now compatible with our previous JS implementation of Ecosystem Wallets.
- If you had created accounts or had a user base from web sharded Ecosystem Wallets, they will automatically be migrated to the new performant enclave system upon first login.
- No breaking API changes here, this change detects if an authenticated user requires migration and performs it.
- ERC721 and ERC1155 NFT Contract Extensions such as _GetAll and _GetOwned now have default pagination (100 first token ids).
- This is to avoid fetching an entire collection at once by mistake.
- If the contract is ERC721A,
tokensOfOwnerIn
will be used before falling back to other extensions. - If the contract is ERC721Enumerable,
tokensOfOwnerByIndex
will be used before falling back to single fetching. - Improved batching of such calls.
- Implemented ConcurrentQueue for RPC and improved batching/caching logic
- If you do end up making large calls, such as fetching an entire collection, it should be handled gracefully
- Avoid a lot more 429s
- Speed up Smart Wallet user operations
- No longer estimates the entire user operation gas and simulates prior to sending it.
- This does not affect errors being caught.
- This means if you are estimating gas using ThirdwebTransaction, you will only be returned the internal call gas limit rather than the entire op.
- Less API calls at runtime, 30% faster execution.
- If you still want to estimate the actual user operation gas costs, you can use SmartWallet.EstimateUserOperationGas
- Fixed issue with
_MintWithSignature
extensions where the expected signature bytes would be passed as hex.
v2.1.1
What's Changed
- Adds
AuthProvider.X
as a login option. - Fixes edge case when sending two
SmartWallet
transactions at once from an undeployed account and using EntryPoint 0.7.0 where deployment code would be duplicated causing an error.