29.1.1 (2019-02-13)
29.1.0 (2019-01-29)
29.0.1 (2019-01-24)
29.0.0 (2019-01-15)
- All API methods that returned
big.js
instances now returnbignumber.js
instances.
License: MIT Signed-off-by: Alan Shaw alan.shaw@protocol.ai
28.1.2 (2019-01-14)
28.1.1 (2019-01-04)
28.1.0 (2018-12-16)
28.0.3 (2018-12-15)
28.0.2 (2018-12-14)
28.0.1 (2018-12-13)
- disable just the rule we're breaking (bed2687)
- properly serialize CID instances (45b344c)
- skip test that go-ipfs cannot pass (0e15761)
28.0.0 (2018-12-11)
-
DHT API methods renamed and return types changed
-
ipfs.dht.findprovs
renamed toipfs.dht.findProvs
and returns an array of PeerInfo -
ipfs.dht.findpeer
renamed toipfs.dht.findPeer
and returns a PeerInfo -
ipfs.dht.query
now returns an array of PeerId
27.1.0 (2018-12-05)
27.0.0 (2018-11-28)
- also retry with misnemed format "dag-cbor" as "cbor" (#888) (348a144)
- better input validation for add (#876) (315b7f7)
- fix log.tail by calling add after listening for events (#882) (da35b0f)
- handle peer-info validation errors (#887) (6e6d7a2), closes #885
- updates ipld-dag-pb dep to version without .cid properties (#889) (ac30a82)
- object API write methods now return CIDs (#896) (38bed14)
- rename library to ipfs-http-client (#897) (d40cb6c)
- updated files API (#878) (39f4733)
- the
ipfs-api
library has been renamed toipfs-http-client
.
Now install via npm install ipfs-http-client
.
Note that in the browser build the object attached to window
is now window.IpfsHttpClient
.
License: MIT Signed-off-by: Alan Shaw alan.shaw@protocol.ai
- Object API refactor.
Object API methods that write DAG nodes now return a CID instead of a DAG node. Affected methods:
ipfs.object.new
ipfs.object.patch.addLink
ipfs.object.patch.appendData
ipfs.object.patch.rmLink
ipfs.object.patch.setData
ipfs.object.put
Example:
// Before
const dagNode = await ipfs.object.new()
// After
const cid = await ipfs.object.new() // now returns a CID
const dagNode = await ipfs.object.get(cid) // fetch the DAG node that was created
IMPORTANT: DAGNode
instances, which are part of the IPLD dag-pb format have been refactored.
These instances no longer have multihash
, cid
or serialized
properties.
This effects the following API methods that return these types of objects:
ipfs.object.get
ipfs.dag.get
See ipld/js-ipld-dag-pb#99 for more information.
License: MIT Signed-off-by: Alan Shaw alan.shaw@protocol.ai
- Files API methods
add*
,cat*
,get*
have moved fromfiles
to the root namespace.
Specifically, the following changes have been made:
ipfs.files.add
=>ipfs.add
ipfs.files.addPullStream
=>ipfs.addPullStream
ipfs.files.addReadableStream
=>ipfs.addReadableStream
ipfs.files.cat
=>ipfs.cat
ipfs.files.catPullStream
=>ipfs.catPullStream
ipfs.files.catReadableStream
=>ipfs.catReadableStream
ipfs.files.get
=>ipfs.get
ipfs.files.getPullStream
=>ipfs.getPullStream
ipfs.files.getReadableStream
=>ipfs.getReadableStream
Additionally, addFromFs
, addFromURL
, addFromStream
have moved from util
to the root namespace:
ipfs.util.addFromFs
=>ipfs.addFromFs
ipfs.util.addFromURL
=>ipfs.addFromURL
ipfs.util.addFromStream
=>ipfs.addFromStream
License: MIT Signed-off-by: Alan Shaw alan.shaw@protocol.ai
- Previously
swarm.peers
would throw an uncaught error if any peer in the response could not have its peerId or multiaddr validated.
This change catches errors that occur while validating the peer info. The returned array will contain an entry for every peer in the ipfs response. peer-info objects that couldn't be validated, now have an error
property and a rawPeerInfo
property. This at least means the count of peers in the response will be accurate, and there the info is available to the caller.
This means that callers now have to deal with peer-info objects that may
not have a peer
or addr
property.
Adds nock
tests to exercice the code under different error conditions. Doing so uncovered a bug in our legacy go-ipfs <= 0.4.4 peer info parsing, which is also fixed. The code was trying to decapusalate the peerId from the multiaddr, but doing so trims the peerId rather than returning it.
License: MIT Signed-off-by: Oli Evans oli@tableflip.io
26.1.2 (2018-11-03)
26.1.1 (2018-11-03)
- go-ipfs 0.4.18 (9178e7d)
26.1.0 (2018-10-31)
26.0.3 (2018-10-31)
26.0.2 (2018-10-31)
- pin.ls ignored opts when hash was present (#875) (0b46750), closes /github.com/ipfs-shipyard/ipfs-companion/issues/360#issuecomment-427525801
26.0.1 (2018-10-30)
26.0.0 (2018-10-30)
- dag-cbor nodes now represent links as CID objects
The API for dag-cbor changed.
Links are no longer represented as JSON objects ({"/": "base-encoded-cid"}
,
but as CID objects. ipfs.dag.get()
and
now always return links as CID objects. ipfs.dag.put()
also expects links
to be represented as CID objects. The old-style JSON objects representation
is still supported, but deprecated.
Prior to this change:
const cid = new CID('QmXed8RihWcWFXRRmfSRG9yFjEbXNxu1bDwgCFAN8Dxcq5')
// Link as JSON object representation
const putCid = await ipfs.dag.put({link: {'/': cid.toBaseEncodedString()}})
const result = await ipfs.dag.get(putCid)
console.log(result.value)
Output:
{ link:
{ '/':
<Buffer 12 20 8a…> } }
Now:
const cid = new CID('QmXed8RihWcWFXRRmfSRG9yFjEbXNxu1bDwgCFAN8Dxcq5')
// Link as CID object
const putCid = await ipfs.dag.put({link: cid})
const result = await ipfs.dag.get(putCid)
console.log(result.value)
Output:
{ link:
CID {
codec: 'dag-pb',
version: 0,
multihash:
<Buffer 12 20 8a…> } }
See ipld/ipld#44 for more information on why this change was made.
- remove
types.dagCBOR
andtypes.dagPB
from public API
If you need the ipld-dag-cbor
or ipld-dag-pb
module in the Browser,
you need to bundle them yourself.
25.0.0 (2018-10-15)
-
150mb bodies no longer crashing Chromium (#868) (180da77), closes #654
- add bl module to package dependencies (#853) (#854) (834934f)
- add lodash dependency (#873) (c510cb7), closes #870
24.0.2 (2018-09-21)
24.0.1 (2018-08-21)
24.0.0 (2018-08-15)
- add test data to IPFS before fetching it (#832) (b2a77d6)
- BREAKING CHANGE use data-encoding arg so data is not corrupted (#806) (553c3fb)
- dag.get return error on missing multicodec (#831) (ff7c7e5)
- remove external urls from addFromURL tests (#834) (7cf7998), closes #803
- Requires go-ipfs 0.4.17 as it allows for specifying the data encoding format when requesting object data.
23.0.0 (2018-08-06)
22.3.0 (2018-08-02)
22.2.4 (2018-07-17)
- increase browserNoActivityTimeout to account for before (328e338)
- increase timeout for .name after all (3dc4313)
- missing debug dependency fixes #809 (#810) (0f1fe95)
22.2.3 (2018-07-10)
22.2.2 (2018-07-05)
22.2.1 (2018-06-29)
22.2.0 (2018-06-29)
22.1.1 (2018-06-25)
22.1.0 (2018-06-18)
- add support for custom headers to send-request (#741) (7fb2e07)
- implement bitswap wantlist peer ID param and bitswap unwant (#761) (73a153e)
22.0.2 (2018-06-14)
22.0.1 (2018-05-30)
- configure webpack to not use esmodules in dependencies (dc14333)
- correctly differentiate pong responses (4ad25a3)
- util.addFromURL with URL-escaped file (a3bd811)
22.0.0 (2018-05-20)
- callback from unsub after stream ends (51a80f2)
- do not fail stop node if failed start node (533760f)
- ping: convert the ping messages to lowercase (632af40)
- more robust ping tests (fc6d301)
- remove .only (0e21c8a)
- result.Peers can be null, ensure callback is called (f5f2e83)
- update asserted error message (17c1f1c)
- use async/setImmediate vs process.nextTick (faa51b4)
21.0.0 (2018-05-12)
- make pubsub.unsubscribe async and alter pubsub.subscribe signature (b98f8f3)
- pubsub.unsubscribe is now async and argument order for pubsub.subscribe has changed
License: MIT Signed-off-by: Alan Shaw alan@tableflip.io
20.2.1 (2018-05-06)
20.2.0 (2018-04-30)
- adding files by pull stream (2fa16c5)
- handle request errors in addFromURL (7c5cea5)
- increase timeout for name.publish and fix setup code (ceb1106)
- ipfs add url wrap doesn't work (#750) (f6f1bf0)
20.1.0 (2018-04-30)
- adding files by pull stream (2fa16c5)
- handle request errors in addFromURL (7c5cea5)
- increase timeout for name.publish and fix setup code (ceb1106)
- ipfs add url wrap doesn't work (#750) (f6f1bf0)
20.0.1 (2018-04-12)
20.0.0 (2018-04-05)
- dag: js-ipld format resolver take the raw block (2683c7e)
- dag: path logic for DAG get was wrong (d2b203b)
- dag: use SendOneFile for dag put (9c37213)
- dag.put (9463d3a)
- dag: proper get implementation (7ba0343)
- dag: rebase, use waterfall for put (ad9eab8)
- dag: update option names to reflect go-ipfs API (9bf1c6c)
- Provide access to bundled libraries when in browser (#732) (994bdad), closes #406
- public-readonly-method-for-getting-host-and-port (41d32e3), closes #580
- Wrap with dir (#730) (160860e)
19.0.0 (2018-03-28)
- bitswap: 0.4.14 returns empty array instead of null (5e37a54)
- ping: tests were failing and there it was missing to catch when count and n are used at the same time (2181568)
18.2.1 (2018-03-22)
- add ability to files.cat with a cid instance (aeeb94e)
18.2.0 (2018-03-16)
- disable Browser test on Windows (385a6c3)
- don't create one webpack bundle for every test file (3967e96)
- last fixes for green (#719) (658bad2)
- set the FileResultStreamConverter explicitly (dfad55e), closes #696
- use a different remote server for test (1fc15a5)
- --only-hash (#717) (1137401), closes #700
- add support for ipfs files stat --with-local (#695) (b08f21a)
18.1.2 (2018-03-09)
- regression on files.add and update deps (#709) (85cc2a8)
- remove argument from .stats.bw* (#699) (f81dce5)
18.1.1 (2018-02-20)
- support recursive ipfs ls (cfe95f6)
18.1.0 (2018-02-20)
- support recursive ipfs ls (cfe95f6)
18.0.0 (2018-02-14)
- exception when dir is empty (#680) (ec04f6e)
- support all the Buffer shims and load fixtures correctly (066988f)
- update stats API (#684) (4f7999d)
- (breaking change) stats spec, spec repo, stream to value on files read (#679) (118456e)
- breaking change: use stream on stats.bw (#686) (895760e)
- ipfs.stop (5091115)
17.5.0 (2018-01-24)
17.4.0 (2018-01-24)
- integrate new ipfsd-ctl (2b1820b)
17.3.0 (2018-01-12)
17.2.7 (2018-01-11)
17.2.6 (2017-12-28)
17.2.5 (2017-12-20)
17.2.4 (2017-12-06)
17.2.3 (2017-12-05)
17.2.2 (2017-12-05)
17.2.1 (2017-12-05)
17.2.0 (2017-12-01)
17.1.3 (2017-11-23)
17.1.2 (2017-11-22)
17.1.1 (2017-11-22)
17.1.0 (2017-11-20)
17.0.1 (2017-11-20)
17.0.0 (2017-11-17)
16.0.0 (2017-11-16)
15.1.0 (2017-11-14)
15.0.2 (2017-11-13)
15.0.1 (2017-10-22)
15.0.0 (2017-10-22)
- update pin API to match interface-ipfs-core (9102643)
14.3.7 (2017-10-18)
14.3.6 (2017-10-18)
- avoid doing multiple RPC requests for files.add, fixes #522 (#595) (0ea5f57)
- report progress on ipfs add (e2d894c)
14.3.5 (2017-09-08)
14.3.4 (2017-09-07)
14.3.3 (2017-09-07)
- support options for .add / files.add (8c717b2)
14.3.2 (2017-09-04)
- new fixed aegir (93ac472)