This repository was archived by the owner on May 22, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 0
chore(deps): update dependency ipfs to v0.55.1 #15
Open
renovate
wants to merge
1
commit into
master
Choose a base branch
from
renovate/ipfs-0.x
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
60b6d95 to
9067a3e
Compare
9067a3e to
75dadef
Compare
75dadef to
521ad42
Compare
521ad42 to
dd4a91c
Compare
dd4a91c to
e2c0e61
Compare
e2c0e61 to
dd99d80
Compare
dd99d80 to
8b2fcd3
Compare
8b2fcd3 to
0659893
Compare
0659893 to
13de233
Compare
13de233 to
618421c
Compare
618421c to
3ca760c
Compare
3ca760c to
7c65702
Compare
7c65702 to
4cc1db8
Compare
4cc1db8 to
92a3ea1
Compare
92a3ea1 to
d832894
Compare
d832894 to
7658c7c
Compare
7658c7c to
4b67663
Compare
4b67663 to
4d0a0d4
Compare
4d0a0d4 to
3cdeca7
Compare
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.36.4->0.55.1Release Notes
ipfs/js-ipfs
v0.55.1Compare Source
Note: Version bump only for package ipfs
v0.55.0Compare Source
Bug Fixes
chore
BREAKING CHANGES
v0.54.5Compare Source
Note: Version bump only for package ipfs
v0.54.4Compare Source
Note: Version bump only for package ipfs
v0.54.3Compare Source
Bug Fixes
v0.54.2Compare Source
Note: Version bump only for package ipfs
v0.54.1Compare Source
Note: Version bump only for package ipfs
v0.54.0Compare Source
Bug Fixes
chore
Features
BREAKING CHANGES
v0.53.2Compare Source
Note: Version bump only for package ipfs
v0.53.1Compare Source
Note: Version bump only for package ipfs
v0.53.0Compare Source
chore
Features
BREAKING CHANGES
Co-authored-by: Hugo Dias mailto:hugomrdias@gmail.com
v0.52.3Compare Source
Bug Fixes
v0.52.2Compare Source
Note: Version bump only for package ipfs
v0.52.1Compare Source
Bug Fixes
v0.52.0Compare Source
Bug Fixes
Features
BREAKING CHANGES
v0.51.0Compare Source
Bug Fixes
Features
BREAKING CHANGES
Closes #3210
Co-authored-by: achingbrain mailto:alex@achingbrain.net
v0.50.2Compare Source
Note: Version bump only for package ipfs
v0.50.1Compare Source
fix: Downgrade merge-options to restore node 12 compat when engine-strict is true #3271
v0.50.0Compare Source
Features
v0.49.1Compare Source
Bug Fixes
v0.49.0Compare Source
Bug Fixes
Features
BREAKING CHANGES
v0.48.2Compare Source
Note: Version bump only for package ipfs
v0.48.1Compare Source
Bug Fixes
v0.48.0Compare Source
Bug Fixes
Features
Breaking Changes
ipfs.addonly works on single items - a Uint8Array, a String, an AsyncIterable etcipfs.addAllworks on multiple itemsipfs.dag.resolvereturnsPromise<{ cid, remainderPath }instead ofAsyncIterator<{ value, remainderPath }>ipfs.bitswap.wantlist([peer], [options])is split into:ipfs.bitswap.wantlist([options])ipfs.bitswap.wantlistForPeer(peer, [options])ipfs.bootstrap.add([addr], [options])is split into:ipfs.bootstrap.add(addr, [options])- add a bootstrap nodeipfs.bootstrap.reset()- restore the default list of bootstrap nodesipfs.bootstrap.rm([addr], [options])is split into:ipfs.bootstrap.rm(addr, [options])- remove a bootstrap nodeipfs.bootstrap.clear([options])- empty the bootstrap listipfs.dag.get(cid, [path], [options])becomesipfs.dag.get(cid, [options])pathis moved into theoptionsobjectipfs.dag.tree(cid, [path], [options])becomesipfs.dag.tree(cid, [options])pathis moved into theoptionsobjectipfs.dag.resolve(cid, [path], [options])becomesipfs.dag.resolve(cid, [options])pathis moved into theoptionsobjectipfs.files.flush([path], [options])becomesipfs.files.flush(path, [options])ipfs.files.ls([path], [options])becomesipfs.files.ls(path, [options])ipfs.object.new([template], [options])becomesipfs.object.new([options])templateis moved into theoptionsobjectipfs.pin.ls([paths], [options])becomesipfs.pin.ls([options])pathsis moved into theoptionsobjectipfs.refs.localnow returns a v1 CID with the raw codec for every block and not the original CID by which it was added to the blockstorev0.47.0Compare Source
Bug Fixes
Features
v0.46.1Compare Source
Note: Version bump only for package ipfs
v0.46.0Compare Source
Bug Fixes
ipfs.config.get([key,] [options])-keyis optional again (#3069) (d043138)Features
ipfs.dag.getfor example) will now cause those blocks to be removed from your wantlist (ipfs/js-ipfs-bitswap#214)ipfs.dht.get(key, [options])accepts a string or a buffer askey(#3013) (0900bb9)Breaking Changes
Core API
ipfs.lsno longer supports asortoption (#3013) (0900bb9)ipfs.key.gendefaults to 2048 bit RSA keys (#3013) (0900bb9)CLI
ipfs files lsno longer supports the-U(unsorted) flag (#3013) (0900bb9)HTTP API
POST /api/v0/pin/listno longer supports non-streaming responses (#3013) (0900bb9)HTTP API Client
ipfs.dht.getresolves to a Buffer in line with the core api (#3013) (0900bb9)v0.45.0Compare Source
Features
v0.44.0Compare Source
Bug Fixes
Features
v0.43.3Compare Source
Note: Version bump only for package ipfs
v0.43.2Compare Source
Bug Fixes
v0.43.1Compare Source
Bug Fixes
Features
v0.43.0Compare Source
Bug Fixes
BREAKING CHANGES
Where we used to accept all and any HTTP methods, now only POST is
accepted. The API client will now only send POST requests too.
test: add tests to make sure we are post-only
chore: upgrade ipfs-utils
fix: return 405 instead of 404 for bad methods
fix: reject browsers that do not send an origin
Also fixes running interface tests over http in browsers against
js-ipfs
v0.42.1Compare Source
Bug Fixes
v0.42.0Compare Source
0.42.0 (2020-03-31)
Bug Fixes
chore
Features
BREAKING CHANGES
ipfs.files.stat(path)was a hamt sharded dir, the resovledvalue returned by js-ipfs previously had a
typeproperty of with a value of'hamt-sharded-directory'. To bring it in line with go-ipfs this value is now'directory'.--cid-version=1or
--raw-leaves=truepreviously returned a CID that resolved toa raw node (e.g. a buffer). Returned CIDs now resolve to a
dag-pbnode that contains a UnixFS entry. This is to allow setting metadata
on small files with CIDv1.
v0.41.2Compare Source
v0.41.1Compare Source
Bug Fixes
v0.41.0Compare Source
🔦 Highlights
🎶 In the jungle, the mighty jungle the lion sleeps tonight!
🎶 async await, async await, async await, async await...
We've completed a HUGE refactor to js-ipfs internals 🥳, switching to using Promises and
async/awaitover Callbacks and using async iterables instead of Node.js Streams and Pull Streams. Ok, I tell a lie, it's actually not just js-ipfs internals, it's the whole stack, including libp2p, IPLD and multiformats, you might call it a ground up re-write, but, you know, we don't like to brag.🚨 Oh, wait, serious note - this release brings big breaking changes to the core API so please consult the "API Changes" section below for all the information.
It's been a long and emotional voyage but this refactor brings a plethora of incredible immediate and future benefits to consumers, contributors and core developers that make all the work and effort worthwhile. To summarise, we've:
async/awaitso we’ll get better error stack traces and improved readability and maintainabilityUsing
async/awaitin JavaScript is gaining a lot of traction in the ecosystem and is rapidly becoming the de facto way of writing idiomatic JS. We want js-ipfs to move with the times and continue to be attractive to contributors by using modern JS features, techniques and practices. The big idea with these changes is for the code to be easier to contribute to, easier to understand, easier to maintain, and be faster and smaller than ever.This change is so big, and so significant, we wrote a whole blog post about it to explain the motivations behind the changes...in
excruciatingdelightful depth 🤣!We've also compiled some stats on this refactor for your viewing pleasure:
package.jsonipfs-http-clientbrowser bundle (unpkg.com/ipfs-http-client@41.0.1 vs unpkg.com/ipfs-http-client@42.0.0) - that's 60% smaller!ipfs-http-client(net)...and a lot of those stats are just for js-ipfs and js-ipfs-http-client - the tip of the iceberg! We saw changes similar to this for between 60-70 dependencies across IPFS, libp2p, IPLD and multiformats.
🌗 UnixFS v1.5
Turns out, it's really important for package managers to retain file metadata, particularly last modified time (
mtime). Filemtimeallows them to selectively sync only data that has changed. Up until now if you wanted to host a large data set on IPFS, like a package manager's repository, it would be difficult to update."What about the permanent web?" I hear you cry. Well, this absolutely doesn't prevent a particular snapshot of a package manager's repository from being permanently available. Metadata just enables diffs to be imported, instead of the whole thing. So, when I say "difficult to update", like I did up there, I mean slow and/or impossible. When you have Terabytes (or more) of package data and someone publishes a new package, it's kinda inconvenient to import everything again, when only a little part changed. File
mtimeis a really good indicator of which things have changed, so you can use it in IPFS now! 🥳For example, there's two new options to
jsipfs addthat allowmodeandmtimeto be preserved as the file is added to IPFS:Ok, no big changes there aside from the new options, buuut, now when you list directory contents you get
ModeandMtimeinfo:Rad right!?
Persisting the file
modeis also super rad, because it opens up NFS type use cases that weren't possible before. Imagine yournode_modulesdirectory is backed by IPFS and mounted on your file system - the filemodewill allow everything innode_modules/.binto be executable as you'd expect.The coolest thing about all of this is that it's completely backwards compatible. The CID for a given file/directory only changes if you opt in to metadata, otherwise the CIDs remain the same. Hooray!
There's a bunch of changes that add metadata capability to the CLI, HTTP and core API both for inputs and outputs. There's also a couple of new MFS commands
touchandchmodwhich allow you to change the metadata whenever you like! Magic 🧙♂️.See the API Changes sections below for details of all the new UnixFS v1.5 stuffs.
🏗 API Changes
Core API
There are significant and breaking core API changes in this release. Please see the migration guide.
IPFS is not a class that can be instantiated - use
IPFS.create. An IPFS node instance is not an event emitter.The
initoption passed toIPFS.createwill now not take any initialization steps if it is set tofalse. Previously, the repo would be initialized if it already existed. This is no longer the case. If you wish to initialize a node but only if the repo exists, passinit: { allowNew: false }to the constructor.Instance
.readyproperty has been removed. Please useIPFS.createinstead.IPFS.createNodehas been removed, please useIPFS.createinstead.Callbacks are no longer supported on any API methods. Please use a utility such as
callbackifyon API methods that return Promises to emulate previous behaviour. See the migration guide for more info.Delegated peer and content routing modules are no longer included as part of core (but are still available if starting a js-ipfs daemon from the command line). If you wish to use delegated routing and are creating your node programmatically in Node.js or the browser you must
npm install libp2p-delegated-content-routingand/ornpm install libp2p-delegated-peer-routingand provide configured instances of them inoptions.libp2p. See the module repos for further instructions:addnow returns an async iterable.addnow acceptsmodeandmtimeoptions on inputs to allow setting mode and mtime metadata for added files. See the core interface docs for more info.addresults now contain acidproperty (a CID instance) instead of a stringhashproperty.🆕
addresults now includemodeandmtimeproperties if they were set.addReadableStream,addPullStreamhave been removed. Please see the migration guide for more info.addFromStreamhas been removed. Useaddinstead.addFromFshas been removed. Please use the exportedglobSourceutility and pass the result toadd. See the glob source documentation for more details and an example.addFromURLhas been removed. Please use the exportedurlSourceutility and pass the result toadd. See the URL source documentation for more details and an example.bitswap.statresult has changed -wantlistand values are now an array of CID instances andpeersis now astring[]of peer IDs.bitswap.wantlistnow returns an array of CID instances.block.rmnow returns an async iterable.block.rmnow yields objects of{ cid: CID, error: Error }.block.statresult now contains acidproperty (whose value is a CID instance) instead of akeyproperty.dht.findProvs,dht.provide,dht.putanddht.querynow all return an async iterable.dht.findPeer,dht.findProvs,dht.provide,dht.putanddht.querynow yield/return an object{ id: string, addrs: Multiaddr[] }instead of aPeerInfoinstance(s).🆕
files.chmodhas been added. See the core interface docs for info.🆕
files.flushnow returns the root CID for the path that was flushed (/by default)files.lsPullStreamandfiles.lsReadableStreamhave been removed. Please see the migration guide for more info.files.lsnow returns an async iterable.files.lsresults now contain acidproperty (whose value is a CID instance) instead of ahashproperty.🆕
files.lsresults now includemodeandmtimeproperties if they were set. See the core interface docs for more info.files.lsno longer takes alongoption (in core) - you will receive all data by default.🆕
files.mkdirnow acceptsmodeandmtimeoptions to allow setting mode and mtime metadata. See the core interface docs for more info.files.readPullStreamandfiles.readReadableStreamhave been removed. Please see the migration guide for more info.files.readnow returns an async iterable.files.statresult now contains acidproperty (whose value is a CID instance) instead of ahashproperty.🆕
files.statresult now includesmodeandmtimeproperties if they were set. See the core interface docs for more info.🆕
files.touchhas been added. See the core interface docs for info.🆕
files.writenow acceptsmodeandmtimeoptions to allow setting mode and mtime metadata. See the core interface docs for more info.getnow returns an async iterable. Thecontentproperty value for objects yielded from the iterator is now an async iterable that yieldsBufferListobjects.idresult has changed, theaddressesproperty is now aMultiaddr[]name.resolvenow returns an async iterable. It yields increasingly more accurate resolved values as they are discovered until the best value is selected from the quorum of 16. The "best" resolved value is the last item yielded from the iterator. If you are interested only in this best value you could useit-lastto extract it like so:🆕
object.getnow accepts atimeoutoption. It will cause the method to throw with aTimeoutErrorif no data is received within the timeout window. It can be passed as anumberor astring. If anumberis passed it is interpreted as milliseconds, if a string is passed it is interpreted as a human readable duration.lsnow returns an async iterable.lsresults now contain acidproperty (whose value is a CID instance) instead of ahashproperty.🆕
lsresults now includemodeandmtimeproperties if they were set. See the core interface docs for more info.pin.addresults now contain acidproperty (a CID instance) instead of a stringhashproperty.🆕
pin.addnow accepts atimeoutoption. It will cause the method to throw with aTimeoutErrorif no data is received within the timeout window. It can be passed as anumberor astring. If anumberis passed it is interpreted as milliseconds, if a string is passed it is interpreted as a human readable duration.pin.lsnow returns an async iterable.pin.lsresults now contain acidproperty (a CID instance) instead of a stringhashproperty.pin.rmresults now contain acidproperty (a CID instance) instead of a stringhashproperty.pingnow returns an async iterable.refsandrefs.localnow return an async iterable.🆕
refsnow accepts atimeoutoption. It will cause the method to throw with aTimeoutErrorif no data is received within the timeout window. It can be passed as anumberor astring. If anumberis passed it is interpreted as milliseconds, if a string is passed it is interpreted as a human readable duration.repo.gcnow returns an async iterable.stats.bwnow returns an async iterable.swarm.peersnow returns an array of objects with apeerproperty that is astring, instead of aPeerIdinstance.swarm.addrsnow returns an array of objects{ id: string, addrs: Multiaddr[] }instead ofPeerInfoinstances.HTTP API
/api/v0/addnow supports the following additional multipart headers to allowmodeandmtimemetadata to be set on individual files:modefile mode to apply to created UnixFS entries[string]mtimemodification time in seconds before or since the Unix Epoch to apply to created UnixFS entries[number]mtime-nsecsmodification time fraction in nanoseconds[number]/api/v0/addnow returns fileMode,MtimeandMtimeNsecsif set./api/v0/file/lshas been removed, please use/api/v0/lsinstead./api/v0/files/chmodhas been added and supports the following query string args:argpath of file to apply mode to[string]modefile mode to apply[string]/api/v0/files/lsnow returns fileMode,MtimeandMtimeNsecsif set./api/v0/files/mkdirnow supports supports the following additional query string args:modefile mode to apply[string]mtimemodification time in seconds before or since the Unix Epoch to apply[number]/api/v0/files/statnow returns fileMode,MtimeandMtimeNsecsif set./api/v0/files/touchhas been added and supports the following query string args:argpath of file to apply mode to[string]mtimemodification time in seconds before or since the Unix Epoch to apply[number]/api/v0/files/writenow supports the following additional multipart headers:modefile mode to apply to created UnixFS entries[string]mtimemodification time in seconds before or since the Unix Epoch to apply to created UnixFS entries[number]/api/v0/lsnow returns fileMode,MtimeandMtimeNsecsif set.CLI
jsipfs add [file...]now supports the following flags to respect and applymodeandmtimemetadata of files added from the file system or explicitly set them:--preserve-modeautomatically apply permissions to created UnixFS entries from the file system[boolean] [default: false]--preserve-mtimeautomatically apply modification time to created UnixFS entries from the file system[boolean] [default: false]--modefile mode to apply to created UnixFS entries[string]--mtimemodification time in seconds before or since the Unix Epoch to apply to created UnixFS entries[number]--mtime-nsecsmodification time fraction in nanoseconds[number]jsipfs file lshas been removed, please usejsipfs lsinstead.jsipfs files chmod [mode] [path]has been added.jsipfs files lsnow prints filemodeandmtime.jsipfs files mkdirnow supports the following flags:--modefile mode to apply to created UnixFS entries[string]--mtimemodification time in seconds before or since the Unix Epoch to apply to created UnixFS entries[number]jsipfs files statnow prints filemodeandmtime.jsipfs files touch [path]has been added and supports the following flags:--mtimemodification time in seconds before or since the Unix Epoch to apply to created UnixFS entries[number]jsipfs files writenow supports the following flags:--modefile mode to apply to created UnixFS entries[string]--mtimemodification time in seconds before or since the Unix Epoch to apply to created UnixFS entries[number]jsipfs lsnow prints filemodeandmtime.Other changes
websocket-starmultiaddrs should not be provided anymore in thejs-ipfsconfiguration.❤️ Huge thank you to everyone that made this release possible
Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻️ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.