Skip to content

Releases: maidsafe/autonomi

2024.08.2.1 Release Candidate

20 Aug 13:43
Compare
Choose a tag to compare
Pre-release

2024-08-20

Binaries

  • faucet v0.4.32-rc.1
  • nat-detection v0.2.2-rc.1
  • node-launchpad v0.3.12-rc.1
  • safe v0.94.1-rc.1
  • safenode v0.110.1-rc.1
  • safenode-manager v0.10.2-rc.1
  • safenodemand v0.10.2-rc.1
  • safenode_rpc_client v0.6.27-rc.1
  • sn_auditor v0.2.4-rc.1

Merged Pull Requests

2024-07-23 #2001 -- chore: remove push triggers for release workflow [@jacderida]
2024-07-23 #2000 -- chore(node): increase bad node & bootstrap interval [@RolandSherwin]
2024-07-26 #1981 -- LocalFirst Swarm [@joshuef]
2024-07-29 #2006 -- refactor: remove some lazy_static deps; unused dep [@b-zee]
2024-07-29 #2008 -- feat(launchpad): user interface tweaks [@mazzi]
2024-07-29 #1997 -- feat(manager): optionally set the different ports when running local network [@RolandSherwin]
2024-07-29 #2009 -- chore(launchpad): popup crate and del unused code [@mazzi]
2024-07-29 #2005 -- chore(client): debug resend spend [@maqi]
2024-07-31 #2015 -- chore: correct logging of cash_note and confirmed_spend disk ops [@maqi]
2024-07-31 #2018 -- chore(cli): [#2014] explicitly show the uploaded file's address [@mickvandijke]
2024-07-31 #2017 -- fix(node): check whether already received an incoming payment [@maqi]
2024-07-31 #2016 -- chore(cli): [#2012] show download time per file [@mickvandijke]
2024-08-01 #2007 -- chore(node): trust a parent spend with majority [@maqi]
2024-08-02 #2020 -- chore(node): check confirmed_spend existence [@maqi]
2024-08-05 #2022 -- fix(ci): clean out target directory to save space [@RolandSherwin]
2024-08-05 #2003 -- chore(node): [#1999] panic on upnp event GatewayNotFound [@mickvandijke]
2024-08-05 #2021 -- feat(metrics): track the bad node count [@RolandSherwin]
2024-08-05 #2023 -- fix(node): terminate make_payment process during unrecoverable error [@maqi]
2024-08-06 #2024 -- docs: update readme about transfers [@grumbach]
2024-08-06 #2013 -- fix(manager): dynamic sleep interval during start and upgrade [@RolandSherwin]
2024-08-07 #2026 -- fix(network): add peer to blocklist only after informing it [@RolandSherwin]
2024-08-07 #2027 -- fix(node): avoid deserialise error cause a confirmed_spend to be non-exist [@maqi]
2024-08-07 #2029 -- fix(metrics): update current wallet balance after forwarding rewards [@RolandSherwin]
2024-08-07 #2028 -- refactor(network): remove some unused network events [@RolandSherwin]
2024-08-08 #2031 -- feat(network): expose bandwidth per transport protocol [@RolandSherwin]
2024-08-12 #2034 -- test: verification involving child key [@maqi]
2024-08-15 #2043 -- feat(node): prune unrelevant records if accumulated too many [@maqi]
2024-08-16 #2047 -- fix: save node registry on every upgrade [@jacderida]
2024-08-19 #2041 -- feat(launchpad): new layout sections and features [@mazzi]
2024-08-19 #2040 -- feat(metrics): export metadata via the metrics port [@RolandSherwin]

2024.08.1.3 Release Candidate

16 Aug 22:04
Compare
Choose a tag to compare
Pre-release

2024-08-16

Binaries

  • faucet v0.4.32-rc.3
  • nat-detection v0.2.2-rc.3
  • node-launchpad v0.3.12-rc.3
  • safe v0.94.1-rc.3
  • safenode v0.110.1-rc.3
  • safenode-manager v0.10.2-rc.3
  • safenodemand v0.10.2-rc.3
  • safenode_rpc_client v0.6.27-rc.3
  • sn_auditor v0.2.4-rc.3

Merged Pull Requests

2024-07-23 #1996 -- chore(cli): use Quick strategy during chunk upload

2024-07-23 #1988 -- refactor(network): reserver trace log level for tracking event stats

2024-07-23 #1995 -- chore: remove dcutr

2024-07-23 #2001 -- chore: remove push triggers for release workflow

2024-07-23 #2000 -- chore(node): increase bad node & bootstrap interval

2024-07-24 #1990 -- chore: implement new process in release workflow

2024-07-26 #1981 -- LocalFirst Swarm

2024-07-29 #2006 -- refactor: remove some lazy_static deps; unused dep

2024-07-29 #2008 -- feat(launchpad): user interface tweaks

2024-07-29 #1997 -- feat(manager): optionally set the different ports when running local network

2024-07-29 #2009 -- chore(launchpad): popup crate and del unused code

2024-07-29 #2005 -- chore(client): debug resend spend

2024-07-30 #2010 -- networking: Performance tweaks

2024-07-31 #2015 -- chore: correct logging of cash_note and confirmed_spend disk ops

2024-07-31 #2018 -- chore(cli): [#2014] explicitly show the uploaded file's address

2024-07-31 #2017 -- fix(node): check whether already received an incoming payment

2024-07-31 #2016 -- chore(cli): [#2012] show download time per file

2024-08-01 #2007 -- chore(node): trust a parent spend with majority

2024-08-05 #2021 -- feat(metrics): track the bad node count

2024-08-06 #2013 -- fix(manager): dynamic sleep interval during start and upgrade

2024-08-07 #2026 -- fix(network): add peer to blocklist only after informing it

2024-08-07 #2029 -- fix(metrics): update current wallet balance after forwarding rewards

2024-08-16 #2047 -- fix: save node registry on every upgrade

2024.08.1.2 Release Candidate

14 Aug 14:38
Compare
Choose a tag to compare
Pre-release

2024-08-14

Binaries

  • faucet v0.4.32-rc.2
  • nat-detection v0.2.2-rc.2
  • node-launchpad v0.3.12-rc.2
  • safe v0.94.1-rc.2
  • safenode v0.110.1-rc.2
  • safenode-manager v0.10.2-rc.2
  • safenodemand v0.10.2-rc.2
  • safenode_rpc_client v0.6.27-rc.2
  • sn_auditor v0.2.4-rc.2

Merged Pull Requests

2024-07-23 #1996 -- chore(cli): use Quick strategy during chunk upload

2024-07-23 #1988 -- refactor(network): reserver trace log level for tracking event stats

2024-07-23 #1995 -- chore: remove dcutr

2024-07-23 #2001 -- chore: remove push triggers for release workflow

2024-07-23 #2000 -- chore(node): increase bad node & bootstrap interval

2024-07-24 #1990 -- chore: implement new process in release workflow

2024-07-26 #1981 -- LocalFirst Swarm

2024-07-29 #2006 -- refactor: remove some lazy_static deps; unused dep

2024-07-29 #2008 -- feat(launchpad): user interface tweaks

2024-07-29 #1997 -- feat(manager): optionally set the different ports when running local network

2024-07-29 #2009 -- chore(launchpad): popup crate and del unused code

2024-07-29 #2005 -- chore(client): debug resend spend

2024-07-30 #2010 -- networking: Performance tweaks

2024-07-31 #2015 -- chore: correct logging of cash_note and confirmed_spend disk ops

2024-07-31 #2018 -- chore(cli): [#2014] explicitly show the uploaded file's address

2024-07-31 #2017 -- fix(node): check whether already received an incoming payment

2024-07-31 #2016 -- chore(cli): [#2012] show download time per file

2024-08-01 #2007 -- chore(node): trust a parent spend with majority

2024-08-05 #2021 -- feat(metrics): track the bad node count

2024-08-06 #2013 -- fix(manager): dynamic sleep interval during start and upgrade

2024-08-07 #2026 -- fix(network): add peer to blocklist only after informing it

2024-08-07 #2029 -- fix(metrics): update current wallet balance after forwarding rewards

2024.08.1.1 Release Candidate

02 Aug 21:23
Compare
Choose a tag to compare
Pre-release

2024-08-02

Binaries

  • faucet v0.4.32-rc.1
  • nat-detection v0.2.2-rc.1
  • node-launchpad v0.3.12-rc.1
  • safe v0.94.1-rc.1
  • safenode v0.110.1-rc.1
  • safenode-manager v0.10.2-rc.1
  • safenodemand v0.10.2-rc.1
  • safenode_rpc_client v0.6.27-rc.1
  • sn_auditor v0.2.4-rc.1

Merged Pull Requests

2024-07-23 #1996 -- chore(cli): use Quick strategy during chunk upload

2024-07-23 #1988 -- refactor(network): reserver trace log level for tracking event stats

2024-07-23 #1995 -- chore: remove dcutr

2024-07-23 #2001 -- chore: remove push triggers for release workflow

2024-07-23 #2000 -- chore(node): increase bad node & bootstrap interval

2024-07-24 #1990 -- chore: implement new process in release workflow

2024-07-26 #1981 -- LocalFirst Swarm

2024-07-29 #2006 -- refactor: remove some lazy_static deps; unused dep

2024-07-29 #2008 -- feat(launchpad): user interface tweaks

2024-07-29 #1997 -- feat(manager): optionally set the different ports when running local network

2024-07-29 #2009 -- chore(launchpad): popup crate and del unused code

2024-07-29 #2005 -- chore(client): debug resend spend

2024-07-30 #2010 -- networking: Performance tweaks

2024-07-31 #2015 -- chore: correct logging of cash_note and confirmed_spend disk ops

2024-07-31 #2018 -- chore(cli): [#2014] explicitly show the uploaded file's address

2024-07-31 #2017 -- fix(node): check whether already received an incoming payment

2024-07-31 #2016 -- chore(cli): [#2012] show download time per file

2024-08-01 #2007 -- chore(node): trust a parent spend with majority

2024.07.1.1

29 Jul 10:48
Compare
Choose a tag to compare

Binaries

  • faucet v0.4.31
  • nat-detection v0.2.1
  • node-launchpad v0.3.11
  • safe v0.94.0
  • safenode v0.110.0
  • safenode-manager v0.10.1
  • safenodemand v0.10.1
  • safenode_rpc_client v0.6.26
  • sn_auditor v0.2.3

🔦 Highlights

  • The introduction of a record-store cache has significantly reduced the node's disk IO. As a side
    effect, the CPU does less work, and performance improves. RAM usage has increased by around 25MB per
    node, but we view this as a reasonable trade off.
  • The node's relay server now supports more connections: when running with --home-network, up to
    256 will be supported, and otherwise, it will be 1024. Along with minor tweaks to utilize the
    relay server properly, this should hopefully result in less connections being dropped.
  • Reward forwarding is more robust.
  • Chunk verification is now probabilistic, which should reduce messaging. In combination with
    replication messages also being reduced, this should result in a bandwidth usage reduction of
    ~20%.
  • Replication messages are less frequent, reducing bandwidth by ~20% per node.
  • Bad nodes and nodes with a mismatched protocol are now added to a block list. This reduces the
    chance of a network interference and the impact of a bad node in the network.
  • For the time being, hole punching has been removed. It was causing handshake time outs, resulting
    in home nodes being less stable. It will be re-enabled in the future.
  • Wallet password encryption enhances security, and in the case of secret key leakage, prevents
    unauthorized access.
  • Native Apple Silicon (M-series) binaries have been added to our releases, meaning M-series Mac
    users do not have to rely on running Intel binaries with Rosetta.

Merged Pull Requests

2024-07-11 #1945 -- feat: double spend spam protection

2024-07-11 #1952 -- fix(auditor): create auditor directory if it doesn't exist

2024-07-11 #1951 -- test(spend_simulation): add more attacks

2024-07-11 #1953 -- chore/fix(resources): use more portable shebang

2024-07-12 #1959 -- refactor outdated conn removal

2024-07-12 #1964 -- refactor(cli)!: wallet address and wallet create changes

2024-07-15 #1946 -- docs(sn_client): Basic documentation

2024-07-15 #1966 -- fix(network): do not add bootstrap peer as relay candidate

2024-07-16 #1969 -- chore(network): force close connection if there is a protocol mistmatch

2024-07-16 #1972 -- feat(safenode_rpc_client): added --version flag

2024-07-17 #1973 -- Auditor supplement features

2024-07-17 #1975 -- feat(networking): remove self.close_group and checks there as unused

2024-07-18 #1976 -- chore(networking): make ChunkVerification probabalistic

2024-07-18 #1949 -- feat(wallet): wallet secret key file encryption

2024-07-18 #1977 -- Reduce replication msg processing

2024-07-18 #1983 -- fix(node): remove cn from disk and flush to confirmed_spends during forwarding

2024-07-18 #1980 -- feat(networking): add small record cache

2024-07-18 #1982 -- feat(network): implement blocklist behaviour

2024-07-18 #1984 -- chore(node): move sn_client to dev deps

2024-07-18 #1985 -- Fix Nano count disappearing from Launchpad after restart

2024-07-19 #1971 -- feat!: limit error surface

2024-07-19 #1986 -- Add native Apple Silicon binaries to the release artifacts

2024-07-19 #1955 -- feat(networking): relax relay limits

2024-07-24 #1990 -- chore: implement new process in release workflow

Detailed Changes

Network

Added
  • Protection against an attack allowing bad nodes or clients to shadow a spend (make it disappear)
    through spamming.
  • Nodes allow more relayed connections through them. Also, home nodes will relay through 4 nodes
    instead of 2. Without these changes, relays were denying new connections to home nodes, making them
    difficult to reach.
  • Auditor tracks forwarded payments using the default key.
  • Auditor tracks burnt spend attempts and only credits them once.
  • Auditor collects balance of UTXOs.
  • Added different attack types to the spend simulation test to ensure spend validation is solid.
  • Bad nodes and nodes with a mismatched protocol are now added to a block list. This reduces the
    chance of a network interference and the impact of a bad node in the network.
  • The introduction of a record-store cache has significantly reduced the node's disk IO. As a side
    effect, the CPU does less work, and performance improves. RAM usage has increased by around 25MB per
    node, but we view this as a reasonable trade off.
Changed
  • For the time being, hole punching has been removed. It was causing handshake time outs, resulting
    in home nodes being less stable. It will be re-enabled in the future.
  • Force connection closure if a peer is using a different protocol.
  • Reserve trace level logs for tracking event statistics. Now you can use SN_LOG=v to get more
    relevant logs without being overwhelmed by event handling stats.
  • Chunk verification is now probabilistic, which should reduce messaging. In combination with
    replication messages also being reduced, this should result in a bandwidth usage reduction of
    ~20%.
Fixed
  • During payment forwarding, CashNotes are removed from disk and confirmed spends are stored to
    disk. This is necessary for resolving burnt spend attempts for forwarded payments.
  • Fix a bug where the auditor was not storing data to disk because of a missing directory.
  • Bootstrap peers are not added as relay candidates as we do not want to overwhelm them.

Client

Added
  • Basic global documentation for the sn_client crate.
  • Option to encrypt the wallet private key with a password, in a file called
    main_secret_key.encrypted, inside the wallet directory.
  • Option to load a wallet from an encrypted secret-key file using a password.
  • The wallet create command provides a --password argument to encrypt the wallet.
  • The wallet create command provides a --no-password argument skip encryption.
  • The wallet create command provides a --no-replace argument to suppress a prompt to replace an
    existing wallet.
  • The wallet create command provides a --key argument to create a wallet from a hex-encoded
    private key.
  • The wallet create command provides a --derivation argument to set a derivation passphrase to
    be used with the mnemonic to create a new private key.
  • A new wallet encrypt command encrypts an existing wallet.
Changed
  • The wallet address command no longer creates a new wallet if no wallet exists.
  • The wallet create command creates a wallet using the account mnemonic instead of requiring a
    hex-encoded secret key.
  • The wallet create --key and --derivation arguments are mutually exclusive.

Launchpad

Fixed
  • The Total Nanos Earned stat no longer resets on restart.

RPC Client

Added
  • A --version argument shows the binary version

Other

Added
  • Native Apple Silicon (M-series) binaries have been added to our releases, meaning M-series Mac
    users do not have to rely on running Intel binaries with Rosetta.

sn_node-v0.109.0

08 Jul 18:32
Compare
Choose a tag to compare

Added

  • The node exposes more metrics, including its uptime, number of connected peers, number of peers in
    the routing table, and the number of open connections. These will help us more effectively
    diagnose user issues.

Changed

  • Communication between node and client is strictly limited through synchronised public keys. The
    current beta network allows the node and client to use different public keys, resulting in
    undefined behaviour and performance issues. This change mitigates some of those issues and we also
    expect it to prevent other double spend issues.
  • Reduced base traffic for nodes, resulting in better upload performance. This will result in better
    distribution of nanos, meaning users with a smaller number of nodes will be expected to receive
    nanos more often.

Fixed

  • In the case where a client retries a failed upload, they would re-send their payment. In a rare
    circumstance, the node would forward this reward for a second time too. This is fixed on the node.
  • Nodes are prevented from double spending under rare circumstances.
  • ARM builds are no longer prevented from connecting to the network.

sn_cli-v0.93.9

08 Jul 18:33
Compare
Choose a tag to compare
chore(release): stable 2024-07-08

sn_networking-v0.17.0
sn_peers_acquisition-v0.4.0
sn_client-v0.108.0
nat-detection-v0.2.0
sn_node-v0.109.0
sn-node-manager-v0.10.0
node-launchpad-v0.3.10
sn_build_info-v0.1.9
sn_registers-v0.3.15
sn_transfers-v0.18.8
sn_protocol-v0.17.5
sn_logging-v0.2.30
sn_auditor-v0.2.2
sn_cli-v0.93.9
sn_faucet-v0.4.30
sn_metrics-v0.1.10
sn_service_management-v0.3.8
sn_node_rpc_client-v0.6.25

sn_auditor-v0.2.2

08 Jul 18:33
Compare
Choose a tag to compare
chore(release): stable 2024-07-08

sn_networking-v0.17.0
sn_peers_acquisition-v0.4.0
sn_client-v0.108.0
nat-detection-v0.2.0
sn_node-v0.109.0
sn-node-manager-v0.10.0
node-launchpad-v0.3.10
sn_build_info-v0.1.9
sn_registers-v0.3.15
sn_transfers-v0.18.8
sn_protocol-v0.17.5
sn_logging-v0.2.30
sn_auditor-v0.2.2
sn_cli-v0.93.9
sn_faucet-v0.4.30
sn_metrics-v0.1.10
sn_service_management-v0.3.8
sn_node_rpc_client-v0.6.25

sn-node-manager-v0.10.0

08 Jul 18:34
Compare
Choose a tag to compare

Added

  • Global --debug and --trace arguments are provided. These will output debugging and trace-level
    logging, respectively, direct to stderr.

Changed

  • The mechanism used by the node manager to refresh its state is significantly changed to address
    issues that caused commands to hang for long periods of time. Now, when using commands like
    start, stop, and reset, users should no longer experience the commands taking excessively
    long to complete.
  • The nat-detection run command provides a default list of servers, meaning the --servers
    argument is now optional.

node-launchpad-v0.3.10

08 Jul 18:33
Compare
Choose a tag to compare

Added

  • Launchpad and node versions are displayed on the user interface.

Changed

  • The node manager change for refreshing its state also applies to the launchpad. Users should
    experience improvements in operations that appeared to be hanging but were actually just taking
    an excessive amount of time to complete.

Fixed

  • The correct primary storage will now be selected on Linux and macOS.