Skip to content

Releases: ethersphere/bee

v1.5.1

07 Apr 13:49
Compare
Choose a tag to compare

This is a hotfix release over v1.5.0 version, which was released a few weeks back. While testing the release we fixed a few critical issues. A combination of these fixes, the sharky changes and the way we run some of our automated tests, we found an interesting corner case which led to a data race while downloading files from the node. This particular problem will be seen if we overutilise a postage stamp for uploading data and the nodes could parallely be serving data while new data is being uploaded with the same stamp. This has been fixed now and all users are urged to upgrade to the latest version as soon as possible.

Bugfixes

e0d56b4 Add extra validation in netstore while retrieving chunks locally. Fallback to retrieving from network if data is not valid.
0b8d10b Ensure correctnes of chunk data from localstore for parallel get/put operations.

For a full PR rundown please consult the v1.5.1 milestone.

v1.5.0

21 Mar 11:49
dda5606
Compare
Choose a tag to compare

The Bee team is happy to announce the latest release v1.5.0. This release comes with major changes to the way the bee node stores data locally.

We are proud to announce the introduction of sharky. Nodes upgrading from the older version will have to perform a migration to the new storage format. With sharky, the bee node will store chunks and indexes in separate storages. The indexes will be stored in levelDB and the chunks will be stored in sharky. Due to the drastic reduction in the size of levelDB, the database operations on indexes will be significantly faster. Also, with sharky, retrieving chunks will be optimized and hence we should see improvement in the overall performance and usability of the node. This change is not backward-compatible, so after the migration, the local storage will only work with v1.5.0 and up.

Along with the changes in storage, we are also including some other small features and bugfixes.

Hardening

  • cc80f74 Allow duplicate handshakes (#2794)
  • e46af6c Use testing.TempDir to create temporary test directories (#2790)
  • 4ce3f7d Stamps endpoint amount value OpenAPI specification (#2817)
  • 046c5e8 Introduce timeout for all make and beekeeper runs (#2811)
  • d21bf5b Add test to validate max input stream behaviour in libp2p (#2809)

New features

  • ebe988e Sharky store for fix-length blobs (#2685)
  • 66f0799 Start bee node without a connected chain backend. This feature is still experimental and it will be completed by the next release. (#2783)
  • 7849e33 bcrypt command to generate or validate bcrypt hashes (#2788)
  • 0b77fa6 Security role inheritance (#2808)

Bugfixes

  • dcc07c4 Fix to return an empty array instead of null in API responses (#2821)

For a full PR rundown please consult the v1.5.0 milestone.

v1.4.3

08 Feb 19:06
9546fed
Compare
Choose a tag to compare

This is a hotfix release over the last v1.4.2 release. We've identified certain issues relating to libp2p configuration in addition to a protocol stream leak and have therefore deployed a quick fix to alleviate the issues. You are strongly advised to update your nodes as soon as possible.

Bugfixes

Hardening

  • 5d1bcf2 fix: revert libp2p update and increase config limits (#2799)

You can find the PR rundown here

v1.4.2

08 Feb 01:59
2a4574a
Compare
Choose a tag to compare

This latest release is our first release for this year. We've been working on solving problems observed on the mainnet and we've shipped plenty of bugfixes with this version. Stay tuned for our upcoming releases as we pick up the pace of regular updates.

Hardening

  • increase kademlia minimum neighborhood size (#2772)
  • avoid peer pruning while peer is blocklisted. this caused peers to disappear from the known peers list prematurely (#2780)
  • refine chainsyncer logic to be less aggressive (#2773)
  • bump base docker image (#2745)
  • don't pullsync on bootnodes (#2733)
  • skip push to peer even if the trace was successful (#2731)

New features

  • diplay total network upper bound commitment towards batches in the reserve state endpoint (#2767)
  • allow swap without chequebook - you can now start your node with no chequebook using the chequebook-enable flag. while you will be able to receive cheques, you'll only have time-based settlements at your disposal for node throughput limits (#2236, #2732)

Bugfixes

  • fix a severe bookkeeping bug in localstore that resulted in a corrupt reserve size (#2735)
  • eager gc candidate collection in localstore fixes an edge case where the last batch would never be done due to insufficient amount of candidates collected (#2779)
  • remove sync.Once on reachability status in kademlia since libp2p apparently takes multiple status updates to zero in on the correct connectivity status (#2774)
  • update libp2p version (#2775)
  • don't share statestore iterator slice (#2747)
  • fix a possible edge case involving naked write in retrieval protocol (#2729)
  • expose Decompressed-Content-Length header (#2786)

For a full PR rundown please consult the github milestone.

v1.4.1

08 Dec 07:53
238867f
Compare
Choose a tag to compare

Dear community and friends, the Bee team is proud to announce the latest release v1.4.1.

Don't let the meager semver patch bump mislead you; this version comes packed with a ton of goodies to simmer in and absorb in the upcoming holiday season!

Apart from further improvements to the overall network experience, we've been working on a lot of protocol hardenings and performance improvements, as well as new role-based API usage policies, direct uploads (more below) and support for Ethereum V3 keys. Some changes to time-based settlements have been made targeting light nodes, so that their usage allowance is congruent with the current observed performance of the mainnet.

You might recognise that the Bee repository's approachability has improved in several aspects. The team has been working on aligning and publishing a concrete style guide to communicate how we write Go code. This should allow for easier developer onboarding and reduce PR friction in the future. There's also been significant tooling contributions with new linters and a further alignment of linter settings to the style guide. We've also published versioning policies for Bee and Bee's APIs.

As always we would like to cordially thank our amazing community and the various teams that have been involved in this release!

Breaking changes

  • Time-based settlements now enforce 10% of the observed mainnet performance for light nodes. This means that for a better performance, light nodes will have to issue cheques earlier than full nodes (please note the breaking configuration flag rename from payment-tolerance to payment-tolerance-percent and payment-early to payment-early-percent!) (#2651, #2629, #2639, #2621, #2650)
  • The Bee node will now create an Eth V3 compatible key by default (applies to new keys only!) (#2711)

Hardening

  • Kademlia balancing has been improved (#2677)
  • Push-sync protocol will now attempt a preemptive retry based on mainnet observed performance (#2680, #2707)
  • Push-sync storer node forwarder replication won't be retried on stamp error (#2694)
  • Push-sync forwarding persistence has been changed to be non-blocking. This circumvents protocol latencies induced by local storage latencies on forwarders (#2664)

New features

  • We've introduced a restricted API feature to allow for security policies and security best practices to emerge for node operators and dapp developers. Since the Bee node controls real-world tokens, we've added this extra security layer to allow users to enforce different levels of allowed access to node functionality. While this is an experimental feature and we expect its design might change, we encourage users to start experimenting with it and giving us feedback about the matter at hand, due to the fact that this layer of extra security is not only crucial for user safety, but also for the emergence of new services that could utilise the different APIs in innovative ways. Our long term ambitions are that this becomes the default way of using the Bee API suite, and the both the normal and Debug API would be fused into just one API, in which different access levels are given to different API consumers (and can be revoked easily). A blog post including a tutorial will be published on our Medium account in the upcoming days, stay tuned! (#2400, #2659, #2660)
  • The Bee node now supports loading Ethereum V3 key files (#2710)
  • The API now supports direct uploads. This means you can have direct feedback for your uploads with backpressure on the HTTP upload by simply adding a new header to the request (Swarm-Deferred-Upload: false). When specifying this header, your upload will be synced to the network by the time you receive the HTTP response containing the content-addressed hash from the API. In this way, you are able to directly monitor the upload and does not necessitate polling any tag object as of such (#2703, #2620)
  • Added a new /node endpoint to the debug API, so that API consumers could know the operation mode of the node concretely instead of guessing (#2649)

Bugfixes

  • Don't greylist own overlay on self verification (#2688)
  • Fixed CORS not passing User-Agent (#2684)
  • Added a retry for transaction receipt with delay due to a very tight loop (#2667)
  • Fixed a bug where a tag was unintentionally created when the stamp provided was wrong or unusable in /bytes upload (#2673)

Performance improvements

  • Retrievals now execute a faster preemptive retry according to a 90th percentile of successful results we've been seeing on the mainnet (#2719)
  • The postage listener will sync postage stamps in larger batches, which will significantly decrease the blockchain backend call burden (#2641)
  • Netstore will now write the chunks asynchronously to disk. This means that chunks would be propagated faster to the callers (joiner, API) (#2665)
  • Puller deletes old cursors on disconnect (#2630)

For a full PR rundown please consult the v1.4.1 milestone.

Docker images

  • docker pull ethersphere/bee:1
  • docker pull ethersphere/bee:1.4
  • docker pull ethersphere/bee:1.4.1
  • docker pull ethersphere/bee:stable
  • docker pull quay.io/ethersphere/bee:1
  • docker pull quay.io/ethersphere/bee:1.4
  • docker pull quay.io/ethersphere/bee:1.4.1
  • docker pull quay.io/ethersphere/bee:stable
  • docker pull ethersphere/bee:1-slim
  • docker pull ethersphere/bee:1.4-slim
  • docker pull ethersphere/bee:1.4.1-slim
  • docker pull ethersphere/bee:latest-slim
  • docker pull ethersphere/bee:stable-slim
  • docker pull quay.io/ethersphere/bee:1-slim
  • docker pull quay.io/ethersphere/bee:1.4-slim
  • docker pull quay.io/ethersphere/bee:1.4.1-slim
  • docker pull quay.io/ethersphere/bee:latest-slim
  • docker pull quay.io/ethersphere/bee:stable-slim

v1.4.0

24 Nov 23:03
Compare
Choose a tag to compare

Bee v1.4.0 is finally here and it includes a major change to protocol behavior that will significantly improve the network resilience. From now on, your nodes will have to be accessible from public CIDRs for them to participate in our core protocols. We've introduced new visibility metrics through the topology endpoint to allow node operators to determine their connectivity state and make the necessary steps to rectify any NAT reachability problems. We've also improved node resilience on blockchain errors. Our bootnodes will flip to the new version on 9AM CET, 25th of November 2021. You are expected to follow with the new version thereafter. Please stay tuned for another release which will follow shortly!

Breaking changes

  • Starting from v1.4.0, only nodes which are reachable from the public CIDRs are used for core protocols. Old nodes are not interoperable with the new version due to a handshake protocol version bump (#2565, #2676)
  • The /stamps endpoints on the normal API which have been deprecated three months ago have been finally removed in favor of the whole postage suite which is available on the debug API. Please see the OpenAPI specifications for more info (#2632)

Hardening

  • The bee node will now wait up to ten minutes before forcing a restart due to a stalled blockchain backend (#2626)

New features

  • The node will now display information about the eth backend client on startup (#2618)
  • OpenAPI versions has been added to the health endpoint, so that clients could easily determine which features are supported by the node (#2638)

Bugfixes

  • Fixed a panic on stewardship endpoints in dev mode (#2640)
  • Fixed a panic in kademlia metrics (#2636)
  • Fixed a bug where futile attempts to sync chunks with invalid postage stamps were made (#2637)

Performance improvements

  • Kademlia buildups should now be faster due to prioritization of previously connected peers and non blocking attempts in topology buildups (#2613, #2627)

For a full PR rundown please consult the v1.4.0 milestone.

Docker images

  • docker pull ethersphere/bee:1
  • docker pull ethersphere/bee:1.4
  • docker pull ethersphere/bee:1.4.0
  • docker pull ethersphere/bee:stable
  • docker pull quay.io/ethersphere/bee:1
  • docker pull quay.io/ethersphere/bee:1.4
  • docker pull quay.io/ethersphere/bee:1.4.0
  • docker pull quay.io/ethersphere/bee:stable
  • docker pull ethersphere/bee:1-slim
  • docker pull ethersphere/bee:1.4-slim
  • docker pull ethersphere/bee:1.4.0-slim
  • docker pull ethersphere/bee:latest-slim
  • docker pull ethersphere/bee:stable-slim
  • docker pull quay.io/ethersphere/bee:1-slim
  • docker pull quay.io/ethersphere/bee:1.4-slim
  • docker pull quay.io/ethersphere/bee:1.4.0-slim
  • docker pull quay.io/ethersphere/bee:latest-slim
  • docker pull quay.io/ethersphere/bee:stable-slim

v1.3.0

27 Oct 09:05
fd09d1c
Compare
Choose a tag to compare

Release notes Bee v1.3.0

The Bee team is happy to announce that v1.3.0 has safely landed!

As outlined recently over several public channels, this release introduces breaking changes in the chainsync protocol behavior while addressing some
bugs and other minor refinements. Nodes which run an outdated version (lower than v1.2.0) will be ostracized out of the network.

The next release of bee v1.4.0 is expected to take place W45-W46 21'.

Please make sure to keep yourself up-to-date through Twitter, Medium and GitHub as more details about the upcoming releases will be duly communicated.

We hope you enjoy this release and welcome your feedback!

Breaking changes

  • The chainsync protocol will now block peers that don't agree on the same block hash of a certain block height. If you're running a node with version < 1.2.0 you will lose connection to the main Swarm network. Please update your clients immediately! (#2585, #2622, #2619)
  • Removed support for QUIC protocol. We will reinstate this feature in a future point where we can fully support and make use of QUIC (#2597)

Deprecations

  • Removed dead code from the bitvector package (#2601)

Hardening

  • Kademlia will only do quick pruning on net errors (#2599)
  • Batches with very low value (with value <= price per block) are no longer considered valid (#2610)
  • Transaction monitor consistency improvements (#2496)

New features

  • Added a db nuke command to clean the node storage up and start afresh, with an option to forget the overlay too (#2577, #2594)

Bugfixes

  • Fixed a panic in the pushsync protocol while forwarding chunks with invalid stamps (#2608)

For a full PR-rundown please consult the v1.3.0 milestone.

Docker images

  • docker pull ethersphere/bee:1
  • docker pull ethersphere/bee:1.3
  • docker pull ethersphere/bee:1.3.0
  • docker pull ethersphere/bee:stable
  • docker pull quay.io/ethersphere/bee:1
  • docker pull quay.io/ethersphere/bee:1.3
  • docker pull quay.io/ethersphere/bee:1.3.0
  • docker pull quay.io/ethersphere/bee:stable
  • docker pull ethersphere/bee:1-slim
  • docker pull ethersphere/bee:1.3-slim
  • docker pull ethersphere/bee:1.3.0-slim
  • docker pull ethersphere/bee:latest-slim
  • docker pull ethersphere/bee:stable-slim
  • docker pull quay.io/ethersphere/bee:1-slim
  • docker pull quay.io/ethersphere/bee:1.3-slim
  • docker pull quay.io/ethersphere/bee:1.3.0-slim
  • docker pull quay.io/ethersphere/bee:latest-slim
  • docker pull quay.io/ethersphere/bee:stable-slim

v1.2.0

07 Oct 15:12
29eb941
Compare
Choose a tag to compare

Release notes Bee v1.2.0

The bee team is proud to announce the latest v1.2.0 release!

We've been working hard to address a lot of security concerns, protocol improvements and mainnet visibility issues.

Our efforts in the past month have mainly been to add instrumentation in order to improve our protocol/component behavior visibility and we've managed to produce quite a bit of improvements as a result of a very tight feedback loop that relies on gathering and evaluation of empiric measurements of the network.

We've also added more plumbing to ensure peer blockchain synchronization and peer service level by responding to period latency checks. You can expect to see more changes in this domain with the next release as we're working hard on hardening the Swarm DHT so that service level to users is maintained.

We hope you enjoy this release!

Hardening

  • Avoid advertising private CIDR underlays to the public network (#2538)
  • Kademlia will now periodically ping all connected peers and will blocklist peers that consistently don't answer (#2543, #2522)
  • Pushsync will continue forwarding if replication fails (#2524)
  • Pullsync context cancellation has been improved peer isolation for context cancellation (#2562)
  • Pushsync will store more chunks when replication requests are received (#2526)
  • Malformed recursive file joiner reads are no longer possible (#2481)
  • Manifest filepath handling has been improved for better security and consistency (#2489)
  • Switched to each peer iterator for pushsync replication to improve replication (#2529)
  • Warn on underlay mismatch on handshake (#2464)
  • Verify own transaction used for overlay calculation on startup to mitigate user input error (#2422)
  • Postage stamp is no longer usable when postage stamp expires (#2390)
  • Prune oversaturated bins when depth increases (#2412)
  • P2P disconnect and blocklist now have a reason to improve code branching observability when inspecting logs (#2471)

New features

  • Added a --resync flag to force your node to resync all postage contract data on startup and more pprof profiles (#2405)
  • Allow transaction from another sender for identity tx so that user onboarding can be improved (#2409)
  • Added the new chainsync challenge-response protocol to verify that all connected peers are connected to a working blockchain backend (#2475)
  • Added new postage endpoits for batch topup and dilution (#2410, #2401)
  • Kademlia now measures peer latencies periodically using the ping-pong protocol and reports measurements using the topology endpoint and prometheus metrics (#2522)
  • Kademlia can now have static nodes which are protected from kicking behavior (relevant for bootnode behavior) (#2512)
  • Our libp2p abstraction adds a custom user agent and logs it on connection for better version propagation visibility on the mainnet (#2462, #2482)
  • Increased targetMaxLength for PSS message mining (#2406)

Bugfixes

  • Added pss target input validation (#2463)
  • Chunks stamped with an already expired stamp will be skipped for syncing and eventually deleted(#2392)
  • Add missing ticker stop on tag wait to avoid timer leak (#2433)
  • Added CORS expose swarm-tag header for bzz dir upload (#2450)
  • Improved peer announcement context handling (#2539)
  • Fixed broken ENS resolution due to an external package API change (#2458)
  • Local storage push index dangling item caused item pushing to grind to a halt (#2534)
  • Tag UID generation improved across node restarts using a different seed (#2425)
  • Improve nonce check on tx cancelled (#2395)
  • Persist postage stamps when added for better reliability (#2546)
  • Kademlia displayed wrong bootnode connection direction (#2570)
  • Pusher tag errors are no longer fatal (#2569)
  • Puller will never store max uint as topmost (#2566)
  • Wait for confirmations in WaitBlock when deploying a chequebook to improve reorg safety (#2416)

Performance improvements

  • Skip validation if peer is known to reduce blockchain backend calls (#2491)
  • Prevent goroutine pileup on peer validation with a timeout (#2444)
  • Flush kademlia metrics in separate goroutine (#2424)
  • Kademlia PSlice data structure rewrite to reduce number of allocations (#2453)
  • Add peer to cache if found in addressbook to reduce number of backend calls (#2511)
  • Only flush dirty kademlia metrics (#2418)
  • Allow dirty kademlia metrics shutdown on timeout (#2428)
  • Improve inefficient kademlia metrics saving (#2452)
  • Handshake handle checks with kademlia pick before overlay verification to reduce backend calls (#2541)

Misc

Known Issues

  • A local storage leak has been observed on nodes that have intensive upload activity. This is due to a storage space optimization put in place due to the postage stamp storage incentives. We are working on deploying a fix and will update you on a migration path as soon as possible!

For the full PR rundown please consult the v1.2.0 milestone

Docker images

  • docker pull ethersphere/bee:1
  • docker pull ethersphere/bee:1.2
  • docker pull ethersphere/bee:1.2.0
  • docker pull ethersphere/bee:stable
  • docker pull quay.io/ethersphere/bee:1
  • docker pull quay.io/ethersphere/bee:1.2
  • docker pull quay.io/ethersphere/bee:1.2.0
  • docker pull quay.io/ethersphere/bee:stable
  • docker pull ethersphere/bee:1-slim
  • docker pull ethersphere/bee:1.2-slim
  • docker pull ethersphere/bee:1.2.0-slim
  • docker pull ethersphere/bee:latest-slim
  • docker pull ethersphere/bee:stable-slim
  • docker pull quay.io/ethersphere/bee:1-slim
  • docker pull quay.io/ethersphere/bee:1.2-slim
  • docker pull quay.io/ethersphere/bee:1.2.0-slim
  • docker pull quay.io/ethersphere/bee:latest-slim
  • docker pull quay.io/ethersphere/bee:stable-slim

v1.1.0

23 Aug 09:19
Compare
Choose a tag to compare

Bee v1.1.0 release notes

Hello bees!
These last couple of months have been paved with a lot of learnings for the bee team. We've been meticulously implementing your recommendations, trying to improve the bee developer experience so that you could build faster on Swarm, as well as inspecting the production network behavior, ironing out all sorts of kinks, bugs and performance issues.

IMPORTANT NOTE: the xDai chain is going to implement the London hardfork. Please stay informed and update your infrastructure accordingly as OpenEthereum clients are still not guaranteed to be supported after the hardfork!

Breaking changes

  • We renamed log field traceid to traceID (#2324)
  • Standalone mode has been phased out (in favor of dev mode, see below) (#2331)

Deprecations

  • PATCH under the /bzz endpoint has been moved to the stewardship endpoint. Please use that instead (#2356)
  • The stamps API has moved to the debug API (#2171)

New features

  • Add estimation of expected lifetime of batches (#2336)
  • Add possibility to cancel transactions (#2212)
  • Allow node to start in dev mode which does not require a blockchain backend. All storage is done in memory and backend behavior is mocked, so that you could develop your apps on Swarm even faster! Run ./bee dev and give it a try (#2347)
  • Add chunk upload endpoint that allows to stream chunks via websockets (#2230)

Hardening

  • Improve pushsync skiplist logic (#2348)
  • Improve pushsync replication in neighborhood logic, as it would sometimes replicate to peers which are not in the neighborhood (#2237)
  • Replicate with peers further from the chunk (#2293)
  • Discovery announce to lightnodes was not in place, which could under certain conditions impair their connectivity (#2351)
  • Disable bootnode active dialing (#2169)
  • Update dependency versions (libp2p, prometheus, among others) (#2316)
  • Peers are now checked for reachability before being persisted in the addressbook (#2319)
  • Bump base docker image (#2315)
  • Continue processing pullsync batch on unverifiable stamp. Previously, the whole batch would error and other chunks potentially discarded (#2228)
  • Prevent sending transaction if we don't have sufficient balance (#2337)
  • Cache on forwarding in retrievals (#2234)
  • Rate limit hive broadcast calls (#2235)
  • Disable forwarding node stamp verification, this is to mitigate nodes which are not properly synced to the chain from interrupting the syncing process (#2233)
  • Verify signer result chain ID conform to node configuration (#2214)
  • Postage stamp usable flag now indicates also if the batch was already expired (#2390)
  • When uploading content which is stamped using an already expired postage stamp, the node will not attempt to sync the content. You are advised to use longer-lived postage stamps and encrypt your content to work around this. It is not possible to reupload unencrypted content which was stamped using an expired postage stamp. We're working on improving on this (#2392)

Bugfixes

  • Fixed wrong timestamp usage in time settlements (#2358)
  • Fixed correct blocktime for xdai (#2340)
  • Fixed possible gcSizeChange inconsistency (#2296)
  • Fixed deadlocks on context done in pushsync and retrieval protocols. This caused goroutine leaks and elevated memory consumption (#2327)
  • Fixed a mantaray lookup bug where files that have shared prefix aren't found correctly (#2380)
  • Limit concurrent access to some parts of the api resources to improve API consistency, since bee does not support parallel on-chain operations (#2379)
  • Query header instead of block (resolves london hardfork related issues) (#2372)
  • Fixed a bug in kademlia that caused choosing a sanctioned peer closest to a chunk. Oops! (#2374)
  • Fixed a bug in the cancelled transactions nonce check (#2395)
  • Fixed excruciatingly long shutdown by allowing metrics to flush dirty (#2428)
  • Fixed unnecessary flushing of metrics that haven't changed in kademlia (#2418)

Performance improvements

Misc

  • Updated go-ethereum version (#2342, #2408)
  • Bump clef in dockercompose (#2366)
  • Added batchstore checksums (#2227)
  • Expose the transaction API early (#2210)
  • Add endpoint that emits information about collisions within all buckets of a batch (#2321)
  • Kademlia metrics flush in a separate goroutine in a way that doesn't affect connection management due to long flush times (#2424)

Docker images

  • docker pull ethersphere/bee:1
  • docker pull ethersphere/bee:1.1
  • docker pull ethersphere/bee:1.1.0
  • docker pull ethersphere/bee:stable
  • docker pull quay.io/ethersphere/bee:1
  • docker pull quay.io/ethersphere/bee:1.1
  • docker pull quay.io/ethersphere/bee:1.1.0
  • docker pull quay.io/ethersphere/bee:stable
  • docker pull ethersphere/bee:1-slim
  • docker pull ethersphere/bee:1.1-slim
  • docker pull ethersphere/bee:1.1.0-slim
  • docker pull ethersphere/bee:latest-slim
  • docker pull ethersphere/bee:stable-slim
  • docker pull quay.io/ethersphere/bee:1-slim
  • docker pull quay.io/ethersphere/bee:1.1-slim
  • docker pull quay.io/ethersphere/bee:1.1.0-slim
  • docker pull quay.io/ethersphere/bee:latest-slim
  • docker pull quay.io/ethersphere/bee:stable-slim

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