Since the beginning of IPFS Cluster, one of our ideas was that it should be easily dropped in place of the IPFS daemon in any integration. This was achieved by adding an IPFS Proxy endpoint which essentially provides an IPFS-compatible API for Cluster. Those endpoints and operations which does not make sense to be handled by Cluster are simply forwarded to the underlying daemon. Add, pin and unpin operations become, however, Cluster action.
IPFS Cluster 0.8.0 comes out today and includes a revamp of the IPFS Proxy
endpoint. We have promoted it to be its own API-type component, extracting it
from the IPFS Connector (which is just the client to IPFS). We have
additionally made improvements so that it truly mimics IPFS, by dynamically
extracting headers from the real daemon that can be re-used in the responses
handled by Cluster. Thus, there will be no CORS-related breakage when swapping
out IPFS for Cluster, and custom IPFS headers (i.e.
X-Ipfs-Gateway) can be
configured and forwarded by the proxy.
The increasing importance of browser integrations prompted us to fully support Cross-Origin Resource Sharing (CORS) in the REST API as well. It will now handle CORS pre-flight requests (OPTIONS) and the configuration allows the user to set up all the CORS-related headers as needed.
This is the first release with @kishansagathiya as full-time member of the
team. Apart from extracting the IPFS proxy component, Kishan is behind the new
--filter flag for
ipfs-cluster-ctl status. You can now list all the items
pinning or in
error without the need of a complex grep line. A
few more useful features will be coming up in the future.
For the full list of changes and update notices for this release, check out the changelog.