You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This release of Taquito supports the upcoming Hangzhou protocol. As usual, this version supports the current protocol, Granada, and the next protocol Hangzhou.
We encourage all developers to update their projects to use version Taquito v11 as soon as is practical and absolutely before the Tezos mainnet transition from Granada to Hangzhou.
Please note that the Michelson-Encoder does not support the global constant in this current release (11.0.0-beta). The expanded contract scripts need to be used with the Michelson-Encoder until further support. This brings the following limitation: only the 'init' property can be used if you want to originate a contract having a global constant in the storage section of its code. Do not use the storage property, which depends on the Michelson-Encoder.
Here an example:
constop=awaitTezos.contract.originate({code: [{prim: 'parameter',args: [ ...]},{prim: 'storage',args: [{prim: 'constant',args: [{string: 'expr...'}]}]},{prim: 'code',args: [ ... ]}],init: // The storage property can't be used until global constants are supported in by the Michelson-Encoder. Please use the `init` property instead.});
@taquito/taquito - Support the new operation kind register_global_constant on the contract, batch and estimate APIs
The new manager operation register_global_constant has been added to the contract, batch, and estimate APIs. This new operation allows users to register Micheline expressions in a global table of constants.
A registerGlobalConstant method is available on the ContractProvider class. A value representing the Micheline expression to register in its JSON format is required as a parameter. The registerGlobalConstant method returns an instance of RegisterGlobalConstantOperation containing a globalConstantHash member that corresponds to the index(hash) of the newly registered constant.
After registering an expression as a global constant, the occurrences of this expression in a smart contract code can be replaced by its corresponding hash, allowing users to originate larger contracts. More details about the new global constant feature and examples using the batch API are available on the following documentation page: https://tezostaquito.io/docs/global_constant
@taquito/michelson-encoder - Support new types related to operations-on-timelock
New tokens (ChestToken and ChestKeyToken) have been implemented in the Michelson-encoder package to support the new types chest and chest_key and allow data conversion between Michelson and js.
@taquito/utils - Provide utility to verify signatures
Taquito provides a function named verifySignature that allows verifying signatures of payloads. The function takes a message, a public key, and a signature as parameters and returns a boolean indicating if the signature matches.
The crypto library stablelib is used instead of libsodium in order not to drastically increase the bundle size of the @taquito/utils package.
@taquito/rpc - Support for the RPC endpointcontext/contracts/{contract}/script/normalized
A new method on the RpcClient named getNormalizedScript is available. If global constants are present in the code of a smart contract, getNormalizedScript returns the expanded script. In contrast, the global constants are not expanded in the response provided by the getScript method.
Internally in Taquito, the usage of getScript has been replaced by getNormalizedScript to ensure that all script passed to the Michelson-Encoder won't contain global constant because the Michelson-Encoder does not support the global constant in this current release (11.0.0-beta).
Preliminary support for Idiazabalnet protocol
This release includes preliminary support for the Idiazabal protocol to allow early testing.
Please note the following:
The protocol constant cost_per_byte is mistakenly set to 1000 instead of 250. Meaning that storage costs are higher than on the precedent testnet until this is fixed in the next I network.
The Endorsement operation has new required properties slot, round and block_payload_hash that are not yet supported in the @taquito/local-forging package.
The RPC context/delegates/${address} has new properties that are not yet supported in the @taquito/rpc package.
What's coming next for Taquito?
We plan to provide abstractions for some of the new Hangzhou features. For example, an addition to the ContractAbstration will allow running on-chain views and an abstraction that will make using the new timelock feature easier.
reacted with thumbs up emoji reacted with thumbs down emoji reacted with laugh emoji reacted with hooray emoji reacted with confused emoji reacted with heart emoji reacted with rocket emoji reacted with eyes emoji
-
Summary
This release of Taquito supports the upcoming Hangzhou protocol. As usual, this version supports the current protocol, Granada, and the next protocol Hangzhou.
We encourage all developers to update their projects to use version Taquito v11 as soon as is practical and absolutely before the Tezos mainnet transition from Granada to Hangzhou.
New features - Hangzhou protocol
@taquito/taquito
- Support for the new operation kindregister_global_constant
on the contract, batch and estimate APIs Add support for the newregister_global_constant
operation in the taquito/taquito package #1075operations-on-timelock
in the local-forging package #1070constant
primitive Add support for the newconstant
type and the new operation kindregister_global_constant
in the local-forging package #1077register_global_constant
Add support for the newconstant
type and the new operation kindregister_global_constant
in the local-forging package #1077view
and theVIEW
instruction Add support for views in the local-forging package #1074@taquito/michelson-encoder
- Support new types related to operations-on-timelock Support new types and instructions related tooperations-on-timelock
in the michelson-encoder package #1071@taquito/michel-codec
view
and theVIEW
instruction Add support for the newview Michelson sections
in the michel-codec package #1073New features - General
@taquito/utils
- Provide utility to verify signatures Provide Utility for Verifying Signatures #611@taquito/rpc
- Support for the RPC endpointcontext/contracts/{contract}/script/normalized
. Use the expanded script from the RPC to instantiate contractAbstraction #1114Documentation
Others
@taquito/beacon-wallet
- The beacon-sdk is updated to version 2.3.7: https://github.com/airgap-it/beacon-sdk/releases/tag/v2.3.7Important note:
Please note that the
Michelson-Encoder
does not support the global constant in this current release (11.0.0-beta). The expanded contract scripts need to be used with theMichelson-Encoder
until further support. This brings the following limitation: only the 'init' property can be used if you want to originate a contract having a global constant in the storage section of its code. Do not use thestorage
property, which depends on theMichelson-Encoder
.Here an example:
@taquito/taquito
- Support the new operation kindregister_global_constant
on the contract, batch and estimate APIsThe new manager operation
register_global_constant
has been added to the contract, batch, and estimate APIs. This new operation allows users to register Micheline expressions in a global table of constants.A
registerGlobalConstant
method is available on theContractProvider
class. Avalue
representing the Micheline expression to register in its JSON format is required as a parameter. TheregisterGlobalConstant
method returns an instance ofRegisterGlobalConstantOperation
containing aglobalConstantHash
member that corresponds to the index(hash) of the newly registered constant.After registering an expression as a global constant, the occurrences of this expression in a smart contract code can be replaced by its corresponding hash, allowing users to originate larger contracts. More details about the new
global constant
feature and examples using the batch API are available on the following documentation page: https://tezostaquito.io/docs/global_constant@taquito/michelson-encoder
- Support new types related to operations-on-timelockNew tokens (ChestToken and ChestKeyToken) have been implemented in the Michelson-encoder package to support the new types
chest
andchest_key
and allow data conversion between Michelson and js.@taquito/utils
- Provide utility to verify signaturesTaquito provides a function named
verifySignature
that allows verifying signatures of payloads. The function takes a message, a public key, and a signature as parameters and returns a boolean indicating if the signature matches.The crypto library stablelib is used instead of libsodium in order not to drastically increase the bundle size of the
@taquito/utils
package.Here is an example of use:
@taquito/rpc
- Support for the RPC endpointcontext/contracts/{contract}/script/normalized
A new method on the RpcClient named
getNormalizedScript
is available. If global constants are present in the code of a smart contract,getNormalizedScript
returns the expanded script. In contrast, the global constants are not expanded in the response provided by thegetScript
method.Internally in Taquito, the usage of
getScript
has been replaced bygetNormalizedScript
to ensure that all script passed to the Michelson-Encoder won't contain global constant because theMichelson-Encoder
does not support the global constant in this current release (11.0.0-beta).Preliminary support for Idiazabalnet protocol
This release includes preliminary support for the Idiazabal protocol to allow early testing.
Please note the following:
cost_per_byte
is mistakenly set to1000
instead of250
. Meaning that storage costs are higher than on the precedent testnet until this is fixed in the next I network.Endorsement
operation has new required propertiesslot
,round
andblock_payload_hash
that are not yet supported in the@taquito/local-forging
package.context/delegates/${address}
has new properties that are not yet supported in the@taquito/rpc
package.What's coming next for Taquito?
We plan to provide abstractions for some of the new Hangzhou features. For example, an addition to the ContractAbstration will allow running on-chain views and an abstraction that will make using the new timelock feature easier.
If you have feature or issue requests, please create an issue on http://github.com/ecadlabs/taquito/issues or join us on the Taquito community support channel on Telegram https://t.me/tezostaquito
This discussion was created from the release Taquito v11.0.1 with Hangzhou support.
Beta Was this translation helpful? Give feedback.
All reactions