Skip to content

v0.25.0: Improved RPC interface & URL validation

Compare
Choose a tag to compare
@Geod24 Geod24 released this 01 Nov 08:53
· 869 commits to v0.x.x since this release

Major improvements since v0.24.1:

Validators will now always return a frozen UTXO regardless of enrollment status

This affects the GET /public_key and POST /handshake endpoints,
and should allow for a more stable network.

Nodes now support their peers updating UTXOs

This will allow connected clients to re-enroll with a different UTXO.

Name registry will now allow pending enrollment to register

To improve the reactivity of the name registry, registrations are now accepted
as soon as an enrollment exists in the pool, instead of waiting for a block
externalization as was previously the case.

Name registry will now properly clear expired validators

When an enrollment expires, the name registry will now remove the address
from its database instead of indefinitely keeping it.

Block hashing algorithm has changed

The way the hash is derived from the block header has been altered to match
the order of the fields in the structure.

Multiple internal improvements

The Docker image now ships with LDC v1.28.0 instead of v1.26.0,
some noisy log messages have been tamed, and using libconsensus is now easier.

RPC connection are now properly directional and merged

The node will now attempt to merge RPC connections, leading to a single bi-directional
connection per peer instead of a server and a client one.
In addition of reducing the load on the system, this allows to better keep track
of a peer state.

Fix serialization of Set into strings

A previous fix erroneously turned Set into a string representing an array,
instead of an array (of potential strings). This is no longer the case.
Additionally, the empty Set is now correctly serialized.

Agora now handles node addresses consistently internally

The internals of Agora have been revamped to correctly deal with addresses,
and peers having either a REST or an RPC interface.
The change will extend to the configuration file in the near future.

The consensus protocol now enforces Key lock type on freeze transactions

While not previously enforced, it was relied upon in multiple places.