Skip to content

Latest commit

 

History

History
1123 lines (1097 loc) · 67.2 KB

changelog.md

File metadata and controls

1123 lines (1097 loc) · 67.2 KB


Ten Testnet Change Log

July 2024-07-03 (v0.25.0)

  • This is an L2 deployment release meaning state will be lost in order to upgrade the network. Any dApps on the network will need to be redeployed. The release predominantly addresses performance improvements for large numbers of transactions in the network, and for event log queries.
  • A full list of the PRs merged in this release is as below;
    • ef0bf45e Fix for xchain messages (#1973)
    • 0dc7d5c5 Fix for integration test (#1971)
    • 186bc2c3 Host db performance fixes (#1969)
    • c0ea9b43 Bundle submission rework (#1966)
    • 0b01bfd1 Assets fix and clear console warnings (#1959)
    • ddff74a5 Update db schema (#1967)
    • e1c91243 Rework event logs and transaction database schema (#1961)
    • 291a698d Add db query tool (#1963)
    • b1af061b Initiate bridge deployment (#1965)
    • 95f35150 Initiate bridge deployment (#1960)
    • 447ff489 Placeholder commit for new gh action workflow (#1964)
    • 9d6e7747 Fix for startup (#1962)
    • b537d2e6 Add indexed events (#1954)
    • c6e5a48f Adds log constraints to docker containers not instantiated by the go client (#1956)
    • 85e6cd0d Ignore empty l1 head status from enclave (#1955)
    • a9485fef Fixes for ethereum bridge and json representation of batch header (#1953)
    • e6453082 Deploy separate ten gateway for dexynth (#1949)
    • b8935c31 Network tests: util func for l1 transfers (#1948)
    • 0f3d42bf Network tests: start gateway synchronously to fix race (#1947)
    • 9cee2fd4 Increase max message size grpc config (#1946)
    • c0bf4086 Small mem pool fixes (#1943)
    • b335bd1e Avoid spamming stuck l1 transactions (#1941)
    • 99a8aeee Fix panic on uninitialised mem pool (#1940)
    • 1daffac0 Replace health-check db query (#1938)
    • a880b169 Hardcode response to client version request (#1937)
    • 5780140e Check conversions (#1936)
    • b97d0b93 Fix flakyness errors (#1927)
    • 6e432a1a Add net_version support and test (#1934)
    • 4f39832e Fixing log spam (#1931)
    • f8b86b52 Fix log spam (#1929)
    • 762dfef9 Fix for interval (#1926)

May 2024-05-20 (v0.24.0)

  • This is an L2 deployment release meaning state will be lost in order to upgrade the network. Any dApps on the network will need to be redeployed. High level changes made in the release include;
    • Personal signing is now supported through the gateway.
    • Subscriptions to newHeads is now fully supported.
    • Updates to the backing of a node via PostgreSQL.
    • Refactoring to allow a node to use several underlying enclaves for high availability.
    • Inclusion of finality to the xchain messages, supporting both deposits and withdrawals.
    • Multiple bug fixes and performance improvements including a 10 fold increase in the RPC rate handling capabilities of the gateway.
  • A full list of the PRs merged in this release is as below;
    • 3458c215 Cross chain merkle trees (#1911)
    • 9e1224fa Add index on tx.sender, and clean up (#1921)
    • 2ffa845d Change /info/health/ from post to get & remove unnecessary data field (#1920)
    • a0d168c1 Rpc method to count the number of tx in the host (#1919)
    • 11b91f91 Fix (#1918)
    • b9512539 Fx nil pointer when enclave not healthy (#1917)
    • 41095b47 Improve rpc conn pool (#1916)
    • 1acc9e3d Improve log subscription unsubscribe (#1915)
    • d0a93efa Close ticker (#1914)
    • 218f40b1 Expose tx count api (#1906)
    • cf7158ff Postgres host config to upgrade script (#1913)
    • 6476895e Reconnect new heads (#1910)
    • 42dc7f8a Tweak performance (#1912)
    • 596ddf02 Create separate deployment for ten gateway frontend (#1909)
    • 1ec62e87 Db performance (#1893)
    • 6c12e168 Network tests: new heads subscriptions (#1907)
    • 1bb752fd Wire edgeless in simulation mode for local testnet (#1905)
    • 52579fe3 Notify separately for new heads and new validated heads (#1904)
    • 5db2d1f3 Improve local testnet (#1903)
    • 01d39dfb Add missing batch index (#1901)
    • 3eb620fb Move public tx listing api to host db query (#1900)
    • 73710d59 Batch transactions query accepts full or short hash (#1897)
    • d93acb05 Update logo image path in header component (#1898)
    • 5dd0cd1a Fix newheads unsubscribe (#1895)
    • f1b6be40 Mgmt contract: events for changes to enclave sequencer status (#1891)
    • 5d23b996 P2p: fix msg validation for new msg type (#1894)
    • ac1b90a6 New tenscan apis (#1879)
    • c2a7b130 Remove redundant host volume code (#1887)
    • ce8d274e Statedb cleanup (#1890)
    • 40ae16fe Node config: wire through seq addr flag (#1889)
    • bd9a9cfd Host: replace sequencer id config with sequencer p2p address (#1885)
    • c69740a5 Fix logging - remove the terminal when a file is specified (#1886)
    • 0526f7ab Gateway verbose logging and bugfix (#1884)
    • 49112a35 Upgrade geth (#1883)
    • 7ca43647 Pass context from enclave rpc to database (#1882)
    • 3e566ff2 Tenscan add formatnumber utility function to display numbers with commas (#1865)
    • 2dde8176 Manually rollback failed tx as its causing idle connections (#1881)
    • 3df04951 Update brand colors (#1867)
    • 4e6e2399 Simplify encrypted rpc client (#1877)
    • 261253bb Set max postgres db connections (#1878)
    • 4122467e Use nginx as a reverse proxy and fix alter statement in migrations (#1876)
    • 7e50d21d Cleanup host databases (#1875)
    • 860b34d1 Move host db to sql impl (#1804)
    • 2032ddce Fix the eip712 getmessage response (#1872)
    • b131c424 Add alter permission to obscurouser (#1874)
    • 20ec195e Misc fixes after refactoring the gateway rpc (#1873)
    • f7fef303 Update pccs url (#1871)
    • e994ee2a Improve cache (#1866)
    • b8c1bb63 Mgmtcontract: only accept rollups from seq enclaveids (#1870)
    • 8da215bf Support both 0x prefixed and not prefixed encryption tokens (#1869)
    • 6f3e312c Fix l2 repo to use the subscribers pattern like l1 repo (#1863)
    • 4affa8a5 New heads subscription (#1861)
    • 0d2b6a33 Use the obscuro_config end point (#1864)
    • ef55e3da Current list of prs for the next release (#1862)
    • 3c0dbced Adds a log configuration to docker containers to roll (#1850)
    • 7190f55c Notify batch subscribers of new batches from any src (#1860)
    • d3bf8ecb Validate vk (#1859)
    • a4a9e3cd Fix gateway frontend issues after geth rpc (#1857)
    • 55ef73e6 Align rpc interfaces (#1856)
    • 2ab73cfd Use conn pool for unauthenticated connections (#1855)
    • 5a8cde2e Update missed enclave flag usage (#1854)
    • f4445911 Wip add geth rpc to the gateway (#1845)
    • ce6b1564 Support multiple enclaves on a single host (#1852)
    • fe8b2488 Remove legacy signature type (#1851)
    • 2288c3e0 Remove wallet extension endpoints (#1641)
    • 88bd866d Network tests: refactor config to allow for HA (#1849)
    • 2b17a1e1 Add new endpoint for generating messages and refactor message generation (#1836)
    • abcfc38b Update ports (#1848)
    • c6664e05 Fix build error (#1846)
    • fdde1b7d Align rpc with geth (#1841)
    • 172fae28 Add beagle security meta tag (#1842)
    • 85097d6a Add geth rpc fork and wire it with the host (#1840)
    • 67b94d0f Host l1 txs: one-at-a-time to remove nonce risk (#1839)
    • a3457085 Display errors if other wallets are also installed alongside metamask (#1837)
    • 46e0c321 Upgrade dependencies & misc (#1838)
    • a38b4ab2 Add personal sign authentication message and refactor signature verification (#1811)
    • 74cfe0e5 Protocol: attest against enclaveid rather than hostid (#1831)
    • 75f610d4 Headers: use 65-byte signatures instead of r,s values (#1834)
    • 1e781f77 Network tests: basic sim to run in ci builds (#1833)
    • 99315295 Use ten hardhat plugin instead of baked in registration (#1812)
    • b52a7a49 Updated batch size limit (#1830)
    • 6083d1e1 Store incoming transactions in a database (#1828)
    • 057276df Networktests: run local gateway against testnets (#1824)
    • 05eebc9e Estimage gas perf fixes (#1827)
    • 8fa689ce Disabled caching (#1823)
    • b0628746 Adjusts gateway vm deployment to use static ip address. (#1781)
    • a2316674 Add new getrollupdata api to enclave client (#1815)
    • b17c3325 Create database migration for the gateway (#1768)

Feb 2024-02-27 (v0.23.0)

  • An upgrade release to fix issues in the batch limit size which can stop deployment of some large contracts, and to over-estimate the L1 gas cost to ensure it is possible to submit a transaction for rollup.
  • A full list of the PRs merged in this release is as below;
    • 21860c19 Overestimate L1 gas costs (#1821)
    • 5e057c69 Switch primary and secondary fonts on gateway and tenscan (#1819)
    • d43ae52c Batch limit: increase max to 36kb (#1817)
    • 33d3de82 Network test: local network qol (#1818)
    • b7bea2c4 Fix mutex error (#1810)
    • 25f4f5b6 Networktests: add options for test users to use gateway (#1806

Feb 2024-02-20 (v0.22.0)

  • Validator nodes now return errors on transaction submission. Previously, transactions that would fail validation were accepted into the mempool of the validator without error (e.g. insufficient funds for a transfer, gas below the intrinsic gas limit etc). This change will mean that invalid transactions are rejected immediately.
  • The Gateway now performs caching on RPC requests. For a list of the cached requests see the design proposal in go-ten/design/gateway/gateway_caching.md. Note that we expect the caching logic to change over time as we optimise the user experience.
  • A full list of the PRs merged in this release is as below;
    • 038f6a64 Cache fixes for e2e tests (#1803)
    • b70a894d Update ten's visual identity (#1797)
    • 1782b623 Update ten's visual identity (#1796)
    • ada2d2c1 Concurrency fix (#1802)
    • 6eda211d Chore(contracts): a bit of proofreading (#1754)
    • 2ab4fc3e Tweak cache params (#1801)
    • 3a74586b Change mempool validation function (#1800)
    • 597cf0ec Change log for the v0.22 release (#1799)
    • a2a080aa Gateway caching proposal (#1773)
    • 5b5e7d98 Ten gateway caching (#1779)
    • 7792864a Adjust port offset (#1798)
    • 1837bcc6 More flakiness fixes (#1795)
    • 83469ca8 Validator nodes return error on tx submission (#1792)
    • aee40a81 Network tests: fix local run gas error (#1789)
    • 337c8544 Improve multi-acct logic (#1793)
    • a5061634 Copy update (#1791)
    • 4d79eea2 Tenscan: update api domain (#1790)
    • c83b965a Contract deployers: configure signer for address publishing (#1676)
    • 31e25322 Refactor the encryption/vk logic (#1769)

Feb 2024-02-14 (v0.21.0)

  • A list of the PRs merged in this release is as below;
    • cc3b1048 Upgrade oz libraries (#1707)
    • 0a573d75 Deploy scripts: enable debug api on upgrades (#1780)
    • f8b3b76c Geth: cherry pick emergency geth upgrade from release branch #1771 (#1772)
    • 3da65b55 Upped batch size limit (#1775)
    • 3322ad9e Fix for desync issue (#1778)
    • 7927b17e Tweak caching (#1777)
    • 9ae2825e Add estimate optimisation that geth added (#1776)
    • 22b397de Logging: use terminal format with full hashes (#1770)
    • b69bb7f9 Introduce enclaveid as identifier (#1760)
    • 6a7b5f54 Add maxdbpoolsize for edglessdb (#1767)
    • 42d9a38b Add basic file logging in the gateway (#1763)
    • 634a5b79 Host: drop transactions received when enclave not ready (#1762)
    • 26d7db4f [ghaction] reorder deploy l2 jobs (#1758)
    • 0789f261 Fix health indicator bug (#1759)
    • 9c81010b Add log-level to launcher + fix trace debug (#1757)
    • 2019eac0 Use fast cspring for encrypting responses (#1753)
    • 206dbffc [gas mechanics] implement gas history; migrate to arbitrum gas model (#1714)
    • 0fe01b4e Mempool perf fix (#1752)
    • 843d6cbb 2 validators deploy (#1750)
    • dcf96c93 Ten gateway use http instead of ws (#1743)
    • b49b4c0d Loggers: use log format rather than terminal format for files (#1751)
    • 01980954 Remove old docs (#1749)
    • 7f0ad72b Refactor testnet status update (#1748)
    • 3ba9d7c2 Host: fix bug causing unnecessary multiplier on l1 gas fees (#1747)
    • bdce4a85 Statedb revert to snapshot for ignored batches (#1742)
    • 16173af2 Update and simplify local testnet startup docs (#1745)
    • 7c1ebad2 Update of prs so far for a v0.21 release (#1744)
    • cdc02ebe Adding batch timestamp to the public tx api (#1740)
    • a41bff9e Fix the enclave stream reconnect (#1741)
    • f72e986c Host: small cache of blocks by hash (#1738)
    • 3103eca1 Change network name (#1735)
    • 5aee83a8 [gateway] Health check on gateway ui/frontend (#1729)
    • f6f147ab [gateway] Set distdir based on node_env (#1693)
    • 74e0a395 [gateway] Health check on gateway backend (#1728)
    • 856e72e3 [gateway] Update expired discord link and add warning msg to gateway ui (#1709)
    • 8d534c00 [tenscan] Fix latest batch (#1704)
    • 3daec735 [tenscan] Health check ui on tenscan (#1719)
    • f77ac97e [tenscan] Endpoint for health check (#1718)
    • b6dada78 Change domain from obscu.ro to ten.xyz (#1733)
    • e984af1e Adds faucet + gateway to launcher (#1734)
    • 986f6995 Fix concurrent map writes (#1732)
    • a0cec156 [network-tests] Update uat config (#1731)
    • 010815f1 Change tenscan link in gateway and docs (#1726)
    • b2e41d36 Add enclave block and batch health checks (#1727)
    • f159fb8c Docs: fix typos (#1723)
    • a332d76f Make walletextensioncontainer.start() non blocking (#1722)
    • 06d02fb2 Add new node flow fixes (#1712)
    • b6444cfe Comment panic line (#1725)
    • 33d59d17 Refactor obscuroscan to tenscan (#1716)
    • 5cd64e8f Tenscan workflow (#1724)
    • 520ea1ee Fix build (#1721)
    • c9908321 Fix gateway spammy logs (#1715)
    • 952a281f Gaslimit + gascap flags (#1682)
    • 6389ace6 Debug hh deployer (#1710)
    • 5c369332 Statedb revert to snapshot for ignored batches (#1713)
    • 63ba4990 Add validator flow (#1711)
    • 98e0913f Remove check performed in the mempool (#1708)
    • 4ee0ccac Set retention to 7 days for deployer logs (#1706)
    • 875e3e3b [tenscan] Address and tx placeholder page for metamask redirect link (#1705)
    • b528fcb0 [gateway] Fix loading screen and connect accounts on reload (#1703)
    • c7aee804 Fix statedb error during mempool (#1702)
    • 5c4e75d5 [gateway] Enable metamask desktop and mobile support (#1697)
    • 6605017d Testnet deployments set enclave testmode=true (#1701)
    • ecf49b14 Close mempool and use the geth defaults for the mempool (#1699)
    • ae34047b Enclave produce no batch if all tx failed (#1698)
    • 7c2a4df7 Fix error page for non-mm users (#1696)
    • 457777e6 Add $ to ether price (#1694)
    • 0f690c90 Change network name back to obscuro testnet, to avoid warnings (#1695)
    • c4c827d5 Tenscan updates (#1683)
    • dbfa7a30 Revert deleting favicon (#1691)
    • b2651ab3 [gateway] Front end fixes for non-mm users (#1690)
    • b428c62f [gateway] Remove listener for account change (#1689)
    • b2ddee04 Deploy new ten gateway frontend (#1686)
    • 2fa60897 Use the 3.18 go alpine image (#1687) (#1688)
    • d9ead96a Ten gateway (#1657)
    • 0fd37731 Rpc ap ensure hash field included in batches json (#1684)
    • ca7f91b2 Adding enclave restricted flags (#1668)
    • 4551c81b Enclave no panic for bad rlp format (#1679)
    • fb50c7ba Use the cached head block (#1678)

Dec 2023-12-01 (v0.20.0)

  • A list of the PRs merged in this release is as below;
    • 1433e41e Tenscan updates (#1661)
    • dc769561 Host rpc: use checksum format for contract addresses (#1674)
    • 362a80b0 Obscuroscan now deploys to port 80 (#1675)
    • 3e9e4a8a Add in change log (#1673)
    • 2fd08a63 Contract addresses: have host fetch l2 msg bus address from enclave (#1669)
    • c3775b52 Contract deploy: record l2 contract addresses (#1667)
    • 23107b72 Add another signed message format gateway (#1672)
    • 5bf20d97 L1 contracts: increase timeout for extra transactions (#1671)
    • 1d08a78b Proxy contracts deployment (#1663)
    • f6c7c1b9 Add token as query param (#1666)
    • 34221a57 Local network: pass mgmt contract to l2 contract deploy script (#1664)
    • 3af59e76 Add default user for old endpoints (#1665)
    • 378aec67 Use eth sign typed data v4 in gateway (#1643)
    • 8712e26d Obscuroscan#2323 (#1640)
    • d37c0c78 Remove creating all clients at startup (#1662)
    • f5d4ddd6 Contract deployment: store important addresses (#1653)
    • 12480861 Host: monitor and serve important contract addresses (#1645)
    • 29cae5df Adding tx hash to the faucet funding (#1660)
    • 8c83d5e3 Fix json serialisation for batch (#1655)
    • e0e082db Fix the repository dispatches to ten-protocol/ten-test after the repo renaming (#1658)
    • e8b7b50f Prevent concurrent writes to a websocket connection (#1656)
    • 43214832 Fix the msg bus deploy at genesis (#1652)
    • 0b47af67 Added another promote to admin. (#1651)
    • 309b2405 Replacing github links (#1647)
    • 0ec2d053 Rebranding .md files (#1648)
    • bb3a2bd2 Ui: replace obscuro logos with ten (#1649)
    • 35b5ce45 Change base url to https (#1644)
    • ef01370c Adding geths mempool (#1639)
    • 82488783 Fix test ports (#1642)
    • 991a2d67 Integrate google analytics for og and obscuroscan (#1638)
    • 9e3cf212 Gateway unsubscribe for multiple subscribed clients (#1637)
    • e7ab386b Gateway fixes (#1633)
    • 47bb9e65 Obscuroscan: serve oldest batches first (#1635)
    • 1d4e8d74 Subscribe to events with multiple accounts and deduplicate (#1627)
    • 5c3fc3cd Obscuroscan: metamask button show connected (#1634)
    • aae2f5fc Return error instead of just logging it if client fails (#1632)
    • fb4c4492 Cais ui updates (#1631)
    • 97ed3c31 Obscuroscan: small ui tweaks (#1630)
    • f6ac73a0 Update readme.md (#1613)
    • 7399892f Missed a couple of vars on the rename (#1629)
    • bddbf713 Obscuroscan: load eth price on init (#1626)
    • 06e56bdd Preparation for subscribing with multiple accounts and test that confirms current issues (#1516)
    • a96105d9 Obscuroscan: favicon, title, align icons (#1625)
    • 9a370655 Respond with latest for 'pending' block number requests (#1623)

Oct 2023-10-26 (v0.19.0)

  • A list of the PRs merged in this release is as below;
    • 9eb4dd0e Contract changes for storing addresses (#1622)
    • 563c5677 Add mutex for accts (#1621)
    • a140f352 Initial commit for basic gateway package (#1619)
    • 8f898053 Increase init time (#1617)
    • 20e5799c Adds revert reason test + error logging (#1616)
    • 401acba7 Keeping table behind spinner until loaded (#1618)
    • 4c5c8b2a Cais gateway ui changes (#1614)
    • 85f05f9f Convert remaining gh action scripts to env vars (#1615)
    • ebcc4aa4 Normalizing og errors (#1600)
    • d494bc8c Update deployment scripts to use standardised env vars (#1608)
    • a25b5b44 Fix for estimate gas failing when gasprice included. (#1610)
    • c4140adf Ziga/fix og metamask urls (#1611)
    • d317e3ac Lock hh-deploy version to fix compatibility (#1612)
    • b5722cd3 Downgrade spammy log messages (#1609)
    • 31d9b7ff Fix stuck at revoke userid (#1605)
    • 94d12bd1 Ci fixes for deployment (#1607)
    • d1036cfe Fixes upgrade list query (#1604)
    • 299d5094 Update og namings in the gh (#1603)
    • a18f8624 Updates gh inputs to reflect current networks (#1602)
    • a58288f6 Improve ui for users on og (#1579)

Oct 2023-10-16 (v0.18.0)

  • A list of the PRs merged in this release is as below;
    • 51b00380 Add maxbatchinterval to skip some empty batches (#1599)
    • 3d3c12c9 Save l1 deployer logs (#1598)
    • b5620b12 Reduce the verbosity of eth2network (#1597)
    • 7dfd9abe Save logs (#1594)
    • 9d0b6200 Library for obscuro gateway (#1595)
    • 5b34ff6e Update build-pr.yml (#1596)
    • 5405c3f0 Add prefunded l1 bridge address for dev and uat testing (#1591)
    • 226cfc65 Additional prs for the v0.18.0 release (#1592)
    • 5e9c8c84 Update new dns (#1580)
    • 1bc26e6e Add block head cache (#1589)
    • e06c9f53 Fix deploy (#1587)
    • c5c136a3 Bumping testnet to 32gb (#1576)
    • 30494ec2 Remove slow query (#1586)
    • beb55e8a Fix bug (#1584)
    • 0c161a9e Remove costly select (#1583)
    • dc900b6a Fix gas estimation (#1582)
    • 1e7e94cc Added stopwatches in important functions (#1581)
    • 1dea9e94 Add balance endpoint to faucet for monitoring (#1577)
    • f1a106a8 Bump enclave heap size (#1575)
    • 61c2cda5 Add sepoliatestnet as an environment for network tests (#1574)
    • eccd99e0 Update some obx references in docs (#1573)
    • 8ed7e45b Add gh actions script to retrieve funds from the bridge (#1570)
    • 4525fd57 Adjust cache cfg (#1568)
    • a0309593 Performance fixes - speed and memory (#1567)
    • 701bd079 Enable obscuroscan test (#1566)
    • 42b98cf4 Fix config wiring at one of the layers for faucet (#1565)
    • a8184707 Added faucet funding. (#1562)
    • 10ded300 Pedro/fe tweaks (#1564)
    • 341cc518 Setup faucet for sepolia env (#1563)
    • 816bccff Auto funding script (#1543)
    • ef3cef23 Rollup compression performance fixes (#1561)
    • 1eb404cd Add retrieve all funds method to bridge (#1557)
    • 7b2ef03e Adding version displays to og and oscan (#1560)
    • a21c156d Fixes the reladdresses in the events debug log (#1555)
    • aa9dae08 Deploy obscuro gateway for sepolia testnet (#1552)
    • 584b6a74 Match network configuration with chainlist (#1511)
    • 84964850 L1 gas refunds for failing transactions. basefee not burned anymore (#1550)
    • a97b8359 Compression fixes (#1559)
    • 8096ae05 Submit l1 block: fix lock bug (#1558)
    • 235d0a91 Add sepolia option to l2 gh action scripts (#1529)
    • 7cdf18ac Improve logging (#1556)
    • a4172f32 Fix og panic issues (#1554)
    • 07e87fbf Reduce tx retries and increase price on retry (#1553)
    • 4b2d0e93 Guardian now produces rollup based on interval time and available bat (#1536)
    • cc741c33 Fix rollup limiter & improve "slow query" logging (#1551)
    • d5c19310 Fix (#1549)
    • 0e483622 Small doc changes (#1547)
    • 07b12fae Removed bad logs (#1548)
    • 3d5f9267 Performance fixes (#1533)
    • f1d60280 Add flag to configure l1 chainid for docker nodes (#1546)
    • 39b9afb2 Update the address in line with stored pk in 1pass (#1545)
    • 67c75973 Adding is_transfer to the other sql init (#1542)
    • 34aeae36 Get userid from url if not present in query params (#1538)
    • 34208be4 Fix deploys from main - remove migration file for now (#1540)
    • c4864dae Gas mechanics phase 1 implementation. (#1471)
    • 61a5921e Update node urls in gateway deployment (#1541)
    • 42669a44 Fix frontend issues from workshop (#1525)
    • 1a149de7 Gh yaml typo (#1534)
    • 11e4c335 Add missing interval configs to testnet launcher (#1532)
    • 7e67c78c Update tesnet dns (#1531)
    • e9a8d019 Sepolia prep: add batch + rollup interval cli options (#1530)
    • df76b51a Testnet launcher now works with sgx (#1488)
    • c638627b Correct ws to http on the deployers flag name (#1528)
    • 0529e965 Save rollups (#1526)
    • 2adec7a5 Obscuro gateway vm (#1513)
    • 8babe2ea Changes to support sepolia testing from ide (#1527)
    • 64a0c5ed L1 publisher: resend stuck tx and manage nonce (#1518)
    • 40d58aa3 Og now can connect to mariadb (#1521)
    • 87683811 Add l1 block time config for host (#1523)
    • c6a3801f Disable the upgrade scheduled (#1524)
    • fca67860 Improve compression robustness - part 1 (#1520)
    • 6abba582 Expose port 81 and 80 (#1510)

Sept 2023-09-14 (v0.17.0)

  • A list of the PRs merged in this release is as below;
    • 43e99a9b Refactor storage to allow for different dbs + tests (#1517)
    • 1e6ba68f Tweak og database deploy (#1515)
    • 2e56932f Obscuro gateway database deploy (#1514)
    • b7b4e3e3 Change config to use rpc urls instead of host and port (#1512)
    • 764f98d7 Aggressive header compression (#1502)
    • 28d007bd Filter for tx with any obscuro interactions (#1509)
    • 4ddbf93f Hardhat: ensure token script doesn't spin when waiting (#1508)
    • 61a90b0d Change back to inputs (#1507)
    • 5b18d686 Fix the event relevancy fields (#1506)
    • b4cbf13e Limit enclave fed l1 receipts to obscuro-relevant tx (#1495)
    • 2d2f7e46 Enclave guardian: remove superfluous running flag (#1505)
    • 98a86e6f Open port 3002 on gateway for websockets (#1504)
    • eeefcb14 L1 client - change reconnect to reconnect if dead (#1503)
    • 73c0e9ee Fix ci tests (#1496)
    • 1978e19e Add a isincomingp2penabled flag (#1491)
    • 4cb161e3 Set the debug namespace on the validator (#1494)
    • 50d2dc94 Fix txhash field in sql (#1493)
    • d0357c92 Fixing the debug namespace wiring (#1492)
    • 509d76fb Add loglevel flag (#1490)
    • d0dc3165 Update testnet-kpis.md (#1441)
    • 8bb1b465 Use versioning with obscuro gateway api (#1486)
    • 6ed6b304 Uses a prebuilt obscuro node image (#1487)
    • 998c8449 Merge stopcontrol + breaker packages (#1485)
    • b50b5f76 Bump eth2network (#1483)
    • 94775344 Fix for zero hash geth errors (#1484)
    • 923d5c6d Upgrading geth to 1.12 (#1481)
    • c6178c2a User getstorageat with parameter "getuserid" to get userid from request url (#1478)
    • 81c611d0 Add sepolia network runner to ide tools (#1480)
    • 4a74826a Subscribe for all clients from user if there is no address (#1467)
    • 0e34f367 Add very primitive db migration mechanism. (#1479)
    • 2e2b2019 Add verified data pages + obscuro info endpoint (#1476)

Aug 2023-08-22 (v0.16.0)

  • A list of the PRs merged in this release is as below;
    • 670af392 Add condition to only log slow storage calls (#1475)
    • 915c5f21 Add index (#1474)
    • 28ab67ac Add timer to storage calls (#1473)
    • 01f1cd94 Nil pointer when eth new block not found (#1472)
    • 89c09486 Add decryption + fixes to the grids (#1470)
    • 6687cf32 Fixes to the obscuroscan ui (#1468)

Aug 2023-08-17 (v0.15.0)

  • A list of the PRs merged in this release is as below;
    • d137cce6 Adjust the timer log for easier extraction from datadog (#1463)
    • f0a978f2 Update p2p stopping mechanism (#1466)
    • fd2de555 Add not null constraints (#1465)
    • 9fa606b4 Change l1 smoke test to check batches and blocks (#1464)
    • 2bc00d09 Fix eth2 timeout (#1462)
    • 1b9830bf Create single page for blocks, transaction and batches lists (#1448)
    • b895a4f3 Optimise the relevancy check and improve logging (#1461)
    • f74a3057 Ensure p2p peer list resync after restart (#1460)
    • 2847ce46 Clarify in-mem flag is for host db (#1459)
    • 66606eb8 Fixes for tests using persistent sqlite db (#1457)
    • f8bf2433 Sanity check p2p message before sending (#1458)
    • ce6bbf7f Fix logging bug (#1456)
    • 756798a7 Log errors (#1455)
    • ce0bb0a6 Some errors, plus extract shared secret processing (#1454)
    • 6efc3a96 Fix wiring of l1 start hash (#1452)
    • 889bb3de New location (#1453)
    • 3e671d79 P2p batch request data is historic not (#1451)
    • 95f7b986 Tweak log messages (#1450)
    • 09a3815e Bug: l1 start hash was overwritten so catching up from genesis (#1445)
    • 5fa006e6 Fix enclave latest seq number reporting (#1449)
    • d837842c Add timeout to wait for l1 merge (#1447)
    • ea7d338e Fix bug with restarting enclaves sqlite connection (#1438)
    • 430125fb Changed test timeout (#1446)
    • 509a1bae Refactor the subscription logic (#1443)
    • 4d078d50 Use public address for p2p requests (#1444)
    • 3ce52056 Remove extraneous hyphen (#1442)

Aug 2023-08-11 (v0.14.0)

  • A list of the PRs merged in this release is as below;
    • 6d2997e3 Fix peer addresses mutex (#1439)
    • 2224f956 Add hash reset (#1436)
    • bb03475f Use compressed pub key (#1435)
    • 90a768d2 Fix encoding of userid (#1429)
    • d2c7acbd Obscuroscan - add pagination in the list calls (public and encrypted) (#1434)
    • 1ab96316 Fix bug with unexecuted batch data (#1432)
    • cfdc6b81 Avoid panics when sequencer host thinks it is behind the enclave (#1433)
    • 58863712 Introduce unsubscribe delay (#1424)
    • 881e6719 Fix for deadlock (#1425)
    • 61358311 Reduce retention to 1 day on failure only (#1430)
    • bcf05b21 Added a health endpoint to og (#1427)
    • 3d4fabe9 Fix og user id and address problems (#1426)
    • 4852e28b Public tx listing rpc + fe (#1422)
    • 22277219 Fix add subscription logic (#1423)
    • 0aebb2d3 Clarify channels and mutexes (#1421)
    • f4913937 Pedro/private tx list (#1418)
    • 06e63f1e Add enclave guardian service, refactor logic out of host.go (#1409)
    • b4e4182c Fix timing issue for subscriptions (#1420)
    • 6a0f95a2 Rework batch execution logic (#1419)
    • ff6bf45a Fix l2 deploy (#1416)
    • 86e0152e Allow enclave to produce handlers for both old and new message types (#1417)
    • d47a0f29 Log block hash rather than pointer (#1414)
    • 4caac6dc Fix cache for blocks and batches (#1415)
    • f96bccd8 Ensure error fields on encl rpc resp are captured (#1413)
    • ce4d06d3 Add primitive cache for blocks and batches (#1412)
    • a36adf12 Block explorer api routes + fix obscuro api json marshallers (#1407)
    • 10477c78 Set back ot 03:05 nightly (#1410)
    • cd8be2c0 Fix event order (#1408)
    • ccf890a5 Implement relational db new tables (#1385)
    • 483c39a5 Obscuroscan now pulls rollups (#1406)
    • 99ec6e7c Change from port 13000 to 80 (#1405)
    • a08afcc6 Adding rolling batches and blocks (#1404)
    • 1a3f5cbc More fixes to get the faucet deployment to work when the upgrade workflow is initiated from a schedule event (#1402)
    • b074d5f2 Hook obscuro scan other endpoints (#1403)
    • 66f3cac0 Obs scan connect be-fe (#1399)
    • 922c1b18 Simplify enclave batch streaming and fix p2p batch requesting (#1400)
    • 3e9446df Put in some logging (#1401)
    • 0d7ddd32 Fixes to the obscuro scan v2 deploy (#1398)
    • 01fb6339 Obscuroscan v2 deploy (#1397)
    • 04ebaf7e Obscuroscan v2 frontend bootstrap (#1396)
    • c79b9c24 Fix issue with host failing to stop after error (#1393)
    • 3cc1eb98 Simplify host health check and p2p health check (#1389)
    • 6e46b005 Try feeding consecutive blocks if failing after a fork (#1395)
    • 3cc25ebb Scheduled trigger of the faucet fix for schedule (#1394)
    • 92098154 Add batch repository to host using seq no as key (#1388)
    • 00793ac0 Obscuroscan v2 backend (#1391)
    • e8c45ef3 Avoid getting stuck when returning to a prev l1 fork (#1390)
    • 17d27178 Rework how rollups are created (#1386)
    • d093666a Lock ego container image (#1387)
    • 9fb09210 Tweak we/og start flags for local testnet (#1384)
    • 5c27887e Fix the deployment of the faucet on a scheduled trigger (#1383)
    • 30162354 Re-enable the upgrade (#1382)
    • b9b1d5be Move sql creation logic to "sql" files (#1377)
    • 6700de56 Add multi-user support for obscuro gateway (#1375)
    • edf2ac90 Add subscription manager for sub/unsub (#1379)
    • b522d6c2 Fix paths for testnet local build (#1380)
    • c7c0aa5d Fix testnet after docker refactoring (#1378)
    • b5f6d52a Add l1 publishing service (#1376)
    • 7401bf04 Upgrade rollups (#1370)
    • ed4d3340 Add db schema (#1374)
    • d08abf33 Setup generic services in the host (#1372)
    • 6b51336a Fix missing mutex lock for block submission (#1373)
    • fe46cfce Reduce log noise from block catchup at startup (#1371)
    • 83a18aad Refactor tools dockerfiles, docker_run.sh scripts (#1355)
    • eb24d7fd Enclave-guardian: l1 repository service (#1368)
    • 50e9678b Add bit about the host services to the design docs (#1369)
    • c7668ee4 Add scan endpoint + contract creation count (#1367)
    • 3e958a50 Enclave-guardian: add enclave status tracker to host (#1364)
    • fcb3a7a3 Fix obscuro gateway deployment (#1366)
    • 4207c708 Temporary rollup logic fix (#1362)
    • 7de5739f Deploy obscuro gateway (#1349)
    • ef8f4245 Fix the build tests (#1361)
    • 7bdb5b56 Pedro/fix ci (#1360)
    • 5d524409 Simplify block processing logic (#1359)
    • 43c7f493 Tudor/change rollup execution flow (#1357)
    • 2ded2a00 Testnet github actions: fix clash with secrets (#1358)
    • acfe19f3 Fix the sim logger again (#1356)
    • 61edac8b Use latest patch version, not latest minor version (#1354)
    • 46adf001 Fix logger for sim hosts (#1353)
    • 80dcac43 Correct retention yaml (#1352)
    • 68bf71db Logs (#1351)
    • 11e5f651 Add in retention period (#1350)
    • 473b109b Add sequencer number field , plus some renaming (#1347)
    • e49bd32f Stop the nightly upgrade (#1348)
    • cf17ee28 Remove network manager (#1345)
    • 1832b40b Pedro/update faucet (#1342)
    • bdea3cb1 Relative network json file (#1339)
    • b2ad8714 Viewing key now is sent as a payload instead registering against enclave (#1318)
    • 8ee39357 Fixes to l2 upgrade and deployment (#1344)
    • 3728b2df Rename host db add batch method (#1343)
    • ad813cb6 Tudor/change headers (#1341)
    • 553abbc4 Change how randomness per batch is calculated to remove the mixdigest (#1340)
    • 3a1eb7af Integrate faucet in go-obscuro (#1323)
    • 612b5d5d L1 now runs on vm (#1335)
    • f90ec295 Add obscuro gateway endpoints (#1334)
    • e6e2658c Fix for validators not working without p2p (#1337)
    • a6bf6909 Updates start command (#1336)
    • 74d7ce02 Ziga/obscuto gatweay storage (#1330)
    • 4c510c42 Add useraccountmanager to manage accounts for multiple users (#1326)
    • ad419c64 Add l1 head and l2 head to enclave status (#1333)
    • f143b1f5 Separate p2p sub methods from host interface (#1332)
    • cf660911 Adding the faucet workflow (#1331)
    • f420b0d7 Added measuring logs to validator. (#1329)
    • 896d54e2 Fix log_15 logger param errors (#1325)
    • b4287cf3 Improve logging (#1327)
    • 723190b7 Skip rollup production when out of sync with l1 (#1328)
    • 7d779935 Updated wording for encryption (#1316)
    • bae86f05 Configurable pos timeframes (#1317)
    • 5e90d17d Resolver added. proto added (#1315)
    • 5af7d8f0 Remove unnecessary header fields (#1303)
    • 7112e508 Tidy up the enclave request handling (#1313)
    • 15e391d0 Start from right hash (#1314)
    • bc002525 Add logging details when catching up missing batches (#1312)
    • ceeb0742 Use batch transaction for db batches on host (#1311)
    • 44b93999 Tidying up the we (#1308)
    • 180fd043 Add l1 up-to-date flag to host health check (#1310)
    • 2021d3de Write to db after every batch (#1309)
    • ee9cccd9 Only publish batches when up-to-date with l1 (#1307)
    • 6727f8ed Updating go v1.20 prysm v4.0.5 gethv1.11.6 (#1257)
    • 37adab1d Fix for incorrectly chained rollups (#1305)
    • 46a2e084 Fix sendtransaction method signature (#1302)
    • 12d35437 Fix hash formatting in error msg (#1301)
    • 6a880273 Enclave: log less when scanning backwards for rollups (#1300)
    • 2b268bf2 Remove network deployer (#1299)
    • af5376c8 Changed limits. (#1298)
    • aa6fb166 Small fixes (#1296)
    • 4536aade Swapped true and false on acceptbatch. (#1289)
    • ef16c1ed Reinstate hash cache, and fix some pointers (#1295)
    • 3a4e1ca8 Adjust limiters (#1294)
    • da8d540b Performance fixes (#1293)
    • 06878966 Standardise block and batch log references (#1292)
    • 86dd3c93 Obscuro_gateway design (#1248)
    • 020fd3af Fix logger config (#1291)
    • ce2e8a3b Added config for batch size limit. (#1290)
    • 88b3a845 Add userid parameter in all request handlers (#1283)
    • 1a64bc08 Add squash and merge to dev onboarding (#1288)
    • 4f9851ff Changed log level (#1287)
    • 75656dc6 Restore configs (#1286)
    • a6061d0d Adding limiters that prevent creating oversized transactions (#1218)
    • 82b78b14 Added compression to the batches payload (#1284)
    • bd3abcef Add developer onboarding guide (#1285)
    • 96168330 Decrease rollup time (#1282)
    • 9595c548 Fix log level (#1281)
    • 8f55555e Fix databasepath to be consistent with other settings (#1280)
    • 69c09eb2 Always update l1 head on submit block (#1279)
    • 2b0bee0d Obscuro gateway add database (#1266)
    • 4945e3a0 Storage now accepts db batch. (#1277)
    • 3d7d9157 Add simple retry to p2p (#1278)
    • 30f51bda Added log timers. (#1276)
    • b22bb354 Consuming rollups: fixes and clarifications (#1275)
    • 8cf8b8cf Be explicit about the environment and whether deployed or upgraded (#1274)
    • 8977efbe Increase ego heapsize to 2gb (#1273)
    • 29991d36 Review of todos part four (#1250)
    • 770379c0 Add test for restarting all nodes in network (#1272)
    • 04a3f5d0 Node upgrade: fix management contract config (#1271)
    • eb68c71f Fix log formatting to not swallow error (#1270)
    • 463f4c9b Mempool is now using a simpler mechanism to pick transactions and wait for ones that are not ready to go in yet (#1268)
    • 116043bb Host: retry submitblock on generic errors (#1267)
    • 2dfc15da Set the text replacement for sending the faucet trigger (#1265)
    • 8cc34ea2 Fixes the testlog usage (#1264)
    • 4356da01 Testnet deploy: validator health check to 5mins (#1263)
    • aadd5c5b Avoid forwarding bad txs to the sequencer (#1249)
    • 1c186ee7 Fix syntax (#1262)
    • 0b44bc72 Updated to run the upgrade nightly (#1261)
    • cd9d44c4 Testnet upgrade: lookup env build number from azure vms (#1252)
    • f2ffe2cb Testnet deploy: install gcc and allow time for vms to initialise (#1255)
    • e119c78b Testnet deploy: health check validator node too (#1258)
    • 26e03e35 Refactored the l2 chain code. added sequencer and validator separations and components to enable them (#1227)
    • 1fc911bf Logs on the l1 containers (#1256)
    • 52623e95 Inmem node used in the socket simulation (#1254)
    • f290dd67 Fix testnet deploy sleep condition (#1253)
    • b7f18445 Add inmemory node to the node package (#1251)
    • 69458bfd Fix the stop issue in the unit tests (#1247)
    • d3e1d79e Tidy up block submission errors (#1245)

May 2023-05-04 (v0.13)

  • A list of the PRs merged in this release is as below;
    • 6f8264f7 Fix the we cross-os build (#1244)
    • 325bb0c8 Adding system errors (#1237)
    • f346e239 Add wait group wait() timeout function to util (#1242)
    • b759f55a Remove error from proto message payload (#1241)
    • fdc9b035 Fix broken link for the pdf version of the whitepaper. (#1238)
    • 61b9e17f Update some of the @matt todos (#1240)
    • 13c87ac1 Updates after backlog review part three (#1239)
    • a551408b Layout update for obscuroscan (#1200)
    • eeb1623b Locking the docker image alpine to 16 (#1233)
    • 6758cb32 Update wallet extension docs and include a link to obx faucet (#1235)
    • a1a30083 Logs are now debuggable from the debug_log visibility endpoint (#1231)
    • 3497be98 Only perform the l2 deployment on a scheduled basis (#1230)
    • 3bda160e Reintroducing encrypted enclave errors (#1197)
    • 56557a2f Host to retry forever waiting for the enclave to come up (#1229)

April 2023-04-13 (v0.12)

  • Robustness fixes for event log subscriptions, including ensuring no dropping of event logs, removal of any duplicates, and ensuring correct ordering based on their block insertion.
  • Event log subscriptions will now infer the correct viewing key to use for relevancy checks performed by an Obscuro node. This is based on filter criteria in the subscription, e.g. when a particular address field is included in the filter list, if a viewing key for that address is registered, that key will be used. Note that subscriptions to all events, where those events might contain data used in the relevancy checks, will not be able to infer the viewing key to use, and as such will use the first registered key made through that instance of the wallet extension.
  • A list of the PRs merged in this release is as below;
    • 25dc4cd9 Block provider now contributes to health status (#1225)
    • 978e3509 Renaming docker volumes (#1224)
    • 827d67bc Workaround for xchain message finality (#1220)
    • 56589db7 Persist enclave key (#1223)
    • 845d7d34 Is debug namespace enables flag (#1222)
    • a3b220d1 Disabled notifications for npm (#1221)
    • 96e4029b Adding debug_traceTransaction endpoint and functionality (#1214)
    • 37835960 Add different manual tests (#1217)
    • c1425fbf Reconnect client on the block provider (#1216)
    • b0983690 Fix npe (#1215)
    • e5efecc6 Fix sqlite init logic (#1213)
    • 05a7065f Normalise data field to fix event dups bug (#1212)
    • 0fc9d164 Fix bug and improve log (#1211)
    • bb92ae19 Add more logging in the verbose we (#1210)
    • 02d885ea Review of todos part two (#1209)
    • c1033393 Setup ego signer for testnets (#1208)
    • 7c2e8985 Pull the updated docker images in testnet upgrade script (#1207)
    • 13d8f102 Fix the block hash of log messages and receipts (#1206)
    • 4766f27b Pedro/log tx rollup hash (#1204)
    • 6e81b9e2 Remove -a option (#1203)
    • 81aacd56 Eth2network now pushed as part of the deploy flow (#1201)
    • e8903b38 Add logic to discover the authenticated client to be used for subscriptions (#1196)
    • cad27131 Fix filtering logic (#1199)
    • 90b04263 Fix local network launcher for enclave persistence (#1198)
    • 48acdc3f Use docker mount for enclave persistence (#1195)
    • 31562358 Rename offchain to obscall and fix tx execution logs (#1194)
    • f3f73da6 Changes to the testnet launcher, better logging (#1192)
    • 124eb4cf Fix names of types aliases (#1193)
    • c6316cbb Store events in sql table (#1182)
    • 17a7c44b Todo review number 1 edits (#1191)
    • 927b970d L1_host not output properly in upgrade gh action (#1190)
    • 013e8f32 Wipe and re-clone obscuro code on testnet node upgrade (#1186)
    • f7d4cd35 Revert "refactoring how errors are done. (#1153)" (#1189)
    • 8dd0f1f6 Resolve faucet docs images (#1188)
    • 24659498 Add back in the faucet steps using discord (#1187)
    • 00fedf0f Run scheduled dev-testnet deployment at 3:05am tues to sat (#1185)
    • 9af0f70c Add in the release notes for v0.11 (#1177)
    • 45984ad1 Replaced 1.17->1.18 (#1184)
    • c010d003 Refactoring how errors are done (#1153)
    • 6b96286d Add docker_buildkit=1 (#1183)
    • c3b76592 Remove unused host flow controls (#1181)
    • 3afc850e Fix: node launcher was ignoring the l1 start param (#1180)
    • 18420198 Simplify sqlite creation logic (#1179)
    • 81483e76 Remove db interfaces (#1178)
    • e7343851 Close database and guard enclave methods (#1175)
    • 9c9337c4 Removing the external api calls section (#1176)
    • 8106a432 Expose underlying sql database (#1171)
    • 235de492 Extract the mgmt contract deployment block for node starts (#1174)

March 2023-03-22 (v0.11)

  • A list of the PRs merged in this release is as below;
    • 1d22729e Fixed nil ptr case. (#1172)
    • 96565a7d Bridge and cross chain messaging docs. (#1087)
    • dfc2b284 Added some logs for event relevancy. (#1169)
    • 915794a4 Process network secrets now iterates only over successful transactions. (#1168)
    • 0d8e947e Tell prysm node not to look for peers (#1167)
    • 72cf6948 Retry l1 reconnect indefinitely (#1166)
    • 2678359a Fix dead links. (#1156)e$
    • 266fd18c Fix a dead link (#1157)e$
    • f32bd928 Fixes for 3 dead links. (#1158)
    • c3147be0 Prysm upgrade + fix compatibility (#1165)
    • 2e38f551 Set sequencer host to use in-mem db as well (#1164)
    • 496e626e Move network config persistence further down stack (#1161)
    • 290c6c53 Docker testnet launcher to use in-mem db for host (#1162)
    • 6527a019 Update fast_finality.md (#1163)
    • a483fe3f Add upgrade option to node script (#1154)
    • d41ad9ea Small logging improvements, loosen islatest restriction (#1151)
    • 59762afe Enable persistence on testnet hosts (#1152)
    • a6087483 Fix loglvl arg format in testnet script (#1150)
    • 5bd5c21e Set host and enclave loggers to info by default (#1149)
    • 8b85efe5 Reenable disabled block provider test (#1148)
    • 2e335e8e Enclave does not process failed rollups (#1138)
    • fddfeccb Wallet extension verbose logging (#1147)
    • 824d74f8 Deploy l2 contracts synchronously (#1146)
    • 31b1d017 Add buildkit to docker update step (#1145)
    • ee335754 Add basic l1 sanity check to networktests tools (#1142)
    • af7f7259 Updated readme. (#1140)
    • 70197a13 Update the go versions on actions to match the repo version (#1143)
    • dbda7aec Fix to the admin address (#1141)
    • d0a2d02d Rollup module (#1125)
    • d4637cc1 Trigger a repository dispatch to the faucet (#1139)
    • 6eb94f9b Renamed increaseallowance to approve. (#1136)
    • 486892e5 Admin role for bridge. (#1135)
    • f4e8f2ab Clean up design documents (#1137)
    • ec41be07 Draft upgrading design (#1103)
    • b5a79eb6 Add test that restarts the host as well as the enclave (#1134)
    • b3b15faa Fix to the format of the dispatch event (#1133)

February 2023-02-23 (v0.10)

  • A list of the PRs merged in this release is as below;
    • d81f5f9a Run a schedule deploy on the l1, and trigger l2 if successful (#1129)
    • 481dc317 Wrap leveldb so its error types don't leak into our codebase (#1128)
    • e5d8c398 Resilient to rpc requests while sequencer unknown (#1130)
    • aa3eaea2 Updated go version and ego version. (#1124)
    • 6de02fb0 Add config to enable host persistence (#1122)
    • 7f7b78fa Save deployment container logs as build artifacts for fault finding (#1123)
    • 7b640aec No need to request secret for enclave on host restart (#1117)
    • 71d0ea88 Testnet launcher + node package (#1112)
    • c33bf2bc Clarify p2p address syncing (#1116)
    • 1c6f7c7e Add integration testing and local network tools (#1115)
    • a4d34075 Implemented scheduled deployment of dev-testnet (#1114)
    • 8adb8970 Rotates the eth2 logs (#1113)
    • a9c8f9af Update testnet-local-build_images.sh (#1110)
    • 77cc0dad Management contract in all vars (#1093)
    • 7bffad4d Add a single start script to launch testnet with default arguments (#1107)
    • ff7632fa Adds a script that waits for the eth2network to be ready (#1108)
    • 76a0abbb Removes the gethnetwork (#1095)
    • 70767522 Add blockheight and blockhash log keys (#1105)
    • d4bb4120 Fix comparison for empty hash (#1106)
    • 6e145dce Update enclave.go (#1104)
    • 55f4fdc9 Fixes for the we tests (#1102)
    • de1d8bf4 Record latest rollup for every l1 block to avoid scanning back (#1101)
    • 859524b2 Attempt to fix github sleep step bash syntax (#1099)
    • 9196f32b Aggressive enclave logging to track what what it is processing (#1100)
    • f56418b9 Fix contract deployer test ports (#1097)
    • a10e94a7 Add sleep to stagger az cli requests on parallel node creation (#1098)
    • 855c3a36 Fix wallet extension flakyness (#1096)
    • 04af95bd Fix for contract ci go test integration. reintroduced param names to … (#1094)
    • 2e0dfdc1 Eth2 used in the deployment (#1079)
    • 3ef6a073 Remove speculative execution (#1092)
    • ba736919 Adding manual tests + minor fixes (#1090)
    • 1d3134b7 Fix sequencer tx production (#1091)
    • 73dc2df8 Rollup lookup should not assume that l1 blocks go back to genesis (#1089)
    • 09932b44 After enclave restart, replay batches to restore missing statedb cache (#1088)
    • d0bb547f Provide a clearer way for finding the latest rollup in the chain of a given head block. (#1085)
    • c610271f Fixes enclave debug image (#1086)
    • e2c2babc Avoid swallowing l1 client error messages (#1081)
    • 54819a09 Ensure l2 head is rewound after l1 forks (#1078)
    • afafeee2 Call db client batches dbbatches to avoid confusion (#1070)
    • a8357aa3 Obscuro bridge deployment scripts. (#1046)
    • c951a9b8 Reduces the time to start a merged eth2 network (#1077)
    • 7a65331c Make pr template lighter (#1076)
    • 015c6b7e Juiced the docker. it's now fast. (#1071)
    • 9e7c6a30 Upgrade enclave l2 (#1075)
    • 5e494c36 Fixes the enclave start (#1074)
    • 6f2b8a69 Remove early exit (#1073)
    • 14d25d96 Fix faucet deployment trigger (#1072)
    • b2e6f8e2 Store the l2 head hash directly in the enclave (#1069)
    • 34e7bbe3 Adds an upgrade testnet workflow (#1049)
    • f8230934 Adds eth2 network (#1050)
    • 37f52830 Docker image size reduction (#1068)
    • 6f621c0b No need to manage a mempool on non-sequencer nodes (#1064)
    • d8f3d64d Temporarily allow product key sealing edb credentials for testnet upgrades (#1065)
    • c254ac9c Removed stuff related to the old bridge (#1057)
    • c775d8bd Store batches from rollups. check batches at same height are consistent. (#1063)
    • 69fcdd10 Wallet extension now supports --host cli arg. (#1061)
    • c5635a75 Fix solidity compilation warnings for unused calldata. warnings are now treated as errors. (#1060)
    • fde6606c Adds todo. (#1058)
    • 72c062b8 Requires the full set of batches to be specified when creating a rollup from a set of batches (#1056)
    • 5b7ffbb5 Each rollup references its batches, rather than a set of transactions (#1055)
    • 12229781 Adds comments to clarify some of the log events logic. (#1054)
    • 1a16f9ef Fix for ci deployment. (#1053)
    • 3c977786 Rollup header points to batch. (#1052)
    • 556a5741 Avoid unnecessary updating of head rollup for block (#1051)

January 2023-01-17 (v0.9)

  • A list of the PRs merged in this release is as below;
    • 35054c64 In mem tests now use containers (#1045)
    • b736353f Added layer 2 deployment and updated bits around it (#1044)
    • d9ef7b8a Fixes to some hh deployment issues (#1043)
    • ce18d3fd Propagates container start error (#1042)
    • bb1bc76c Remove gas constants (#1041)
    • 80fcc27d Hardhat deploy plugin and deployment of the layer 1 bits (#1038)
    • 070c79d7 Added tasks for the wallet extension (#1037)
    • a0eb02c3 Testnet and dev tesnet now deploy from one workflow (#1035)
    • 10838a4e Improved validation of incoming rollups (#1040)
    • 47ecb855 Extracted abigen task as a separate one (#1036)
    • e375f0f5 Obscuroscan now deploys manually (#1033)
    • d37f325a Separate batch and rollup in block submission response (#1034)
    • 0d32caf7 Testnet metrics are pushed to datadog (#1025)
    • 35c60d39 Fixed a slight bug in the message bus (#1028)
    • e30dcb2a Changed runner from self hosted to ubuntu (#1030)
    • a3567c0e Parallel build the images (#941)

January 2023-01-04 (v0.8)

  • Predominantly internal changes as part of work on faster finality, persistent L1 and updated bridge. No user visible changes or breaking API changes are made.
  • A list of the PRs merged in this release is as below;
    • 7652b2c5 Fix for issue deploying testnet (#1020)
    • 84bd5d82 Added bridge smart contracts and test. (#993)
    • 8a75bd05 Deployments wait until node 0 is healthy (#1018)
    • 383b9c7b Updated changelog (#1016)
    • 3622359f Uses known registry address (#1017)
    • 6f4f876c Decouples host and rpc server (#1014)
    • 81d92fb3 Locks edb version for the obscuro node (#1012)
    • 1bb248d3 Remove unnecessary start method from enclave interface (#1011)
    • 7e525447 Rpc server is injected into the host (#1010)
    • 7c51dcb6 Docker updates (#1009)
    • 8ac39307 Updates pccs url for edgelessdb + ego (#1008)
    • 74cc6e9b Change sequencer id var to read from gh secrets (#1006)
    • d74c2995 Use a curl command to request obx (#1007)
    • dd9b5e77 Adds metrics + update p2p to use metrics (#1002)
    • dd6d7ec6 Fix timing issue with sequencer secret (#1004)
    • 80a24e61 Genesis rollup agg field should be the sequencer that produces it (#1003)
    • d777c4c1 Updates the sgx folder to match the edgelessdb usage (#1000)
    • 521b0156 Add is() support to blockrejecterr for standard errors (#1001)
    • 3ebd06b7 Switching genesis to be a batch, not a rollup (#997)
    • c3907cb5 Hooks sequencerid flag (#999)
    • 709cd907 Fixes two bugs in batch catchup (#995)
    • 8b1344e1 Fix for oz 4.5.0 dependency (#994)
    • 38ab4925 Return genesis as batch, not rollup (#990)
    • 25e3b73c Remove ides folders (#992)
    • e05282e1 Changed contracts to use hardhat for compilation. (#965)
    • cb561316 Reduce sleep time after unexpected block provider error (#989)
    • 81f52116 Add fast-fail mechanism to break out of retry (#988)
    • 43dcf872 Create two separate header structs for batch and rollup (#985)
    • b34fde07 Tx injector l1 deposits are estimated (#986)
    • c40573be Clean up batch validation on validators; check for missing batches in chain (#984)
    • 4f0cc501 Stop using same struct for rollup and batch headers, so they can diverge (#981)
    • 79bf6b52 Fix main build errors (#982)
    • 12799f2c Temporarily disable the validation of sequencer signatures (#980)
    • 5e72c139 P2p healthcheck (#962)
    • c3aaeb24 Check that rollups processed from l1 blocks are sequential (#977)
    • c2a463c2 Returns clearer error if rollup signature cannot be validated (#978)
    • 37c9246e Some minimal validation of processed rollups (#976)
    • 5cab9cf6 Send transactions to sequencer, instead of broadcasting them (#975)
    • e22643db Add section into pr template (#974)
    • a6c8415e Proper handling of genesis batch on the host side (#972)
    • 997737e5 Reintroduce storage of rollups; store genesis rollup and rollups from blocks (#973)
    • c80b5d56 Check that received batch is produced by sequencer (#971)
    • 1c06e9ec Removes use of transaction blob crypto in rollup chain. (#970)
    • 2bbde79f Rename methods on enclave to reflect fact that batches are now source of truth (#969)
    • 061febd8 Fixed broken link. (#967)
    • 1aab5f55 Clean up enclave storage (#968)
    • 21abaa9c Cleaner production of rollup on sequencer (#964)
    • 7824f769 Produce block submission response outside of rollupchain; some cleanup (#963)
    • d6199e1f Clarify storenewheads logic (#961)
    • 650f727c Avoid storing batches twice; small optimisations to batch catch-up (#959)
    • a0141139 Disabled cross chain messages block hash binding in management contract. (#958)
    • 3ed4b90d Separate di constructor for container in testing (#957)
    • 7506ebe3 Reenable withdrawals check in sim. (#956)
    • 304d33ab Remove storage of rollups on the host side (#955)
    • 755a61ca Create rollups from scratch instead of retrieving them from l1 blocks (#946)
    • 4fd3825a Hosts now use the addr pk for deployment (#935)
    • 5b6b6380 Gas estimation centralization (#954)
    • 188d1f23 Logging improvements to easily trace what is going on and a band aid on the test to stop showing false positives. (#953)
    • a3a4f12c Second attempt at fixing testnet (#952)
    • b1574942 Fix for the testnet deployment (#951)
    • 838067f8 Standardise container wiring for enclave and host (#949)
    • 5e18b286 Fix security issue. seal secrets with the unique sgx key (#950)
    • e8e34ac8 Adding stop and status scripts (#948)
    • 13d334da Obscuro cross chain messaging (#817)
    • 2d327cee Adds a start node doc (#945)
    • cfdfd07c Submit each batch to the enclave if it's successfully stored (#947)
    • 24871c16 Removes issequencerenclave. updates node types. (#944)
    • 9ebcf3f3 Fixes underflow bug. (#942)
    • 8dca53c8 Removes unused flags (#934)
    • 7f854124 Clean up handling of genesis block (#939)
    • 9bb34347 Reverts use of retry.do. (#940)
    • e27d1242 Pedro/fix get balance (#937)
    • 41580a89 Fixes batch catchup, and fixes bug in sequencer rollup production (#927)
    • 640f065f Have shorter timeout for awaiting receipt in in-mem sim (#925)
    • 8334dad0 Host id is now generated from pk (#933)
    • 8c06ad68 Quote the owner in the json (#932)
    • 687f910d Fixes obscuro scan git deploy (#931)
    • f75f77d4 Remove pkaddress flag (#930)
    • 86c61ec9 Add in user login (#929)
    • 6b302f85 Fix in-mem mock concurrency bug (#928)
    • 53fb50a4 Remove genesis block references outside of in-mem mock code (#922)
    • 2dade86f Testnet dns now point to node1 (#918)
    • df5703b1 Avoid duplication in ancestor-checking methods (#920)
    • 84a4a13d Jamescarlyle webapp obscuroscan (#849)
    • 3d212dad Allow l1 start block to be configured to avoid all l1 history (#917)
    • a979dca4 Fix fork block loop and re-merge blockprovider pr (#916)
    • c4c30343 Removes buggy fetchheadrollup method on storage (#914)
    • 780af91a Has-get pattern in the db fix (#912)
    • b695a1a5 Simplifies storage of new heads (#910)
    • ab28a79b Remove headsafterl1block type; some clean-up (#907)
    • d3898965 Eth call, estimategas and getbalance calls now respect the block numb… (#902)
    • 483d5ba2 Revert call error not correctly propagated (#905)
    • 437a53df Reorganises rollupchain methods (#904)
    • f19917f1 Clean up of l1 block submission (#903)
    • 61da560f Unlink production of rollups from submission of l1 blocks (#899)
    • da812862 Clarifies fields in blockstate (#901)
    • 131b5e4c Log error if no peers list yet to send batch request to (#900)
    • 9a5f5812 Separate out genesis response from blocksubmissionresponse (#898)
    • e8e1de09 Clean up submitl1block (#897)
    • 1ca96d95 Allow hosts to catch up on missed batches (#887)
    • ef1ad41d Revert "use block provider as source of l1 blocks in host (#891)" (#895)
    • ab23a792 Adds tests to enclave get balance (#894)
    • 2e59cdbd Use block provider as source of l1 blocks in host (#891)
    • 739b34c1 Reworks confusing error block. (#893)
    • 82528e73 Rollup chain no longer handles encryption and param validation (#892)
    • 75843a00 Fix enclave tests (#890)
    • abe4ac09 Simplify blockprovider process control to use context (#889)
    • 7ce5047a Tweaking the faucet to allow for enclave unit tests (#888)
    • 8ad27bd5 Surface enclave errors. (#886)
    • 80b0fef6 Fixes npe when receipt takes longer than expected time (#881)
    • d23388e4 More enclave db error handling (#883)
    • 41c2e62c Profiler - address gosec warning on new versions of golangci-lint (#884)
    • 6d116689 Make our errnotfound match ethereum's (#885)
    • 842997c8 Surface errors from accessors_receipts and accessors_metadata (#882)
    • ddc39783 Surface enclave errors. (#880)
    • 9ccd7cde Removes dead linteres to remove noise. (#878)
    • 08e16959 Surface more enclave errors (#877)
    • 4641fd93 Rename to be consistent (#876)
    • 8c993fec More surfacing of enclave db errors (#874)
    • 9e497728 Add file to deploy obscuroscan into dev-testnet (#875)
    • 72fde61d Update faucet.md (#872)
    • 85ce478b Extends integration tests of obscuroscan. switch obscuroscan api to return batches, not rollups. (#873)
    • 325d37fb Tidy up names (#860)
    • 80a77b7e Surface enclave db errors (#866)
    • d28d3b27 Revert "testnet dns now point to node1" (#868)
    • b40a7517 Test obscuroscan's getlatesttxs in integration tests (#871)
    • 84d42fda Fix dead links in docs (#864)
    • bea17905 Adds integration test of gettotaltxs. (#870)
    • e6598799 Return errors from enclave db, instead of ignoring or using a critical log message (#863)
    • a734947d Custom error is now a pointer (#865)
    • 6bcadc77 Switch over various obscuroscan api methods to be based on batches, not rollups (#857)

November 2022-11-22 (v0.7)

  • A variety of stability related issues are fixed within this release.
  • Inclusion of a health endpoint for system status monitoring.
  • It is now possible to run an Obscuroscan against a locally deployed testnet. For more information see building and running a local testnet in the project readme.
  • Obscuroscan's GitHub Actions deploy script has been modified to run the public Testnet Obscuroscan as an Azure web app. This allows access via HTTPS (TLS), which allows app developers to call the Obscuroscan API from other web apps.
  • A list of the relevant PRs addressed in this release is as below;
    • 12a04c40 Checks whether the head rollup is nil (#859)
    • 619d39b4 Clarify that blocks are L1 blocks (#858)
    • 01884de0 Removes endpoint to get L1 height from Obs node (#856)
    • 9b975f3d eth_getBlockByNumber and eth_getBlockByHash responds based on the batches, not the rollups (#855)
    • 87588e54 Stores batch at the correct point (#854)
    • f4d37f6e Remove geth EVM trace logger (#853)
    • fcc02555 Distribute and store batches (#850)
    • 243f7ef7 Replace panics with logger.Crit in the enclave (#844)
    • 5f97c1a4 Returns errors from DB methods, instead of found bools and critical log events (#842)
    • 3dd03cdc Uses a write lock instead of a read lock (#847)
    • c039df7d Locks the subscription list in LogEventManager for threadsafety (#846)
    • b1bfed47 Gets number of subs in threadsafe way (#845)
    • 76fde61d Revert "Fix EVM error casting to use pointer variable" (#841)
    • d225a75c Adds methods to host DB for batches (#837)
    • f3d60127 Fix EVM error casting to use pointer variable (#840)
    • 8e21374b Fix issues with submit block errors (#838)
    • ddecd719 Fixes concurrency bug in subscription manager (#839)
    • 12f34d46 Create blockprovider and use it for awaitSecret (#813)
    • 9e524e7f Removes HeaderWithHashes type (#836)
    • 756b7c16 Removes ExtRollup/ExtRollupWithHash split (#835)
    • 17940c7b Fixing node start out of sync (#832)
    • 81b8d9c8 Testnet DNS now point to node1 (#827)
    • de9dbc6f Cleans up the GetLatestTransactions API method (#833)
    • 6932e020 Fixes grabbing a rollup via ObscuroScan (#829)
    • c9e978f0 Adds booleans to DB methods to indicate whether was found. (#831)
    • 849ea7aa Fetch latest Rollup Head now returns error (#826)
    • bc652690 Adding health check endpoint (#825)
    • 8f049ff9 Handle all errors from ethcall and estimate gas (#823)
    • 9107d571 Fixes eth call error propagation (#822)
    • 976d872c Remove unused test APIs. Rename RPC method constants for clarity (#821)
    • 3a6f197f Stop in-mem nodes properly. Prune unused in-mem RPC methods (#820)
    • 84e7c615 Provides logger for Obscuroscan (#819)
    • 088d8f50 Dynamic estimate gas (#815)
    • 4478ffbd Fix the bridge address to pass the checksums (#812)
    • ef0e04d9 Downgrade the spammy log message (#810)
    • 6cb0d85a Have sims test the eth_blockNumber endpoint (#809)
    • d83c201e Confusing description of DB.writeRollupNumber. Minor clean-up (#791)
    • 5faab414 Fix to use the dev build of the contract deployer (#807)

November 2022-11-08 (v0.6)

  • The Number Guessing Game has been removed from static and auto deployment scripts, and is now hosted in a sample applications repository. Given the move for Testnet to be long-running (or at least restartable without contract disappearance), the Guessing Game must be persisted across software updates, and redeployed manually if needed in the same way other applications are.

  • The list of sensitive RPC API methods, where the request and response is encrypted in transit, now covers eth_call, eth_estimateGas, eth_getBalance, eth_getLogs, eth_getTransactionByHash, eth_getTransactionCount, eth_getTransactionReceipt and eth_sendRawTransaction. See the Obscuro documentation for more details.

  • Calls to wait for a transaction receipt are now blocking, whereas previously they would return an error meaning the client side code needed to perform a specific wait and poll loop. The example on how to programmatically deploy a contract has been updated accordingly.

  • The ability to start a faucet server against a local testnet deployment is now supported via a docker container. For more information see the Obscuro readme.

  • Updates to the Events design inclusion of the Fast Finality design.

  • The Obscuro docs site is now searchable.

  • Testnet is now officially termed Evan's Cat.

  • ObscuroScan:

    • ObscuroScan supports a single API at /rollup/ which allows web clients to access a JSON representation of rollups and encrypted transactions. Further details here

October 2022-10-21 (v0.5)

  • Event Subscriptions:
    • Event subscriptions for logs are now supported via the eth_subscribe and eth_getLogs approaches. This has been tested using both the ethers and web3js libraries. Note that eth_newFilter is not currently supported. For more information see the events design.

September 2022-09-22 (v0.4)

  • Wallet extension:
    • The wallet extension now supports separate ports for HTTP and WebSocket connections. Use the --port and --portWS command line options respectively for each. For more information see the Wallet extension documentation.
  • Event subscription:
    • An early preview of event subscriptions is available in this release, though note that this is still undergoing testing and feature enhancements and therefore is liable to issues and instability. For more information on the functionality available reach out to the development team on the discord active testnet developers channel.
  • Transaction receipts:
    • Only return receipts for transactions which were included in a canonical rollup.

September 2022-09-07 (v0.3)

  • Tokens / ERC20 contracts
    • The ERC20 'HOC' and 'POC' tokens are now funded with 18 decimal places of precision. Previously funding of 50 tokens was erroneously made as 50 10^-18. This means tokens imported into Metamask will display correctly. Note that the number guessing game pay to play still costs 1 10^-18 HOC tokens.
  • Wallet extension:
    • Viewing keys are now persisted across wallet extension restarts
    • Enhanced logging for registering of viewing keys

August 2022-08-22 (v0.2)

  • Account balances:
    • Added correct calculation of account balances (previously, all accounts were allocated infinite funds).
  • Tokens / ERC20 contracts
    • The two pre-installed ERC20 contracts deployed are now named 'HOC' and 'POC', replacing the previous tokens of 'JAM' and 'ETH'. Contract addresses remain the same as before respectively. The tokens have restricted balanceOf and allowance calls such that only the owner of the account can view details which should be private to them. See go-obscuro\integration\erc20contract\ObsERC20.sol for more information.
    • Testnet now supports a faucet to distribute native OBX on request. Previously pre-funding of accounts meant that no native tokens were required to execute transactions on Obscuro - this is now not the case and native tokens must be requested. Allocation of native OBX, along with HOC and POC tokens is currently not supported automatically and a request to Obscuro Labs should be made on the Faucet Discord channel.
  • Gas prices:
    • The node operator can configure the minimum gas price their aggregator will accept on startup.
  • Wallet extension
    • The wallet extension now supports multiple viewing keys through a single running instance. For more information see the wallet extension design doc, specifically Handling eth_call requests for how the required viewing key is selected when multiple keys are registered.

August 2022

  • Testnet launch:
    • Testnet preview launched to limited number of application developers.
    • ObscuroScan block explorer for Testnet launched.
    • Number Guessing Game smart contract deployed to Testnet.
  • Obscuro Docsite launched.
  • Account balances:
    • Added correct calculation of account balances (previously, all accounts were allocated infinite funds).
    • Introduced network faucet account.
    • Obscuro enclaves services can configure the minimum gas price they'll accept
  • block.difficulty will return a true random number generated inside the secure enclave.