Skip to content

Releases: ecadlabs/taquito

9.0.0-beta-RC.1

24 Apr 19:07
Compare
Choose a tag to compare
9.0.0-beta-RC.1 Pre-release
Pre-release
  • Official support for the new Florence protocol which will come into effect on Mainnet in May.
  • Allows fetching big map with a key of type string, number, or object. This includes a breaking change for the method getMultipleValues of the BigMapAbstraction class and the method getBigMapKeysByID of the RpcContractProvider class as they will return a MichelsonMap instead of an object to support keys of type pair.
  • Updated beacon-sdk version to v2.2.4 which includes several performance improvements for p2p pairing.
  • Added documentation about the Michelson encoder package: https://tezostaquito.io/docs/michelson_encoder.
  • Ability to find version and git hash from which Taquito was built #638
  • Accept an operator for the retry strategy of ObservableSubscription class. An example of use has been added to the example folder.
npm i @taquito/taquito@9.0.0-beta-RC.1

9.0.0-beta-RC.0

24 Apr 01:01
Compare
Choose a tag to compare
9.0.0-beta-RC.0 Pre-release
Pre-release
  • Allows fetching big map with a key of type string, number, or object. This includes a breaking change for the method getMultipleValues of the BigMapAbstraction class and the method getBigMapKeysByID of the RpcContractProvider class as they will return a MichelsonMap instead of an object to support keys of type pair.
  • Updated beacon-sdk version to v2.2.4.
  • Added documentation about the Michelson encoder package: https://tezostaquito.io/docs/michelson_encoder.
  • Ability to find version and git hash from which Taquito was built #638
  • Accept an operator for the retry strategy of ObservableSubscription class. An example of use has been added to the example folder.

Taquito v8.1.1-beta

13 Apr 15:31
Compare
Choose a tag to compare

Summary

Enhancements

  • @taquito/taquito: Dynamically set the polling interval based on the RPC constants
  • @taquito/taquito: Added a configurable delay and number of retries to the ObservableSubscription

Bug fixes

  • @taquito/ledger-signer: Corrected the prefix for the prefixSig property
  • @taquito/michelson-encoder: Corrected sorting of numeric values when encoding

Documentation updates

  • Added the telegram group to the Website community links
  • Fixed some broken links
  • New documentation about signing with wallet

@taquito/taquito - Polling interval

After sending an operation with Taquito, we call the confirmation method on the operation. Taquito does polling to the node to fetch new blocks and validate if the operation hash is in the block. Before this change, the polling interval's default value (confirmationPollingIntervalSecond) was set to 10 seconds. In theory, a new block is baked every 30 seconds on the testnets and every 60 seconds on mainnet. However, the time between blocks is shorter on sandboxes. For example, it can be of 5 seconds on Flextesa. A 10-second polling interval is too high for sandboxes and leads to a very high chance of missing the block containing the operation. To improve sandbox users' experience., we now calculate the polling interval value dynamically based on the RPC constants. To consider variations regarding the time between blocks in practice, we divide the value by 3 to reduce the risk of missing a block.

Note that this value was configurable before and can still be configured if needed:
Tezos.setProvider({config: {confirmationPollingIntervalSecond: 5}})

@taquito/taquito - Delay and maximum number of attempts for the ObservableSubscription

When users configure the ObservableSubscription to retry on error, the retries were happening immediately and indefinitely, causing call stack exception. Now, when the retry is enabled, the subscription uses a default value of 1 second between retries and a maximum value of 10 retries.
These values are configurable by the user:
Tezos.setProvider({ config: { shouldObservableSubscriptionRetry: true, observableSubscriptionRetryDelay: 2000, observableSubscriptionRetries: 3 } });

@taquito/ledger-signer - prefixSig

The prefixSig property returned by the sign method of the LedgerSigner class was using SIG prefix. The correct prefix is now returned (e.g. EDSIG for tz1, SPSIG for tz2, and P2SIG for tz3).

@taquito/michelson-encoder sorting of numeric values

The numerics values (nat, int, and mutez) were not sorted properly by the Michelson Encoder, causing the following RPC Errors: unordered_map_literal or unordered_set_literal. For example, the RPC expects maps to be sorted by ascending keys values. The values were ordered as strings by the Michelson Encoder instead of number, resulting in wrong ordering for the RPC.

Documentation Additions and Improvements

A link to the Tezos Taquito Telegram group has been added in the Taquito website home page's footer, making it easier to find the group. You are welcome to join this group to access community support and connect with the Taquito team.

We fixed broken links on the Taquito documentation website.

There is new documentation on the website explaining how to produce signatures with the InMemorySigner and the Wallet API, along with examples and tips to keep in mind.

A note on how to use the Kukai wallet for testing on Edonet has been added to the Wallet API documentation.

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

Final v8.1.0 - Pack/unpack implementation, fetch multiple big map values, and more

26 Mar 21:37
Compare
Choose a tag to compare

Taquito v8.1.0-beta

Summary

New features

  • Pack/unpack data locally. Now used for fetching big-maps too.
  • New API to fetch multiple bigmap values at once 🚀🚀

Enhancements

  • Expand support for Tickets beyond nat.
  • New edo RPC endpoints in Taquito.
  • Compatibility support for Florencenet (009-PsFLoren)

Other

  • Taquito npm preview registry for current Taquito builds all the time
  • Website preview builds from PR & Website now hosted on Netlify

Bug fixes

  • Nat/Int encoding of large numbers.
  • Graceful error handling for getDelegate method.
  • Save operation hash before executing on the network - better debugging 🚀🚀
  • Fix encoding of lambda value in the michelson-encoder

Testing improvements

  • Better coverage for getBlock endpoint.

Documentation updates

Pack and unpack data locally

Before v8.1, Taquito provided an API to pack data using Tezos RPC. This release introduces local packing and unpacking data, allowing for security-conscious off-line operations and faster dapps because of fewer RPC requests. allows the getBigMapKeyByID to use the new michel-codec packData implementation

Local pack means that fetching big map values is now 50% faster! Big map keys must be encoded using the PACK method, so Taquito needed to use the rpc.packData() method. As of v8.1 Taquito, users can opt to pack big map keys locally, eliminating an RPC round trip.

This feature is opt-in, meaning that the Taquito user must enable it to benefit from faster big map fetching. The RPC key backing method is still the default. See Local packing for big maps

npm preview registry - Delivering continuous delivery

Developers can now test and evaluate new features and bug fixes as soon as possible without having to clone and locally link Taquito. Preview builds are published to our npm preview registry from all pull requests (except PR's from forks).

IMPORTANT NOTE: Preview builds are not official releases. They are helpful for testing and evaluating new features in Taquito. Preview builds may contain incomplete features or features that have not been fully tested.

Fetch multiple bigmaps at once.

Taquito now provides a new API getMultipleValues that fetches multiple keys in a single call. Taquito ensures that all fetched keys are fetched from the same block level. Future enhancements for this feature may include Taquito directly fetching multiple big maps from an RPC call as and when such an RPC is added to the Tezos nodes. See docs here

Expanded property value support for tickets and better nat type support.

The Michelson encoder package initially supported tickets having a value property of type nat, but now it has been updated to support every comparable token. Additionally, when invoking a contract with nat as a parameter, encoding a numeral with more than 21 digits has been fixed.

Save operation hash before executing on the network - better debugging.

Developers now can calculate the hash of an operation before injection using a newly introduced utility from utils package. With this utility, it is possible to obtain the operation hash before sending it to the node.

Forward compatibility for Florence

v8.1 supports Florence net. All the Taquito integration tests are run against the Florence testnet.

Documentation Additions and Improvments

Documentation on the Taquito website continues to grow and be refined. Developers can now read docs explaining what tickets are, their use cases, and example code reading tickets with various data values.

Live code examples on the website now use Edonet.

CodeBlock and Playground folders, along with contracts that work with live code, now rely on the Edonet testnet.

For enabling local pack (MichelCodecPacker()) for big map values, there are now instructions and documentation about the benefits of doing so.

Developers can now opt in to use Taquito's local pack implementation when fetching Big Map values. This feature makes fetching Big Map values 50% faster. Big Map keys need to be serialized or PACK'ed, and Taquito relied on the Tezos PACK RPC to PACK the bigmap keys.

By relying on the local pack implementation, we eliminate one RPC roundtrip when fetching Big Map Values. To enable this feature, developers must call the tezos. setPackerProvider(new MichelCodecPacker()); on the program's TezosToolkit instance.

Website now uses Netlify

Netlify provides the deployment/hosting of the Taquito website. The primary motivation is so that we get full preview deployments of the website from PRs.

More RPC endpoints added to Taquito

New RPC endpoints are added to the Taquito RPC package providing better edonet support while marking endpoints that have been deprecated.

Graceful error handling for getDelegate method and testing improvements.

The Tezos RPC returns an HTTP 404 when requesting a delegate for an account with no Delegate. Taquito now returns null without throwing an exception for this case.

Test coverage for the getBlock endpoint has been improved

What's coming next for Taquito?

We will soon be working on integrating Florence, the next Tezos protocol update proposal. We plan to deliver a final version of Taquito v9 much earlier, giving teams a longer runway to upgrade their projects before protocol transition.

Developer Experience is our high-priority item, and we have improvements in our backlog that we plan to start work. We are improving the `michelson-encoder implementation to open the door for Type generation from contracts and to provide easier discoverability of what parameters endpoints and initial storage take. Stay tuned!

We have a good practice of Continuous Delivery in Taquito, but we plan to take this to the next level. Stay tuned!

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

Pack/unpack implementation, fetch multiple big map values, beacon-sdk update, and more

25 Mar 01:44
Compare
Choose a tag to compare
  • Packing/Unpacking data #613
  • Use local packData implementation to encode big map keys #667
  • Website documentation on how to enable local pack for Big Maps #726
  • Support for the new RPC endpoints votes/current_period, votes/successor_period #601
  • Taquito API to fetch multiple big maps at once #607
  • Added a util function to calculate operation hash #435
  • Fix to encode nat and int longer than 1e+21 #637
  • Fix to support all comparable types for property value of ticket #686
  • Website documentation about Tickets #725
  • Return null when an account has no delegate #556
  • Build and publish Taquito to npm from pull requests #506
  • Add more test coverage for the getBlock endpoint #35
  • Update documentation to change 'Thanos' wallet to 'Temple' Wallet #688
  • Update Taquito Docs website live code examples to use edonet #566
  • Compatibility support for Florencenet (Florencenobanet)
  • Updated beacon-sdk to version 2.2.3

Updated beacon-sdk, bug fixed related to contract callback entry point

05 Mar 22:17
Compare
Choose a tag to compare
  • Updated beacon-sdk to version 2.2.2 #677
  • char2bytes and bytes2char functions (initially in the taquito-tzip16 package) have been added to the taquito-utils package #589
  • Allow specifying an entry point in a contract callback #652
  • Improved CI by adding retry for some of the integration tests

Updated beacon-sdk

05 Mar 19:42
Compare
Choose a tag to compare
Updated beacon-sdk Pre-release
Pre-release

#589

Refactor batch API, improve errors for LamdbaView

25 Feb 19:18
Compare
Choose a tag to compare
  • TezosToolkit.batch has been deprecated in favour of a batch() method on the contract and wallet API. See preliminary docs here: https://github.com/ecadlabs/taquito/pull/648/files and many examples of usage in our integration tests.
  • LamdbaView returns a useful error message when a signer is not configured in Taquito
  • More intergration-tests to cover the Wallet API
  • Many small fixes to the Taquito documentation

You can install it with the command npm i @taquito/taquito@8.0.4-beta.0

Or the handy ncu command to update all your Taquito dependencies using this command:

ncu -u --filter '/^@taquito.*$/'

Refactor batch API, improve errors for LambdaView

25 Feb 01:33
Compare
Choose a tag to compare
  • TezosToolkit.batch has been deprecated in favour of a batch() method on the contract and wallet API. See preliminary docs here: https://github.com/ecadlabs/taquito/pull/648/files and many examples of usage in our integration tests.
  • LamdbaView returns a useful error message when a signer is not configured in Taquito
  • More intergration-tests to cover the Wallet API
  • Many small fixes to the Taquito documentation

This release is published to npmjs under the next tag.

You can install it with the command npm i @taquito/taquito@8.0.4-beta-RC.0

Or the handy ncu command to update all your Taquito dependancies using this command:

ncu -u --target newest --filter '/^@taquito.*$/'

Fix for batch origination

17 Feb 21:55
Compare
Choose a tag to compare

This is a bug-fix release that addresses issue #624