Releases: hoprnet/hoprnet
Releases · hoprnet/hoprnet
HOPR - v3.0.0-rc.1
What's changed
🚀 New Features
- feat(docker): Add info on building docker image by @tolbrino in #7285
- feat(ci): add pre-commit checks by @Teebor-Choka in #7280
- feat(ci): Add package support to archlinux variant by @ausias-armesto in #7277
- chore(deps): Bi-weekly update 20250701 by @Teebor-Choka in #7273
- feat(hopr-lib): Add a reserved flag to the KeepAlive Session message by @NumberFour8 in #7263
- feat(hoprd): introduce Session pooling at the API by @NumberFour8 in #7258
- feat(ci): Create OS packages by @ausias-armesto in #7251
- feat(runtime): make spawned tasks abortable through futures mechanism by @Teebor-Choka in #7247
- chore(deps): Update dependencies (20250610) by @Teebor-Choka in #7229
- chore(nix): update flake.lock by @app/github-actions in #7221
- chore(nix): update flake.lock by @app/github-actions in #7206
- chore(nix): update flake.lock by @app/github-actions in #7181
- chore(deps): update rust crate oas3 to 0.16.0 by @app/renovate in #7057
🐞 Fixes
- fix(ci): Do not use mold on macos by @tolbrino in #7321
- fix: Using wrong branch when creating release by @ausias-armesto in #7317
- fix(nix): hopli aarch64 build working and add man-page generation by @tolbrino in #7310
- fix(ci): Port deploy_nodes changes by @tolbrino in #7305
- fix(ci): comply with pre-commit by @Teebor-Choka in #7281
- fix(ci): Fixing merge pipeline by @ausias-armesto in #7276
- fix(hopr-lib): Include Network Registry status in peer discovery announce by @QYuQianchen in #7264
- fix(hopr-lib): Connectability issues in the local cluster and production by @Teebor-Choka in #7255
- fix(indexer): key-binding errors by @NumberFour8 in #7254
- fix(tests): add extra funding and increase test message count by @Teebor-Choka in #7246
- fix(ci): Remove the python updates as they break compatibility of pluto by @Teebor-Choka in #7242
- fix: Enforce correct endianness in Segment retransmission request of the Session protocol by @NumberFour8 in #7235
🧹 Refactor
🌟 Other
- Update documentation on Nodemanagement module by @QYuQianchen in #7028
- Post-Providence smart contract features (tracker for v3.0) by @QYuQianchen in #7027
- Protocol Feature: Return Path by @tolbrino in #4496
- feat: add configurable limits for transport packet handling and stream open timeout by @NumberFour8 in #7320
- ci: Add pluto build flag by @ausias-armesto in #7315
- feat: Add binary signatures and multiple os package improvements by @ausias-armesto in #7297
- Remove balance update on API query by @NumberFour8 in #7252
- tests: Fix randomly failing win_prob smoke test by @Teebor-Choka in #7230
- Fixed an incorrect calculation of Tag size by @NumberFour8 in #7226
- tests: Simplify smoke test setup by @Teebor-Choka in #7225
- Backport backwards incompatible changes from 3.1 by @NumberFour8 in #7222
- Fix merge workflow by casting variables into numbers by @ausias-armesto in #7218
- api: Fix missing endpoint in OpenAPI by @Teebor-Choka in #7214
- Fix deploy config file by @jeandemeusy in #7212
- v3: Improvements from testing sessions by @Teebor-Choka in #7209
- api: Fix CORS layer in checks by @Teebor-Choka in #7208
- Update renovate.json to group updates by @Teebor-Choka in #7205
- Lower the TX transmission timeout by @NumberFour8 in #7204
- Improve the tag organization for v3 packet payload format by @Teebor-Choka in #7203
- Update all API routes to
v4
by @NumberFour8 in #7200 - deps: Update cargo dependencies by @Teebor-Choka in #7195
- deps: Update older dependencies by @Teebor-Choka in #7188
- metrics: Add hopr_last_time and rename hopr_up by @tolbrino in #7183
- ci: Add reviewers to new PRs by @tolbrino in #7182
- Fix clippy warnings by @tolbrino in #7180
- tests: Create assertion out of flaky test by @tolbrino in #7178
- tests: Fix chain tests in nightly by @tolbrino in #7176
- Introduce new
Balance
type by @NumberFour8 in #7174 - Migrate alloy to v1 by @QYuQianchen in #7171
- session: Add more tracing logs by @tolbrino in #7168
- ci: Add pre build step by @tolbrino in #7167
- Full reformat of Rust code by @tolbrino in #7162
- nix: Full reformat according to RFC 166 by @tolbrino in #7161
- ci: Fix log upload by @tolbrino in #7160
- Add musl-based static binary builds for supported platforms by @tolbrino in #7158
- deps: Remove surf and surf-governor by @Teebor-Choka in #7157
- toolchain: Update Rust to 1.87 by @Teebor-Choka in #7154
- docker: Fix missing SSL library in the image by @tolbrino in #7153
- Add binding check ci by @QYuQianchen in #7149
- heartbeat: Replace the libp2p protocol based heartbeat with in-HOPR protocol based one by @Teebor-Choka in #7142
- protocol: Bump heartbeat protocol version to disallow connections to previous versions by @Teebor-Choka in #7138
- Close channels in multicall by @jeandemeusy in #7137
- Fix smoke test execution by @tolbrino in #7136
- tests: Allow smoke tests to run in parallel by @tolbrino in #7131
- audit: Fix deps by @Teebor-Choka in #7130
- Remove Message Inbox and refactor E2E tests using Sessions by @NumberFour8 in #7128
- deps: Update and clean by @Teebor-Choka in #7122
- Avoid adding release-latest tag on PR not target to them by @ausias-armesto in #7111
- nix: Add missing lld to shell by @tolbrino in #7110
- deps: Update cargo dependencies by @Teebor-Choka in #7109
- Remove the 'async-std' due to deprecation by @Teebor-Choka in #7094
- Fix pluto build by @jeandemeusy in #7092
- Introduce Return path and SURB balancing in Sessions by @NumberFour8 in #7088
- Migrate
ethers-rs
toalloy-rs
by @QYuQianchen in #7079 - Improve smart contract documentation by @QYuQianchen in #7078
- Unify the
msg
andack
protocol inside a single payload structure by @Teebor-Choka in #7073 - Return only objects from API by @jeandemeusy in #7072
- renovate: Update the ignore list by @Teebor-Choka in #7071
- ci: Cleanup the nix shells and speed up CI builds by @tolbrino in #7070
- deps: Update newest versions (20250414) by @Teebor-Choka in #7024
- ci: Update renovate configuration by @Teebor-Choka in #7021
- Publishing benchmarks by @ausias-armesto in #7019
- audit: Fix issues by bumping relevant dependencies by @Teebor-Choka in #7016
- ci: Remove the remnant after physical vendoring inside the repo by @Teebor-Choka in #7008
- ci: Update the
cache-deps
naming convention by @Teebor-Choka in #7006 - ci: Fix cache dependency workflow by @Teebor-Choka in #7005
- ci: Don't persist credentials by @tolbrino in #7001
- ci: Fix flake lock action by @tolbrino in #7000
- Add Bencher pipeline by @ausias-armesto in #6998
- nix: Fix shell dependencies on macos by @tolbrino in #6995
- Backport python tests and expose cluster to local network by @esterlus in #6979
- Merge back changes from v2.2.3 (on top of libp2p_stream) by @tolbrino in #6977
- Add Auditing code by @ausias-armesto in #6972
- Changing folder for docker compose by @ausias-armesto in #6971
- Merge back changes from v2.2.3 by @tolbrino in #6970
- [StepSecurity] ci: Harden GitHub Actions by @tolbrino in #6950
- Introduce Return Path to the protocol by @NumberFour8 in #6932
- Split API endpoints by content type by @jeandemeusy in #6931
- Add support for libp2p_stream into the swarm object by @Teebor-Choka in #6928
HOPR - v2.2.3
Below there is a list with the contents of this release
🐛 Bug
- #6938 - db: Fix ticket aggregation balance threshold
⚡ Other
- #6945 - p2p: Fall back to TCP on dappnode
- #6942 - Improve eligibility check by removing type conversions
- #6934 - ci: Add harden-runner to all workflows
- #6930 - db: Fix channel/ticket state mismatch on startup
- #6925 - tests: Fix per-test teardown
- #6898 - Add initial delay and improve peer pings handling in strategy
- #6895 - Fix incorrectly filtered out offline peers and other tweaks in Promiscuous strategy defaults
- #6892 - Update defaults of Promiscuous strategy
- #6891 - Remove multiaddress drop on request response
- #6889 - Improve channel graph node scoring
- #6887 - Delete closed foreign channels from the database
- #6885 - Updates to Promiscuous strategy
- #6884 - docker: Fix entrypoint script
- #6882 - db: Add more indices
- #6875 - swarm: Add network info logs
- #6873 - Fix the cache cleaning of multiaddresses on peer dial
- #6872 - Set the aggregation ticket threshold to the middle of configuration range
- #6858 - Path selector refactoring
- #6809 - Update libp2p to 0.55
HOPR - v2.2.2
Below there is a list with the contents of this release
⚡ Other
- #6855 - Adjust default maximum mixer delay
- #6854 - Make the allowlist of Session targets empty in default configs
- #6850 - Add improved auto-funding strategy
- #6849 - Remove chain head query from fast-sync
- #6848 - Lower the frame expiration age
- #6843 - Change the ticket aggregation batch size to 500
- #6841 - Fix winning probability comparison when preparing ticket aggregation
- #6838 - Fix hopr_session_num_active_sessions metric
- #6837 - Remove excessive arrays from debug logs
- #6836 - Cap on aggregation batch size and fix swarm notifiers
- #6830 - docker-compose: Update sample session port ranges
- #6825 - Use QUIC as a default transport announcement
HOPR - v2.2.1
Below there is a list with the contents of this release
⚡ Other
- #6828 - Fix missing serde directive
- #6823 - Make auto-path finding quality threshold configurable
- #6818 - Allow manual configuration of the ticket price
- #6815 - Update libp2p config to account for dufour size and CT requirements
- #6812 - Match actual error message
- #6807 - Allow dynamic setting of outgoing ticket winning probability
- #6805 - Allow high traffic throughput communication for VPN like traffic
- #6791 - Fix network issues
HOPR - v2.2.0
Below there is a list with the contents of this release
🚀 New Features
- #5937 - Acknowledge every packet
🐛 Bug
- #6647 - Invalid alias record entry attempt after hoprd node start
- #6411 - The Hops: 0 specification fails to send a message
- #6349 - The pipeline does not produce a release build of hoprd for the docker image
- #6753 - Add back challenge into the send_message endpoint
- #6747 - Merge back bug fixes from 2.1.5
- #6683 -
rust-libp2p
configuration tweaks to improve the hopr-lib throughput - #6642 - Fix API v2.2 compatibility when opening a channel
- #6610 - Handle restricted self registration
- #6592 - tests: Cleanup the forgotten alias after test runs randomly breaking consequent alias tests
- #6589 - Alias to an existing peer_id or an existing alias should fail
- #6570 - Fix packet payload size checks
- #6488 - Fix peer list to always load the more active peers
- #6475 - Fix setup-local-cluster script execution
- #6455 - Fix neglecting and redeeming metrics updates
⚡ Other
- #6270 - Refacor the msg-ack flow to facilitate future libp2p_stream or other streaming capabilities
- #5725 - Reserve Application tag ranges through the API for internal use
- #6762 - Fix ticket deletion check
- #6758 - rest-api: Fix recursion in error conversion
- #6757 - Include
apiVersion
intonode/version
endpoint - #6756 - api: Add additional indexer info
- #6755 - Ensure consistency of the Logs DB
- #6754 - cfg: Cleanup the example configuration
- #6751 - Fix backwards compatibility to 2.1.x in
ack
andticket_aggregation
protocol - #6750 - Porting schema fixes from 2.1.5
- #6749 - Output
Address
in the EIP-55 checksum format in the REST API - #6748 - Extract localcluster from
conftest.py
and restore snapshoting - #6745 - Output routing options in the Session listing
- #6737 - api: Fix missing items in the openAPI spec
- #6728 - Auto-path finding improvements
- #6723 - Session configuration tweaks
- #6720 - Update nix to 24.11
- #6712 - Add Loopback service to simplify usage for the CT
- #6707 - Add endpoint for exporting Channel Graph in DOT format
- #6706 - Improve ticket redemption handling
- #6692 - hopli: Cleanup unnecessary dependencies
- #6691 - nix: Fix cross-build on same platform
- #6690 - docker: Set default session ip to random
- #6686 - docker: Preset session listen host
- #6685 - toolchain: fix watch_file directive in .envrc
- #6681 - Allow to launch binaries manually
- #6680 - Update the logging to remove the offline peer error on heartbeat
- #6675 - Fix tokio stack overflow crash during indexing
- #6673 - tokio: Pin main loop on heap
- #6671 - indexer: Reduce on-chain rpc calls
- #6669 - Fix message API request bodies and session target acceptance
- #6668 - Do not purge peers with records fresher than 5 mins from the DB on restart
- #6667 - Update the docker-compose deployment .env.sample default configuration
- #6666 - Heartbeat improvements and configurability
- #6661 - Add default session listen host option
- #6657 - Early initialize lazy static metrics to prime them
- #6655 - Return backwards compatible configuration with 2.1.x versions
- #6651 - nix: Add patchelf step to cross-builds
- #6649 - Improve some Logs DB queries
- #6645 - Fix Fast-Sync CLI parameters and behavior when full re-sync is required
- #6644 - Fix bugs in log processing and fast-sync
- #6640 - Change load testing to use the websocket implementation
- #6637 - Properly remove Session from the list when it terminates spontaneously
- #6636 - Replace
ReaderStream
withAsyncStreamReader
in WS Session handler - #6633 - Fix TagBloomFilter behavior after updating the crate to 2.0
- #6632 - Fix websocket authentication
- #6630 - Remove ticket validation from the last hop
- #6628 -
Network::get
should retrieve peer even if it is ignored - #6624 - Add data counters to WS Session adapter and log them
- #6623 - Disable default
transport-quic
feature - #6622 - deps: Update libp2p to the 0.54.1
- #6621 - db: Add index to improve log_status queries
- #6619 - Add criterion benchmarks for crypto-packet crate
- #6618 - Enable explicit path routing feature
- #6614 - Remove single ticket redeem bound in AutoRedeem strategy
- #6612 - Add auto-redeem strategy changes missed in the merge-back
- #6609 - Add constants for session protocol and transport config
- #6607 - Use the quic-v1 multiaddress as a default for announcement
- #6604 - Improvements to 2.2.0-rc.1 ergonomics
- #6603 - Update renovate.json to remove the Dependency Dashboard issue
- #6602 - Fix redeem actions tests to run on Nightly
- #6601 - Update crate dependencies and tokio
- #6599 - Fix prometheus dependencies and sanitize metrics paths
- #6595 - Fix backwards compatibility with the 2.1.x
- #6594 - Fix obsolete commands in envrc
- #6590 - Bump the rust version to 1.82 and update library dependencies
- #6583 - Fix the network heartbeat behavior to be more robust and work with /node/peers
- #6578 - Add README section for the additional optional environment var based configuration
- #6576 - api: Add swagger-ui as API browser back as additional option
- #6563 - Fix heartbeat bug causing the heartbeat to terminate prematurely on the first result
- #6559 - Rework websocket to be compliant with session behavior of client creation
- #6558 - Handle rejected tickets without altering unredeemed metrics
- #6556 - Add test for fully interconnected cluster with placeholder
- #6550 - Improve logs to extract more information in a structured format
- #6549 - Enable Snapshot testing for RPC
- #6542 - Add support for the JSON format in the logger output
- #6540 - Add feature to support building hoprd node with quic-v1
- #6538 - Docs updates
- #6532 - Allow PeerId and Address in API calls
- #6531 - Batching of network segments in the Session protocol
- #6526 - Add check on safe module on start
- #6520 - Include provider url in info endpoint
- #6519 - Using different port on hopr-admin UI for compose deployment
- #6518 - Fix failing sync due to missing winning probability SC address
- #6513 - Add a instrumentation build for the tokio runtime
- #6512 - Do not use the nightly features for rustfmt
- #6511 - Add E2E tests for lowered winning probabilities
- #6508 - Update the toolchain and dependencies
- #6506 - Add a separate test for wireguard tunnel
- #6503 - Improve Session UDP tests
- #6501 - Add contract for winning probability and hopli command to interact with the new contract
- #6494 - Allow configurable winning probabilities
- #6492 - Fix failing unit tests
- #6486 - Ensure errors in Ping API are properly propagated
- #6481 - Session improvements
- #6478 - Update default strategy execution interval handling
- #6477 - Improvements to logging and safe code
- #6457 - Merge-back from 2.1.4 Saint Louis
- #6456 - Dependency updates 2024-08-16
HOPR - v2.2.0-rc.1
Below there is a list with the contents of this release
🚀 New Features
- #5937 - Acknowledge every packet
🐛 Bug
- #6647 - Invalid alias record entry attempt after hoprd node start
- #6411 - The Hops: 0 specification fails to send a message
- #6349 - The pipeline does not produce a release build of hoprd for the docker image
- #6753 - Add back challenge into the send_message endpoint
- #6747 - Merge back bug fixes from 2.1.5
- #6683 -
rust-libp2p
configuration tweaks to improve the hopr-lib throughput - #6642 - Fix API v2.2 compatibility when opening a channel
- #6610 - Handle restricted self registration
- #6592 - tests: Cleanup the forgotten alias after test runs randomly breaking consequent alias tests
- #6589 - Alias to an existing peer_id or an existing alias should fail
- #6570 - Fix packet payload size checks
- #6488 - Fix peer list to always load the more active peers
- #6475 - Fix setup-local-cluster script execution
- #6455 - Fix neglecting and redeeming metrics updates
⚡ Other
- #6270 - Refacor the msg-ack flow to facilitate future libp2p_stream or other streaming capabilities
- #5725 - Reserve Application tag ranges through the API for internal use
- #6762 - Fix ticket deletion check
- #6758 - rest-api: Fix recursion in error conversion
- #6757 - Include
apiVersion
intonode/version
endpoint - #6756 - api: Add additional indexer info
- #6755 - Ensure consistency of the Logs DB
- #6754 - cfg: Cleanup the example configuration
- #6751 - Fix backwards compatibility to 2.1.x in
ack
andticket_aggregation
protocol - #6750 - Porting schema fixes from 2.1.5
- #6749 - Output
Address
in the EIP-55 checksum format in the REST API - #6748 - Extract localcluster from
conftest.py
and restore snapshoting - #6745 - Output routing options in the Session listing
- #6737 - api: Fix missing items in the openAPI spec
- #6728 - Auto-path finding improvements
- #6723 - Session configuration tweaks
- #6720 - Update nix to 24.11
- #6712 - Add Loopback service to simplify usage for the CT
- #6707 - Add endpoint for exporting Channel Graph in DOT format
- #6706 - Improve ticket redemption handling
- #6692 - hopli: Cleanup unnecessary dependencies
- #6691 - nix: Fix cross-build on same platform
- #6690 - docker: Set default session ip to random
- #6686 - docker: Preset session listen host
- #6685 - toolchain: fix watch_file directive in .envrc
- #6681 - Allow to launch binaries manually
- #6680 - Update the logging to remove the offline peer error on heartbeat
- #6675 - Fix tokio stack overflow crash during indexing
- #6673 - tokio: Pin main loop on heap
- #6671 - indexer: Reduce on-chain rpc calls
- #6669 - Fix message API request bodies and session target acceptance
- #6668 - Do not purge peers with records fresher than 5 mins from the DB on restart
- #6667 - Update the docker-compose deployment .env.sample default configuration
- #6666 - Heartbeat improvements and configurability
- #6661 - Add default session listen host option
- #6657 - Early initialize lazy static metrics to prime them
- #6655 - Return backwards compatible configuration with 2.1.x versions
- #6651 - nix: Add patchelf step to cross-builds
- #6649 - Improve some Logs DB queries
- #6645 - Fix Fast-Sync CLI parameters and behavior when full re-sync is required
- #6644 - Fix bugs in log processing and fast-sync
- #6640 - Change load testing to use the websocket implementation
- #6637 - Properly remove Session from the list when it terminates spontaneously
- #6636 - Replace
ReaderStream
withAsyncStreamReader
in WS Session handler - #6633 - Fix TagBloomFilter behavior after updating the crate to 2.0
- #6632 - Fix websocket authentication
- #6630 - Remove ticket validation from the last hop
- #6628 -
Network::get
should retrieve peer even if it is ignored - #6624 - Add data counters to WS Session adapter and log them
- #6623 - Disable default
transport-quic
feature - #6622 - deps: Update libp2p to the 0.54.1
- #6621 - db: Add index to improve log_status queries
- #6619 - Add criterion benchmarks for crypto-packet crate
- #6618 - Enable explicit path routing feature
- #6614 - Remove single ticket redeem bound in AutoRedeem strategy
- #6612 - Add auto-redeem strategy changes missed in the merge-back
- #6609 - Add constants for session protocol and transport config
- #6607 - Use the quic-v1 multiaddress as a default for announcement
- #6604 - Improvements to 2.2.0-rc.1 ergonomics
- #6603 - Update renovate.json to remove the Dependency Dashboard issue
- #6602 - Fix redeem actions tests to run on Nightly
- #6601 - Update crate dependencies and tokio
- #6599 - Fix prometheus dependencies and sanitize metrics paths
- #6595 - Fix backwards compatibility with the 2.1.x
- #6594 - Fix obsolete commands in envrc
- #6590 - Bump the rust version to 1.82 and update library dependencies
- #6583 - Fix the network heartbeat behavior to be more robust and work with /node/peers
- #6578 - Add README section for the additional optional environment var based configuration
- #6576 - api: Add swagger-ui as API browser back as additional option
- #6563 - Fix heartbeat bug causing the heartbeat to terminate prematurely on the first result
- #6559 - Rework websocket to be compliant with session behavior of client creation
- #6558 - Handle rejected tickets without altering unredeemed metrics
- #6556 - Add test for fully interconnected cluster with placeholder
- #6550 - Improve logs to extract more information in a structured format
- #6549 - Enable Snapshot testing for RPC
- #6542 - Add support for the JSON format in the logger output
- #6540 - Add feature to support building hoprd node with quic-v1
- #6538 - Docs updates
- #6532 - Allow PeerId and Address in API calls
- #6531 - Batching of network segments in the Session protocol
- #6526 - Add check on safe module on start
- #6520 - Include provider url in info endpoint
- #6519 - Using different port on hopr-admin UI for compose deployment
- #6518 - Fix failing sync due to missing winning probability SC address
- #6513 - Add a instrumentation build for the tokio runtime
- #6512 - Do not use the nightly features for rustfmt
- #6511 - Add E2E tests for lowered winning probabilities
- #6508 - Update the toolchain and dependencies
- #6506 - Add a separate test for wireguard tunnel
- #6503 - Improve Session UDP tests
- #6501 - Add contract for winning probability and hopli command to interact with the new contract
- #6494 - Allow configurable winning probabilities
- #6492 - Fix failing unit tests
- #6486 - Ensure errors in Ping API are properly propagated
- #6481 - Session improvements
- #6478 - Update default strategy execution interval handling
- #6477 - Improvements to logging and safe code
- #6457 - Merge-back from 2.1.4 Saint Louis
- #6456 - Dependency updates 2024-08-16
HOPR - v2.1.5
HOPR - v2.1.4
Below there is a list with the contents of this release
⚡ Other
- #6444 - Modify info api endpoint to return last block before the update of checksum
- #6442 - Neglect tickets with lower index after redeeming & skip aggregating tickets with lower index than on channel
- #6438 - Properly initialize Prometheus metrics for ticket statistics
- #6437 - Change default minimum ticket value to 30 HOPR in auto redeeming
- #6433 - Remove tickets that are within an aggregated ticket prior to sending aggregation request