Releases: thirdweb-dev/unity
v4.8.0
What's Changed
Unity SDK 4.8.0 is here!
It brings you various reliability, performance and API improvements, let's go through them.
Gas Fees
In most situations, you do not typically want to set a gas price or max fee/priority fee. The SDK used to use a simple way to suggest those before broadcasting your transaction. It now uses a custom flow when no gasPrice is provided to set your 1559 gas fees in a way that will both be more reliable as well as speed up transactions without increasing the cost too much. A follow-up to this update for L2s will be arriving in upcoming releases, whereby we may increase your gas fee internally and actually end up costing you less in total paid $ in L1 fees.
This should also fix issues on chains like Fantom and others.
The Great Refactor
Everyone hates when a dev changes the API randomly, but it's time the SDK grows up and detaches itself from JS SDK naming conventions.
Major properties and variables are now PascalCase and the scoping of some has changed.
For instance, ThirdwebManager.Instance.SDK.wallet
is now ThirdwebManager.Instance.SDK.Wallet
All ThirdwebSDK
and Contract
subclasses are now following this convention.
Portal documentation will be updated shortly to reflect this change. Do note that functionality wise, it is still the same.
The Deployer
class has been removed, please deploy from the thirdweb Dashboard or your own custom contract deployment process.
Return Types
We now return BigInteger
instead of strings from tasks where it makes sense, so you don't have to do any parsing. Hooray!
Strings may still be returned in internal types for cross-platform purposes.
Signature Minting
Signature minting Generate
function can now take in a private key override optional second parameter, and assuming it has a MINTER role, it can generate valid signatures that can be used to mint from the connected wallet - USE THIS ONLY FOR TESTING PURPOSES!
This flow previously partially existed but has now also been adapted to work in WebGL, it is still an unrecommended API.
The correct flow is to validate a request and generate a signature server side, however this is a useful feature for quick tests.
Miscellaneous
The ThirdwebManager
now preserves the state of hidden/shown optional fields in subcategories when unfocused.
Fixed an issue with Storage in WebGL failing to download text in some cases, it now uses the sync version of System.IO.
Updated the chains package.
Updated the WebGL bridge.
Added unit tests.
This is an API-breaking update, please update carefully!
v4.7.11
What's Changed
- [WebGL] Additional WalletConnect Modal options are now exposed in the
ThirdwebManager
.enableExplorer
- determines whether to show specific wallets under the QR code.explorerRecommendedWalletIds
- specify wallets to recommend in the bar below the QR, if enabled. See WC Explorer to find ids.walletImages
- wallet id to image url mapping for custom wallets that were added as desktop or mobile wallets.desktopWallets
- custom wallets that are desktop-based and may support deep linking.mobileWallets
- custom wallets that are mobile-based and may support deep linking.themeMode
- set to "dark" or "light" to force a theme mode, otherwise uses system default.
v4.7.10
What's Changed
- [General] Updated chains package.
- [Native] Providing a chain id that is not officially supported through the chains package should no longer be a blocking action i.e. you should still be able to connect so long as an rpc is available as well as interact with other thirdweb libraries without null references.
- [Native] Avoid posting wallet analytics when no client id provided
v4.7.9
What's Changed
- [General] Added
Utils.ResolveAddressFromENS
andUtils.ResolveENSFromAddress
cross-platform utilities. - [General] Added alternative
Initialize
function inThirdwebManager.cs
for more granular control. - [Native] Fixed issue where bundle id would be appended to default rpc urls when no client id was provided, this should fix potential 401s.
v4.7.8
What's Changed
- [General] Added simpler
Wallet.IsDeployed
API for cross-platform Smart Wallet deployment checks. - [Native] Improved error messaging when a Smart Wallet is not connected.
v4.7.7
What's Changed
- [WebGL] Improved Smart Wallet receipt polling mechanism. Added optimized support for newer factories.
v4.7.6
What's Changed
- [WebGL] Removed unnecessary WebGL-specific logs, improved stability and speed in some cases.
v4.7.5
What's Changed
- [WebGL] ERC20 Paymasters are now supported cross-platform.
v4.7.4
What's Changed
- [General] Better support for Unity 2021.x - removed duplicate dlls - the importing process should now be smoother.
- [Native] Removed
Contract.Read
raw result logging that might otherwise get spammy. - [Native] Fixed issue where
Wallet.SendRawTransaction
value override would only be applied with hex values.
v4.7.3
What's Changed
- [Native] Hotfix receipt polling failing in
Wallet.SendTransaction
occasionally when using external wallets.