CoreAPI progress tracking issue
- Dominant language
- Go
- Stars
- 17.1k
- Forks
- 3.2k
- Avg merge
- 3d 18h
- Merged PRs (30d)
- 11
Description
This issue is for tracking progress on the [CoreAPI](https://github.com/ipfs/go-ipfs/tree/master/core/coreapi) package
**blockers:**
- [x] #4672 - Improve paths in CoreApi
- [x] #5825 - Global offline option
- [x] #5661 - go-ipfs-files 2.0
- [x] #5865 - Move coreapi tests to the interface
- [x] #5906 - ls reports real size
- [x] #5922 - Make Dag api just be a DAGService
**related issues:**
* [x] #5491 - Switch all path resolutions to the CoreAPI (#5492, #5563)
* [ ] #4887 - Init support
* [x] #5929 - Make sure Gateway.NoFetch applies fully (#5939, #5943, #5962)
List of APIs to support (apis with **bold** names what is needed to replace go-ipfs-api with coreapi-based implementation without removing features, add more if I forgot something):
- [ ] Define / implement coreapi in go-ipfs
- [x] **block** - #4548
- [ ] config
- [x] **dag** - #4471
- [x] **dht** - #4774 #4804
- [ ] files - https://github.com/ipfs/interface-go-ipfs-core/pull/19 / #6081
- [x] key - #4477
- [x] **name** - #4477
- [x] **object** - #4492
- [x] **pin** - #4575
- [x] **pubsub** - #4774 #4805
- [x] swarm - #4774 #4803 (Needs tests)
- [x] **unixfs** - #5501 / ? / ?
- [ ] Get some batching interfaces - #5215
- [ ] Rewrite commands to use coreapi
- [x] Wire up CoreAPI to commands - #4643
- [x] block - #5331
- [ ] config
- [x] dag - https://github.com/ipfs/go-ipfs/pull/5939
- [ ] dht
- [ ] files - #6081
- [x] key - #5339
- [x] name - #5563
- [x] object - #4643
- [x] pin - #5843
- [x] pubsub - #4805
- [x] swarm - https://github.com/ipfs/go-ipfs/pull/4803
- [x] Move to interface-go-ipfs-core (tracked in https://github.com/ipfs/go-ipfs/issues/3176) - #5978
- [ ] Implement go-ipfs-api using CoreAPI - https://github.com/ipfs/go-ipfs-api/pull/76 https://github.com/ipfs/go-ipfs-http-api/pull/1
- [x] Figure out deprecating current API - https://github.com/ipfs/go-ipfs-api/issues/139#issuecomment-442185887
- [x] block - https://github.com/ipfs/go-ipfs-http-client/pull/1 (tests need #5926)
- [ ] config
- [x] dag - https://github.com/ipfs/go-ipfs-http-client/pull/1 (blocked: #5922, tests need #5935)
- [x] dht - https://github.com/ipfs/go-ipfs-http-client/pull/1 (tests need #5926)
- [ ] files
- [x] key - https://github.com/ipfs/go-ipfs-http-client/pull/1 (tests need #5926)
- [x] name - https://github.com/ipfs/go-ipfs-http-client/pull/1
- [x] object - https://github.com/ipfs/go-ipfs-http-client/pull/1 (tests need #5926)
- [x] pin - https://github.com/ipfs/go-ipfs-http-client/pull/1
- [x] pubsub - https://github.com/ipfs/go-ipfs-http-client/pull/1
- [x] swarm - https://github.com/ipfs/go-ipfs-http-client/pull/1 (untested)
- [x] unixfs - https://github.com/ipfs/go-ipfs-http-client/pull/1 (needs #5906, tests need #5935, #5934)
(I'm aware of https://github.com/ipfs/interface-ipfs-core/issues/66, I'd say that this interface should get to a 'mostly done' stage here as it's much easier to refine it while it's in one place)
Contributor guide
Assessment
This issue has not been assessed yet.