Description
Restoring IPFS magic one alakazam at a time...no we're not talking pokemon
🗺 What's left for release
-
IPNS locally(next release) -
CID base option(next release) -
Partial(next release)ipfs.resolve
implementation - Support for raw leaves
- Connectivity Magic
- "Already piped, no more" - Update to latest libp2p
🔦 Highlights
🧚 Connectivity Magic
Recent infrastructure changes to the nodes IPFS runs as gateways meant that they couldn't be used as bootstrapper nodes. This was bad news bears for js-ipfs
since it doesn't yet have a DHT to discover content. So not being able to connect to the nodes that have a lot of the content meant the chances of js-ipfs
finding content on the network took a turn for the worse.
Good news though! Brand new dedicated nodes have been provisioned that are connected to the gateway nodes and can be used by js-ipfs
to bootstrap itself as well as, get this, preload content you add to IPFS! That's right, when you add stuff to your IPFS, the preload nodes are prompted to slerp it up automatically so that it can be shared instantly with other IPFS nodes on the network.
🌿 Raw Leaves
Raw leaves are much healthier for you because they don't lose their vitamins during the cooking process. Seriously though. They're great if you want to stream raw data (like video) out of your IPFS without the overhead of unpacking protobufs. They're also useful when you need to put your data in a data store that only deals with raw data, like a URL.
We have these now! Just pass --raw-leaves=true
when adding content to IPFS and leaves of the DAG(s) you create will contain just the raw data.
🏗 API Changes
- A new configuration property
preload
has been added to the options provided to the IPFS constructor. Content added to IPFS using the following APIs will be automatically preloaded on a set of IPFS nodes. To lean more about how to configure this feature, check the IPFS constructor docs.dag.put
block.put
object.new
object.put
object.patch.*
files.add*
files.write
files.mv
files.cp
- The
--raw-leaves
option has been enabled forfiles.add
✅ 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:
- ipfs-pubsub-room (#54)
- peerpad-core (#22)
- ipfs-log (#144)
- orbit-db (#423)
- 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 (both pre-release and post-release)
- IRC
- Blog post
🙌🏽 Want to contribute?
Would you like to contribute to the IPFS project and don't know how? Well, there are a few places you can get started:
- Check the issues with the
help wanted
label at the Ready column in our waffle board - https://waffle.io/ipfs/js-ipfs?label=help%20wanted - Join an IPFS All Hands, introduce yourself and let us know where you would like to contribute - https://github.com/ipfs/pm/#all-hands-call
- Hack with IPFS and show us what you made! The All Hands call is also the perfect venue for demos, join in and show us what you built
- Join the discussion at http://discuss.ipfs.io/ and help users finding their answers.
- Join the ⚡️ⒿⓈ Core Dev Team Weekly Sync 🙌🏽 and be part of the Sprint action!
⁉️ Do you have questions?
The best place to ask your questions about IPFS, how it works and what you can do with it is at discuss.ipfs.io. We are also available at the #ipfs channel on Freenode.