Skip to content

Releases: ethersphere/bee

v1.0.0

21 Jun 13:37
2572fa4
Compare
Choose a tag to compare

Release notes Bee v1.0.0

Hello world, bee 🐝

Breaking changes

  • The testnet networkID has changed to 10, making place for the mainnet to take networkID 1. In case you need to specify a custom network ID - please update the networkID in your configuration file.
  • Your node will start by default in testnet configuration. If you'd like to use bee on the mainnet please specify the --mainnet flag. These default configurations make sure that your nodes has the right network ID and the right bootnode settings.
  • Introduce non-minable overlay addresses, which makes it much harder and costly for node operators to choose their overlay, thereby improving the security of the Swarm network (#2108)

Improvements

  • Add a disclaimer on startup and in our README (#2147)
  • Increase the likelyhood that all chunks fall in their natural location by retrying the upload of those chunks from which we suspect they did not land in their natural location (#2049)
  • Making the push-sync protocol resilient against closest-peer malfunctioning (#2066)
  • Replicate chunks in the nearest neighborhood if our node is the closest to a chunk (#2115))
  • Protect the user against using a stamp too soon, by not allowing the usage of a postage batch for 10 blocks after it was purchased (#2063)
  • Change the global refreshment rate to 45% of the current refresh rate (#2142)
  • Improve the useability of postage stamps and content-management by adding additional information to the GET /stamps endpoint (#2051)
  • Optimize the storage space utilization (#2071)
  • Prevent the loss of postage batches, by reading information on postage batch creation from the chain (#2080)
  • Allow nodes to connect to other nodes that did not deploy a chequebook, thereby paving the way for zero-eth, zero-bzz and zero-xDAI entry to the network (#2102)
  • Ensure that the proper gas-limits are passed on xDAI by hard-coding the gas limits for that chain (#2102)
  • Improve the handling of blockchain-transactions (#1469)
  • Protect against overissuance of postage stamps and allow the transfer of part of the stamps under a postage batch (#1625)
  • Allow the price for bandwidth to fluctuate and deduct an initial amount from the first-received cheque from a peer (#1925)
  • Increase the resilience against churn by:
    • Speed up the build-up of a healthy Kademlia (#2028)
    • Delay the start-up of push sync and pull sync protocols (#2050)
  • Ensure the profitability and security of forwarder nodes by only letting originator nodes pay with cheques (#1870)
  • Several bug fixes and cleanups

v0.6.2

31 May 15:49
984dca0
Compare
Choose a tag to compare

Release notes Bee v0.6.2 🐝

Dear node operators,

After a week of observing our cluster, testing and flying with Bee v0.6.* in the wild, we present you the v0.6.2 release.

Thank you all for your patience and helping us with the real-life testing!

For questions and support, please join our Discord

Notable improvements over v0.6.0

  • Fix a panic that can happen when the statestore is closed (#1807)
  • Correctly decode and interpret the transaction configuration parameter (1810)
  • add gas price setting for deployment and initial deposit (#1812)
  • Be able to handle incorrect protocol messages in pullsync (#1851)
  • Revert updating to go 1.16 because one of our dependencies can't handle the newest Go version. Use go 1.15 instead #1855)
  • Disable the pull sync as a light node (#1883). Please note that this means that a light node cannot receive PSS message.
  • Limit number of light nodes that a full node accepts (#1898)
  • Shutdown the node when the connection with Infura times out (#1868)
  • Several performance optimizations across our protocols. Interested people can look up the git-log

Release notes Bee v0.6.0 🐝

The long-awaited v0.6.0 release is out. This release contains many new features and improvements, all focused on hardening your Bee node and the network.

Users should be aware that updating your node includes a migration path to ensure that there is no content stored by your node that does not have postage stamps. Users who pin content need to manually migrate their data.

The release also features a brand-new documentation and will soon be followed by releases of bee-js and the swarm-cli and bee-dashboard

New features

  • ⚠️ The light node feature enables you to use Swarm while requiring minimal resource consumption of your system. A light node can be used to upload and download content or receive PSS messages. It does not store chunks or forward traffic (#1458). Please take note that the default configuration of a node is to be a light node if you want to be a full node, you will have to explicitly mention this by configuring your node with the full-node flag.
  • ⚠️ Postage stamps enable the persistence of content based on a costly signal on the blockchain. By doing so, maximizing the utilization of the DISC (#1562). Please take note that adding a postage stamp is now compulsory on each upload. Migrating to v0.6.0 will remove all un-pinned chunks without stamps. If you are pinning content, please ensure this is backed up and unpin all content before updating. Instead of unpinning all content, you can also manually erase the <path_to_data-dir>/localstore. As part of this change, the db-capacity flag was changed to cache-capacity. Lastly, there exists a known issue that may cause the loss of locally pinned chunks when a node is not properly shut down
  • Bee nodes now give each other a limited amount of bandwidth allowance per time for free! This means that downloading from Swarm is possible without on-chain interaction if you stay within this limit. The current, monetary way, of settling bandwidth debt is provided for those nodes that want to use more bandwidth than is provided for free (#1711)
  • You can now instruct your Bee node to re-upload previously-pinned content by using the PATCH /bzz/{address} endpoint (#1705)
  • A brand-new ASCII-art Bee in the logs and README (thanks asciiart.eu) (#1761)

Hardening

  • ⚠️ Reduce the possibility of launching a DDOS attack on the network by requiring at least one interaction with Ethereum. This change was needed because the free bandwidth allowance feature now allows starting a node without a chequebook. Please take note that nodes which deployed their chequebook with bee v0.5.0 will have to be started with the --transaction TXHASH flag where TXHASH is any Ethereum transaction on goerli network sent from the bee node's Ethereum address. The hash of the chequebook deployment transaction can be used for this and can be looked up on etherscan. For nodes which first started with v0.5.1 or higher no action is necessary, as their chequebook deployment transaction will be automatically picked-up by the Bee node. (#1655)
  • To improve the reliability of receipts to know whether an upload was successful, each storer node now signs the storage receipts of chunks that belong to their neighborhood. The signed receipt is passed back and validated by all forwarder nodes and the uploader (#1431).
  • Make it more likely that nodes share the same view on who belongs to a neighborhood by redefining how Swarm calculates the depth--not allowing unsaturated bins outside the depth (#1553).
  • Prevent SWAP imbalances by defining a separate context for push-sync replication within the neighborhood (#1567).
  • Change the maximum depth of the network to 32, allowing 2^32 neighborhoods. (#1593)
  • Disconnect from peers that have a payment threshold that is too low. (#1635)
  • Apply rate limiting on peer gossiping. #1654
  • Bootnodes kick out old nodes when reaching a certain threshold, ensuring a reasonable resource consumption by the bootnodes (#1715)
  • No longer use the slock.it RPC endpoint by default. Instead, instruct the user to run their node or create an API endpoint with Infura (#1731).

Improvements to existing features

  • ⚠️ Removal of /files and /dirs endpoints. Individual files can now be uploaded on the /bzz endpoint (#1501).
  • ⚠️ /cashout endpoint updated to make it easier to manage uncashed cheques. If you programatically manage your uncashed cheques, be sure to update it (#1402).
  • The pinning API has been completely rewritten to expose basic operations over pinned content (#1566)
  • Improved handling of blockchain transactions (#1484), (#1487), (#1465)
  • The checksums are now signed by our GPG key. To validate the authenticity of your node: download the checksums, validate the signature and compare against the checksums of your version (#1581)
  • Allow the handling of non-standard, bee-specific headers via the browser through CORS preflight requests. (#1597)
  • Use the correct HTTP response code when creating a new resource (#1611)
  • Log welcome message on incoming connections (#1590)
  • Close the NAT manager on node shutdown. (#1622)
  • Update to go 1.16 (#1657)
  • The /topolgy endpoint in the debugAPI now exposes metrics, allowing you to know more about your peer connections (#1658)
  • Change the default initial deposit to 10000000000000000 PLUR (1BZZ) (#1657)
  • Improvements to feed-lookup algorithm (#1548)
  • Increase the default bin size to 8 (#1729)

Bugs

  • Improve consistency of addressbook by adding additional libp2p verifications. ([#1696])(#1696)
  • Several improvements to push sync to ensure a chunk is pushed to the neighborhood, even in face of errors via some routes (#1662)
  • Fix overflow bug in pull sync (#1609)
  • Print bee version to stdout instead of stderr. (#1660)

Efficiency improvements

  • Unneeded pull syncing in the network is reduced by only syncing within the nearest-neighborhood (#1537)
  • Improve localstore lock contention when putting single chunks that already exist in the store. This prevents acquiring the lock for already existing chunks (#1568)
  • Reduced the cost to deploy a chequebook by a factor of 10, by utilizing a proxy pattern. This change requires bee-clef to be v0.4.12 or higher if you don't have a chequebook deployed yet (#1539).
  • Build up a healthy topology faster by establishing connections concurrently. [(#1647)]...
Read more

v0.6.1

22 May 09:52
79ad7f0
Compare
Choose a tag to compare
v0.6.1 Pre-release
Pre-release

Release notes Bee v0.6.1 🐝

⚠️ Bee v0.6.1 contains a few important improvements over v0.6.0, but is not stable. Node operators are advised to continue operating v0.5.3 until further notice in our Discord channel

Release notes Bee v0.6.0 🐝

The long-awaited v0.6.0 release is out. This release contains many new features and improvements, all focused on hardening your Bee node and the network.

Users should be aware that updating your node includes a migration path to ensure that there is no content stored by your node that does not have postage stamps. Users who pin content need to manually migrate their data.

The release also features a brand-new documentation and will soon be followed by releases of bee-js and the swarm-cli and bee-dashboard

New features

  • ⚠️ The light node feature enables you to use Swarm while requiring minimal resource consumption of your system. A light node can be used to upload and download content or receive PSS messages. It does not store chunks or forward traffic (#1458). Please take note that the default configuration of a node is to be a light node if you want to be a full node, you will have to explicitly mention this by configuring your node with the full-node flag.
  • ⚠️ Postage stamps enable the persistence of content based on a costly signal on the blockchain. By doing so, maximizing the utilization of the DISC (#1562). Please take note that adding a postage stamp is now compulsory on each upload. Migrating to v0.6.0 will remove all un-pinned chunks without stamps. If you are pinning content, please ensure this is backed up and unpin all content before updating. Instead of unpinning all content, you can also manually erase the <path_to_data-dir>/localstore. As part of this change, the db-capacity flag was changed to cache-capacity. Lastly, there exists a known issue that may cause the loss of locally pinned chunks when a node is not properly shut down
  • Bee nodes now give each other a limited amount of bandwidth allowance per time for free! This means that downloading from Swarm is possible without on-chain interaction if you stay within this limit. The current, monetary way, of settling bandwidth debt is provided for those nodes that want to use more bandwidth than is provided for free (#1711)
  • You can now instruct your Bee node to re-upload previously-pinned content by using the PATCH /bzz/{address} endpoint (#1705)
  • A brand-new ASCII-art Bee in the logs and README (thanks asciiart.eu) (#1761)

Hardening

  • ⚠️ Reduce the possibility of launching a DDOS attack on the network by requiring at least one interaction with Ethereum. This change was needed because the free bandwidth allowance feature now allows starting a node without a chequebook. Please take note that nodes which deployed their chequebook with bee v0.5.0 will have to be started with the --transaction TXHASH flag where TXHASH is any Ethereum transaction on goerli network sent from the bee node's Ethereum address. The hash of the chequebook deployment transaction can be used for this and can be looked up on etherscan. For nodes which first started with v0.5.1 or higher no action is necessary, as their chequebook deployment transaction will be automatically picked-up by the Bee node. (#1655)
  • To improve the reliability of receipts to know whether an upload was successful, each storer node now signs the storage receipts of chunks that belong to their neighborhood. The signed receipt is passed back and validated by all forwarder nodes and the uploader (#1431).
  • Make it more likely that nodes share the same view on who belongs to a neighborhood by redefining how Swarm calculates the depth--not allowing unsaturated bins outside the depth (#1553).
  • Prevent SWAP imbalances by defining a separate context for push-sync replication within the neighborhood (#1567).
  • Change the maximum depth of the network to 32, allowing 2^32 neighborhoods. (#1593)
  • Disconnect from peers that have a payment threshold that is too low. (#1635)
  • Apply rate limiting on peer gossiping. #1654
  • Bootnodes kick out old nodes when reaching a certain threshold, ensuring a reasonable resource consumption by the bootnodes (#1715)
  • No longer use the slock.it RPC endpoint by default. Instead, instruct the user to run their node or create an API endpoint with Infura (#1731).

Improvements to existing features

  • ⚠️ Removal of /files and /dirs endpoints. Individual files can now be uploaded on the /bzz endpoint (#1501).
  • ⚠️ /cashout endpoint updated to make it easier to manage uncashed cheques. If you programatically manage your uncashed cheques, be sure to update it (#1402).
  • The pinning API has been completely rewritten to expose basic operations over pinned content (#1566)
  • Improved handling of blockchain transactions (#1484), (#1487), (#1465)
  • The checksums are now signed by our GPG key. To validate the authenticity of your node: download the checksums, validate the signature and compare against the checksums of your version (#1581)
  • Allow the handling of non-standard, bee-specific headers via the browser through CORS preflight requests. (#1597)
  • Use the correct HTTP response code when creating a new resource (#1611)
  • Log welcome message on incoming connections (#1590)
  • Close the NAT manager on node shutdown. (#1622)
  • Update to go 1.16 (#1657)
  • The /topolgy endpoint in the debugAPI now exposes metrics, allowing you to know more about your peer connections (#1658)
  • Change the default initial deposit to 10000000000000000 PLUR (1BZZ) (#1657)
  • Improvements to feed-lookup algorithm (#1548)
  • Increase the default bin size to 8 (#1729)

Bugs

  • Improve consistency of addressbook by adding additional libp2p verifications. ([#1696])(#1696)
  • Several improvements to push sync to ensure a chunk is pushed to the neighborhood, even in face of errors via some routes (#1662)
  • Fix overflow bug in pull sync (#1609)
  • Print bee version to stdout instead of stderr. (#1660)

Efficiency improvements

  • Unneeded pull syncing in the network is reduced by only syncing within the nearest-neighborhood (#1537)
  • Improve localstore lock contention when putting single chunks that already exist in the store. This prevents acquiring the lock for already existing chunks (#1568)
  • Reduced the cost to deploy a chequebook by a factor of 10, by utilizing a proxy pattern. This change requires bee-clef to be v0.4.12 or higher if you don't have a chequebook deployed yet (#1539).
  • Build up a healthy topology faster by establishing connections concurrently. (#1647)
  • Reduce resource consumption (IO/CPU/memory) on live pull syncing with multiple peers (#1683)
  • Improve the efficiency of retrieval and push sync by doing settlement asynchronously (#1578)

Misc

  • Database export/import functionalities are now available to facilitate integration testing and enable a smooth future migration path (#1580)
  • Allow configuration of how many Ethereum calls are done by exposing the block-time configuration parameter. Adjustment of this parameter is not advised on the Goerli network (1697)

Docker images

  • docker pull ethersphere/bee:0
  • docker pull ethersphere/bee:0.6
  • docker pull ethersphere/bee:0.6.1
  • docker pull ethersphere/bee:latest
  • docker pull ethersphere/bee:beta
  • docker pull quay.io/ethersphere/bee:0
  • docker pull quay.io/ethersphere/bee:0.6
  • docker pull quay.io/ethersphere/bee:0.6.1
  • docker pull quay.io/ethersphere/bee:latest
  • docker pull quay.io/ethersphere/bee:beta

v0.6.0

20 May 14:52
67cc8f2
Compare
Choose a tag to compare

Release notes Bee v0.6.0 🐝

The long-awaited v0.6.0 release is out. This release contains many new features and improvements, all focused on hardening your Bee node and the network.

Users should be aware that updating your node includes a migration path to ensure that there is no content stored by your node that does not have postage stamps. Users who pin content need to manually migrate their data.

The release also features a brand-new documentation and will soon be followed by releases of bee-js and the swarm-cli and bee-dashboard

New features

  • ⚠️ The light node feature enables you to use Swarm while requiring minimal resource consumption of your system. A light node can be used to upload and download content or receive PSS messages. It does not store chunks or forward traffic (#1458). Please take note that the default configuration of a node is to be a light node if you want to be a full node, you will have to explicitly mention this by configuring your node with the full-node flag.
  • ⚠️ Postage stamps enable the persistence of content based on a costly signal on the blockchain. By doing so, maximizing the utilization of the DISC (#1562). Please take note that adding a postage stamp is now compulsory on each upload. Migrating to v0.6.0 will remove all un-pinned chunks without stamps. If you are pinning content, please ensure this is backed up and unpin all content before updating. Instead of unpinning all content, you can also manually erase the <path_to_data-dir>/localstore. As part of this change, the db-capacity flag was changed to cache-capacity. Lastly, there exists a known issue that may cause the loss of locally pinned chunks when a node is not properly shut down
  • Bee nodes now give each other a limited amount of bandwidth allowance per time for free! This means that downloading from Swarm is possible without on-chain interaction if you stay within this limit. The current, monetary way, of settling bandwidth debt is provided for those nodes that want to use more bandwidth than is provided for free (#1711)
  • You can now instruct your Bee node to re-upload previously-pinned content by using the PATCH /bzz/{address} endpoint (#1705)
  • A brand-new ASCII-art Bee in the logs and README (thanks asciiart.eu) (#1761)

Hardening

  • ⚠️ Reduce the possibility of launching a DDOS attack on the network by requiring at least one interaction with Ethereum. This change was needed because the free bandwidth allowance feature now allows starting a node without a chequebook. Please take note that nodes which deployed their chequebook with bee v0.5.0 will have to be started with the --transaction TXHASH flag where TXHASH is any Ethereum transaction on goerli network sent from the bee node's Ethereum address. The hash of the chequebook deployment transaction can be used for this and can be looked up on etherscan. For nodes which first started with v0.5.1 or higher no action is necessary, as their chequebook deployment transaction will be automatically picked-up by the Bee node. (#1655)
  • To improve the reliability of receipts to know whether an upload was successful, each storer node now signs the storage receipts of chunks that belong to their neighborhood. The signed receipt is passed back and validated by all forwarder nodes and the uploader (#1431).
  • Make it more likely that nodes share the same view on who belongs to a neighborhood by redefining how Swarm calculates the depth--not allowing unsaturated bins outside the depth (#1553).
  • Prevent SWAP imbalances by defining a separate context for push-sync replication within the neighborhood (#1567).
  • Change the maximum depth of the network to 32, allowing 2^32 neighborhoods. (#1593)
  • Disconnect from peers that have a payment threshold that is too low. (#1635)
  • Apply rate limiting on peer gossiping. #1654
  • Bootnodes kick out old nodes when reaching a certain threshold, ensuring a reasonable resource consumption by the bootnodes (#1715)
  • No longer use the slock.it RPC endpoint by default. Instead, instruct the user to run their node or create an API endpoint with Infura (#1731).

Improvements to existing features

  • ⚠️ Removal of /files and /dirs endpoints. Individual files can now be uploaded on the /bzz endpoint (#1501).
  • ⚠️ /cashout endpoint updated to make it easier to manage uncashed cheques. If you programatically manage your uncashed cheques, be sure to update it (#1402).
  • The pinning API has been completely rewritten to expose basic operations over pinned content (#1566)
  • Improved handling of blockchain transactions (#1484), (#1487), (#1465)
  • The checksums are now signed by our GPG key. To validate the authenticity of your node: download the checksums, validate the signature and compare against the checksums of your version (#1581)
  • Allow the handling of non-standard, bee-specific headers via the browser through CORS preflight requests. (#1597)
  • Use the correct HTTP response code when creating a new resource (#1611)
  • Log welcome message on incoming connections (#1590)
  • Close the NAT manager on node shutdown. (#1622)
  • Update to go 1.16 (#1657)
  • The /topolgy endpoint in the debugAPI now exposes metrics, allowing you to know more about your peer connections (#1658)
  • Change the default initial deposit to 10000000000000000 PLUR (1BZZ) (#1657)
  • Improvements to feed-lookup algorithm (#1548)
  • Increase the default bin size to 8 (#1729)

Bugs

  • Improve consistency of addressbook by adding additional libp2p verifications. ([#1696])(#1696)
  • Several improvements to push sync to ensure a chunk is pushed to the neighborhood, even in face of errors via some routes (#1662)
  • Fix overflow bug in pull sync (#1609)
  • Print bee version to stdout instead of stderr. (#1660)

Efficiency improvements

  • Unneeded pull syncing in the network is reduced by only syncing within the nearest-neighborhood (#1537)
  • Improve localstore lock contention when putting single chunks that already exist in the store. This prevents acquiring the lock for already existing chunks (#1568)
  • Reduced the cost to deploy a chequebook by a factor of 10, by utilizing a proxy pattern. This change requires bee-clef to be v0.4.12 or higher if you don't have a chequebook deployed yet (#1539).
  • Build up a healthy topology faster by establishing connections concurrently. (#1647)
  • Reduce resource consumption (IO/CPU/memory) on live pull syncing with multiple peers (#1683)
  • Improve the efficiency of retrieval and push sync by doing settlement asynchronously (#1578)

Misc

  • Database export/import functionalities are now available to facilitate integration testing and enable a smooth future migration path (#1580)
  • Allow configuration of how many Ethereum calls are done by exposing the block-time configuration parameter. Adjustment of this parameter is not advised on the Goerli network (1697)

Docker images

  • docker pull ethersphere/bee:0
  • docker pull ethersphere/bee:0.6
  • docker pull ethersphere/bee:0.6.0
  • docker pull ethersphere/bee:latest
  • docker pull ethersphere/bee:beta
  • docker pull quay.io/ethersphere/bee:0
  • docker pull quay.io/ethersphere/bee:0.6
  • docker pull quay.io/ethersphere/bee:0.6.0
  • docker pull quay.io/ethersphere/bee:latest
  • docker pull quay.io/ethersphere/bee:beta

v0.5.3

23 Mar 08:18
acbd0e2
Compare
Choose a tag to compare

Release notes v0.5.3

Dear Swarm supporters and Bee users, over the past few weeks we've been looking into various issues that have been reported by the community in an effort to improve the user experience and resource usage of bee. This release has plenty of improvements to performance, node configurability, metrics as well as the usual refactorings and cleanups. We'd like to thank all of you for your significant contributions, be they with bug reports, PRs of all sorts, debugging profiles and just test driving version candidates on our Discord channels! We're humbled by your engagement and we hope you enjoy this latest release <3

Notes

We've exposed some of the underlying leveldb configuration parameters through new CLI flags of bee. You can now tweak your setup without having to rebuild the image every time you'd like to adjust a parameter. Important to note: since the Swarm working set is over 20 gigabytes of data, leveldb has to have enough open file limit allowance for it not to be overburdened by continuous opening and closing of file handles to retrieve blocks.
We therefore recommend node operators to set the number of open file limit to at least 7200 open files. We did not set this value by default as this might be out of bound for certain setups and operating systems, resulting in a setup which is broken by default, however you are highly encouraged to set this number anywhere between 7200-12000.
If you experience high I/O you can also toggle the disable seeks compaction option. Block cache and write buffer are also adjustable, and you are free to experiment with them and see what works best for your setup.

Features:

  • Allow specifying an account for clef, enabling one clef instance to control multiple bee instances (#1313)
  • Prevent users from starting with a different overlay address (#1377)
  • Bootstrap Debug API in two phases to allow health checks response while node is still starting (#1358, #1370)
  • Expose levelDB configuration parameters through CLI flags (#1454)
  • Increase default cashout gas limit to 300K and allow gas price and gas limit to be specified through the cash debug API with headers (#1455)

Performance improvements

  • Limit the number of kademlia connections per bin to 16 outside of depth (#1352) and (#1399)
  • Coalesce pull sync writes to localstore (#1386)
  • Improve context handling in push sync (#1416)
  • Increase batch size for garbage collection (#1424)
  • Reduce number of pusher concurrent jobs (#1430)
  • Improved localstore lock contention by reducing GC critical section (#1435):
  • Utilize falling edge detection to await notifying subscriptions when there is a write to the database (#1484)
  • Balanced bins in Kademlia (#1207, #1453)

General improvements

  • Improvements to logging (#1360, #1379)
  • Don't accept incoming connections before the node is online (#1390)
  • Add expiration to connection attempt to bootnode (#1407)
  • Fix a security issue with CORS headers (#1421)
  • Fix panic by returning previously swallowed error (#1426)
  • Fix typo in bee-get-addr for homebrew (#1460)
  • Refactor content-addressed chunks and single-owner chunks (#1363) (#1394)
  • Remove abigen-generated bindings (#1361, #1360, #1362)
  • Added metrics to a bunch of places and fixed how we collect metrics at some (#1373, #1410, #1417, #1427, #1446, #1373)

v0.5.2

01 Mar 10:40
4a598b6
Compare
Choose a tag to compare

Release notes 0.5.2

The 0.5.2 release includes two essential patches

  • Disk I/O is reduced by configuring LevelDB more efficiently (#1339)
  • Set the payment-threshold field as a copy, instead of a reference (#1329)

There was one minor patch, making it possible for MacOS users who use brew to update their bee node (#1334)

Lastly, the deploy command was added to bee. This command deploys a chequebook if needed, thus reducing the time for the main service to start up and allowing bee to start in environments which have strict requirements on boot-up time (such as Windows) (#1314)

Docker images

  • docker pull ethersphere/bee:0
  • docker pull ethersphere/bee:0.5
  • docker pull ethersphere/bee:0.5.2
  • docker pull ethersphere/bee:latest
  • docker pull ethersphere/bee:beta

v0.5.1

24 Feb 11:03
65ec2d0
Compare
Choose a tag to compare

Release notes

This release is mostly characterized by bug fixes 🐛, but also includes some minor new features 🎉.

FEATURES 🎉:

  • CORS is now enabled on the debugAPI, allowing application developers to use the endpoints in the debugAPI (#1288)
  • ARM support for dockerized bee, allowing easy installation of bee on Raspberri Pi! (#1315)
  • allow DNS entry inside nat-addr option to enable usage of dynamic DNS (#1278)
  • Most packages in the bee code now include go.doc documentation (#1152). Have a look at go.doc
  • The standard configuration file for bee package managers was updated, now enabling the debuAPI by default, using the slock.it rpc endpoint for swap-endpoint updating the default values to be in line with the new defaults of the bee node and enabling the clef-signer by default. (#1230, #1327) Note: we reccomend setting the swap-endpoint to an endpoint which you maintain yourself.

BUG FIXES 🐛:

  • The feeds feature now works (#1259, #1246)
  • A memory leak was fixed by better handling of streams in the libp2p networking package (#1282, #1290)
  • Upon loading the statstore, bee now attempts to repair a corrupted state (#1253)
  • The bee-get-addr command now directs the user to the bzzaar (#1228)
  • The hasher package now correctly handles wrapping chunks in the deeper levels (#1267)
  • On updating the bee package in homebrew, the password does not anymore automatically reset (#1231).
  • We improved the logic on how we are sending transactions to the blockchain, making it less likely that a transaction will get stuck and reducing the burden on the connected Ethereum node (#1266, #1308, #1310)
  • The bee node does not anymore accept two SOC's with the same address, preventing the user from corrupting his private address space in Swarm (#1256)
  • Previously deleted tags are not anymore reinserted in the database when the node restarts (#1255)

Docker images

  • docker pull ethersphere/bee:0
  • docker pull ethersphere/bee:0.5
  • docker pull ethersphere/bee:0.5.1
  • docker pull ethersphere/bee:latest
  • docker pull ethersphere/bee:beta

v0.5.0

09 Feb 07:41
bd14a67
Compare
Choose a tag to compare

Release notes v0.5.0

This Bee release is a breaking release. We kindly ask all node operators to update their nodes as soon as possible to ensure continuity of the network.

Breaking changes:

  • A new testnet token is deployed and used by the node. This redeployment happened to facilitate integration with the new Bzzaar and means that new nodes won't connect to old nodes.
  • The default values for any token-related configuration has changed since the new gBZZ token has 16 decimals instead of zero. If you start Bee with a custom configuration, please ensure that you base your configuration on the right default values.
  • The handshake protocol version was updated from 1 to 2 and the signed payload is now prefixed with bee-handshake so that the security properties of the signing module can be improved. You will be seeing incompatible stream: protocol not supported error messages in your terminal output until all nodes in the network have been upgraded.
  • the /chunks endpoint has two notable breaking changes: i) it will only accept content-addressed chunk uploads, and ii) it does not require a precalculated BMT hash in order to upload a chunk. The node will calculate the BMT hash for the given span and chunk content, and will return the BMT hash in the response. For uploading single-owner chunks, please refer to the /soc endpoint documentation in our OpenAPI spec.

Non-breaking changes/additions:

  • Bee now supports swarm feeds. You can now use feeds from your ENS entry and have automatic feed indirection using the /bzz endpoint.
  • We made it easier to follow the progress of your upload by revamping tags.
  • The pushsync protocol is refactored and we worked out some rough edges. This improves protocol resilience.
  • Tags will no longer be auto-generated on the /chunks endpoint. Please create your custom tag and attach it to all chunks that belong to a single upload.
  • We added the /blocklist debugAPI endpoint which shows what peers are banned from interacting with your node.
  • The boot-up sequence now detects when you connect to an Ethereum node that is not synced and pauses the Bee node until the Ethereum node is synced.
  • The boot-up sequence now waits for bee-clef to boot up instead of immediately returning an error.
  • We improved the observability of the retrieval protocol with better metrics.
  • We improved the observability of the libp2p networking stack by adding metrics.
  • We added metrics to track the availableBalance, which makes it possible to programmatically create warnings when your node running out of token balance.
  • The retrieval protocol now sends preemptive retrieve requests when a certain peer appears to be slow, resulting in improved resilience of the protocol.
  • The logs are improved to enhance understanding of what the node is doing.
  • The default address for IPv6 was changed to be aligned with the default address of IPv4.

v0.4.2

20 Jan 09:34
dd6aa73
Compare
Choose a tag to compare

Release notes

This release of Bee adds the following features and improvements:

  • Chunks are fetched from the network when you attempt to pin content that is not available locally. Please note that this operation should be regarded as a fall back; the recommended use is to ensure that the content is available in your localstore and only after that do the pin operation.
  • Non-encrypted content which is uploaded via the dirs endpoint are now idempotent, meaning that uploading the same content twice will result in the same Swarm hash
  • The Bee node can now write logs to the Windows Event Log
  • Your node's version will be from now on printed on startup
  • Push sync metrics are simplified to facilitate better visibility on what happens during content-upload

v0.4.1

15 Dec 13:49
4b98b68
Compare
Choose a tag to compare

Release notes

This release contains 3 essential improvements to the Bee:

  • Increased reliability of upload and download through fixing an inconsistency in the way we maintain the addressbook of peer connections and cleaning the file path when uploading a directory
  • Added support for docker compose, which creates an app container for Bee and Bee-clef
  • Improved configuration of ENS, now allowing you to load a custom ens contract on any EVM chain which complies with the ENS interface.