Skip to content

Releases: hyli-org/hyli

v0.15.0

Choose a tag to compare

@github-actions github-actions released this 27 Mar 12:03
9361c75

Breaking changes

  • 💥 ♻️ Pass calldata to build_commitment_metadata (#1934)
  • 💥 Push metrics instead of exposing them on a Prometheus endpoint (#1835)
  • 💥 ✨ Prover supports contract upgrade (#1755)

Features

  • ✨ no_std for hyli-model & contract-sdk (#1970)
  • ✨ Add tiny blob loadtest scenario (#1962)
  • ✨ add ssbp tool (#1961)
  • ✨ Add v2 for Noir parser for blob abstraction (#1930)
  • ✨ Make backup on bad manifest configurable (#1931)
  • ✨ Add metadata support for SMT registration (#1927)
  • ✨ Handle contract updates in autoprovers (#1909)
  • ✨ Add ContractName::validate (#1912)
  • ✨ Detect contract updates (#1907)
  • ✨ Persist module error on shutdown (#1898)
  • ✨ Add LongRunningTest binary for SMT contract (#1895)
  • ✨ Add noop meter provider when feature disabled (#1889)
  • ✨ Fast catchup from a list of peers (#1867)
  • ✨ hylix: add multi-node devnet support (#1854)
  • ✨ Add BlockRequest to DA layer (#1799)
  • ✨ Use genesis timestamp in bucket path (#1824)
  • ✨ Add on-disk checksum verification for module persistence (#1800)
  • ✨ GCS uploader uploads in parallel & list objects from bucket (#1815)
  • ✨ Compute a shared genesis timestamp (#1821)
  • ✨ Persist async work in mempool properly (#1796)
  • ✨ Indexer has contract updates history (#1759)
  • ✨ Hylix devnet runs registry (#1756)
  • ✨ Handle sync replies in a safe way (#1789)
  • ✨ Allow 'own_lane.rs' to handle multiples lanes on a single node (#1760)
  • ✨ Message interceptor in hyli-net for message dropping (#1766)
  • ✨ contract-listener: persist state and split sequenced/settled events (#1762)
  • ✨ Send pg_notify && ContractListener module (#1725)

Bug Fixes

  • 🐛 Reth tx reverted settled as failed (#1986)
  • 🐛 Big Bro checks no node votes after timeouting (#1984)
  • 🐛 Fix colors missing in logs (#1975)
  • 🐛 Fix node build with reth feature (#1974)
  • 🐛 Fix cached mempool vote lane sizes (#1958)
  • 🐛 Fix bbup link in Dockerfile.base (#1960)
  • 🐛 Clarify clean_and_update_lanes behaviour (#1955)
  • 🐛 Fix tx_blob_count in genesis proofs (#1952)
  • 🐛 fix misleading log message when building a signed block (#1951)
  • 🐛 Small hardenings in consensus (#1943)
  • 🐛 Further node state fixes (#1942)
  • 🐛 Fix Tx timeout resetting to soft-cap (#1941)
  • 🐛 Fix updating via hyli accidentally overwriting state (#1940)
  • 🐛 Fix mempool proof validation and persistence (#1939)
  • 🐛 Fix restoring blob/proof work in mempool (#1938)
  • 🐛 Advance tip/clean lanes before trying to fill holes (#1936)
  • 🐛 Fix wrong tip update when using pop function (#1935)
  • 🐛 Hylix: Set db var env for wallet (#1932)
  • 🐛 Fix fast catchup & genesis start for good hopefully (#1915)
  • 🐛 Fix duplicate tx in explorer + use txs_contracts (#1917)
  • 🐛 Fix loadtest with instrumentation via noop_provider (#1910)
  • 🐛 Fix event loop gauge metric (#1906)
  • 🐛 Fix fast-catchup at genesis by deactivating it (#1901)
  • 🐛 Replace TxHash for TxId in ContractListener module (#1899)
  • 🐛 Fix consensus command metric drift (#1896)
  • 🐛 Update peer list for Da catchupper, improve log verbosity (#1893)
  • 🐛 Fix backfill stopping because of mempool blocks above the ceiling (#1892)
  • 🐛 Simplify & fix catchup / backfill (#1890)
  • 🐛 Fix catch-up robustness in DA (#1888)
  • 🐛 Strenghten DA-stream against holes (#1882)
  • 🐛 rollback on rest feature as it does not compile with no default (#1886)
  • 🐛 Fix leaking dependency hyli_turmoil_shims in macros (#1885)
  • 🐛 Fix cfg use in macros (#1884)
  • 🐛 Fix hyli build no default features (#1879)
  • 🐛 Fix DA answering stream requests when start_height isn't available (#1875)
  • 🐛 fix absent files not in manifest failing (#1874)
  • 🐛 Fix fast catchup for manifest logic (#1872)
  • 🐛 Fix gcs uploader parsing list env var (#1866)
  • 🐛 Fix p2p starvation from lifo_slot, latency metrics (#1865)
  • 🐛 Put back bus client name for bus metrics (#1861)
  • 🐛 make da_listener use fallbacks on startup too (#1859)
  • 🐛 Fix gcs_uploader error about rustls (#1858)
  • 🐛 Fix dissemination.rs dropping sync requests early (#1857)
  • 🐛 consensus: accept commit messages while leader (#1850)
  • 🐛 Add safety check in ModulesHandler::new() (#1853)
  • 🐛 Fix DataAvailability instant broadcast of new blocks when peer catchup (#1851)
  • 🐛 Make cargo commands init OTLP meter by default (#1847)
  • 🐛 Add safety check in ModulesHandler::new() (#1827)
  • 🐛 Fix clippy/fmt (#1848)
  • 🐛 Fix TCP deadlock when buffer is full (#1840)
  • 🐛 Fix cargo test by running fewer Fjalls in parallel (#1846)
  • 🐛 Fix gcs uploader not uploading genesis block (#1839)
  • 🐛 Fix load test for telemetry (#1838)
  • 🐛 Fix SMT auto prover telemetry setup (#1837)
  • 🐛 gcs uploader: Persist genesis timestamp and resume uploads (#1832)
  • 🐛 gcs uploader: Fix DA starting at block 1 + better logs (#1826)
  • 🐛 Drop zombie stream tasks in DA (#1823)
  • 🐛 Fix dissemination order in mempool (#1822)
  • 🐛 Consensus: refactor TC handling & fix sync request issues (#1818)
  • 🐛 Drop stream on tcp closed in DataAvailability (#1820)
  • 🐛 Fix bug when accidentally local CP (#1817)
  • 🐛 Fix: Add per-instance module shutdown (even w/ duplicate modules) (#1814)
  • 🐛 Fix a race in hold_518, add tests (#1810)
  • 🐛 turmoil merge retry (#1804)
  • 🐛 "Revert More deterministic turmoil tests (#1793)" (#1802)
  • 🐛 More deterministic turmoil tests (#1793)
  • 🐛 Avoid creating forked DPs on restart from scratch (#1797)
  • 🐛 Fix signature validation + simplify API (#1791)
  • 🐛 Start timeout scheduling right after genesis (#1792)
  • 🐛 Fix proxy path typo (#1776)
  • 🐛 Fix contract registration test flakiness (#1777)
  • 🐛 Resend timeout certificate on timeout (#1761)
  • 🐛 contract_listener: track block cursors by height+index (#1764)
  • 🐛 Fix ContractListener to send event on tx Success (#1754)
  • 🐛 Fixes around consensus, rejoining and timeout certificates (#1742)

Documentation

  • 📝 Hyli-bus documentation (#1989)

Tests

  • ✅ Reduce test flakiness (#1916)
  • 🧪 Add reproducible chaos testing with turmoil (#1819)
  • 🧪 Add message corruption hooks for turmoil network simulation (#1790)
  • 🧪 drop data proposals test (#1779)
  • 🧪 add turmoil test suites (#1757)

Performance

  • ⚡️ Speed up CSI queries & some explorer paging queries with txs_contr… (#1928)
  • ⚡️ Disseminate less often (#1926)
  • ⚡️ Speedup fast catchup by not going through JSON (#1913)
  • ⚡️ Use ContractListener event in CSI (#1908)
  • ⚡️ Skip hashing txs for proof hydration / p2p (#1911)
  • ⚡️ Speed up PG writes, hopefully (#1900)
  • ⚡️ Leverage ContractListener in Autoprovers (#1855)
  • ⚡️ Make axum dependency optional (#1883)
  • ⚡️ Add feature to remove opentelemetry_sdk from default's dependencies (#1881)
  • ⚡️ feature gate hyli-registry (#1880)
  • ⚡️ Introduce fjall feature to reduce dependency tree (#1878)
  • ⚡️ Add sp1-network feature to lower default dependency tree (#1877)
  • ⚡️ Add gcs feature to avoid pulling unecessary dependency (#1876)
  • ⚡ 💥 Switch string hashes to Vec (#1813)
  • ⚡ Use a ringbuffermap for buffered prepares to reduce state size in serialization (#1778)
  • ⚡️ Remove poda updated and broadcast votes (#1768)

Refactoring

  • ♻️ Refactor consensus timeout workflow (#1988)
  • ♻️ Introduce query() in hyli-bus for better syntax (#1987)
  • ♻️ Split local replay from SignedDAListener (#1959)
  • ♻️ 💥 Better ContractHandler + 📝 Add documentation on CSI (#1933)
  • ♻️ Add missing message types to tcp client/clean TcpMessageLabel macro (#1894)
  • ♻️ Rename tcp api server (#1897)
  • ♻️ Reuse signed DA listener logic as a DaClient (#1860)
  • ♻️ Better display of hylix config (#1862)
  • ♻️ Hylix: ProgressExecutor & better config migration & remove enum duplication (#1836)
  • ♻️ Extract common OpenTelemetry initialization into its own crate (#1833)
  • ♻️ Move NodeStateProcessor inside SignedDAListener module using BlockProcessor (#1801)
  • ♻️ Refactor Autobahn tests (#1816)
  • ♻️ Move DAListener to NodeStateProcessor to avoid code duplication (#1798)
  • ♻️ Move bus to new crate hyli-bus (#1780)
  • ♻️ Make parent DPHash more explicit (#1794)
  • ♻️ add tcp labels to send histograms (#1788)
  • ♻️ Split turmoil tests into categorized modules (#1787)
  • ♻️ Remove usage of Block/parsed_block in modules & tools (#1773)
  • ♻️ Update peer knowledge when processing CCPs (#1753)
  • ♻️ Merge Sync request/reply logic into dissemination (#1752)
  • ♻️ Switch own lane dissemination logic to a separate module (#1751)
  • ♻️ Add lane IDs to mempool messages, and handle them properly (#1750)

Logging

  • 🔊 Fixup mempool metric to counter (#1919)
  • 🔊 more metrics around block/dp sizes (#1918)
  • 🔊 Add a 'last branch taken' gauge to event loops (#1868)
  • 🔊 Improve TCP/P2P servers logs and code (#1743)

Security

  • 🔒️ Fix identity verification in SMT contract (#1956)

Devtools / CI

  • 🔨 Add HYLI_PG_HOST_PORT to use fixed --pg port (#1977)
  • 💚 Fix build of crates after no_std (#1976)
  • 💚 ci: use csi feature for hyli-client-sdk build matrix (#1891)
  • 💚 Use cargo check instead of cargo build (#1887)
  • 👷‍♂️ Fix docker multiplatform upload for ghcr (#1811)
  • 💚 Clippy fixes (#1795)
  • 💚 Fix compilation of bonsai-runner / loadtest (#1775)
  • 💚 actually fix check-crate-compilation (#1770)
  • 💚 Hopefully fix hyli check-crate-compilation (#1769)
  • 💚 Run CI on a custom docker image prebuilt with useful programs (#1767)
  • 💚 Don't actually use cache copy (#1763)

Removed

  • 🔥 remove fast catchup override, superseded by manifest (#1856)
  • 🔥 Remove all usage of Block/parsed_block (#1774)

Dependencies

  • ⬆️ Bump version 0.15.0 (#1995)
  • ⬆️ Bump tokio from 1.49.0 to 1.50.0 (#1982)
  • ⬆️ Bump console from 0.16.2 to 0.16.3 (#1967)
  • ⬆️ Bump assertables from 9.8.4 to 9.8.6 (#1946)
  • ⬆️ Bump whoami from 2.1.0 to 2.1.1 (#1966)
  • ⬆️ Bump which from 8.0.0 to 8.0.2 (#1965)
  • ⬆️ Bump proc-macro-crate from 3.4.0 to 3.5.0 (#1945)
  • ⬆️ Bump google-cloud-storage from 1.7.0 to 1.8.0 (#1944)
  • ⬆️ Update SMT im...
Read more

v0.14.1

Choose a tag to compare

@github-actions github-actions released this 22 Dec 15:11
2eb0d16

Features

  • ✨ Add a label to tcp socket streams (#1737)
  • ✨ Send tracing context over TCP in new TcpHeaders (#1711)
  • ✨ Introduce TCP headers (#1710)
  • ✨ Carry span context over bus (#1703)
  • ✨ Add OTLP instrumentation support (#1692)
  • ✨ Use a fresh DB every clean restart with some settings (#1688)
  • ✨ Reth verifier (#1660)

Bug Fixes

  • 🐛 Fix/bubble up tcp error (#1728)
  • 🐛 Fix tracing setup (#1726)
  • 🐛 Don't leave joining mode if we receive a TC for a much later slot (#1723)
  • 🐛 correct OpenAPI schema for proof hash endpoint (#1698)
  • 🐛 Gather WaitingDissemination events sending (#1712)
  • 🐛 Conserve transaction status priority in indexer's db (#1706)
  • 🐛 Add distinctive bytes for consensus markers (#1702)

Tests

  • 🧪 Make leader choice deterministic wrt turmoil seed (#1689)

Performance

  • ⚡️ Do no recreate contracts in LRT (#1707)
  • ⚡ Shorter backoff for mempool sync replies with exponential backoff (#1690)
  • ⚡ Remove cache from ci job build with feature flags (#1700)
  • ⚡️ Share same key for RustCache in CI (#1686)
  • ⚡️ Activate trie feature for SMT fastpath (#1683)
  • ⚡️ Use RustCaching in CI (#1684)

Refactoring

  • ♻️ Remove useless structs (#1727)
  • ♻️ Move DA struct to one single place (#1713)

Logging

  • 🔊 Add a status gauge to the consensus metrics (#1735)

Devtools / CI

  • 💚 CI fixup: faster unit test cov, run check-crates on github (#1732)
  • 💚 CI profile for tests (#1729)
  • 💚 Use distinct caches (#1716)
  • 💚 CI don't work directly in cache but copy & save (#1715)
  • 💚 Use self-hosted runner (#1704)

Removed

  • 🔥 Remove unnecessary sleep (#1687)

Dependencies

  • ⬆️ Bump zip from 3.0.0 to 6.0.0 (#1719)
  • ⬆️ update bb to 2.0.3 (#1722)
  • ⬆️ Update turmoil and Rand (#1699)
  • ⬆️ Bump borsh from 1.5.7 to 1.6.0 (#1697)
  • 📌 Hylix use 'latest' tag (#1681)
  • ⬆️ Bump risc0-zkvm from 3.0.3 to 3.0.4 (#1676)
  • ⬆️ Bump tower_governor from 0.7.0 to 0.8.0 (#1677)
  • ⬆️ Bump quote from 1.0.41 to 1.0.42 (#1675)
  • ⬆️ Bump hyper-util from 0.1.17 to 0.1.18 (#1678)
  • ⬆️ Bump testcontainers-modules from 0.12.1 to 0.14.0 (#1679)

Uncategorized

  • ⚙️ Rework metrics tcp p2p (#1734)
  • ⚙️ Extract conf parameters for tcp p2p (#1733)
  • 🔈 Poison sockets on error to avoid retry and tcp noise (#1731)
  • 🔖 Set version to 0.14.0 (#1680)

v0.14.0

Choose a tag to compare

@github-actions github-actions released this 01 Dec 14:43
ab38453

Breaking changes

  • 💥 Add soft&hard timeout values for contracts timeout (#1671)

Features

  • ✨ Detect settleable contracts during settlement (#1674)
  • ✨ Introduce ModifiedContractData struct (#1668)
  • ✨ Add block_height info (#1663)
  • ✨ Dockerfile for ARM (#1637)
  • ✨ Hylix: add --no-pull option (#1655)
  • ✨ Rate proxy add blacklisted contracts & identities (#1648)
  • ✨ Add endpoint v1/indexer/contract/{cn}/last_settled_tx_id (#1651)
  • ✨ Rate limit proxy hot reload config (#1647)
  • ✨ Hylix add delete contract command (#1644)
  • ✨ Check local images no failing pull (#1630)
  • ✨ Hylix allow to set node RUST_LOG (#1626)
  • ✨ Hylix run checks if devnet is running & better error output (#1616)
  • ✨ Hylix allow extra args to run (#1614)
  • ✨ Allow starting GCS uploader at a different block height (#1606)
  • ✨ Hylix tests & improved run (#1599)
  • ✨ Hylix devnet logs command (#1605)
  • ✨ Hylix: resume stopped devnet + pause command (#1604)
  • ✨ Hylix config command (#1598)

Bug Fixes

  • 🐛 Fix txevents indexing (#1664)
  • 🐛 Fix deserialization for permissioned blob action (#1662)
  • 🐛 Fix tracing random drop of logs (#1661)
  • 🐛 Fix proxy blacklist of register (#1654)
  • 🐛 Fix clippy checks (#1646)
  • 🐛 Hylix run as release given conf (#1642)
  • 🐛 Reduce compilation artifacts size in CI tests (#1632)
  • 🐛 Hylix Fix Hyli DB url to be more generic (#1618)
  • 🐛 Hylix set SP1_PROVER for run & fix devault conf (#1617)
  • 🐛 Fix TX type for mempool events (#1602)

Documentation

  • 📝 readme updates (#1659)

Performance

  • ⚡️ Hylix don't build before run (#1619)
  • ⚡️ Store proofs only during data dissemination (#1603)

Refactoring

  • ♻️ Factorize tx set_timeout code (#1666)
  • ♻️ Tweak dockerfile setup looking at ARM compat (#1629)
  • ♻️ Move nativer verifiers to remove hyli-verifiers dependency in hyli-modules (#1620)

Logging

  • 🔊 Hylix add log warning on bake failure (#1615)

Deployments

  • 🚀 Multi-plaftorm base docker image (#1640)

Devtools / CI

  • 👷 CI push to new gcp registry (#1673)
  • 💚 Fixup base docker build (#1641)
  • 💚 Fix clippy for 1.90 (#1621)
  • 💚 Fix clippy for 1.89 (#1613)

Removed

  • 🔥 Remove hyllar 2 csi (#1574)
  • 🔥 Simplify dockerfile with cairo-m not needed (#1636)

Dependencies

  • ⬆️ Upgrade Risc0 to v3.0.3 (#1657)
  • ⬆️ Bump blst from 0.3.15 to 0.3.16 (#1638)
  • ⬆️ Bump clap from 4.5.47 to 4.5.48 (#1622)
  • ⬆️ Update to bb 0.87.9 (#1634)
  • ⬆️ Bump serde_with from 3.14.0 to 3.14.1 (#1624)
  • ⬆️ Bump chrono from 0.4.41 to 0.4.42 (#1612)
  • ⬆️ Bump ureq from 3.1.1 to 3.1.2 (#1610)

Uncategorized

  • 🔍️ Add some instrumentation (#1643)
  • 🔖 Bump hylix to v0.3.0 (#1611)

v0.14.0-rc3

v0.14.0-rc3 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 10 Sep 13:46
71e3ee5

Features

  • ✨ Add multipart proof endpoint (#1582)
  • ✨ Introduce Hylix (#1583)

Bug Fixes

  • 🐛 Fix panic when processing old blocks in indexer (#1593)
  • 🐛 Fix hashing of verified proof TX to match proof TX (#1591)

Tests

  • ✅ Start testing client sdk (#1594)

Performance

  • ⚡ Indexer improvements: faster streaming + re-add txs_contracts (#1584)

Refactoring

  • ♻️ Hylix up & down (#1585)

Logging

  • 🔊 Hylix better logs on not implemented functions (#1595)
  • 🔇 Fix debug warn logs (#1592)

Dependencies

  • ⬆️ Bump axum-test from 17.3.0 to 18.1.0 (#1589)
  • ⬆️ Bump ureq from 3.1.0 to 3.1.1 (#1590)
  • ⬆️ Bump console from 0.16.0 to 0.16.1 (#1587)

Uncategorized

  • 🔖 Bump version to 0.14.0-rc3 (#1600)
  • ✏️ Fix typos (#1597)

v0.14.0-rc2

v0.14.0-rc2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 05 Sep 11:53
1d2e7eb

Features

  • ✨ Minor query improvement for indexer (#1577)
  • ✨ Minor improvements for fib race (#1566)

Bug Fixes

  • 🐛 Prevent message loss on the TCP API side (#1578)
  • 🐛 Fix transaction events in indexer (#1573)
  • 🐛 Use a different block for consensus processing to keep cuts around when catching up (#1559)

Refactoring

  • ♻️ Upgrade autoprover to the new block events (#1563)
  • ♻️ Rework UnsettledBlobTransaction to keep BlobTransaction around (#1562)
  • ♻️ Introduce a 'stateful-event' struct, replace usage of Block in CSI (#1561)
  • ♻️ Store TxId directly in unsettledBlobTransaction (#1560)
  • ♻️ Don't leak NodeStateProcessing (#1558)

Removed

  • 🔥 Remove proxying src/node_state.rs (#1557)

Dependencies

  • ⬆️ Update dependencies for cairo-m (#1571)

Uncategorized

  • 🔖 Bump to v0.14.0-rc2 (#1581)
  • 📦️ Add cairo-m feature do Docker image (#1565)

v0.14.0-rc1

v0.14.0-rc1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 27 Aug 13:20
e053429

Breaking changes

  • 💥 Add Verifier&ProgramId in ProofTransaction (#1484)
  • 💥 ✨ Add an endpoint for prover readiness (#1390)

Features

  • ✨ add cairo m verifier (#1545)
  • ✨ Start backfill from first hole in storage (#1544)
  • ✨ Add test for timeout rebroadcast (#1539)
  • ✨ Move OnChain execution at settlement logic (#1521)
  • ✨ Improve QueryNewCut - faster and avoids staleness (#1520)
  • ✨ Replace Register/Delete virtual blob w/ real ones (#1494)
  • ✨ Store proofs on GCS instead of PG -remove proofs by default (#1420)
  • ✨ Improve block creation flexibility in single-consensus (#1486)
  • ✨ Per-message type capacity on bus (#1483)
  • ✨ Boundless runner (#1372)
  • ✨ Store cycles count in metrics (#1436)
  • ✨ Add AdminApi to smt auto provers (#1437)
  • ✨ Embed nodestate in indexer (#1432)
  • ✨ Add admin download file endpoint (#1429)
  • ✨ Uprade CI test timeout to 20 minutes (#1428)
  • ✨ Node state checker tool + Signed block Da listener (#1383)
  • ✨ Make consensus timeout configurable (#1398)
  • ✨ Detect when a received DP is already on top on lane (#1389)
  • ✨ Add monitoring on success/failure of a tx (#1386)

Bug Fixes

  • 🐛 Fix clippy checks (#1549)
  • 🐛 Make blob proof output indices consistent with executed blobs (#1542)
  • 🐛 Fix docs tools (#1522)
  • 🐛 move back to rust1.88 and fix cargo docs (#1519)
  • 🐛 SettleAsFailed Tx with incorrect OnChainEffects (#1509)
  • 🐛 Clippy to rustc 1.89 (#1517)
  • 🐛 fix dockerfile (#1515)
  • 🐛 Properly sign NIL timeout certificates (#1512)
  • 🐛 Refacto of consensus TC handling for fast-forward support (#1510)
  • 🐛 Allow fast-forwarding views on consensus timeouts (#1502)
  • 🐛 Configure DA client correctly in DA module (#1496)
  • 🐛 Fixup alloc-track feature (#1493)
  • 🐛 Fix dissemination fees checks (#1480)
  • 🐛 CSI handle upgrade contract (#1367)
  • 🐛 Fix fjall compression feature (#1478)
  • 🐛 Prevent indexer crash on shutdown (#1477)
  • 🐛 Carry on on errors in the indexer when possible (#1474)
  • 🐛 Add env var to conf DA sleep timeout (#1455)
  • 🐛 DAListener should always start from 0 or current height (#1430)
  • 🐛 Don't stop when not finding contract (#1462)
  • 🐛 only allow faucet and wallet (#1459)
  • 🐛 Make VerifiedProofTx hash match ProofTx hash (#1421)
  • 🐛 Enable timeout fix from genesis (#1456)
  • 🐛 Fix crash on wrong smt blob format (#1447)
  • 🐛 Indexer/Dump store at shutdown (#1444)
  • 🐛 Prover checks blocks height (#1431)
  • 🐛 Remove timeout in bus send_waiting method (emits warns) (#1427)
  • 🚑️ Fix clippy+fmt (#1417)
  • 🐛 Fix mempool AlreadyOnTop issue, cleanup put() (#1414)
  • 🐛 data availability tcp server mem leak (#1410)
  • 🐛 Add node-state-check to node & fixup SignedDaListener to match DAList… (#1409)
  • 🐛 Redisseminate first dps (#1405)
  • 🐛 Fix prover serde (#1407)
  • 🐛 Da tcp server metrics + backoff slow clients (#1404)
  • 🐛 Fix delete contract + add tests (#1403)
  • 🐛 Fix settlement bug after hyle TX (#1401)
  • 🐛 Do not stop module on failed ping (#1402)
  • 🐛 Fix indexer for some failing verified proof TX (#1400)
  • 🐛 Clean dead peers in data availability + add client timeout (#1399)
  • 🐛 Do not reprocess buffered&ignored dp (#1397)
  • 🐛 Data availability send if full (#1395)
  • 🐛 Fix Txhash for failed proof output validation (#1385)

Documentation

  • 📝 Hylix docs upgrades (#1550)
  • 📝 Introduce Hylix (#1497)
  • 📝 README restructuration & updates (#1546)
  • 📝 Better CONTRIBUTING (#1490)

Configuration

  • 🔧 Rust version from workspace (#1488)

Tests

Performance

  • ⚡ Fast catchup (#1514)
  • ⚡️ Remove ProofData frm SignedBlock (#1472)
  • ⚡️ Fail blobs early when valid proof of failing (#1435)
  • ⚡️ Do not re-execute blobs if failed prediction was good (#1307)
  • ⚡️ Speed up contracts query (#1445)
  • ⚡️ Speedup node-state (#1473)
  • ⚡️ Allow 'da:' prefix for faster local DA listener (#1457)
  • ⚡️ Prevent using different lib version (#1449)
  • ⚡️ speedup prover (#1461)
  • ⚡️ Speed up node state (#1460)
  • ⚡ improve sql indexer (#1448)
  • ⚡️ Optimise query to get transactions (#1443)
  • ⚡️ Don't try to deser as NukeTxAction unless on Hyle (#1438)
  • ⚡️ Light, fast SMT executor (#1426)
  • ⚡️ Make consensus more reactive to new DPs (#1406)
  • ⚡ da listener retry (#1396)

Refactoring

  • 🚚 Fix rename docker registry (#1556)
  • 🚚 Rename all to hyli (#1555)
  • ♻️ Refactor node-state to use callbacks and reimplement Indexing + compatibility layer (temporarily) (#1535)
  • ♻️ Swap handler and tests in indexer module (#1541)
  • ♻️ Make current_proposal an explicit option (#1516)
  • ♻️ Move some mempool code around for readability (#1518)
  • ♻️ Split explorer & indexer (#1333)
  • ♻️ Add settlement status for tx in recursion (#1434)

Devtools / CI

  • 🔨 Remove unnecessary heap allocation (#1464)
  • 🔨 Add alloc-track to track allocations + HTML tool (#1482)
  • 💚 Fix build crates (#1471)
  • 🔨 Rate limit proxy (#1413)

Removed

  • 🔥 Remove NukeTxAction (rip) (#1491)

Dependencies

  • ⬆️ Bump indexmap from 2.10.0 to 2.11.0 (#1552)
  • ⬆️ Bump axum-test from 17.3.0 to 18.0.0 (#1553)
  • ⬆️ Bump sp1-sdk from 5.0.8 to 5.1.1 (#1531)
  • ⬆️ Bump toml from 0.9.2 to 0.9.5 (#1529)
  • ⬆️ Bump tokio from 1.46.1 to 1.47.1 (#1528)
  • ⬆️ Bump clap from 4.5.41 to 4.5.43 (#1525)
  • ⬆️ Bump whoami from 1.6.0 to 1.6.1 (#1527)
  • ⬆️ Bump uuid from 1.17.0 to 1.18.0 (#1524)
  • ⬆️ Bump assertables from 9.8.1 to 9.8.2 (#1526)
  • ⬆️ Bump sp1-zkvm from 5.1.1 to 5.2.1 (#1523)
  • ⬆️ Bump toml from 0.8.23 to 0.9.2 (#1504)
  • ⬆️ Bump tokio-util from 0.7.15 to 0.7.16 (#1507)
  • ⬆️ Bump serde_json from 1.0.141 to 1.0.142 (#1506)
  • ⬆️ Bump sp1-zkvm from 5.0.8 to 5.1.1 (#1505)
  • ⬆️ Bump keyring from 3.6.2 to 3.6.3 (#1508)
  • ⬆️ Upgrade risc0 (#1465)
  • ⬆️ Bump syn from 2.0.101 to 2.0.104 (#1387)
  • ⬆️ Bump assertables from 9.7.1 to 9.8.0 (#1415)

Uncategorized

  • 📦️ Docker build configuration for MacOS (#1454)
  • 💸 Sunset grant program (#1481)
  • Revert "Include in docker image"
  • Include in docker image
  • improve docs.rs on hyle_contract_sdk (#1411)
  • 💾 Admin module - persist modules on event v1 (#1381)

v0.13.2

Choose a tag to compare

@github-actions github-actions released this 20 Jun 16:26
c7f8a6d

Breaking changes

  • 💥 Timeout fixes after block 445000 (#1382)

Features

  • ✨ Update timeout window in contracts (#1384)

Bug Fixes

  • 🐛 Fix prover catchup under load (#1379)
  • 🐛 🐛 Timeout bugs correction [REVERT] (#1380)
  • 🐛 don't send messages to no-one in block_dbg (#1378)

Performance

  • ⚡️ Shutdown aware timeout + wait less for proofs (#1377)

v0.13.1

Choose a tag to compare

@github-actions github-actions released this 19 Jun 13:45
275c32b

Features

  • ✨ Update contract programId from permissioned blob (#1365)
  • ✨ Prover check its stored state (#1361)
  • ✨ Dont wait other peers when genesis (#1357)
  • ✨ Only fetch the to entry for SyncRequests with from == None (#1355)
  • ✨ Allow multiple blobs in the nuke tx (#1335)
  • ✨ Error on full bus channel, wait in da_listener (#1344)
  • ✨ Add useful health data to node_state / consensus API (#1338)
  • ✨ Allow nuke transaction (#1315)
  • ✨ Allow indexer to configure query buffer size (#1330)
  • ✨ DAListener can read dump folder (#1320)

Bug Fixes

  • 🐛 Make sure hyle contract has only one configuration, even when overriding in genesis (#1371)
  • 🐛 Fix prover catchup with only unsettled txs (#1370)
  • 🐛 NodeState timeout bug (#1369)
  • 🐛 Fix timeout during catchup (#1362)
  • 🐛 Fix prover for duplicated_txs (#1358)
  • 🐛 Batch insertion/update on PG (#1354)
  • 🐛 ReSync when building a block, add tests (#1350)
  • 🐛 Fix incorrect exit-of-joining on catchup (#1353)
  • 🐛 Fix state revert of SMT-like contracts (#1341)
  • 🐛 Fix proof stats endpoint (#1337)
  • 🐛 Fix SMT handler (#1331)

Tests

  • ✅ Reduce flakiness (#1356)

Performance

  • ⚡️ Deduplicate buffered proposals, drop on restart (#1374)
  • ⚡️ Fix bonsai_runner blocking sleep (#1376)
  • ⚡️ Don't wait so long for proofs (#1373)
  • ⚡️ Fix CSI memory leak (#1368)
  • ⚡ Higher dp size from 40kb to 40mb (#1364)
  • ⚡️ Prevent blob TXs with too many blobs (#1345)
  • ⚡ Fix prover oom (#1332)
  • ⚡️ Introduce new txs_contracts table for better query (#1329)
  • ⚡️ Better query for indexer contracts endpoints (#1328)

Logging

  • 🔊 Bump shutdown timeout to 5s (#1375)
  • 🔇 Reduce loglevel (#1360)
  • 🔇 Clean debug log (#1334)
  • 🔊 Better logging on shutdown (#1284)

Devtools / CI

  • 👷 Add health_check to Dockerfile (#1340)
  • 🔨 Health check utility (#1339)

Removed

  • 🔥 Revert "⚡️ Don't wait so long for proofs (#1373)"

Dependencies

  • ⬆️ Bump serde_with from 3.12.0 to 3.13.0 (#1349)

Uncategorized

  • 🔈 Clean logs in mempool (#1343)

v0.13.0

Choose a tag to compare

@github-actions github-actions released this 12 Jun 14:59
5417ce8

Breaking changes

  • 💥 RunResult as vec (#1222)
  • 💥 Update noir TX parsing (#1205)
  • 💥 Refactor build_modules to simplify apps (#1173)
  • 💥 ✨ Change sdk & all contracts to be multiproof (#1057)
  • 💥 🐛 Explicitly separate server ports from public IP addresses for DA / p2p (#1053)
  • 💥 Use '@' instead of '.' to separate identities from contract names (#1033)
  • 💥 State reads in HyleOutput, cleanup (#1030)

Features

  • ✨ Permission delete contracts with hyli@wallet identity (#1304) (#1327)
  • ✨ Add metrics to smt autoprover (#1324)
  • ✨ New catchup logic for AutoProver: execute only settled (#1313)
  • ✨ Freeze staking balances (#1310)
  • ✨ Add autoprover bin (#1306)
  • ✨ Add metrics to autoprover (#1289)
  • ✨ Permission delete contracts with hyli@wallet identity (#1304)
  • ✨ Deploy 'oxygen' and 'vitamin' (#1292)
  • ✨ AutoProver has max txs per proof conf (#1262)
  • ✨ AutoProver can batch multiple blocks (#1260)
  • ✨ Handle contract registration and deletion properly in indexer (#1259)
  • ✨ native blobs keep settlement unblocked V2 (#1233)
  • ✨ Add peak_tps to stats endpoint (#1242)
  • ✨ Provide a TxExecutorHandler for native verifiers (#1244)
  • ✨ Add enpoint to get proof count stats per verfier (#1229)
  • ✨ Store LaneId of transactions (#1227)
  • ✨ Add earliest_unsettled field to indexer contracts (#1218)
  • ✨ Propagate MempoolEvents in DA listener (#1219)
  • ✨ Allow batching on partial states contracts (#1210)
  • ✨ Add constructor metadata to register actions and indexers (#1196)
  • ✨ Add CSI for SMT Token (-> oranj) & fix genesis (#1204)
  • ✨ Add dedicated sp1 NetworkProver (#1203)
  • ✨ Mempool Sync submodule (#1201)
  • ✨ Add contract & blocks txs count to indexer (#1191)
  • ✨ Add explicit default state in prover (#1193)
  • ✨ Use prover networks (#1157)
  • ✨ Allow many config files (#1177)
  • ✨ Return Secp256k1 blob after checking it (#1168)
  • ✨ Auto prover retry on SessionCreateErr (#1155)
  • ✨ Handshake with current height (#1143)
  • ✨ Use signed headers in mempool net messages (#1103)
  • ✨ Start new consensus slots faster unless we are making no progress (#1108)
  • ✨ Add indexer stats endpoint (#1122)
  • ✨ Add timestamp to indexer txs (#1105)
  • ✨ Stream new blocs & txs on websocket (#1102)
  • ✨ Introduce p2p canals (#1095)
  • ✨ Configure timeouts per-contracts (#1043)
  • ✨ Websocket: Add topic messages (#1086)
  • ✨ CSI send custom events on bus (#1085)
  • ✨ Add WebSocket module (#1081)
  • ✨ Extend bus client with generics & use it for AutoProver (#1078)
  • ✨ Prevent sending message based on ping (#1076)
  • ✨ Auto prover module (#1056)
  • ✨ Ping all peers regularly in p2p server (#1073)
  • ✨ Reconnect TcpClient in async (#1066)
  • ✨ Add CheckSecp256k1 to sdk & helper on Secp256k1Blob (#1022)
  • ✨ P2P server reconnection (#1059)
  • ✨ P2P Module into p2p server (#1036)
  • ✨ CSI: add more handlers (#1037)

Bug Fixes

  • 🐛 Fix prover remaining_blobs (#1325)
  • 🐛 Handle errors better in GCS uploader (#1321)
  • 🐛 Fix handling txs with multiple blobs (#1323)
  • 🐛 Fix autoprover catchup for good, hopefully (#1317)
  • 🐛 Gate behind feature (#1319)
  • 🐛 Fix new prover catchup & check catchup is good ! (#1316)
  • 🐛 Fix dockerbuild for autoprover (#1311)
  • 🐛 Fix dockerbuild for autoprover (#1309)
  • 🐛 Fix multiple bugs for Autoprover (#1305)
  • 🐛 Fix genesis deposit for fees (#1301)
  • 🐛 Fix GCS conf #2 (#1302)
  • 🐛 Fix GCS conf setup (#1300)
  • 🐛 Prevent early settlement of TXs (#1299)
  • 🐛 Fix tests for timeout (#1288)
  • 🐛 Fix timeout resets after settlement
  • 🐛 Fix prover mismatch when settled & failed in same block + fix find in buffered blocks (#1286)
  • 🐛 Fix autoprover handling of TX that fail in pos > 0 (#1281)
  • 🐛 Fix when duplicated txs (#1280)
  • 🐛 Fix Autoprover when future tx fails (#1278)
  • 🐛 Make NodeState keep calm and dont panic (#1274)
  • 🐛 Disable mempool status event in indexer for now (#1275)
  • 🐛 Match ZK / Handler contracts for SMT token (#1272)
  • 🐛 Fix AutoProver prove all txs when timeout (#1270)
  • 🐛 Fix self-transfers in txexecutorhandler (#1268)
  • 🐛 Timeout sending TCP messages, add metrics (#1265)
  • 🐛 Store TxCtx for unsettled tx in CSI (#1266)
  • 🐛 Fix state_history management in autoprover (#1261)
  • 🐛 Fix txs stuck in limbo (#1258)
  • 🐛 Fix catchup break on recent block (#1243)
  • 🐛 Fix AutoProver when first txs are timeout (#1256)
  • 🐛 Fix missing events from Tx history (#1255)
  • 🐛 Fix state reset on tx error (#1249)
  • 🐛 Fix node state settlement after failed TXs (#1250)
  • 🐛 Fixes for explorer (#1247)
  • 🐛 Fix program output type in indexer (#1238)
  • 🐛 Add required traits (#1246)
  • 🐛 Fixup native verifiers (#1245)
  • 🐛 Update when slot when catching up in consensus (#1240)
  • 🐛 Fix check_caller_callees, add tests, prevent panics (#1228)
  • 🐛 Fix prover catchup: buffer all pending blobs (#1231)
  • 🐛 Fix prover bugs & add tests (#1225)
  • 🐛 Fix SMT transfer to self (#1221)
  • 🐛 Fix prover start height when loading from disk (#1217)
  • 🐛 More tests on the indexer + get_transaction returns proof_tx | blob_tx (#1215)
  • 🐛 Avoid duplicate tx make crash indexer (#1214)
  • 🐛 Add missing block_height to transaction events (#1213)
  • 🐛 Fix inconsistencies in indexer api (#1209)
  • 🐛 Fix smt-token blob inputs (#1206)
  • 🐛 Add hyle contract to genesis for indexer (#1200)
  • 🐛 Fix reverse dp order when creating a block (#1190)
  • 🐛 DAListener handle blocks in right order (#1182)
  • 🐛 Don't stop DAListener on NodeState error (#1180)
  • 🐛 Fix ClientProver calldatas type (#1165)
  • 🐛 Increase da frame frame_size (#1160)
  • 🐛 Fix sp1 verifier (#1152)
  • 🐛 Switch consensus to MsgWithHeader (#1156)
  • 🐛 Tcp double transmission + turmoil flakyness (#1153)
  • 🐛 Avoid exponential explosion in consensus syncrequest (#1135)
  • 🐛 Fix TX timeout for unknown contracts / deletion (#1147)
  • 🐛 Start a new task after connection failure (#1141)
  • 🐛 Fix verify_poda to ensure growing cuts, fix QueryNewCut (#1128)
  • 🐛 Fix node handling of duplicate TXs leading to crash (#1117)
  • 🐛 Fix creation of DP, only disseminate if relevant (#1106)
  • 🐛 Fix conf of perf test harness to avoid race (#1107)
  • 🐛 Improve consensus prepare buffering for robustness (#1093)
  • 🐛 Fix macro frame length to transmit max length (#1071)
  • 🐛 Redo handshake on message fail (#1069)
  • 🐛 Fix LRT for @ identities (#1065)
  • 🐛 Use peer addr instead of local addr in client connections (#1061)
  • 🐛 Fix handle multiple outputs (#1052)
  • 🐛 Fix processing of on_commit while joining (#1062)
  • 🐛 Fix missing lane id (#1044)
  • 🐛 Resplit turmoil tests in jobs (#1055)
  • 🐛 Fix turmoil tests (#1054)
  • 🐛 Avoid committing the wrong slot when receiving multiple messages (#1045)
  • 🐛 Missed Prepare for slow node (#1031)
  • 🐛 Fixup identity - use the last @ (#1034)
  • 🐛 Fix timedout tx missing its lane_id in block (#1041)
  • 🐛 Put monotonic checks for timestamps (#1038)
  • 🐛 keep context for failing requests (#1025)
  • 🐛 Buffer podas waiting for data proposals being processed (#1024)
  • 🐛 Fix ordering of tx processing (#1032)
  • 🐛 fix clean or preserve noir temp files based on env var (#1021)
  • 🐛 Fix noir parser to be compatible with bb.js (#1020)

Documentation

  • 📝 Fix tagline (#1187)
  • 📝 Fix doc links to ZkContract (#1039)

Configuration

Tests

  • ✅ Fix tests (#1322)
  • ✅ Autoprover add test on tx success & fails in same block (#1287)
  • 🧪 Add test for ordered dps in signed blocks (#1192)
  • 🧪 Add turmoil test to check hosts keep try to connect (#1145)
  • ✅ More tolerant turmoil tests (#1121)
  • 🧪 Add turmoil test that restart hosts and checks handshakes are correct… (#1080)
  • ✅ Fix p2p_server flakyness (#1088)
  • ✅ restore tests (#1077)
  • 🧪 Add utest for server/client macro for max_frame_length (#1074)
  • 🧪 🐛 Use OS port in test instead of fixed port (#1064)
  • 🧪 Make p2p turmoil test fail if handshake does not end. (#1060)

Performance

  • ⚡️ Generate proof of failures in more cases (#1312)
  • ⚡️ Indexer batch insert blocks (#1241)
  • ⚡ Make native blobs non blocking during settlement (#1211)
  • ⚡ Dedup txs on dissemination (avoid mempool status event emission) (#1224)
  • ⚡️ Take SP1ProvingKey as input to allow better init (#1216)
  • ⚡ Use stream when fetching data from Fjall (#1174)
  • ⚡️ Process buffered DP when done with one (#1162)
  • ⚡️ Remove fancy codec from TcpServer and just operate on bytes (#1158)
  • ⚡️ Optimise DP dissemination (#1150)
  • ⚡ Abort started tcp clients (#1130)
  • ⚡️ Fix fjall storage of DA blocks by height (#1116)
  • ⚡ TCP - Retrigger handshakes on failures, better logs, (#1125)
  • ⚡️ Go back to disseminating every 3s (#1123)
  • ⚡ Offload own data proposal hashing (#1118)
  • ⚡️ Slow dissemination ticks to every 10 s (#1111)
  • ⚡️ Force 6 worker threads for testnet (#1109)
  • ⚡️ Skip re-hashing DPs from fjall (#1104)
  • ⚡ Batch send calls in P2P server (#1094)
  • ⚡️ Cache processed DPs to avoid undue processing (#1090)
  • ⚡ Move sends in coroutins in tcp server (#1087)
  • ⚡️ Use a custom threadpool for the previously spawn_blocking tasks in mempool to reduce CPU load (#1083)
  • 🧵 Do not remove p2p peer on tcp socket close (#1091)
  • ⚡️ Re-disseminate 'old' DPs less often (#1082)
  • ⚡️ Limit max DP size for smoother execution (#1058)
  • ⚡️ Split DP & metadata (signatures, ...) in mempool storage. (#1040)
  • ⚡️ Minor tweaks to the test perf harness setup (#1035)

Refactoring

  • ♻️ Move indexer hanlder to file (#1230)
  • ♻️ Reorg indexer api mod (#1226)
  • ♻️ Introduce trait NodeApiClient to be able to have a Mock (#1223)
  • ♻️ Handle MsgWithHeader in p2p module (#1167)
  • ♻️ Move consensusNetMessage out of hyle_model (#1159)
  • ♻️ Extract modules to sdk (#1149)
  • ♻️ Remove trait BusMessage (#1148)
  • ♻️ Prefix consensus metrics (#1134)
  • ♻️ Move node state tests to src/node_state/test (#1132)
  • ♻️ Tweak metrics (#1110)
  • ♻️ Remove useless results (#1075)
  • ♻️ Reorg hyle_verif...
Read more

v0.13.0-rc.4

v0.13.0-rc.4 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 08 Apr 14:44
b9e6661

Breaking changes

  • 💥 New noir contract output parser (#996)
  • 💥 Split contract execution in 2 traits (#948)
  • 💥 Split and rename ContractInput into ZkProgramInput/Calldata (#945)

Features

  • ✨ Allow deserialize proof from base64 or from Vec (#1004)
  • ✨ HyleOutput can return only composed blobs (#992)
  • ✨ Add token contract using SparseMerkleTrie (#976)
  • ✨ Add retry mechanism to http client (#1005)
  • ✨ Skip serde on BlobTx (#980)
  • ✨ Proper timeout messages (#947)
  • ✨ Add proof output to blob endpoints (#989)
  • ✨ Split blob Tx & Proof Tx in indexer (#986)
  • ✨ Add option to build a specific contract (#981)
  • RestApiRunContext impl (#971)
  • 🚩 Add feature flag for keyring support (#977)

Bug Fixes

  • 🐛 Fix indexer ordering - DESC on height and index (#1017)
  • 🐛 fixed noir verifier (#985)
  • 🐛 Fix main function for smt-token (#1013)
  • 🐛 Wait indexer to have received block (#993)
  • 🐛 Fix loadtest urls (#1003)
  • 🐛 Interpret as ms instead of seconds (#998)
  • 🐛 Fix timeout with PQC to be independent of views (#995)
  • 🐛 Select available port instead of random (#994)
  • 🐛 Turn plain u64/u128 into TimestampMs (#990)
  • 🐛 Fix contract registration not being DAGed properly (#913)
  • 🐛 Do not serde build_start_height in mempool (#987)
  • 🐛 Fix DP parent hash in DB leading to duplicates (#983)
  • 🐛 Fixup URLs in loadtest (#984)

Tests

  • 🧪 Split Turmoil simulation setup from test logic + macro (#997)
  • 🧪 🏗️ Turmoil 101 (#979)

Refactoring

  • ♻️ Remove useless traits in Consensus (#1011)
  • ♻️ Struct&Trait renaming + file creation (#988)
  • ♻️ Changed applicable timestamps from u64 to u128 (#961)
  • ♻️ Remove reqwest client (#973)

Logging

  • 🔊 Move some logs to trace (#974)

Work in Progress

  • 🚧 🐛 Temporary fix contract build (#1014)

Security

  • 🔒️ Compute voting power of unique validators (#978)

Devtools / CI

  • 💚 Add timeout on CI tests jobs (#1015)
  • 👷 Add CI to package & doc all crates (#975)

Dependencies

  • ⬆️ Bump indexmap from 2.8.0 to 2.9.0 (#1007)
  • ⬆️ Bump tokio from 1.44.1 to 1.44.2 (#1010)
  • ⬆️ Bump axum from 0.8.1 to 0.8.3 (#968)
  • ⬆️ Update fjall (#970)

Uncategorized

  • 🔖 Bump version to v0.13.0-rc.4 (#1016)
  • 🎨 Add start message with human readable config (#1006)
  • 📦️ Fix hyle-contracts packaging (#982)
  • 🚨 Fix build (#963)