Nomadic Labs
Nomadic Labs
Release of Mainnet May

Today we are proud to announce a new release of the Tezos node and client.

The main features present in this release are:

  • node support for snapshots (boot and synchronize a node in minutes),
  • node support for new history modes (not everyone needs to be an archive),
  • client integration for a multi-signature contract.

Remember that besides major features there are always a myriad of smaller improvements, have a look at the changelog.

We encourage bakers to switch to history mode “full” using a snapshot before the activation of Athens to speedup the validation of the transition block. Detailed instructions are available on the release page.

History modes

Gitlab MR

History mode, together with snapshots, is a feature that has been in the works for quite some time. For a full dive have a look at the original in-depth post. In a nutshell, the Tezos node now supports two additional history modes other than archive, allowing for a drastically reduced disk usage.

The archive mode keeps the whole history of the chain, that is all the blocks and all the contexts resulting from their application. For example it is possible to check that the block at level n had a transfer from Alice to Bob and query that the balance of both accounts in the context were updated. This mode is particularly useful for a block explorer or an application that needs to query the past.

History mode full still has the whole history of the chain but only keeps the blocks. This means that it is possible to replay the whole history from genesis and verify the integrity of the chain but it’s not possible to inspect a context far in the past. In our example we would be able to find the transaction from Alice to Bob at level n, but not query the effect on their balances. Note however that, if needed, it is possible to reconstruct an archive node from a full node by replaying the application of each block and obtaining each intermediate context. This mode is the new default for all newly deployed nodes.

History mode rolling pushes the concept further and permits to delete altogether all the data from a given cutoff point. In this case it’s not possible to access the entirety of the chain from genesis but the disk footprint is reduced even further.

At this time we discourage baking from a rolling node as not all necessary information might be available.

Baking from a full node is supported and recommended. Indeed, not only does the baker performance benefit from the reduced disk usage, but it also has no need for the archives. If a baking service needs the archives, they should consider deploying both a full node for baking, and an archive node for other purposes.

For more details refer to the documentation.


Gitlab MR

Snapshots are a compact and portable way to store the status of a Tezos chain. They can be easily transmitted and used to setup new nodes without the need to re-synchronize the chain as showcased in a recent blogpost from Rajath Alex of TQ.

When importing a snapshot from a third party, it is particularly important to verify that the block hash of the snapshot is correct and consistent with respect to several independent sources (block explorers, wallets, …). An attacker could provide a snapshot representing an alternative chain history to fool your node.

It is good practice to regularly take a snapshot of a node, for example with a cron job every night or week. The files produce are relatively small, especially when compressed. As of today a full snapshot takes 1.8GB (1.1 gzipped) while a rolling snapshot takes 417MB (137 gzipped).

For more details refer to the documentation.


Gitlab MR

Tezos client now integrates a few commands to originate and interact with the multi-signature smart contract written in Michelson. The client supports originating the contract with the specified keys and the required threshold to unlock the funds. It is also possible to change existing keys, remove them or change the threshold. Being only a friendlier interface to a standard smart contract, it is still possible to interact with the multisig by performing a normal transaction from your favorite client or wallet.

More importantly, the contract has been formally proven to comply with the functional specification of a multisig using our Coq framework Mi-Cho-Coq. While this verification does not exclude the possibility of bugs in the specification or the Michelson interpreter, it gives a very high level of confidence in the correctness of this smart-contract. More details on the multisig and its verification will be available in future posts.

Originating a M-of-N multisig in Tezos is now as easy as:

tezos-client deploy multisig <contract-alias> \
             for <manager-account> \
             transferring <amount> from <source-account> \
             with threshold <M> \
             on public keys <signer-1 ... signer-N> \
             --burn-cap 100

Athens on the testchain

The quorum for the second voting phase has been reached, with a supermajority of Yays! This means that the voting procedure can proceed to its third stage: the test chain for Athens is going to be launched soon, approximately Friday April 12th. To accompany that, we just released a new version of the Tezos node and its baking daemons. This release includes many improvements, most notably a new --enable-testchain option. Users who want to participate in the test chain should upgrade...

Read More
Meanwhile at Nomadic Labs #2

The last few weeks have been pretty intense at Nomadic with the preparation of the first community voted upgrade! The team has been working hard on some special future improvements to Tezos… Improvements to the consensus layer Tezos has the unique ability to amend itself which allows us to propose state of the art research to the network at any time. This is not a far fetched ideal and will happen sooner rather than later in a series of new efforts...

Read More
Athens: Second Voting Period

As we approach the completion of the first active voting period, the proposal period, we would like to describe what’s to come during the second voting period. The first voting period saw the Athens protocols injection and bakers upvoted Athens A and/or Athens B, with Athens A, the most popular proposal, promoted for the second voting phase: the test voting period. In this new period, participants are asked to vote on whether to advance Athens A to the next stage: the...

Read More
Athens: Proposals Injected!

Today marks an important milestone for Tezos. We just triggered the beginning of the first on-chain vote for self amendment. This process could end in the successful migration from current protocol alpha to Athens in about three months, if the participants decide so. As advertised in the last meanwhile at Nomadic and as detailed in our previous post, we injected the hashes of two proposals. Both include the same enhancements except for one: the decreased amount in the number of tokens needed to...

Read More
Athens: Our Proposals for the First Voted Amendment

This blog post is a preview of Athens: our protocol proposal for the first voted upgrade of Tezos. As announced in the last meanwhile at Nomadic, we shall propose two upgrades: one lowers the roll size to 8,000 tez, the other leaves it unchanged at 10,000 tez. Both alternatives will include an increase of the gas limit. The hashes of both versions will be proposed on mainnet later this week, now that a new proposal period has begun. Later this week, we will publish a...

Read More
Amendments at Work in Tezos

We are now on the verge of submitting a protocol upgrade to a vote, and it seems like a good opportunity to explain in details the way in which Tezos node handles amendment in practice. Brace yourselves, this article is quite technical, as are all articles in our in-depth category. Still, as we did in the previous one on snapshots, we’ll try to explain the stakes and announcements and give a brief summary in a short foreword understandable even by non-programmers. The original whitepaper...

Read More
Introducing Snapshots and History Modes for the Tezos Node

In this article, we introduce two new features for the Tezos node: snapshots and history modes. A snapshot is a file that contains everything necessary to restore the state of a node at a given block. A node restored via a snapshot can synchronise and help other nodes synchronise in the existing network. The only difference is that you cannot query the chain context (balances, baking rights, etc.) before the restoration point, but you can still get the full chain history. In conjunction, we also...

Read More
Nomadic Labs at Fosdem 2019

Fosdem is of the largest gatherings of Free and Open Source Developers in Europe. It’s held every year in Brussels during the first weekend of February. This year Nomadic Labs is involved in the organization of the “Blockchain and Crypto-currencies devroom”, a one day workshop to present Blockchain projects to the FOSS community. We strongly believe in open source and we want to share our work with the FOSS community at large. We will also present our work on the Tezos project,...

Read More
Meanwhile at Nomadic Labs #1

This post is the first of a series covering the on-going work at Nomadic Labs. In these posts, we focus on our current top priorities, but of course we have many more projects in the works. Preparing Our First Amendment Proposals Tezos is capable, by design, of automatically amending its economic protocol without the need for a manual update or hard-fork. The current protocol is designed to amend itself only after a successful voting procedure, ensuring that there is awareness and consensus in...

Read More

Receive Updates