This past week the features that disallows new rent-paying accounts and enables dynamic account sizing went live. What this means is that any account you create in a program must be rent-exempt. When you can dynamically size accounts, changing your account becomes much simpler and allows for account migrations as a program upgrades. You can find a guide on account migrations here.
There are a number of upcoming transaction fee changes coming, namely being able to prioritize transactions with an increased fee payment and increased fees for "hot" writable accounts.
You must use the
ComputeBudgetProgram.requestUnits instruction from web3.js with the fee being higher than 0 for your compute usage to prioritize your transactions. This instruction must be one of the first three instructions on the transaction. Transactions are prioritized by highest fee/compute requested. You can find and example usage here.
You can use
getFeeForMessage to understand the current network fee given your transaction message.
This syscall is required for confidential transactions in token22. You can find token22 information and other feature information here.