-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Conversation
While you're making these changes it'd be great if you could |
I did some reading on this and as far as I can tell https://git.wiki.kernel.org/index.php/GitFaq#Why_does_Git_not_.22track.22_renames.3F |
3b81e07
to
2fe568f
Compare
@jacobheun all the core interface tests are passing ( |
Yes, this is true. My point is that we’re losing history for these files due to the scale of the edits even though a bunch of the logic remains the same (eg. the bit you’d actually want to look through the history for, to find out why a thing is the way it is). It could be avoided if they renamed via git one way or another before the editing commenced. |
I think we can do this @achingbrain if we don't squash the commits on merge - thanks for bringing it up 💯 |
3ec242c
to
61ae14f
Compare
61ae14f
to
af678ae
Compare
superseded by #2726 |
A roundup of the following PRs:
To allow us to pass the interface tests, the timeout option is now supported in the
object.get
andrefs
APIs. It doesn't actually cancel the operation all the way down the stack, but allows the method call to return when the timeout is reached.https://github.com/ipfs/js-ipfs/pull/2683/files#diff-47300e7ecd8989b6246221de88fc9a3cR170
Supersedes #2547
resolves #1438
resolves #1061
resolves #2257
resolves #2509
resolves #1670
refs ipfs-inactive/interface-js-ipfs-core#394
BREAKING CHANGE:
IPFS.createNode
removedBREAKING CHANGE: IPFS is not a class that can be instantiated - use
IPFS.create
. An IPFS node instance is not an event emitter.BREAKING CHANGE: Instance
.ready
property removed. Please useIPFS.create
instead.BREAKING CHANGE: Callbacks are no longer supported on any API methods. Please use a utility such as
callbackify
on API methods that return Promises to emulate previous behaviour.BREAKING CHANGE:
PeerId
andPeerInfo
classes are no longer statically exported fromipfs-http-client
since they are no longer used internally.BREAKING CHANGE:
pin.add
results now contain acid
property (a CID instance) instead of a stringhash
property.BREAKING CHANGE:
pin.ls
now returns an async iterable.BREAKING CHANGE:
pin.ls
results now contain acid
property (a CID instance) instead of a stringhash
property.BREAKING CHANGE:
pin.rm
results now contain acid
property (a CID instance) instead of a stringhash
property.BREAKING CHANGE:
add
now returns an async iterable.BREAKING CHANGE:
add
results now contain acid
property (a CID instance) instead of a stringhash
property.BREAKING CHANGE:
addReadableStream
,addPullStream
have been removed.BREAKING CHANGE:
ls
now returns an async iterable.BREAKING CHANGE:
ls
results now contain acid
property (whose value is a CID instance) instead of ahash
property.BREAKING CHANGE:
files.readPullStream
andfiles.readReadableStream
have been removed.BREAKING CHANGE:
files.read
now returns an async iterable.BREAKING CHANGE:
files.lsPullStream
andfiles.lsReadableStream
have been removed.BREAKING CHANGE:
files.ls
now returns an async iterable.BREAKING CHANGE:
files.ls
results now contain acid
property (whose value is a CID instance) instead of ahash
property.BREAKING CHANGE:
files.ls
no longer takes along
option (in core) - you will receive all data by default.BREAKING CHANGE:
files.stat
result now contains acid
property (whose value is a CID instance) instead of ahash
property.BREAKING CHANGE:
get
now returns an async iterable. Thecontent
property value for objects yielded from the iterator is now an async iterable that yieldsBufferList
objects.BREAKING CHANGE:
stats.bw
now returns an async iterable.BREAKING CHANGE:
addFromStream
has been removed. Useadd
instead.BREAKING CHANGE:
addFromFs
has been removed. Please use the exportedglobSource
utility and pass the result toadd
. See the glob source documentation for more details and an example.BREAKING CHANGE:
addFromURL
has been removed. Please use the exportedurlSource
utility and pass the result toadd
. See the URL source documentation for more details and an example.BREAKING CHANGE:
name.resolve
now 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-last
to extract it like so:BREAKING CHANGE:
block.rm
now returns an async iterable.BREAKING CHANGE:
block.rm
now yields objects of{ cid: CID, error: Error }
.BREAKING CHANGE:
dht.findProvs
,dht.provide
,dht.put
anddht.query
now all return an async iterable.BREAKING CHANGE:
dht.findPeer
,dht.findProvs
,dht.provide
,dht.put
anddht.query
now yield/return an object{ id: CID, addrs: Multiaddr[] }
instead of aPeerInfo
instance(s).BREAKING CHANGE:
refs
andrefs.local
now return an async iterable.BREAKING CHANGE:
object.data
now returns an async iterable that yieldsBuffer
objects.BREAKING CHANGE:
ping
now returns an async iterable.BREAKING CHANGE:
repo.gc
now returns an async iterable.BREAKING CHANGE:
swarm.peers
now returns an array of objects with apeer
property that is aCID
, instead of aPeerId
instance.BREAKING CHANGE:
swarm.addrs
now returns an array of objects{ id: CID, addrs: Multiaddr[] }
instead ofPeerInfo
instances.BREAKING CHANGE:
block.stat
result now contains acid
property (whose value is a CID instance) instead of akey
property.BREAKING CHANGE:
bitswap.wantlist
now returns an array of CID instances.BREAKING CHANGE:
bitswap.stat
result has changed -wantlist
andpeers
values are now an array of CID instances.BREAKING CHANGE: the
init
option passed to the IPFS constructor will 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.BREAKING CHANGE: removed
file ls
command from the CLI and HTTP API.BREAKING CHANGE: 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-routing
and/ornpm install libp2p-delegated-peer-routing
and provide configured instances of them inoptions.libp2p
. See the module repos for further instructions: