Releases: ecadlabs/taquito
Taquito v16.1.0
Summary
@taquito/rpc
- Added RPC endpoint to add pending transactions in mempool #2382@taquito/rpc
- Added support for types of smart rollup operations in the RPC package #2409smart_rollup_publish
smart_rollup_cement
smart_rollup_recover_bond
smart_rollup_refute
smart_rollup_timeout
@taquito/taquito
- Added support forcontractCall()
in the estimate provider #2019@taquito/taquito
- Added support forsmart_rollup_originate
operation #2306@taquito/taquito
- Added utility functions in prepare provider to accomodate forging and operation pre-apply (dry runs) #2256@taquito/local-forging
- Added support forset_deposits_limit
in the local forger PR #2237
Bug Fixes
- Fixed a bug with the Prepare Provider where operation counters get carried over in subsequent method calls #2425
Documentation
- Fixed typo in Taquito README PR #2275
- Updated example in signing documentation PR #2399
- Added Exaion node as a commercial provider PR #2401
@taquito/rpc
- Added RPC endpoint to add pending transactions in mempool
This RPC endpoint returns the list of prevalidated operations in the mempool. Note that accessibility of the mempool depends on each Node.
await rpcClient.getPendingOperations();
@taquito/taquito
- Added support for contractCall()
in the estimate provider
The estimate provider now supports estimates for contract calls directly, and is usable as such:
const contract = await Tezos.contract.at(contractAddress!);
const opEntrypoint = contract.methods.default(5);
const estimate = await Tezos.estimate.contractCall(opEntrypoint);
@taquito/taquito
- Added smart_rollup_originate
operation support
Added support in the contract provider to inject smart_rollup_originate
operations
const op = await Tezos.contract.smartRollupOriginate({
pvmKind: PvmKind.WASM2,
kernel: ${KERNEL_VALUE} ,
parametersType: { prim: 'bytes' }
});
@taquito/taquito
- Added utility functions in prepare provider to accomodate forging and operation pre-apply (dry runs)
Provided 2 utility functions to convert results from the PrepareProvider
(PreparedOperation
type objects) into ForgeParams
and PreapplyParams
// pre-apply
const prepared = await Tezos.prepare.transaction({
amount: 1,
to: 'tz1ZfrERcALBwmAqwonRXYVQBDT9BjNjBHJu'
});
const params = await Tezos.prepare.toPreapply(prepared);
const preapplyOp = await Tezos.rpc.preapplyOperations(params);
// forge
const prepared = await Tezos.prepare.transaction({
amount: 1,
to: 'tz1ZfrERcALBwmAqwonRXYVQBDT9BjNjBHJu'
});
const params = Tezos.prepare.toForge(prepared);
const forgedBytes = await forger.forge(params);
Taquito v16.0.1
Bug Fixes
- Fixed an issue where the
validateContractAddress()
method allows incorrect contract addresses that are too long #2398
Documentation
- Updated RPC nodes to include Mumbainet and remove references to Kathmandunet #2407
Testing
- Updated tests and flextesa sandbox image for Protocol Mumbai2 #2397
Taquito v16.0.0
Summary
Mumbai Support
@taquito/taquito
Support new operationsmart_rollup_add_messages
#2309@taquito/taquito
UpdatedtransferTicket
operation in the contract API to support ticket transfers between implicit accounts #2320@taquito/local-forging
Support new Mumbai operations #2308smart_rollup_originate
,smart_rollup_add_messages
,smart_rollup_execute_outbox_message
@taquito/local-forging
updated validation to allow tz4 addresses #2350@taquito/rpc
support Mumbai operation types in the RPC package #2307@taquito/rpc
added Mumbai protocol constants in the RPC package #2375@taquito/rpc
removedconsumed_gas
property inupdate_consensus_key
return type in the RPC package #2273@taquito/rpc
added new RPC endpoints #2270:getTicketBalance
getAllTicketBalances
@taquito/michel-codec
Added support forbytes
in these following Michelson instructions #2267:AND
,OR
,XOR
,NOT
,LSL
,LSR
@taquito/michel-codec
added support for bytes-nat conversion in Michelson #2268
Bug Fixes
- Fixed broken website live examples #2305
- Updated estimation to validate against decimal values to prevent unwanted errors #2318
Documentation
- Removed Cryptonomic links from the commercial RPC list on the website #2332
- Added documentation on
MANAGER_LAMBDA
#1718 - Added documentation on ~100 most popular contract entrypoint parameter examples on Tezos #2153
- Fixed broken link on Dapp pre-launch checklist page #2293
- Fixed broken link on smart contract collection page #2295
- Fixed broken live code examples on the
tezostaquito.io
website #2305 - Removed invalid links and duplicate entries #2332
- Added documentation for contract entrypoints parameters in JS/TS #2153
- Fixed broken link on Smart Contract collection page #2295
- Fixed broken link on DApp pre-launch checklist page #2293
- Added documentation on MANAGER_LAMBDA #1718
- Updated Ledger examples to point to Ghostnet PR
- Updated README to include cases for specific Linux distros PR
Internals
- Removed Kathmandu references from local-forger #2131
- Bumped Node versions to 16 PR #1845
- Delete TezEdge workflows PR
- Updated Docusaurus version to it's latest stable release (v2.3.1) PR
- Removed references to older protocols in Taquito and updated integration tests and examples #485
@taquito/taquito
- Support for new operation smart_rollup_add_messages
Support for a new manager operation to add messages to a smart rollup inbox have been added, and can be used as follows:
const op = await Tezos.contract.smartRollupAddMessages({
message: [
'0000000031010000000b48656c6c6f20776f726c6401bdb6f61e4f12c952f807ae7d3341af5367887dac000000000764656661756c74'
]
});
@taquito/rpc
- Support for new Mumbai operation types in the RPC package
Added a few new types to accommodate for Mumbai protocol changes:
OperationContentsAndResultSmartRollupOriginate
OperationContentsAndResultSmartRollupAddMessages
OperationContentsAndResultSmartRollupExecuteOutboxMessage
OperationResultSmartRollupOriginate
OperationResultSmartRollupAddMessages
OperationResultSmartRollupExecuteOutboxMessage
OperationContentsAndResultMetadataSmartRollupOriginate
OperationContentsAndResultMetadataSmartRollupAddMessages
OperationContentsAndResultMetadataSmartRollupExecuteOutboxMessage
@taquito/michel-codec
- Added support for bytes
The Mumbai protocol update introduces a change where the following Michelson instructions support bytes
: AND
, OR
, XOR
, NOT
, LSL
, LSR
These instructions now have bytes support of the opcodes. For more information, refer to this document
@taquito/michel-codec
- Added support for bytes-nat conversion in Michelson
The Mumbai protocol update now supports conversion between bytes
and nat
as well as bytes
and int
For more information, refer to this page
Taquito v15.1.0
Summary
New Features
@taquito/taquito
New provider supportPrepareProvider
to facilitate preparation of operations in Taquito. #2020@taquito/taquito
Support new operationincrease_paid_storage
on the wallet API #1768
Bug Fixes
- Fixed a bug where
axios-fetch-adapter
was not returning the response body from errors, causing the wrong error to be captured by the calling method #2187
Documentation
- Update Taquito website live code examples to use Ghostnet endpoint. #2224
Internals
- Updated Beacon version to v3.3.1 PR
- Updated Taquito Github Workflows to use Node LTS/Gallium (v16) PR
@taquito/taquito
- Added new provider PrepareProvider
to facilitate operation preparation
PrepareProvider
now extends more control to the user to give them the ability to 'prepare' Tezos operations before forging and injection. The preparation step now can be done through the TezosToolkit
class as such:
// example of a transaction operation preparation
const prepare = await Tezos.prepare.transaction({
to: 'tz1KvJCU5cNdz5RAS3diEtdRvS9wfhRC7Cwj',
amount: 5
});
The expected output will look something like this:
{
opOb: {
branch: 'BLOCK_HASH',
contents: [
{
kind: 'transaction',
fee: '391',
gas_limit: '101',
storage_limit: '1000',
amount: '5000000',
destination: 'tz1KvJCU5cNdz5RAS3diEtdRvS9wfhRC7Cwj',
source: 'PUBLIC_KEY_HASH',
counter: '1',
},
],
protocol: 'PROTOCOL_HASH',
},
counter: 0,
}
@taquito/taquito
- Increase paid storage operation support in the wallet API
Taquito now supports increase_paid_storage
operation in the Wallet API (previously only available in the Contract API).
const op = await Tezos.wallet.increasePaidStorage({
amount: 1,
destination: simpleContractAddress
}).send();
Taquito v15.0.1
Hotfix
- Fixed a bug where the
local-forging
package was using an outdated version of the codec when it's instantiated without passing in a protocol hash. Updated so that the default value uses the current protocol hash. #2242
Summary
@taquito/taquito
Support new operationdrain_delegate
in the Contract API #2068@taquito/local-forging
Support new operationdrain_delegate
#2065
Bug Fixes
@taquito/michelson-encoder
fix MapTypecheck bug triggered by nested maps ending with a big_map #1762
Documentation
- Auto hide sticky navbar for mobile view to increase readability on mobile devices.
PR: #2236
Internals
- Start running integration tests against testnets for external PRs.
PR: #2221
@taquito/taquito
drain_delegate operation support
A new manager operation related to the consensus_key change in Lima has been added:
const op = await Tezos.contract.updateConsensusKey({
pk: 'PUBLIC_KEY'
});
await op.confirmation();
Taquito v15.0.0
Breaking Changes:
- Some types have changed to support the
consensus_key
change in Protocol Lima. Refer to issue #2069 for more details
Summary
Lima Support
@taquito/taquito
Support new operationupdate_consensus_key
in the Contract API #2067@taquito/local-forging
Support new operationupdate_consensus_key
#2065@taquito/local-forging
Support new instructionLAMBDA_REC
and valueLambda_rec
and support changes related to theTICKET
instruction #2074 #2072@taquito/rpc
Support new types and operations forupdate_consensus_key
anddrain_delegate
#2066@taquito/rpc
Support new properties related to Lima #2172 #2071@taquito/michelson-encoder
Support new typeTICKET_DEPRECATED
#2073@taquito/michel-codec
Support new instructionLAMBDA_REC
and valueLambda_rec
and support changes related to theTICKET
instruction #2181 #2075
Testing
- Removed tests that referenced Timelock feature (
CHEST_OPEN
Michelson instruction) #2070 - Added tests for
unparsing_mode
#2077 - Updated tx-rollup tests to use address from config instead of hard coded addresses #2170
- Fixed local-forging tests failing in Limanet #2158
Documentation
Internals
- Removed legacy
lerna bootstrap
commands from build workflow #2188
Deprecation
@taquito/tezbridge-signer
and @taquito/tezbridge-wallet
has been deprecated, and references to them have been removed from the codebase #2080
Others
- Removed Jakarta protocol references in on chain view related code #2098
- Removed temple-wallet/dapp dependency from Taquito website that was producing build errors PR
@taquito/taquito
- Added support for update_consensus_key
A new manager operation to update consensus keys can be used as follows:
const op = await Tezos.contract.updateConsensusKey({
pk: 'PUBLIC_KEY'
});
await op.confirmation();
@taquito/local-forging
- Added support for Lima operations and instructions
- Updated local-forger to forge and parse
update_consensus_key
anddrain_delegate
- Updated local-forger to support the new Michelson instruction
LAMBDA_REC
and the new data constructor namedLambda_rec
which enables recursive LAMBDA
@taquito/rpc
- Updated types to support Lima protocol
Added a few new types to accommodate Lima protocol changes:
OperationContentsUpdateConsensusKey
OperationContentsDrainDelegate
OperationContentsAndResultMetadataUpdateConsensusKey
OperationContentsAndResultMetadataDrainDelegate
OperationContentsAndResultUpdateConsensusKey
OperationContentsAndResultDrainDelegate
OperationResultUpdateConsensusKey
Also updates to existing types to accommodate changes regarding consensus keys.
@taquito/michelson-encoder
- Support new type TICKET_DEPRECATED
- Added support for the new Michelson type
TICKET_DEPRECATED
. More info here: https://tezos.gitlab.io/protocols/015_lima.html#breaking-changes
@taquito/michel-codec
- Support new instruction LAMBDA_REC
and value Lambda_rec
The Lima protocol introduces a new Michelson type named LAMBDA_REC
, and a new data constructor named Lambda_rec
, allowing the creation of recursive lambda functions. Support for those primitives has been added in the michel-codec package enabling users to validate or pack/unpack Michelson code containing them.
The TICKET
instruction now returns an optional ticket instead of a ticket. This change has also been reflected in the michel-codec parser.
Taquito v14.2.0
Summary
New Features
@taquito/taquito
- Added support forBallot
operation in the Contract API #1630@taquito/taquito
- Added support forProposals
operation in the Contract API #2099@taquito/taquito-signer
- Added new methodfromMnemonic
to theInMemorySigner
#1228
Documentation
- Updated and organized Taquito README to prepare for translations to other languages #2015
Internals
- Added integration test for
Ballot
andProposals
operation #2087 - Configured NPM workspaces for Taquito to improve build process #2127
@taquito/taquito
- Added support for Ballot
operation
We added a new Contract API method to support the Ballot
operation. Bakers can now cast their ballots using this operation from Taquito as follows:
const op = await Tezos.contract.ballot({
proposal: 'PROTOCOL_HASH',
ballot: 'BALLOT_VOTE_STRING'
});
await op.confirmation();
@taquito/taquito
- Added support for Proposals
operation
Alongside the Ballot
operation support, bakers can now also submit proposals using the Proposals
operation that can be used as follows:
const op = await Tezos.contract.proposals({
proposals: ['PROTOCOL_HASH1', 'PROTOCOL_HASH2']
});
await op.confirmation();
@taquito/taquito-signer
- Added new method fromMnemonic
Users can now create an InMemorySigner
instance using the fromMnemonic
method for a tz1, tz2, or tz3 address: ed25519, secp256k1, or p256 respectively.
const mnemonic = 'author crumble medal dose ribbon permit ankle sport final hood shadow vessel horn hawk enter zebra prefer devote captain during fly found despair business'
const signer = InMemorySigner.fromMnemonic({ mnemonic, password, derivationPath: "44h/1729h/1/0", curve: 'secp256k1' });
Taquito v14.1.0-beta
Summary
New features
@taquito/taquito
- Provide a subscriber to events #1746@taquiro/rpc
- Supportvoting_info
endpoint #1749@taquito/ledger-signer
- Add support for bip25519 curve #1869
Bug fixes
@taquito/http-utils
- Issue using Taquito in service worker environment #2025@taquito/taquito
-confirmationPollingTimeoutSecond
not working #2006@taquito/taquito
-PollingSubscribeProvider
used in contract confirmations might skip blocks #1783@taquito/michelson-encoder
- Fixed Michelson encoder for timestamp to handle numbers being passed #1888
Improvement
@taquito/taquito
- Allow users to customize the parser #660@taquito/taquito
- Accept amount,fee
,gasLimit
, andstorageLimit
as parameters of thewithContractCall
method #1717@taquito/tzip16
- Add more high level functions for tzip16 metadata #584@taquito/taquito
- Supportstring
ornumber
for thebalance
property for contract origination #1795
Documentation
- Documentation page dedicated to multi-sig: https://tezostaquito.io/docs/next/multisig_doc/
- Fixed broken link in the Wallet doc #1865
Others
@taquito-beacon-wallet
- Updated@airgap/beacon-dapp
to version 3.3.0: https://github.com/airgap-it/beacon-sdk/releases/tag/v3.3.0
Internals
- Speed up build with nx #2013
- Integrate the taquito-test-dapp into the Taquito pipeline #663
- Add a flextesa node to our CI pipeline #457
- Add unit tests for taquito-beacon-wallet #1863
- Adapt integration tests config so they can be run against a sandbox. #1971
@taquito/taquito
- Provide a subscriber to events
Taquito provides a simple way for users to subscribe to certain events on the blockchain via the PollingSubscribeProvider
.
const Tezos = new TezosToolkit(RPC_URL);
try {
const sub = Tezos.stream.subscribeEvent({
tag: 'tagName',
address: 'KT1_CONTRACT_ADDRESS'
});
sub.on('data', console.log);
} catch (e) {
console.log(e);
}
Please refer to the documentation for more information: https://tezostaquito.io/docs/next/subscribe_event
@taquiro/rpc
- Support voting_info
endpoint
We added a new method on the RpcClient
named getVotingInfo
to support the new RPC endpoint voting_info
(Kathmandu). The method returns data found on the voting listings for a delegate as follows :
VotingInfoResponse = {
voting_power?: string;
current_ballot?: BallotListResponseEnum;
current_proposals?: string[];
remaining_proposals?: number;
};
@taquito/ledger-signer
- Add support for bip25519 curve
We added support for the bip32-ed25519 derivation scheme in the ledger package. It can be used as follows:
const transport = await TransportNodeHid.create();
const signer = new LedgerSigner(
transport,
"44'/1729'/0'/0'",
false,
DerivationType.BIP32_ED25519
)
@taquito/http-utils
- Issue using Taquito in a service worker environment
In service worker environments (e.g., Cloudflare workers), XMLHttpRequest
used by Axios
is deprecated. When using the @taquito/http-utils
package in such an environment, the following error was occurring: TypeError: adapter is not a function
. A fix has been made to use @vespaiach/axios-fetch-adapter
when not in a nodejs environment.
@taquito/taquito
- confirmationPollingTimeoutSecond not working
There was an issue with the confirmationPollingTimeoutSecond
on the TezosToolkit
. During the operation confirmation (both on the contract and wallet API), the timeout timer restarted on every new block emission. This has been fixed.
@taquito/taquito
- PollingSubscribeProvider
used in contract confirmations might skip blocks
When the polling mechanism skipped a block during the operation confirmation for the wallet API, an error MissedBlockDuringConfirmationError
was thrown. We refactored the implementation to retrieve missed blocks instead of throwing an error. On the contract API side, there was no check whether a block was missed or skipped, and it would just timeout, unable to find the operation after a certain time. The implementation has also been changed to retrieve missed blocks.
@taquito/michelson-encoder
- Fixed Michelson encoder for timestamp to handle numbers being passed
A bug has been fixed, allowing support of UNIX timestamp number when deploying a contract having a timestamp in storage or calling a contract entry point taking a timestamp in parameter.
@taquito/taquito
- Allow users to customize the parser
Taquito makes internal uses of the @taquito/michel-codec
package on smart contract origination, allowing to convert Plain Michelson into JSON Michelson, expand Macros and validate Michelson to ensure its correctness. There is no change in this behavior, but we exposed a parserProvider
at the TezosToolkit level allowing users to customize if needed. By default, the parserProvider
is an instance of MichelCodecParser
.
@taquito/taquito
- Accept amount, fee
, gasLimit
, and storageLimit
as parameters of the withContractCall
method
Before version 14.1.0, it was impossible to specify the amount, the fee, the gasLimit
, and the storageLimit
when calling a smart contract entry point using the batch API via the withContractCall method. An optional parameter has been added to the method to support this feature and can be used as follows:
const contract = Tezos.contract.at('contactAddress');
const batch = Tezos.contract.batch()
.withContractCall(contract.methods.entrypointName("entrypointParam", { fee: 100, gasLimit: 1000, storageLimit: 10 })
.withContractCall(...)
const batchOp = await batch.send();
await batchOp.confirmation();
@taquito/taquito
- Support string
or number
for the balance
property for contract origination
The balance property was a string in the parameters to pass to originate a new contract. We changed to accept a number and string, which is more intuitive.
What's coming next for Taquito?
We are currently working on compatibility support for the Lima protocol.
We are also investigating the integration of wallet connect 2 in Taquito.
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
Taquito v14.0.0-beta
Note for the users of the lower level APIs: injecting more than one manager operation per block from the same account is now forbidden by Tezos in the Kathmandu protocol. You will now receive the following error message: Error while applying operation opHash: Only one manager operation per manager per block allowed (found opHash2 with Xtez fee).
This change has no impact if you use the TezosToolkit to send operations. Waiting for the operation to be included in a block is already required before submitting another one.
Breaking changes:
- Be aware that if you implemented the readProvider interface, we added a new method named
getSaplingDiffByContract
. - We removed the context class in the constructor of the ReadAdapter class and replaced it with RpcClient.
Summary
Kathmandu support
@taquito/taquito
- Support new operationincrease_paid_storage
on the Contract API #1767@taquito/local-forging
- Support theincrease_paid_storage
operation and theEmit
instruction #1766 #1742@taquito/michel-codec
- Support EMIT instruction #1743@taquito/taquito
- Replaceconsumed_gas
withconsumed_milligas
#1769@taquito/rpc
- Support new properties/operations for Kathmandu #1862 #1848@taquito/rpc
- Add support forrun_script_view
endpoint #1750
New features
- Sapling package
@taquito/taquito
- Added support for thetransfer_ticket
operation #1680
Bug fixes
@taquito/michelson-encoder
- Display contract storage properly when it contains aticket
inside amap
#1762@taquito/michelson-encoder
-Schema.generateSchema()
fails forsapling_transaction_deprecated
#1763@taquito/michel-codec
- Fixed comb pairs unpacking #1471
Improvement
@taquito/http-utils
- Added request info to theHttpRequestFailed
error #1091@taquito/taquito
- Retrieve contract addresses from batched operation #1661@taquito/michelson-encoder
- Accept hex prefixed with 0x as well #1624@taquito/taquito
- Use the newrun_script_view
endpoint to execute on chain views #1750
Documentation
- Added documentation feedback to Taquito website #1732
- Fixed live code example - try temple wallet was getting an error about bad parameters #1698
- Added documentation on TORU deposit/withdrawals: https://tezostaquito.io/docs/next/tx_rollups
- Added links to commercial nodes (submit a PR if some are missing): https://tezostaquito.io/docs/next/rpc_nodes/
Testing
- Emptying an implicit account does not cost extra gas anymore #1771
- Added more Manager_lambda scenarios to contract multisig integration tests #1724
Others
@taquito-beacon-wallet
- Updated@airgap/beacon-dapp
to version 3.1.4@taquito/local-forging
- Pure JS implementation #441
@taquito/taquito
- Support new operation increase_paid_storage
on the Contract API
The increase_paid_storage
operation allows increasing the paid storage of a smart contract by a specified bytes amount. The smart contract owner doesn't have to do it; any user can increase the storage. The operation is of interest for high-traffic dapps as it allows prepaying for storage and prevents transactions from failing because of an unpredictable storage burn.
const Tezos = new TezosToolkit('https://kathmandunet.ecadinfra.com');
const op = await Tezos.contract.increasePaidStorage({
amount: 5,
destination: 'contract'
});
- `amount` is the number of bytes we want to increase the paid storage
- `destination` is the address of the smart contract we want to increase the paid storage
@taquito/local-forger
- Support the increase_paid_storage
operation and the Emit
instruction
We added support to forge and parse the new operation kind increase_paid_storage
.
We added support for the new Michelson instruction Emit
, which can emit contract events when part of a contract script.
@taquito/michel-codec
- Support EMIT instruction
@taquito/michel-codec is responsible, among others, for validating Michelson code to ensure its correctness. The package now supports the new EMIT
instruction.
@taquito/taquito
- Replace consumed_gas
with consumed_milligas
In Kathmandu, the property consumed_gas
that was previously deprecated in favor of consumed_milligas
has been removed.
In Taquito (Contract API), the classes that extend the Operation
class like BatchOperation
, DelegateOperation
, OriginationOperation
, TransactionOperation
, and so on, have a consumedGas
getter. We did an internal change to calculate the consumed gas based on the consumed milligas, so there is no breaking change for the users. We also implemented a new consumedMilligas
getter which returns the consumed milligas.
On the wallet API side, the WalletOperation
class has a receipt
method that returns a Receipt
object containing a totalGas
property. It is now calculated based on the consumed milligas, and we added an additional totalMilliGas
property.
@taquito/rpc
- Support new properties/operations for Kathmandu
Kathmandu brings new operation kinds that can be found in a block response. New interfaces representing the new operations have been added to the OperationContents
and OperationContentsAndResult
types of the RPC package. The new operation kinds are: increase_paid_storage
, vdf_revelation
. There is also a new internal operation named event
.
The DelegatesResponse
interface returned by the getDelegates
method on the RpcCLient
has the new properties current_ballot
, current_proposals
and remaining_proposals
.
The ConstantsResponse
type returned by the getConstants
method on the RpcCLient
has the new properties max_wrapped_proof_binary_size
, nonce_revelation_threshold
, vdf_difficulty
, testnet_dictator
,dal_parametric
, sc_rollup_stake_amount
, sc_rollup_commitment_period_in_blocks
, sc_rollup_max_lookahead_in_blocks
, sc_rollup_max_active_outbox_levels
, sc_rollup_max_outbox_messages_per_level
.
@taquito/rpc
- Add support for run_script_view
endpoint
We added a new method named runScriptView
on the RpcClient
class to simulate a contract view. The parameter and response types of the method are as follows:
RPCRunScriptViewParam = {
contract: string;
view: string;
input: MichelsonV1Expression;
unlimited_gas?: boolean;
chain_id: string;
source?: string;
payer?: string;
gas?: string;
unparsing_mode?: UnparsingModeEnum;
now?: string;
level?: string;
};
RunScriptViewResult = {
data: MichelsonV1Expression;
};
Sapling package
We implemented a package @taquito/sapling
providing functionality for Sapling. For documentation, please refer to the following link: https://tezostaquito.io/docs/next/sapling
We added a post-install script that fetches the z cash parameters required to initialize the sapling state. Excluding the files from the package avoids having an unsustainable bundle size.
The files saplingOutputParams.js
and saplingSpendParams.js
will be created in the users node_modules/@taquito/sapling
folder and avoid them having to download and inject those files.
As the next steps for the sapling package, we will provide interfaces for the key providers, making it easier to generate the proof and produced signature from a remote signer or a ledger. We currently offer an InMemorySpendingKey
that must be used appropriately, given your risk profile. We will be looking for integration with wallets as well.
@taquito/taquito
- Added support for the transfer_ticket
operation
The transfer_ticket
operation allows transferring tickets from an implicit account to a smart contract.
const Tezos = new TezosToolkit('https://jakartanet.ecadinfra.com');
const op = await Tezos.contract.transferTicket({
ticketContents: { "string": "foobar" },
ticketTy: { "prim": "string" } ,
ticketTicketer: 'KT1AL8we1Bfajn2M7i3gQM5PJEuyD36sXaYb',
ticketAmount: 5,
destination: KT1SUT2TBFPCknkBxLqM5eJZKoYVY6mB26Fg,
entrypoint: 'default',
});
- `ticketAmount` is the amount that you would like to transfer to the smart contract
- `destination` is the address of the smart contract you would like to transfer the tickets to
- `entrypoint` is the entrypoint of the smart contract
- `ticketContents`, `ticketTy`, and `ticketTicketer` can be retrieved from the tx rollup client
@taquito/michelson-encoder
- Display contract storage properly when it contains a ticket
inside a map
We fixed a bug in the michelson-encoder package that prevented displaying the contract storage when it contained tickets inside a map.
@taquito/michelson-encoder
- Schema.generateSchema()
fails for sapling_transaction_deprecated
Support was missing for sapling_transaction_deprecated
in the michelson-encoder package and has been added.
@taquito/http-utils
- Added request info to the HttpRequestFailed
error
We added the Url and method to the HttpRequestFailed
error message. This change will make it easier to diagnose timeout error, which was only returning Request timed out after: 30000ms
.
@taquito/taquito
- Retrieve contract addresses from batched operation
Added a method named getOriginatedContractAddresses
on the BatchWalletOperation
and the BatchOperation
, which returns an array of contract addresses deployed in the batch. If there is no origination operation, the array will be empty.
@taquito/michelson-encoder
- Accept hex prefixed with 0x as well
Taquito only accepted hex bytes without the 0x prefix. We added support for this format too.
@taquito/taquito
- Use the new run_script_view
endpoint to execute on chain views
The execution of the on-chain views previously relied on the helpers/scripts/run_code
RPC endpoint. Since there is a new dedicated RPC...
14.0.0-beta-RC.0
Summary
Kathmandu support
@taquito/taquito
- Support new operationincrease_paid_storage
on the Contract API #1767@taquito/local-forging
- Support theincrease_paid_storage
operation and theEmit
instruction #1766 #1742@taquito/michel-codec
- Support EMIT instruction #1743@taquito/taquito
- Replaceconsumed_gas
withconsumed_milligas
#1769@taquito/rpc
- Support new properties/operations for Kathmandu #1862 #1848@taquito/rpc
- Add support forrun_script_view
endpoint #1750
New features
- Sapling package
@taquito/taquito
- Added support for thetransfer_ticket
operation #1680
Bug fixes
@taquito/michelson-encoder
- Display contract storage properly when it contains aticket
inside amap
#1762@taquito/michelson-encoder
-Schema.generateSchema()
fails forsapling_transaction_deprecated
#1763@taquito/michel-codec
- Fixed comb pairs unpacking #1471
Improvement
@taquito/http-utils
- Added request info to theHttpRequestFailed
error #1091@taquito/taquito
- Retrieve contract addresses from batched operation #1661@taquito/michelson-encoder
- Accept hex prefixed with 0x as well #1624@taquito/taquito
- Use the newrun_script_view
endpoint to execute on chain views #1750
Documentation
- Added documentation feedback to Taquito website #1732
- Fixed live code example - try temple wallet was getting an error about bad parameters #1698
- Added documentation on TORU deposit/withdrawals: https://tezostaquito.io/docs/next/tx_rollups
- Added links to commercial nodes (submit a PR if some are missing): https://tezostaquito.io/docs/next/rpc_nodes/
Testing
- Emptying an implicit account does not cost extra gas anymore #1771
- Added more Manager_lambda scenarios to contract multisig integration tests #1724
Others
@taquito-beacon-wallet
- Updated@airgap/beacon-dapp
to version 3.1.4@taquito/local-forging
- Pure JS implementation #441