Skip to content
This repository has been archived by the owner on Apr 16, 2021. It is now read-only.

js-ipfs 0.25.0 blog post #128

Merged
merged 2 commits into from
Jul 13, 2017
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
47 changes: 47 additions & 0 deletions content/post/28-js-ipfs-0.25.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,47 @@
---
date: 2017-07-12
url: 28-js-ipfs-0-25
title: js-ipfs 0.25.0 released
author: David Dias
---

Today, we've released js-ipfs 0.25.0. This release is mostly maintenance, bug fixing and bringing some of the internal components up to their latest versions.

<blockquote class="twitter-tweet" data-conversation="none" data-lang="en"><p lang="en" dir="ltr">Good morning world 🌞<br><br>A fresh new js-ipfs is waiting for you:<br>+ ipfs@0.25.0<br>[08:52:21] Published to npm.<br><br>I bid you all a good day!</p>&mdash; David Dias (@daviddias) <a href="https://twitter.com/daviddias/status/885044398328819712">July 12, 2017</a></blockquote>
<script async src="//platform.twitter.com/widgets.js" charset="utf-8"></script>

# 🔦 Highlights

### 🏮 ipfs-repo is now 🐲 free

The IPFS Repo Class went through [some careful refactoring process](https://github.com/ipfs/js-ipfs-repo/pull/140). Now it is easier to understand its internals and to support different backend storage adapters.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"some careful refactoring"


To create a js-ipfs node with your own custom repo you just have to:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

"your own custom repo, you can now:" (if this is a new improvement/simplification?)


```JavaScript
const node = new IPFS({repo: <your own Repo instance with your backend storage adapters>})
```

If you are curious, you can learn about what are the default storage adapters in the IPFS Repo itself, namely:

- Node.js - https://github.com/ipfs/js-ipfs-repo/blob/master/src/default-options.js
- Browser - https://github.com/ipfs/js-ipfs-repo/blob/master/src/default-options-browser.js

### ⬢ libp2p is now used directly and the bundles live inside the js-ipfs repo

The JavaScript implementation of libp2p received a lot of love recently, including the addition of Tutorials. You can consult all the details on the Log entry of libp2p's Captain.log - https://github.com/libp2p/js-libp2p/issues/6#issuecomment-313970615

### 🏎 SPDY is out of the mix and there goes browserify-zlib special shimming.

SPDY has been removed from the default browser bundle in favor of supporting `libp2p-multiplex` only. SPDY was the Stream Muxer of js-ipfs since almost the beginning, but since go-ipfs never got a complete implementation of SPDY, we ended up switching to `libp2p-multiplex` to guarantee interop between implementations. What this means is that you will continue to see the interop, but now your browser bundle will be significantly lighter.

### 📞 wrtc, the WebRTC module for Node.js is now optional

`wrtc`, a module that enables js-ipfs Node.js nodes to speak WebRTC, has been excluded from the default list of modules so that Linux users can have a better time when using js-ipfs natively. You can still bring it back and now not only use `wrtc` but you can also use `electron-webrtc`, the other WebRTC module for Node.js See how to achieve that in the project's README - https://github.com/ipfs/js-ipfs#advanced-options-when-creating-an-ipfs-node.

Note, this doesn't change the behavior in the browser. Browser nodes will still continue to use WebRTC by default.


If you run into any hurdles, please open an issue on [ipfs/js-ipfs/issues](https://github.com/ipfs/js-ipfs).

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this a good time to add our "contributor thank you" section? Can be simple to start, e.g.:

Thank you to the ## contributors to this release, and to all past and future contributors of jp-ipfs 🎉:
@username1 @username2 etc.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can create a list but at the risk of being incomplete. (Which would be a bummer if someone is left out).

I really want to do that though, to make that work extremely well it would be important to have:

  • lint the commit messages to follow the same standard
  • have a tool that tracks all the contributions in the dep tree

Thank you for your attention, I bid you a good day!