⚡️ v0.24.0 RELEASE 🚀 #855
Description
It is that time when we are ready to cut the next
minor
release ofjs-ipfs
, isn't that exciting!
🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟🌟
Highlights
👢 WebSockets DNS Bootstrappers by default on the browser
With this release, you won’t need to connect to Bootstrapper nodes manually, they will dialled from the start through their WebSockets endpoints. This also means that we’ve successfully deploy DNS support for multiaddrs, so that you can host your js-ipfs enabled app behind an HTTPS domain and dial to our Bootstrappers through WSS.
🎈WebRTC is now a default transport
We now include WebRTC multiaddr by default on new js-ipfs init calls. This means that both your Node.js and Browser nodes will be able to dial each other using WebRTC and discover other nodes in the network through Signalling Peer Discovery.
Caveat, for Linux/Windows users, due to Node.js wrtc module limited support, you will have to set an environment variable or an Experimental flag to do so, check the README to learn how to do so.
🗺 1st Phase of DHT Implementation Complete
We’ve a working DHT implementation, with this implementation, libp2p got simpler and new PeerRouting and ContentRouting API. We are currently holding this feature behind an Experimental flag until we prune out some interoperability issues with go-ipfs.
🕸 WebWorker and ServiceWorker Support
Now you can run js-ipfs in a WebWorker or a ServiceWorker without encountering any stoppers. We also added a rule to our tests to be run inside a WebWorker to ensure that this feature stays intact.
📶 Better reconnecting handling with WebRTC Transport
You can now switch off your wifi or close your laptop and your js-ipfs node will be able to recover from lost in connectivity graciously.
💅🏽 Refreshed libp2p API
As a byproduct of shipping new features in js-ipfs, js-libp2p got a refreshed API, documentation and examples. Please do check them out and try libp2p at [js-libp2p]
📦 Updated Packages table
Always wondered of how many pieces IPFS is built? Check the updates Packages table at -- https://github.com/ipfs/js-ipfs#packages.
Release checklist
- Robustness and quality
- Ensure that all tests are passing, this includes:
- unit
- interop
- sharness
- Run tests of the following projects with the new release:
- Ensure that all tests are passing, this includes:
- Documentation
- Ensure that README.md is up to date
- Ensure that all the examples run
- Communication
- Create the release issue
- Announcements
- IRC
If you would like us to help you with the migration of your js-ipfs enabled app to the newest release, leave us a note on how to run your tests and I'll be happy to try them for you and report things you will need to update in order to migrate.