From 508791b547c89e022d4b701c794f44012b1a065c Mon Sep 17 00:00:00 2001 From: Hector Sanjuan Date: Wed, 15 Jun 2022 11:19:17 +0200 Subject: [PATCH] Migrate from ipfs/ipfs-cluster to ipfs-cluster/ipfs-cluster This performs the necessary renamings. --- CHANGELOG.md | 750 +++++++++--------- Dockerfile | 4 +- Dockerfile-bundle | 4 +- Dockerfile-test | 4 +- README.md | 17 +- add_test.go | 6 +- adder/adder.go | 4 +- adder/adder_test.go | 4 +- adder/adderutils/adderutils.go | 8 +- adder/ipfsadd/add.go | 2 +- adder/sharding/dag_service.go | 4 +- adder/sharding/dag_service_test.go | 6 +- adder/sharding/shard.go | 4 +- adder/sharding/verify.go | 2 +- adder/single/dag_service.go | 4 +- adder/single/dag_service_test.go | 6 +- adder/util.go | 2 +- allocate.go | 2 +- allocator/balanced/balanced.go | 2 +- allocator/balanced/balanced_test.go | 4 +- allocator/balanced/config.go | 2 +- api/common/api.go | 8 +- api/common/api_test.go | 6 +- api/common/config.go | 2 +- api/common/config_test.go | 2 +- api/ipfsproxy/config.go | 2 +- api/ipfsproxy/headers.go | 2 +- api/ipfsproxy/ipfsproxy.go | 8 +- api/ipfsproxy/ipfsproxy_test.go | 4 +- api/pinsvcapi/config.go | 4 +- api/pinsvcapi/pinsvc/pinsvc.go | 2 +- api/pinsvcapi/pinsvcapi.go | 8 +- api/pinsvcapi/pinsvcapi_test.go | 8 +- api/rest/client/README.md | 22 +- api/rest/client/client.go | 2 +- api/rest/client/client_test.go | 4 +- api/rest/client/lbclient.go | 2 +- api/rest/client/lbclient_test.go | 2 +- api/rest/client/methods.go | 2 +- api/rest/client/methods_test.go | 6 +- api/rest/client/request.go | 2 +- api/rest/config.go | 4 +- api/rest/restapi.go | 6 +- api/rest/restapi_test.go | 6 +- api/types.go | 2 +- cluster.go | 16 +- cluster_config.go | 2 +- cluster_test.go | 20 +- clusterhost.go | 2 +- cmd/ipfs-cluster-ctl/formatters.go | 2 +- cmd/ipfs-cluster-ctl/graph.go | 2 +- cmd/ipfs-cluster-ctl/graph_test.go | 2 +- cmd/ipfs-cluster-ctl/main.go | 6 +- cmd/ipfs-cluster-follow/commands.go | 28 +- cmd/ipfs-cluster-follow/main.go | 8 +- cmd/ipfs-cluster-service/daemon.go | 32 +- cmd/ipfs-cluster-service/lock.go | 2 +- cmd/ipfs-cluster-service/main.go | 12 +- cmd/ipfs-cluster-service/main_test.go | 2 +- cmdutils/cmdutils.go | 4 +- cmdutils/configs.go | 36 +- cmdutils/state.go | 20 +- config_test.go | 26 +- connect_graph.go | 2 +- consensus/crdt/config.go | 4 +- consensus/crdt/consensus.go | 8 +- consensus/crdt/consensus_test.go | 6 +- consensus/raft/config.go | 4 +- consensus/raft/consensus.go | 8 +- consensus/raft/consensus_test.go | 8 +- consensus/raft/log_op.go | 4 +- consensus/raft/log_op_test.go | 8 +- consensus/raft/raft.go | 2 +- datastore/badger/config.go | 2 +- datastore/leveldb/config.go | 2 +- go.mod | 2 +- informer/disk/config.go | 2 +- informer/disk/disk.go | 2 +- informer/disk/disk_test.go | 4 +- informer/numpin/config.go | 2 +- informer/numpin/numpin.go | 2 +- informer/numpin/numpin_test.go | 4 +- informer/pinqueue/config.go | 2 +- informer/pinqueue/pinqueue.go | 2 +- informer/tags/config.go | 2 +- informer/tags/tags.go | 2 +- ipfscluster.go | 4 +- ipfscluster_test.go | 32 +- ipfsconn/ipfshttp/config.go | 2 +- ipfsconn/ipfshttp/ipfshttp.go | 5 +- ipfsconn/ipfshttp/ipfshttp_test.go | 4 +- monitor/metrics/checker.go | 2 +- monitor/metrics/checker_test.go | 4 +- monitor/metrics/store.go | 2 +- monitor/metrics/store_test.go | 4 +- monitor/metrics/util.go | 2 +- monitor/metrics/window.go | 2 +- monitor/metrics/window_test.go | 2 +- monitor/pubsubmon/config.go | 2 +- monitor/pubsubmon/pubsubmon.go | 4 +- monitor/pubsubmon/pubsubmon_test.go | 4 +- observations/config.go | 2 +- observations/metrics.go | 4 +- peer_manager_test.go | 6 +- pintracker/optracker/operation.go | 2 +- pintracker/optracker/operation_test.go | 4 +- pintracker/optracker/operationtracker.go | 4 +- pintracker/optracker/operationtracker_test.go | 4 +- pintracker/pintracker_test.go | 14 +- pintracker/stateless/config.go | 2 +- pintracker/stateless/stateless.go | 6 +- pintracker/stateless/stateless_test.go | 10 +- pstoremgr/pstoremgr_test.go | 2 +- rpc_api.go | 6 +- rpcutil/policygen/policygen.go | 2 +- rpcutil/rpcutil.go | 2 +- state/dsstate/datastore.go | 6 +- state/dsstate/datastore_test.go | 4 +- state/empty.go | 2 +- state/interface.go | 2 +- test/cids.go | 2 +- test/ipfs_mock.go | 8 +- test/rpc_api_mock.go | 4 +- test/sharding.go | 2 +- test/test_test.go | 2 +- util.go | 2 +- 126 files changed, 718 insertions(+), 724 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index f455b957..c8e1a5a7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -25,23 +25,23 @@ the cluster should upgrade. ##### Features -* Pinqueue Informer: let pinning queue size inform allocation selection | [ipfs/ipfs-cluster#1649](https://github.com/ipfs/ipfs-cluster/issues/1649) | [ipfs/ipfs-cluster#1657](https://github.com/ipfs/ipfs-cluster/issues/1657) -* Metrics: add additional Prometheus metrics | [ipfs/ipfs-cluster#1650](https://github.com/ipfs/ipfs-cluster/issues/1650) | [ipfs/ipfs-cluster#1659](https://github.com/ipfs/ipfs-cluster/issues/1659) +* Pinqueue Informer: let pinning queue size inform allocation selection | [ipfs-cluster/ipfs-cluster#1649](https://github.com/ipfs-cluster/ipfs-cluster/issues/1649) | [ipfs-cluster/ipfs-cluster#1657](https://github.com/ipfs-cluster/ipfs-cluster/issues/1657) +* Metrics: add additional Prometheus metrics | [ipfs-cluster/ipfs-cluster#1650](https://github.com/ipfs-cluster/ipfs-cluster/issues/1650) | [ipfs-cluster/ipfs-cluster#1659](https://github.com/ipfs-cluster/ipfs-cluster/issues/1659) ##### Bug fixes -* Fix: state import can result in different CRDT-heads | [ipfs/ipfs-cluster#1547](https://github.com/ipfs/ipfs-cluster/issues/1547) | [ipfs/ipfs-cluster#1664](https://github.com/ipfs/ipfs-cluster/issues/1664) -* Fix: `ipfs-cluster-ctl pin ls` hangs | [ipfs/ipfs-cluster#1663](https://github.com/ipfs/ipfs-cluster/issues/1663) -* Fix: restapi client panics on retry | [ipfs/ipfs-cluster#1655](https://github.com/ipfs/ipfs-cluster/issues/1655) | [ipfs/ipfs-cluster#1662](https://github.com/ipfs/ipfs-cluster/issues/1662) -* Fix: bad behavior while adding and ipfs is down | [ipfs/ipfs-cluster#1646](https://github.com/ipfs/ipfs-cluster/issues/1646) -* Fix: `ipfscluster_pins` metric issues bad values | [ipfs/ipfs-cluster#1645](https://github.com/ipfs/ipfs-cluster/issues/1645) +* Fix: state import can result in different CRDT-heads | [ipfs-cluster/ipfs-cluster#1547](https://github.com/ipfs-cluster/ipfs-cluster/issues/1547) | [ipfs-cluster/ipfs-cluster#1664](https://github.com/ipfs-cluster/ipfs-cluster/issues/1664) +* Fix: `ipfs-cluster-ctl pin ls` hangs | [ipfs-cluster/ipfs-cluster#1663](https://github.com/ipfs-cluster/ipfs-cluster/issues/1663) +* Fix: restapi client panics on retry | [ipfs-cluster/ipfs-cluster#1655](https://github.com/ipfs-cluster/ipfs-cluster/issues/1655) | [ipfs-cluster/ipfs-cluster#1662](https://github.com/ipfs-cluster/ipfs-cluster/issues/1662) +* Fix: bad behavior while adding and ipfs is down | [ipfs-cluster/ipfs-cluster#1646](https://github.com/ipfs-cluster/ipfs-cluster/issues/1646) +* Fix: `ipfscluster_pins` metric issues bad values | [ipfs-cluster/ipfs-cluster#1645](https://github.com/ipfs-cluster/ipfs-cluster/issues/1645) ##### Other changes -* Dependency upgrades (includes go-libp2p v0.19.1) | [ipfs/ipfs-cluster#1660](https://github.com/ipfs/ipfs-cluster/issues/1660) -* Build with go1.18 | [ipfs/ipfs-cluster#1661](https://github.com/ipfs/ipfs-cluster/issues/1661) -* Do not issue freespace metrics when freespace is 0 | [ipfs/ipfs-cluster#1656](https://github.com/ipfs/ipfs-cluster/issues/1656) -* Convert pinning/queued/error metrics go gauges | [ipfs/ipfs-cluster#1647](https://github.com/ipfs/ipfs-cluster/issues/1647) | [ipfs/ipfs-cluster#1651](https://github.com/ipfs/ipfs-cluster/issues/1651) +* Dependency upgrades (includes go-libp2p v0.19.1) | [ipfs-cluster/ipfs-cluster#1660](https://github.com/ipfs-cluster/ipfs-cluster/issues/1660) +* Build with go1.18 | [ipfs-cluster/ipfs-cluster#1661](https://github.com/ipfs-cluster/ipfs-cluster/issues/1661) +* Do not issue freespace metrics when freespace is 0 | [ipfs-cluster/ipfs-cluster#1656](https://github.com/ipfs-cluster/ipfs-cluster/issues/1656) +* Convert pinning/queued/error metrics go gauges | [ipfs-cluster/ipfs-cluster#1647](https://github.com/ipfs-cluster/ipfs-cluster/issues/1647) | [ipfs-cluster/ipfs-cluster#1651](https://github.com/ipfs-cluster/ipfs-cluster/issues/1651) #### Upgrading notices @@ -169,25 +169,25 @@ The full list of additional features and bug fixes can be found below. ##### Features -* restapi/adder: Add `?no-pin=true/false` option to `/add` endpoint | [ipfs/ipfs-cluster#1590](https://github.com/ipfs/ipfs-cluster/issues/1590) -* cluster: add `pin_only_on_trusted_peers` config option | [ipfs/ipfs-cluster#1585](https://github.com/ipfs/ipfs-cluster/issues/1585) | [ipfs/ipfs-cluster#1591](https://github.com/ipfs/ipfs-cluster/issues/1591) -* restapi/client: support querying status for multiple CIDs | [ipfs/ipfs-cluster#1564](https://github.com/ipfs/ipfs-cluster/issues/1564) | [ipfs/ipfs-cluster#1592](https://github.com/ipfs/ipfs-cluster/issues/1592) -* Pinning Services API | [ipfs/ipfs-cluster#1213](https://github.com/ipfs/ipfs-cluster/issues/1213) | [ipfs/ipfs-cluster#1483](https://github.com/ipfs/ipfs-cluster/issues/1483) -* restapi/adder: Return pin allocations on add output | [ipfs/ipfs-cluster#1598](https://github.com/ipfs/ipfs-cluster/issues/1598) | [ipfs/ipfs-cluster#1599](https://github.com/ipfs/ipfs-cluster/issues/1599) -* RPC Streaming | [ipfs/ipfs-cluster#1602](https://github.com/ipfs/ipfs-cluster/issues/1602) | [ipfs/ipfs-cluster#1607](https://github.com/ipfs/ipfs-cluster/issues/1607) | [ipfs/ipfs-cluster#1611](https://github.com/ipfs/ipfs-cluster/issues/1611) | [ipfs/ipfs-cluster#810](https://github.com/ipfs/ipfs-cluster/issues/810) | [ipfs/ipfs-cluster#1437](https://github.com/ipfs/ipfs-cluster/issues/1437) | [ipfs/ipfs-cluster#1616](https://github.com/ipfs/ipfs-cluster/issues/1616) | [ipfs/ipfs-cluster#1621](https://github.com/ipfs/ipfs-cluster/issues/1621) | [ipfs/ipfs-cluster#1631](https://github.com/ipfs/ipfs-cluster/issues/1631) | [ipfs/ipfs-cluster#1632](https://github.com/ipfs/ipfs-cluster/issues/1632) +* restapi/adder: Add `?no-pin=true/false` option to `/add` endpoint | [ipfs-cluster/ipfs-cluster#1590](https://github.com/ipfs-cluster/ipfs-cluster/issues/1590) +* cluster: add `pin_only_on_trusted_peers` config option | [ipfs-cluster/ipfs-cluster#1585](https://github.com/ipfs-cluster/ipfs-cluster/issues/1585) | [ipfs-cluster/ipfs-cluster#1591](https://github.com/ipfs-cluster/ipfs-cluster/issues/1591) +* restapi/client: support querying status for multiple CIDs | [ipfs-cluster/ipfs-cluster#1564](https://github.com/ipfs-cluster/ipfs-cluster/issues/1564) | [ipfs-cluster/ipfs-cluster#1592](https://github.com/ipfs-cluster/ipfs-cluster/issues/1592) +* Pinning Services API | [ipfs-cluster/ipfs-cluster#1213](https://github.com/ipfs-cluster/ipfs-cluster/issues/1213) | [ipfs-cluster/ipfs-cluster#1483](https://github.com/ipfs-cluster/ipfs-cluster/issues/1483) +* restapi/adder: Return pin allocations on add output | [ipfs-cluster/ipfs-cluster#1598](https://github.com/ipfs-cluster/ipfs-cluster/issues/1598) | [ipfs-cluster/ipfs-cluster#1599](https://github.com/ipfs-cluster/ipfs-cluster/issues/1599) +* RPC Streaming | [ipfs-cluster/ipfs-cluster#1602](https://github.com/ipfs-cluster/ipfs-cluster/issues/1602) | [ipfs-cluster/ipfs-cluster#1607](https://github.com/ipfs-cluster/ipfs-cluster/issues/1607) | [ipfs-cluster/ipfs-cluster#1611](https://github.com/ipfs-cluster/ipfs-cluster/issues/1611) | [ipfs-cluster/ipfs-cluster#810](https://github.com/ipfs-cluster/ipfs-cluster/issues/810) | [ipfs-cluster/ipfs-cluster#1437](https://github.com/ipfs-cluster/ipfs-cluster/issues/1437) | [ipfs-cluster/ipfs-cluster#1616](https://github.com/ipfs-cluster/ipfs-cluster/issues/1616) | [ipfs-cluster/ipfs-cluster#1621](https://github.com/ipfs-cluster/ipfs-cluster/issues/1621) | [ipfs-cluster/ipfs-cluster#1631](https://github.com/ipfs-cluster/ipfs-cluster/issues/1631) | [ipfs-cluster/ipfs-cluster#1632](https://github.com/ipfs-cluster/ipfs-cluster/issues/1632) ##### Bug fixes ##### Other changes -* pubsubmon: Remove accrual failure detection | [ipfs/ipfs-cluster#939](https://github.com/ipfs/ipfs-cluster/issues/939) | [ipfs/ipfs-cluster#1586](https://github.com/ipfs/ipfs-cluster/issues/1586) | [ipfs/ipfs-cluster#1589](https://github.com/ipfs/ipfs-cluster/issues/1589) -* crdt: log with INFO when batches are committed | [ipfs/ipfs-cluster#1596](https://github.com/ipfs/ipfs-cluster/issues/1596) -* Dependency upgrades | [ipfs/ipfs-cluster#1613](https://github.com/ipfs/ipfs-cluster/issues/1613) | [ipfs/ipfs-cluster#1617](https://github.com/ipfs/ipfs-cluster/issues/1617) | [ipfs/ipfs-cluster#1627](https://github.com/ipfs/ipfs-cluster/issues/1627) -* Bump RPC protocol version | [ipfs/ipfs-cluster#1615](https://github.com/ipfs/ipfs-cluster/issues/1615) -* Replace cid.Cid with api.Cid wrapper type | [ipfs/ipfs-cluster#1626](https://github.com/ipfs/ipfs-cluster/issues/1626) -* Provide string JSON marshalling for PinType | [ipfs/ipfs-cluster#1628](https://github.com/ipfs/ipfs-cluster/issues/1628) -* ipfs-cluster-ctl should exit with status 1 when an argument error happens | [ipfs/ipfs-cluster#1633](https://github.com/ipfs/ipfs-cluster/issues/1633) | [ipfs/ipfs-cluster#1634](https://github.com/ipfs/ipfs-cluster/issues/1634) -* Revamp and fix basic exported metrics: pins, queued, pinning, pin errors | [ipfs/ipfs-cluster#1187](https://github.com/ipfs/ipfs-cluster/issues/1187) | [ipfs/ipfs-cluster#1470](https://github.com/ipfs/ipfs-cluster/issues/1470) | [ipfs/ipfs-cluster#1637](https://github.com/ipfs/ipfs-cluster/issues/1637) +* pubsubmon: Remove accrual failure detection | [ipfs-cluster/ipfs-cluster#939](https://github.com/ipfs-cluster/ipfs-cluster/issues/939) | [ipfs-cluster/ipfs-cluster#1586](https://github.com/ipfs-cluster/ipfs-cluster/issues/1586) | [ipfs-cluster/ipfs-cluster#1589](https://github.com/ipfs-cluster/ipfs-cluster/issues/1589) +* crdt: log with INFO when batches are committed | [ipfs-cluster/ipfs-cluster#1596](https://github.com/ipfs-cluster/ipfs-cluster/issues/1596) +* Dependency upgrades | [ipfs-cluster/ipfs-cluster#1613](https://github.com/ipfs-cluster/ipfs-cluster/issues/1613) | [ipfs-cluster/ipfs-cluster#1617](https://github.com/ipfs-cluster/ipfs-cluster/issues/1617) | [ipfs-cluster/ipfs-cluster#1627](https://github.com/ipfs-cluster/ipfs-cluster/issues/1627) +* Bump RPC protocol version | [ipfs-cluster/ipfs-cluster#1615](https://github.com/ipfs-cluster/ipfs-cluster/issues/1615) +* Replace cid.Cid with api.Cid wrapper type | [ipfs-cluster/ipfs-cluster#1626](https://github.com/ipfs-cluster/ipfs-cluster/issues/1626) +* Provide string JSON marshalling for PinType | [ipfs-cluster/ipfs-cluster#1628](https://github.com/ipfs-cluster/ipfs-cluster/issues/1628) +* ipfs-cluster-ctl should exit with status 1 when an argument error happens | [ipfs-cluster/ipfs-cluster#1633](https://github.com/ipfs-cluster/ipfs-cluster/issues/1633) | [ipfs-cluster/ipfs-cluster#1634](https://github.com/ipfs-cluster/ipfs-cluster/issues/1634) +* Revamp and fix basic exported metrics: pins, queued, pinning, pin errors | [ipfs-cluster/ipfs-cluster#1187](https://github.com/ipfs-cluster/ipfs-cluster/issues/1187) | [ipfs-cluster/ipfs-cluster#1470](https://github.com/ipfs-cluster/ipfs-cluster/issues/1470) | [ipfs-cluster/ipfs-cluster#1637](https://github.com/ipfs-cluster/ipfs-cluster/issues/1637) #### Upgrading notices @@ -310,26 +310,26 @@ For the full list of feature and bugfixes, see list below. ##### Features -* CRDT: update with RepairInterval option and more workers | [ipfs/ipfs-cluster#1561](https://github.com/ipfs/ipfs-cluster/issues/1561) | [ipfs/ipfs-cluster#1576](https://github.com/ipfs/ipfs-cluster/issues/1576) -* Add `?cids` query parameter to /pins: limit status request to several CIDs | [ipfs/ipfs-cluster#1562](https://github.com/ipfs/ipfs-cluster/issues/1562) -* Pintracker improvements | [ipfs/ipfs-cluster#1556](https://github.com/ipfs/ipfs-cluster/issues/1556) | [ipfs/ipfs-cluster#1554](https://github.com/ipfs/ipfs-cluster/issues/1554) | [ipfs/ipfs-cluster#1212](https://github.com/ipfs/ipfs-cluster/issues/1212) +* CRDT: update with RepairInterval option and more workers | [ipfs-cluster/ipfs-cluster#1561](https://github.com/ipfs-cluster/ipfs-cluster/issues/1561) | [ipfs-cluster/ipfs-cluster#1576](https://github.com/ipfs-cluster/ipfs-cluster/issues/1576) +* Add `?cids` query parameter to /pins: limit status request to several CIDs | [ipfs-cluster/ipfs-cluster#1562](https://github.com/ipfs-cluster/ipfs-cluster/issues/1562) +* Pintracker improvements | [ipfs-cluster/ipfs-cluster#1556](https://github.com/ipfs-cluster/ipfs-cluster/issues/1556) | [ipfs-cluster/ipfs-cluster#1554](https://github.com/ipfs-cluster/ipfs-cluster/issues/1554) | [ipfs-cluster/ipfs-cluster#1212](https://github.com/ipfs-cluster/ipfs-cluster/issues/1212) * Status information shows peer ID of IPFS peer pinning the content * Peernames correctly set for remote peers on status objects * Pin names not set for in-flight pin status objects ##### Bug fixes -* Fix: logging was too noisy | [ipfs/ipfs-cluster#1581](https://github.com/ipfs/ipfs-cluster/issues/1581) | [ipfs/ipfs-cluster#1579](https://github.com/ipfs/ipfs-cluster/issues/1579) -* Remove warning message about informer metrics | [ipfs/ipfs-cluster#1543](https://github.com/ipfs/ipfs-cluster/issues/1543) -* Fix: IPFS repo/stat gets hammered on busy peers | [ipfs/ipfs-cluster#1559](https://github.com/ipfs/ipfs-cluster/issues/1559) -* Fix: faster shutdown by aborting state list on context cancellation | [ipfs/ipfs-cluster#1555](https://github.com/ipfs/ipfs-cluster/issues/1555) +* Fix: logging was too noisy | [ipfs-cluster/ipfs-cluster#1581](https://github.com/ipfs-cluster/ipfs-cluster/issues/1581) | [ipfs-cluster/ipfs-cluster#1579](https://github.com/ipfs-cluster/ipfs-cluster/issues/1579) +* Remove warning message about informer metrics | [ipfs-cluster/ipfs-cluster#1543](https://github.com/ipfs-cluster/ipfs-cluster/issues/1543) +* Fix: IPFS repo/stat gets hammered on busy peers | [ipfs-cluster/ipfs-cluster#1559](https://github.com/ipfs-cluster/ipfs-cluster/issues/1559) +* Fix: faster shutdown by aborting state list on context cancellation | [ipfs-cluster/ipfs-cluster#1555](https://github.com/ipfs-cluster/ipfs-cluster/issues/1555) ##### Other changes -* Leave peername empty when unknown on status response | [ipfs/ipfs-cluster#1569](https://github.com/ipfs/ipfs-cluster/issues/1569) | [ipfs/ipfs-cluster#1575](https://github.com/ipfs/ipfs-cluster/issues/1575) -* Fix comment in graphs.go | [ipfs/ipfs-cluster#1570](https://github.com/ipfs/ipfs-cluster/issues/1570) | [ipfs/ipfs-cluster#1574](https://github.com/ipfs/ipfs-cluster/issues/1574) -* Make `/add?local=true` requests forcefully allocate to local peer | [ipfs/ipfs-cluster#1560](https://github.com/ipfs/ipfs-cluster/issues/1560) -* Dependency upgrades | [ipfs/ipfs-cluster#1580](https://github.com/ipfs/ipfs-cluster/issues/1580) +* Leave peername empty when unknown on status response | [ipfs-cluster/ipfs-cluster#1569](https://github.com/ipfs-cluster/ipfs-cluster/issues/1569) | [ipfs-cluster/ipfs-cluster#1575](https://github.com/ipfs-cluster/ipfs-cluster/issues/1575) +* Fix comment in graphs.go | [ipfs-cluster/ipfs-cluster#1570](https://github.com/ipfs-cluster/ipfs-cluster/issues/1570) | [ipfs-cluster/ipfs-cluster#1574](https://github.com/ipfs-cluster/ipfs-cluster/issues/1574) +* Make `/add?local=true` requests forcefully allocate to local peer | [ipfs-cluster/ipfs-cluster#1560](https://github.com/ipfs-cluster/ipfs-cluster/issues/1560) +* Dependency upgrades | [ipfs-cluster/ipfs-cluster#1580](https://github.com/ipfs-cluster/ipfs-cluster/issues/1580) #### Upgrading notices @@ -400,14 +400,14 @@ No new features. ##### Bug fixes -* Improved pruning on crdt-sync | [ipfs/ipfs-cluster#1541](https://github.com/ipfs/ipfs-cluster/issues/1541) -* Pintracker: avoid pin/ls for every item | [ipfs/ipfs-cluster#1538](https://github.com/ipfs/ipfs-cluster/issues/1538) -* Pintracker: set unexpectedly_unpinned status correctly | [ipfs/ipfs-cluster#1537](https://github.com/ipfs/ipfs-cluster/issues/1537) -* Tags informer: TTL should be default when not provided | [ipfs/ipfs-cluster#1519](https://github.com/ipfs/ipfs-cluster/issues/1519) +* Improved pruning on crdt-sync | [ipfs-cluster/ipfs-cluster#1541](https://github.com/ipfs-cluster/ipfs-cluster/issues/1541) +* Pintracker: avoid pin/ls for every item | [ipfs-cluster/ipfs-cluster#1538](https://github.com/ipfs-cluster/ipfs-cluster/issues/1538) +* Pintracker: set unexpectedly_unpinned status correctly | [ipfs-cluster/ipfs-cluster#1537](https://github.com/ipfs-cluster/ipfs-cluster/issues/1537) +* Tags informer: TTL should be default when not provided | [ipfs-cluster/ipfs-cluster#1519](https://github.com/ipfs-cluster/ipfs-cluster/issues/1519) ##### Other changes -* ipfs-cluster-service: buffered i/o on state import/export | [ipfs/ipfs-cluster#1517](https://github.com/ipfs/ipfs-cluster/issues/1517) +* ipfs-cluster-service: buffered i/o on state import/export | [ipfs-cluster/ipfs-cluster#1517](https://github.com/ipfs-cluster/ipfs-cluster/issues/1517) * Dependency upgrades, go-libp2p v0.17.0 | 1540 #### Upgrading notices @@ -461,18 +461,18 @@ property set. ##### Features -* State import: allow replication factor and allocations overwrite | [ipfs/ipfs-cluster#1508](https://github.com/ipfs/ipfs-cluster/issues/1508) +* State import: allow replication factor and allocations overwrite | [ipfs-cluster/ipfs-cluster#1508](https://github.com/ipfs-cluster/ipfs-cluster/issues/1508) ##### Bug fixes -* Fix state deserialization | [ipfs/ipfs-cluster#1507](https://github.com/ipfs/ipfs-cluster/issues/1507) -* Fix pintracker shutdown errors | [ipfs/ipfs-cluster#1510](https://github.com/ipfs/ipfs-cluster/issues/1510) -* API: CORS pre-flight (OPTIONS) requests should bypass authentication | [ipfs/ipfs-cluster#1512](https://github.com/ipfs/ipfs-cluster/issues/1512) | [ipfs/ipfs-cluster#1513](https://github.com/ipfs/ipfs-cluster/issues/1513) | [ipfs/ipfs-cluster#1514](https://github.com/ipfs/ipfs-cluster/issues/1514) -* Monitor: avoid sending invalid metrics | [ipfs/ipfs-cluster#1511](https://github.com/ipfs/ipfs-cluster/issues/1511) +* Fix state deserialization | [ipfs-cluster/ipfs-cluster#1507](https://github.com/ipfs-cluster/ipfs-cluster/issues/1507) +* Fix pintracker shutdown errors | [ipfs-cluster/ipfs-cluster#1510](https://github.com/ipfs-cluster/ipfs-cluster/issues/1510) +* API: CORS pre-flight (OPTIONS) requests should bypass authentication | [ipfs-cluster/ipfs-cluster#1512](https://github.com/ipfs-cluster/ipfs-cluster/issues/1512) | [ipfs-cluster/ipfs-cluster#1513](https://github.com/ipfs-cluster/ipfs-cluster/issues/1513) | [ipfs-cluster/ipfs-cluster#1514](https://github.com/ipfs-cluster/ipfs-cluster/issues/1514) +* Monitor: avoid sending invalid metrics | [ipfs-cluster/ipfs-cluster#1511](https://github.com/ipfs-cluster/ipfs-cluster/issues/1511) ##### Other changes -* Performance improvements to state list and logging for large states | [ipfs/ipfs-cluster#1510](https://github.com/ipfs/ipfs-cluster/issues/1510) +* Performance improvements to state list and logging for large states | [ipfs-cluster/ipfs-cluster#1510](https://github.com/ipfs-cluster/ipfs-cluster/issues/1510) #### Upgrading notices @@ -530,20 +530,20 @@ configure these new features. ##### Features - * Tags informer and partition-based allocations | [ipfs/ipfs-cluster#159](https://github.com/ipfs/ipfs-cluster/issues/159) | [ipfs/ipfs-cluster#1468](https://github.com/ipfs/ipfs-cluster/issues/1468) | [ipfs/ipfs-cluster#1485](https://github.com/ipfs/ipfs-cluster/issues/1485) - * Add timestamps to pin objects | [ipfs/ipfs-cluster#1484](https://github.com/ipfs/ipfs-cluster/issues/1484) | [ipfs/ipfs-cluster#989](https://github.com/ipfs/ipfs-cluster/issues/989) - * Support priority pinning for recent pins with small number of retries | [ipfs/ipfs-cluster#1469](https://github.com/ipfs/ipfs-cluster/issues/1469) | [ipfs/ipfs-cluster#1490](https://github.com/ipfs/ipfs-cluster/issues/1490) + * Tags informer and partition-based allocations | [ipfs-cluster/ipfs-cluster#159](https://github.com/ipfs-cluster/ipfs-cluster/issues/159) | [ipfs-cluster/ipfs-cluster#1468](https://github.com/ipfs-cluster/ipfs-cluster/issues/1468) | [ipfs-cluster/ipfs-cluster#1485](https://github.com/ipfs-cluster/ipfs-cluster/issues/1485) + * Add timestamps to pin objects | [ipfs-cluster/ipfs-cluster#1484](https://github.com/ipfs-cluster/ipfs-cluster/issues/1484) | [ipfs-cluster/ipfs-cluster#989](https://github.com/ipfs-cluster/ipfs-cluster/issues/989) + * Support priority pinning for recent pins with small number of retries | [ipfs-cluster/ipfs-cluster#1469](https://github.com/ipfs-cluster/ipfs-cluster/issues/1469) | [ipfs-cluster/ipfs-cluster#1490](https://github.com/ipfs-cluster/ipfs-cluster/issues/1490) ##### Bug fixes - * Fix flaky adder test | [ipfs/ipfs-cluster#1461](https://github.com/ipfs/ipfs-cluster/issues/1461) | [ipfs/ipfs-cluster#1462](https://github.com/ipfs/ipfs-cluster/issues/1462) + * Fix flaky adder test | [ipfs-cluster/ipfs-cluster#1461](https://github.com/ipfs-cluster/ipfs-cluster/issues/1461) | [ipfs-cluster/ipfs-cluster#1462](https://github.com/ipfs-cluster/ipfs-cluster/issues/1462) ##### Other changes - * Refactor API to facilitate re-use of functionality | [ipfs/ipfs-cluster#1471](https://github.com/ipfs/ipfs-cluster/issues/1471) - * Move testing to Github Actions | [ipfs/ipfs-cluster#1486](https://github.com/ipfs/ipfs-cluster/issues/1486) - * Dependency upgrades (go-libp2p v0.16.0 etc.) | [ipfs/ipfs-cluster#1491](https://github.com/ipfs/ipfs-cluster/issues/1491) | [ipfs/ipfs-cluster#1501](https://github.com/ipfs/ipfs-cluster/issues/1501) | [ipfs/ipfs-cluster#1504](https://github.com/ipfs/ipfs-cluster/issues/1504) - * Improve `health metrics ` output in ipfs-cluster-ctl | [ipfs/ipfs-cluster#1506](https://github.com/ipfs/ipfs-cluster/issues/1506) + * Refactor API to facilitate re-use of functionality | [ipfs-cluster/ipfs-cluster#1471](https://github.com/ipfs-cluster/ipfs-cluster/issues/1471) + * Move testing to Github Actions | [ipfs-cluster/ipfs-cluster#1486](https://github.com/ipfs-cluster/ipfs-cluster/issues/1486) + * Dependency upgrades (go-libp2p v0.16.0 etc.) | [ipfs-cluster/ipfs-cluster#1491](https://github.com/ipfs-cluster/ipfs-cluster/issues/1491) | [ipfs-cluster/ipfs-cluster#1501](https://github.com/ipfs-cluster/ipfs-cluster/issues/1501) | [ipfs-cluster/ipfs-cluster#1504](https://github.com/ipfs-cluster/ipfs-cluster/issues/1504) + * Improve `health metrics ` output in ipfs-cluster-ctl | [ipfs-cluster/ipfs-cluster#1506](https://github.com/ipfs-cluster/ipfs-cluster/issues/1506) #### Upgrading notices @@ -652,19 +652,19 @@ This release is fully compatible with the previous release. ##### Features -* Improve support for pre-0.14.0 peers | [ipfs/ipfs-cluster#1409](https://github.com/ipfs/ipfs-cluster/issues/1409) | [ipfs/ipfs-cluster#1446](https://github.com/ipfs/ipfs-cluster/issues/1446) -* Improve log-level handling | [ipfs/ipfs-cluster#1439](https://github.com/ipfs/ipfs-cluster/issues/1439) -* ctl: --wait returns as soon as replication-factor-min is reached | [ipfs/ipfs-cluster#1427](https://github.com/ipfs/ipfs-cluster/issues/1427) | [ipfs/ipfs-cluster#1444](https://github.com/ipfs/ipfs-cluster/issues/1444) +* Improve support for pre-0.14.0 peers | [ipfs-cluster/ipfs-cluster#1409](https://github.com/ipfs-cluster/ipfs-cluster/issues/1409) | [ipfs-cluster/ipfs-cluster#1446](https://github.com/ipfs-cluster/ipfs-cluster/issues/1446) +* Improve log-level handling | [ipfs-cluster/ipfs-cluster#1439](https://github.com/ipfs-cluster/ipfs-cluster/issues/1439) +* ctl: --wait returns as soon as replication-factor-min is reached | [ipfs-cluster/ipfs-cluster#1427](https://github.com/ipfs-cluster/ipfs-cluster/issues/1427) | [ipfs-cluster/ipfs-cluster#1444](https://github.com/ipfs-cluster/ipfs-cluster/issues/1444) ##### Bug fixes -* Fix some data races in tests | [ipfs/ipfs-cluster#1428](https://github.com/ipfs/ipfs-cluster/issues/1428) -* Do not block peer startup while waiting for RecoverAll | [ipfs/ipfs-cluster#1436](https://github.com/ipfs/ipfs-cluster/issues/1436) | [ipfs/ipfs-cluster#1438](https://github.com/ipfs/ipfs-cluster/issues/1438) -* Use HTTP 307-redirects on restapi paths ending with "/" | [ipfs/ipfs-cluster#1415](https://github.com/ipfs/ipfs-cluster/issues/1415) | [ipfs/ipfs-cluster#1445](https://github.com/ipfs/ipfs-cluster/issues/1445) +* Fix some data races in tests | [ipfs-cluster/ipfs-cluster#1428](https://github.com/ipfs-cluster/ipfs-cluster/issues/1428) +* Do not block peer startup while waiting for RecoverAll | [ipfs-cluster/ipfs-cluster#1436](https://github.com/ipfs-cluster/ipfs-cluster/issues/1436) | [ipfs-cluster/ipfs-cluster#1438](https://github.com/ipfs-cluster/ipfs-cluster/issues/1438) +* Use HTTP 307-redirects on restapi paths ending with "/" | [ipfs-cluster/ipfs-cluster#1415](https://github.com/ipfs-cluster/ipfs-cluster/issues/1415) | [ipfs-cluster/ipfs-cluster#1445](https://github.com/ipfs-cluster/ipfs-cluster/issues/1445) ##### Other changes -* Dependency upgrades | [ipfs/ipfs-cluster#1451](https://github.com/ipfs/ipfs-cluster/issues/1451) +* Dependency upgrades | [ipfs-cluster/ipfs-cluster#1451](https://github.com/ipfs-cluster/ipfs-cluster/issues/1451) #### Upgrading notices @@ -738,7 +738,7 @@ items that do not require listing the full state. Finally, cluster pins now have an `origins` option, which allows submitters to provide hints for providers of the content. Cluster will instruct IPFS to connect to the `origins` of a pin before pinning. Note that for the moment -[ipfs will keep connected to those peers permanently](https://github.com/ipfs/ipfs-cluster/issues/1376). +[ipfs will keep connected to those peers permanently](https://github.com/ipfs-cluster/ipfs-cluster/issues/1376). Please read carefully through the notes below, as the release includes subtle changes in configuration, defaults and behaviours which may in some cases @@ -748,28 +748,28 @@ affect you (although probably will not). ##### Features -* Set disable_repinning to true by default, for new configurations | [ipfs/ipfs-cluster#1398](https://github.com/ipfs/ipfs-cluster/issues/1398) -* Efficient status queries with filters | [ipfs/ipfs-cluster#1360](https://github.com/ipfs/ipfs-cluster/issues/1360) | [ipfs/ipfs-cluster#1377](https://github.com/ipfs/ipfs-cluster/issues/1377) | [ipfs/ipfs-cluster#1399](https://github.com/ipfs/ipfs-cluster/issues/1399) -* User-provided pin "origins" | [ipfs/ipfs-cluster#1374](https://github.com/ipfs/ipfs-cluster/issues/1374) | [ipfs/ipfs-cluster#1375](https://github.com/ipfs/ipfs-cluster/issues/1375) -* Provide darwin/arm64 binaries (Apple M1). Needs testing! | [ipfs/ipfs-cluster#1369](https://github.com/ipfs/ipfs-cluster/issues/1369) -* Set the "size" field in the response when adding CARs when the archive contains a single unixfs file | [ipfs/ipfs-cluster#1362](https://github.com/ipfs/ipfs-cluster/issues/1362) | [ipfs/ipfs-cluster#1372](https://github.com/ipfs/ipfs-cluster/issues/1372) -* Support a leveldb-datastore backend | [ipfs/ipfs-cluster#1364](https://github.com/ipfs/ipfs-cluster/issues/1364) | [ipfs/ipfs-cluster#1373](https://github.com/ipfs/ipfs-cluster/issues/1373) -* Speed up pin/ls by not filtering when not needed | [ipfs/ipfs-cluster#1405](https://github.com/ipfs/ipfs-cluster/issues/1405) +* Set disable_repinning to true by default, for new configurations | [ipfs-cluster/ipfs-cluster#1398](https://github.com/ipfs-cluster/ipfs-cluster/issues/1398) +* Efficient status queries with filters | [ipfs-cluster/ipfs-cluster#1360](https://github.com/ipfs-cluster/ipfs-cluster/issues/1360) | [ipfs-cluster/ipfs-cluster#1377](https://github.com/ipfs-cluster/ipfs-cluster/issues/1377) | [ipfs-cluster/ipfs-cluster#1399](https://github.com/ipfs-cluster/ipfs-cluster/issues/1399) +* User-provided pin "origins" | [ipfs-cluster/ipfs-cluster#1374](https://github.com/ipfs-cluster/ipfs-cluster/issues/1374) | [ipfs-cluster/ipfs-cluster#1375](https://github.com/ipfs-cluster/ipfs-cluster/issues/1375) +* Provide darwin/arm64 binaries (Apple M1). Needs testing! | [ipfs-cluster/ipfs-cluster#1369](https://github.com/ipfs-cluster/ipfs-cluster/issues/1369) +* Set the "size" field in the response when adding CARs when the archive contains a single unixfs file | [ipfs-cluster/ipfs-cluster#1362](https://github.com/ipfs-cluster/ipfs-cluster/issues/1362) | [ipfs-cluster/ipfs-cluster#1372](https://github.com/ipfs-cluster/ipfs-cluster/issues/1372) +* Support a leveldb-datastore backend | [ipfs-cluster/ipfs-cluster#1364](https://github.com/ipfs-cluster/ipfs-cluster/issues/1364) | [ipfs-cluster/ipfs-cluster#1373](https://github.com/ipfs-cluster/ipfs-cluster/issues/1373) +* Speed up pin/ls by not filtering when not needed | [ipfs-cluster/ipfs-cluster#1405](https://github.com/ipfs-cluster/ipfs-cluster/issues/1405) ##### Bug fixes -* Badger datastore takes too much size | [ipfs/ipfs-cluster#1320](https://github.com/ipfs/ipfs-cluster/issues/1320) | [ipfs/ipfs-cluster#1370](https://github.com/ipfs/ipfs-cluster/issues/1370) -* Fix: error-type responses from the IPFS proxy not understood by ipfs | [ipfs/ipfs-cluster#1366](https://github.com/ipfs/ipfs-cluster/issues/1366) | [ipfs/ipfs-cluster#1371](https://github.com/ipfs/ipfs-cluster/issues/1371) -* Fix: adding with cid-version=1 does not automagically set raw-leaves | [ipfs/ipfs-cluster#1358](https://github.com/ipfs/ipfs-cluster/issues/1358) | [ipfs/ipfs-cluster#1359](https://github.com/ipfs/ipfs-cluster/issues/1359) -* Tests: close datastore on test node shutdown | [ipfs/ipfs-cluster#1389](https://github.com/ipfs/ipfs-cluster/issues/1389) -* Fix ipfs-cluster-ctl not using dns name when talking to remote https endpoints | [ipfs/ipfs-cluster#1403](https://github.com/ipfs/ipfs-cluster/issues/1403) | [ipfs/ipfs-cluster#1404](https://github.com/ipfs/ipfs-cluster/issues/1404) +* Badger datastore takes too much size | [ipfs-cluster/ipfs-cluster#1320](https://github.com/ipfs-cluster/ipfs-cluster/issues/1320) | [ipfs-cluster/ipfs-cluster#1370](https://github.com/ipfs-cluster/ipfs-cluster/issues/1370) +* Fix: error-type responses from the IPFS proxy not understood by ipfs | [ipfs-cluster/ipfs-cluster#1366](https://github.com/ipfs-cluster/ipfs-cluster/issues/1366) | [ipfs-cluster/ipfs-cluster#1371](https://github.com/ipfs-cluster/ipfs-cluster/issues/1371) +* Fix: adding with cid-version=1 does not automagically set raw-leaves | [ipfs-cluster/ipfs-cluster#1358](https://github.com/ipfs-cluster/ipfs-cluster/issues/1358) | [ipfs-cluster/ipfs-cluster#1359](https://github.com/ipfs-cluster/ipfs-cluster/issues/1359) +* Tests: close datastore on test node shutdown | [ipfs-cluster/ipfs-cluster#1389](https://github.com/ipfs-cluster/ipfs-cluster/issues/1389) +* Fix ipfs-cluster-ctl not using dns name when talking to remote https endpoints | [ipfs-cluster/ipfs-cluster#1403](https://github.com/ipfs-cluster/ipfs-cluster/issues/1403) | [ipfs-cluster/ipfs-cluster#1404](https://github.com/ipfs-cluster/ipfs-cluster/issues/1404) ##### Other changes -* Dependency upgrades | [ipfs/ipfs-cluster#1378](https://github.com/ipfs/ipfs-cluster/issues/1378) | [ipfs/ipfs-cluster#1395](https://github.com/ipfs/ipfs-cluster/issues/1395) -* Update compose to use the latest go-ipfs | [ipfs/ipfs-cluster#1363](https://github.com/ipfs/ipfs-cluster/issues/1363) -* Update IRC links to point to new Matrix channel | [ipfs/ipfs-cluster#1361](https://github.com/ipfs/ipfs-cluster/issues/1361) +* Dependency upgrades | [ipfs-cluster/ipfs-cluster#1378](https://github.com/ipfs-cluster/ipfs-cluster/issues/1378) | [ipfs-cluster/ipfs-cluster#1395](https://github.com/ipfs-cluster/ipfs-cluster/issues/1395) +* Update compose to use the latest go-ipfs | [ipfs-cluster/ipfs-cluster#1363](https://github.com/ipfs-cluster/ipfs-cluster/issues/1363) +* Update IRC links to point to new Matrix channel | [ipfs-cluster/ipfs-cluster#1361](https://github.com/ipfs-cluster/ipfs-cluster/issues/1361) #### Upgrading notices @@ -883,16 +883,16 @@ For more details, check the list below and the latest documentation on the ##### Features -* Support adding CAR files | [ipfs/ipfs-cluster#1343](https://github.com/ipfs/ipfs-cluster/issues/1343) -* CRDT batching support | [ipfs/ipfs-cluster#1008](https://github.com/ipfs/ipfs-cluster/issues/1008) | [ipfs/ipfs-cluster#1346](https://github.com/ipfs/ipfs-cluster/issues/1346) | [ipfs/ipfs-cluster#1356](https://github.com/ipfs/ipfs-cluster/issues/1356) +* Support adding CAR files | [ipfs-cluster/ipfs-cluster#1343](https://github.com/ipfs-cluster/ipfs-cluster/issues/1343) +* CRDT batching support | [ipfs-cluster/ipfs-cluster#1008](https://github.com/ipfs-cluster/ipfs-cluster/issues/1008) | [ipfs-cluster/ipfs-cluster#1346](https://github.com/ipfs-cluster/ipfs-cluster/issues/1346) | [ipfs-cluster/ipfs-cluster#1356](https://github.com/ipfs-cluster/ipfs-cluster/issues/1356) ##### Bug fixes -* Improve timeouts and timeout faster when dialing | [ipfs/ipfs-cluster#1350](https://github.com/ipfs/ipfs-cluster/issues/1350) | [ipfs/ipfs-cluster#1351](https://github.com/ipfs/ipfs-cluster/issues/1351) +* Improve timeouts and timeout faster when dialing | [ipfs-cluster/ipfs-cluster#1350](https://github.com/ipfs-cluster/ipfs-cluster/issues/1350) | [ipfs-cluster/ipfs-cluster#1351](https://github.com/ipfs-cluster/ipfs-cluster/issues/1351) ##### Other changes -* Dependency upgrades | [ipfs/ipfs-cluster#1357](https://github.com/ipfs/ipfs-cluster/issues/1357) +* Dependency upgrades | [ipfs-cluster/ipfs-cluster#1357](https://github.com/ipfs-cluster/ipfs-cluster/issues/1357) #### Upgrading notices @@ -947,19 +947,19 @@ couple of small features. It is fully compatible with the previous release. ##### Features -* Make mDNS failures non-fatal | [ipfs/ipfs-cluster#1193](https://github.com/ipfs/ipfs-cluster/issues/1193) | [ipfs/ipfs-cluster#1310](https://github.com/ipfs/ipfs-cluster/issues/1310) -* Add `--wait` flag to `ipfs-cluster-ctl add` command | [ipfs/ipfs-cluster#1285](https://github.com/ipfs/ipfs-cluster/issues/1285) | [ipfs/ipfs-cluster#1301](https://github.com/ipfs/ipfs-cluster/issues/1301) +* Make mDNS failures non-fatal | [ipfs-cluster/ipfs-cluster#1193](https://github.com/ipfs-cluster/ipfs-cluster/issues/1193) | [ipfs-cluster/ipfs-cluster#1310](https://github.com/ipfs-cluster/ipfs-cluster/issues/1310) +* Add `--wait` flag to `ipfs-cluster-ctl add` command | [ipfs-cluster/ipfs-cluster#1285](https://github.com/ipfs-cluster/ipfs-cluster/issues/1285) | [ipfs-cluster/ipfs-cluster#1301](https://github.com/ipfs-cluster/ipfs-cluster/issues/1301) ##### Bug fixes -* Stop using secio in REST API libp2p server and client | [ipfs/ipfs-cluster#1315](https://github.com/ipfs/ipfs-cluster/issues/1315) | [ipfs/ipfs-cluster#1316](https://github.com/ipfs/ipfs-cluster/issues/1316) -* CID status wrongly reported as REMOTE | [ipfs/ipfs-cluster#1319](https://github.com/ipfs/ipfs-cluster/issues/1319) | [ipfs/ipfs-cluster#1331](https://github.com/ipfs/ipfs-cluster/issues/1331) +* Stop using secio in REST API libp2p server and client | [ipfs-cluster/ipfs-cluster#1315](https://github.com/ipfs-cluster/ipfs-cluster/issues/1315) | [ipfs-cluster/ipfs-cluster#1316](https://github.com/ipfs-cluster/ipfs-cluster/issues/1316) +* CID status wrongly reported as REMOTE | [ipfs-cluster/ipfs-cluster#1319](https://github.com/ipfs-cluster/ipfs-cluster/issues/1319) | [ipfs-cluster/ipfs-cluster#1331](https://github.com/ipfs-cluster/ipfs-cluster/issues/1331) ##### Other changes -* Dependency upgrades | [ipfs/ipfs-cluster#1335](https://github.com/ipfs/ipfs-cluster/issues/1335) -* Use cid.Cid as map keys in Pintracker | [ipfs/ipfs-cluster#1322](https://github.com/ipfs/ipfs-cluster/issues/1322) +* Dependency upgrades | [ipfs-cluster/ipfs-cluster#1335](https://github.com/ipfs-cluster/ipfs-cluster/issues/1335) +* Use cid.Cid as map keys in Pintracker | [ipfs-cluster/ipfs-cluster#1322](https://github.com/ipfs-cluster/ipfs-cluster/issues/1322) #### Upgrading notices @@ -998,22 +998,22 @@ The new `noise` transport becomes the preferred option. ##### Features -* Support for multiple architectures added to the Docker container | [ipfs/ipfs-cluster#1085](https://github.com/ipfs/ipfs-cluster/issues/1085) | [ipfs/ipfs-cluster#1196](https://github.com/ipfs/ipfs-cluster/issues/1196) -* Add `--name` and `--expire` to `ipfs-cluster-ctl pin update` | [ipfs/ipfs-cluster#1184](https://github.com/ipfs/ipfs-cluster/issues/1184) | [ipfs/ipfs-cluster#1195](https://github.com/ipfs/ipfs-cluster/issues/1195) -* Failover client integrated in `ipfs-cluster-ctl` | [ipfs/ipfs-cluster#1222](https://github.com/ipfs/ipfs-cluster/issues/1222) | [ipfs/ipfs-cluster#1250](https://github.com/ipfs/ipfs-cluster/issues/1250) -* `ipfs-cluster-ctl health alerts` lists the last expired metrics seen by the peer | [ipfs/ipfs-cluster#165](https://github.com/ipfs/ipfs-cluster/issues/165) | [ipfs/ipfs-cluster#978](https://github.com/ipfs/ipfs-cluster/issues/978) +* Support for multiple architectures added to the Docker container | [ipfs-cluster/ipfs-cluster#1085](https://github.com/ipfs-cluster/ipfs-cluster/issues/1085) | [ipfs-cluster/ipfs-cluster#1196](https://github.com/ipfs-cluster/ipfs-cluster/issues/1196) +* Add `--name` and `--expire` to `ipfs-cluster-ctl pin update` | [ipfs-cluster/ipfs-cluster#1184](https://github.com/ipfs-cluster/ipfs-cluster/issues/1184) | [ipfs-cluster/ipfs-cluster#1195](https://github.com/ipfs-cluster/ipfs-cluster/issues/1195) +* Failover client integrated in `ipfs-cluster-ctl` | [ipfs-cluster/ipfs-cluster#1222](https://github.com/ipfs-cluster/ipfs-cluster/issues/1222) | [ipfs-cluster/ipfs-cluster#1250](https://github.com/ipfs-cluster/ipfs-cluster/issues/1250) +* `ipfs-cluster-ctl health alerts` lists the last expired metrics seen by the peer | [ipfs-cluster/ipfs-cluster#165](https://github.com/ipfs-cluster/ipfs-cluster/issues/165) | [ipfs-cluster/ipfs-cluster#978](https://github.com/ipfs-cluster/ipfs-cluster/issues/978) ##### Bug fixes -* IPFS Proxy: pin progress objects wrongly includes non empty `Hash` key | [ipfs/ipfs-cluster#1286](https://github.com/ipfs/ipfs-cluster/issues/1286) | [ipfs/ipfs-cluster#1287](https://github.com/ipfs/ipfs-cluster/issues/1287) -* CRDT: Fix pubsub peer validation check | [ipfs/ipfs-cluster#1288](https://github.com/ipfs/ipfs-cluster/issues/1288) +* IPFS Proxy: pin progress objects wrongly includes non empty `Hash` key | [ipfs-cluster/ipfs-cluster#1286](https://github.com/ipfs-cluster/ipfs-cluster/issues/1286) | [ipfs-cluster/ipfs-cluster#1287](https://github.com/ipfs-cluster/ipfs-cluster/issues/1287) +* CRDT: Fix pubsub peer validation check | [ipfs-cluster/ipfs-cluster#1288](https://github.com/ipfs-cluster/ipfs-cluster/issues/1288) ##### Other changes -* Typos | [ipfs/ipfs-cluster#1181](https://github.com/ipfs/ipfs-cluster/issues/1181) | [ipfs/ipfs-cluster#1183](https://github.com/ipfs/ipfs-cluster/issues/1183) -* Reduce default pin_timeout to 2 minutes | [ipfs/ipfs-cluster#1160](https://github.com/ipfs/ipfs-cluster/issues/1160) -* Dependency upgrades | [ipfs/ipfs-cluster#1125](https://github.com/ipfs/ipfs-cluster/issues/1125) | [ipfs/ipfs-cluster#1238](https://github.com/ipfs/ipfs-cluster/issues/1238) -* Remove `secio` security transport | [ipfs/ipfs-cluster#1214](https://github.com/ipfs/ipfs-cluster/issues/1214) | [ipfs/ipfs-cluster#1227](https://github.com/ipfs/ipfs-cluster/issues/1227) +* Typos | [ipfs-cluster/ipfs-cluster#1181](https://github.com/ipfs-cluster/ipfs-cluster/issues/1181) | [ipfs-cluster/ipfs-cluster#1183](https://github.com/ipfs-cluster/ipfs-cluster/issues/1183) +* Reduce default pin_timeout to 2 minutes | [ipfs-cluster/ipfs-cluster#1160](https://github.com/ipfs-cluster/ipfs-cluster/issues/1160) +* Dependency upgrades | [ipfs-cluster/ipfs-cluster#1125](https://github.com/ipfs-cluster/ipfs-cluster/issues/1125) | [ipfs-cluster/ipfs-cluster#1238](https://github.com/ipfs-cluster/ipfs-cluster/issues/1238) +* Remove `secio` security transport | [ipfs-cluster/ipfs-cluster#1214](https://github.com/ipfs-cluster/ipfs-cluster/issues/1214) | [ipfs-cluster/ipfs-cluster#1227](https://github.com/ipfs-cluster/ipfs-cluster/issues/1227) #### Upgrading notices @@ -1065,33 +1065,33 @@ as possible for a swifter experience with IPFS Cluster. ##### Features -* Support multiple listen interfaces | [ipfs/ipfs-cluster#1000](https://github.com/ipfs/ipfs-cluster/issues/1000) | [ipfs/ipfs-cluster#1010](https://github.com/ipfs/ipfs-cluster/issues/1010) | [ipfs/ipfs-cluster#1002](https://github.com/ipfs/ipfs-cluster/issues/1002) -* Show expiration information in `ipfs-cluster-ctl pin ls` | [ipfs/ipfs-cluster#998](https://github.com/ipfs/ipfs-cluster/issues/998) | [ipfs/ipfs-cluster#1024](https://github.com/ipfs/ipfs-cluster/issues/1024) | [ipfs/ipfs-cluster#1066](https://github.com/ipfs/ipfs-cluster/issues/1066) -* Show pin names in `ipfs-cluster-ctl status` (and API endpoint) | [ipfs/ipfs-cluster#1129](https://github.com/ipfs/ipfs-cluster/issues/1129) -* Allow updating expiration when doing `pin update` | [ipfs/ipfs-cluster#996](https://github.com/ipfs/ipfs-cluster/issues/996) | [ipfs/ipfs-cluster#1065](https://github.com/ipfs/ipfs-cluster/issues/1065) | [ipfs/ipfs-cluster#1013](https://github.com/ipfs/ipfs-cluster/issues/1013) -* Add "direct" pin mode. Cluster supports direct pins | [ipfs/ipfs-cluster#1009](https://github.com/ipfs/ipfs-cluster/issues/1009) | [ipfs/ipfs-cluster#1083](https://github.com/ipfs/ipfs-cluster/issues/1083) -* Better badger defaults for less memory usage | [ipfs/ipfs-cluster#1027](https://github.com/ipfs/ipfs-cluster/issues/1027) -* Print configuration (without sensitive values) when enabling debug for `ipfs-cluster-service` | [ipfs/ipfs-cluster#937](https://github.com/ipfs/ipfs-cluster/issues/937) | [ipfs/ipfs-cluster#959](https://github.com/ipfs/ipfs-cluster/issues/959) -* `ipfs-cluster-follow list` works fully offline (without needing IPFS to run) | [ipfs/ipfs-cluster#1129](https://github.com/ipfs/ipfs-cluster/issues/1129) +* Support multiple listen interfaces | [ipfs-cluster/ipfs-cluster#1000](https://github.com/ipfs-cluster/ipfs-cluster/issues/1000) | [ipfs-cluster/ipfs-cluster#1010](https://github.com/ipfs-cluster/ipfs-cluster/issues/1010) | [ipfs-cluster/ipfs-cluster#1002](https://github.com/ipfs-cluster/ipfs-cluster/issues/1002) +* Show expiration information in `ipfs-cluster-ctl pin ls` | [ipfs-cluster/ipfs-cluster#998](https://github.com/ipfs-cluster/ipfs-cluster/issues/998) | [ipfs-cluster/ipfs-cluster#1024](https://github.com/ipfs-cluster/ipfs-cluster/issues/1024) | [ipfs-cluster/ipfs-cluster#1066](https://github.com/ipfs-cluster/ipfs-cluster/issues/1066) +* Show pin names in `ipfs-cluster-ctl status` (and API endpoint) | [ipfs-cluster/ipfs-cluster#1129](https://github.com/ipfs-cluster/ipfs-cluster/issues/1129) +* Allow updating expiration when doing `pin update` | [ipfs-cluster/ipfs-cluster#996](https://github.com/ipfs-cluster/ipfs-cluster/issues/996) | [ipfs-cluster/ipfs-cluster#1065](https://github.com/ipfs-cluster/ipfs-cluster/issues/1065) | [ipfs-cluster/ipfs-cluster#1013](https://github.com/ipfs-cluster/ipfs-cluster/issues/1013) +* Add "direct" pin mode. Cluster supports direct pins | [ipfs-cluster/ipfs-cluster#1009](https://github.com/ipfs-cluster/ipfs-cluster/issues/1009) | [ipfs-cluster/ipfs-cluster#1083](https://github.com/ipfs-cluster/ipfs-cluster/issues/1083) +* Better badger defaults for less memory usage | [ipfs-cluster/ipfs-cluster#1027](https://github.com/ipfs-cluster/ipfs-cluster/issues/1027) +* Print configuration (without sensitive values) when enabling debug for `ipfs-cluster-service` | [ipfs-cluster/ipfs-cluster#937](https://github.com/ipfs-cluster/ipfs-cluster/issues/937) | [ipfs-cluster/ipfs-cluster#959](https://github.com/ipfs-cluster/ipfs-cluster/issues/959) +* `ipfs-cluster-follow list` works fully offline (without needing IPFS to run) | [ipfs-cluster/ipfs-cluster#1129](https://github.com/ipfs-cluster/ipfs-cluster/issues/1129) ##### Bug fixes -* Fix adding when using CidV1 | [ipfs/ipfs-cluster#1016](https://github.com/ipfs/ipfs-cluster/issues/1016) | [ipfs/ipfs-cluster#1006](https://github.com/ipfs/ipfs-cluster/issues/1006) -* Fix too many requests error on `ipfs-cluster-follow list` | [ipfs/ipfs-cluster#1013](https://github.com/ipfs/ipfs-cluster/issues/1013) | [ipfs/ipfs-cluster#1129](https://github.com/ipfs/ipfs-cluster/issues/1129) -* Fix repinning not working reliably on collaborative clusters with replication factors set | [ipfs/ipfs-cluster#1064](https://github.com/ipfs/ipfs-cluster/issues/1064) | [ipfs/ipfs-cluster#1127](https://github.com/ipfs/ipfs-cluster/issues/1127) -* Fix underflow in repo size metric | [ipfs/ipfs-cluster#1120](https://github.com/ipfs/ipfs-cluster/issues/1120) | [ipfs/ipfs-cluster#1121](https://github.com/ipfs/ipfs-cluster/issues/1121) -* Fix adding keeps going if all BlockPut failed | [ipfs/ipfs-cluster#1131](https://github.com/ipfs/ipfs-cluster/issues/1131) +* Fix adding when using CidV1 | [ipfs-cluster/ipfs-cluster#1016](https://github.com/ipfs-cluster/ipfs-cluster/issues/1016) | [ipfs-cluster/ipfs-cluster#1006](https://github.com/ipfs-cluster/ipfs-cluster/issues/1006) +* Fix too many requests error on `ipfs-cluster-follow list` | [ipfs-cluster/ipfs-cluster#1013](https://github.com/ipfs-cluster/ipfs-cluster/issues/1013) | [ipfs-cluster/ipfs-cluster#1129](https://github.com/ipfs-cluster/ipfs-cluster/issues/1129) +* Fix repinning not working reliably on collaborative clusters with replication factors set | [ipfs-cluster/ipfs-cluster#1064](https://github.com/ipfs-cluster/ipfs-cluster/issues/1064) | [ipfs-cluster/ipfs-cluster#1127](https://github.com/ipfs-cluster/ipfs-cluster/issues/1127) +* Fix underflow in repo size metric | [ipfs-cluster/ipfs-cluster#1120](https://github.com/ipfs-cluster/ipfs-cluster/issues/1120) | [ipfs-cluster/ipfs-cluster#1121](https://github.com/ipfs-cluster/ipfs-cluster/issues/1121) +* Fix adding keeps going if all BlockPut failed | [ipfs-cluster/ipfs-cluster#1131](https://github.com/ipfs-cluster/ipfs-cluster/issues/1131) ##### Other changes -* Update license files | [ipfs/ipfs-cluster#1014](https://github.com/ipfs/ipfs-cluster/issues/1014) -* Fix typos | [ipfs/ipfs-cluster#999](https://github.com/ipfs/ipfs-cluster/issues/999) | [ipfs/ipfs-cluster#1001](https://github.com/ipfs/ipfs-cluster/issues/1001) | [ipfs/ipfs-cluster#1075](https://github.com/ipfs/ipfs-cluster/issues/1075) -* Lots of dependency upgrades | [ipfs/ipfs-cluster#1020](https://github.com/ipfs/ipfs-cluster/issues/1020) | [ipfs/ipfs-cluster#1051](https://github.com/ipfs/ipfs-cluster/issues/1051) | [ipfs/ipfs-cluster#1073](https://github.com/ipfs/ipfs-cluster/issues/1073) | [ipfs/ipfs-cluster#1074](https://github.com/ipfs/ipfs-cluster/issues/1074) -* Adjust codecov thresholds | [ipfs/ipfs-cluster#1022](https://github.com/ipfs/ipfs-cluster/issues/1022) -* Fix all staticcheck warnings | [ipfs/ipfs-cluster#1071](https://github.com/ipfs/ipfs-cluster/issues/1071) | [ipfs/ipfs-cluster#1128](https://github.com/ipfs/ipfs-cluster/issues/1128) -* Detach RPC protocol version from Cluster releases | [ipfs/ipfs-cluster#1093](https://github.com/ipfs/ipfs-cluster/issues/1093) -* Trim paths on Makefile build command | [ipfs/ipfs-cluster#1012](https://github.com/ipfs/ipfs-cluster/issues/1012) | [ipfs/ipfs-cluster#1015](https://github.com/ipfs/ipfs-cluster/issues/1015) -* Add contexts to HTTP requests in the client | [ipfs/ipfs-cluster#1019](https://github.com/ipfs/ipfs-cluster/issues/1019) +* Update license files | [ipfs-cluster/ipfs-cluster#1014](https://github.com/ipfs-cluster/ipfs-cluster/issues/1014) +* Fix typos | [ipfs-cluster/ipfs-cluster#999](https://github.com/ipfs-cluster/ipfs-cluster/issues/999) | [ipfs-cluster/ipfs-cluster#1001](https://github.com/ipfs-cluster/ipfs-cluster/issues/1001) | [ipfs-cluster/ipfs-cluster#1075](https://github.com/ipfs-cluster/ipfs-cluster/issues/1075) +* Lots of dependency upgrades | [ipfs-cluster/ipfs-cluster#1020](https://github.com/ipfs-cluster/ipfs-cluster/issues/1020) | [ipfs-cluster/ipfs-cluster#1051](https://github.com/ipfs-cluster/ipfs-cluster/issues/1051) | [ipfs-cluster/ipfs-cluster#1073](https://github.com/ipfs-cluster/ipfs-cluster/issues/1073) | [ipfs-cluster/ipfs-cluster#1074](https://github.com/ipfs-cluster/ipfs-cluster/issues/1074) +* Adjust codecov thresholds | [ipfs-cluster/ipfs-cluster#1022](https://github.com/ipfs-cluster/ipfs-cluster/issues/1022) +* Fix all staticcheck warnings | [ipfs-cluster/ipfs-cluster#1071](https://github.com/ipfs-cluster/ipfs-cluster/issues/1071) | [ipfs-cluster/ipfs-cluster#1128](https://github.com/ipfs-cluster/ipfs-cluster/issues/1128) +* Detach RPC protocol version from Cluster releases | [ipfs-cluster/ipfs-cluster#1093](https://github.com/ipfs-cluster/ipfs-cluster/issues/1093) +* Trim paths on Makefile build command | [ipfs-cluster/ipfs-cluster#1012](https://github.com/ipfs-cluster/ipfs-cluster/issues/1012) | [ipfs-cluster/ipfs-cluster#1015](https://github.com/ipfs-cluster/ipfs-cluster/issues/1015) +* Add contexts to HTTP requests in the client | [ipfs-cluster/ipfs-cluster#1019](https://github.com/ipfs-cluster/ipfs-cluster/issues/1019) #### Upgrading notices @@ -1159,9 +1159,9 @@ IPFS Cluster v0.12.1 is a maintenance release fixing issues on `ipfs-cluster-fol ##### Bug fixes -* follow: the `info` command panics when ipfs is offline | [ipfs/ipfs-cluster#991](https://github.com/ipfs/ipfs-cluster/issues/991) | [ipfs/ipfs-cluster#993](https://github.com/ipfs/ipfs-cluster/issues/993) -* follow: the gateway url is not set on Run&Init command | [ipfs/ipfs-cluster#992](https://github.com/ipfs/ipfs-cluster/issues/992) | [ipfs/ipfs-cluster#993](https://github.com/ipfs/ipfs-cluster/issues/993) -* follow: disallow trusted peers for RepoGCLocal operation | [ipfs/ipfs-cluster#993](https://github.com/ipfs/ipfs-cluster/issues/993) +* follow: the `info` command panics when ipfs is offline | [ipfs-cluster/ipfs-cluster#991](https://github.com/ipfs-cluster/ipfs-cluster/issues/991) | [ipfs-cluster/ipfs-cluster#993](https://github.com/ipfs-cluster/ipfs-cluster/issues/993) +* follow: the gateway url is not set on Run&Init command | [ipfs-cluster/ipfs-cluster#992](https://github.com/ipfs-cluster/ipfs-cluster/issues/992) | [ipfs-cluster/ipfs-cluster#993](https://github.com/ipfs-cluster/ipfs-cluster/issues/993) +* follow: disallow trusted peers for RepoGCLocal operation | [ipfs-cluster/ipfs-cluster#993](https://github.com/ipfs-cluster/ipfs-cluster/issues/993) --- @@ -1193,38 +1193,38 @@ how to setup and join these clusters ##### Features -* cluster: `--local` flag for add: adds only to the local peer instead of multiple destinations | [ipfs/ipfs-cluster#848](https://github.com/ipfs/ipfs-cluster/issues/848) | [ipfs/ipfs-cluster#907](https://github.com/ipfs/ipfs-cluster/issues/907) +* cluster: `--local` flag for add: adds only to the local peer instead of multiple destinations | [ipfs-cluster/ipfs-cluster#848](https://github.com/ipfs-cluster/ipfs-cluster/issues/848) | [ipfs-cluster/ipfs-cluster#907](https://github.com/ipfs-cluster/ipfs-cluster/issues/907) * cluster: `RecoverAll` operation can trigger recover operation in all peers. -* ipfsproxy: log HTTP requests | [ipfs/ipfs-cluster#574](https://github.com/ipfs/ipfs-cluster/issues/574) | [ipfs/ipfs-cluster#915](https://github.com/ipfs/ipfs-cluster/issues/915) -* api: `health/metrics` returns list of available metrics | [ipfs/ipfs-cluster#374](https://github.com/ipfs/ipfs-cluster/issues/374) | [ipfs/ipfs-cluster#924](https://github.com/ipfs/ipfs-cluster/issues/924) -* service: `init --randomports` sets random, unused ports on initialization | [ipfs/ipfs-cluster#794](https://github.com/ipfs/ipfs-cluster/issues/794) | [ipfs/ipfs-cluster#926](https://github.com/ipfs/ipfs-cluster/issues/926) -* cluster: support pin expiration | [ipfs/ipfs-cluster#481](https://github.com/ipfs/ipfs-cluster/issues/481) | [ipfs/ipfs-cluster#923](https://github.com/ipfs/ipfs-cluster/issues/923) -* cluster: quic, autorelay, autonat, TLS handshake support | [ipfs/ipfs-cluster#614](https://github.com/ipfs/ipfs-cluster/issues/614) | [ipfs/ipfs-cluster#932](https://github.com/ipfs/ipfs-cluster/issues/932) | [ipfs/ipfs-cluster#973](https://github.com/ipfs/ipfs-cluster/issues/973) | [ipfs/ipfs-cluster#975](https://github.com/ipfs/ipfs-cluster/issues/975) -* cluster: `health/graph` improvements | [ipfs/ipfs-cluster#800](https://github.com/ipfs/ipfs-cluster/issues/800) | [ipfs/ipfs-cluster#925](https://github.com/ipfs/ipfs-cluster/issues/925) | [ipfs/ipfs-cluster#954](https://github.com/ipfs/ipfs-cluster/issues/954) -* cluster: `ipfs-cluster-ctl ipfs gc` triggers GC on cluster peers | [ipfs/ipfs-cluster#628](https://github.com/ipfs/ipfs-cluster/issues/628) | [ipfs/ipfs-cluster#777](https://github.com/ipfs/ipfs-cluster/issues/777) | [ipfs/ipfs-cluster#739](https://github.com/ipfs/ipfs-cluster/issues/739) | [ipfs/ipfs-cluster#945](https://github.com/ipfs/ipfs-cluster/issues/945) | [ipfs/ipfs-cluster#961](https://github.com/ipfs/ipfs-cluster/issues/961) -* cluster: advertise external addresses as soon as known | [ipfs/ipfs-cluster#949](https://github.com/ipfs/ipfs-cluster/issues/949) | [ipfs/ipfs-cluster#950](https://github.com/ipfs/ipfs-cluster/issues/950) -* cluster: skip contacting remote-allocations (peers) for recover/status operations | [ipfs/ipfs-cluster#935](https://github.com/ipfs/ipfs-cluster/issues/935) | [ipfs/ipfs-cluster#947](https://github.com/ipfs/ipfs-cluster/issues/947) -* restapi: support listening on a unix socket | [ipfs/ipfs-cluster#969](https://github.com/ipfs/ipfs-cluster/issues/969) -* config: support `peer_addresses` | [ipfs/ipfs-cluster#791](https://github.com/ipfs/ipfs-cluster/issues/791) -* pintracker: remove `mappintracker`. Upgrade `stateless` for prime-time | [ipfs/ipfs-cluster#944](https://github.com/ipfs/ipfs-cluster/issues/944) | [ipfs/ipfs-cluster#929](https://github.com/ipfs/ipfs-cluster/issues/929) -* service: `--loglevel` supports specifying levels for multiple components | [ipfs/ipfs-cluster#938](https://github.com/ipfs/ipfs-cluster/issues/938) | [ipfs/ipfs-cluster#960](https://github.com/ipfs/ipfs-cluster/issues/960) -* ipfs-cluster-follow: a new CLI tool to run follower cluster peers | [ipfs/ipfs-cluster#976](https://github.com/ipfs/ipfs-cluster/issues/976) +* ipfsproxy: log HTTP requests | [ipfs-cluster/ipfs-cluster#574](https://github.com/ipfs-cluster/ipfs-cluster/issues/574) | [ipfs-cluster/ipfs-cluster#915](https://github.com/ipfs-cluster/ipfs-cluster/issues/915) +* api: `health/metrics` returns list of available metrics | [ipfs-cluster/ipfs-cluster#374](https://github.com/ipfs-cluster/ipfs-cluster/issues/374) | [ipfs-cluster/ipfs-cluster#924](https://github.com/ipfs-cluster/ipfs-cluster/issues/924) +* service: `init --randomports` sets random, unused ports on initialization | [ipfs-cluster/ipfs-cluster#794](https://github.com/ipfs-cluster/ipfs-cluster/issues/794) | [ipfs-cluster/ipfs-cluster#926](https://github.com/ipfs-cluster/ipfs-cluster/issues/926) +* cluster: support pin expiration | [ipfs-cluster/ipfs-cluster#481](https://github.com/ipfs-cluster/ipfs-cluster/issues/481) | [ipfs-cluster/ipfs-cluster#923](https://github.com/ipfs-cluster/ipfs-cluster/issues/923) +* cluster: quic, autorelay, autonat, TLS handshake support | [ipfs-cluster/ipfs-cluster#614](https://github.com/ipfs-cluster/ipfs-cluster/issues/614) | [ipfs-cluster/ipfs-cluster#932](https://github.com/ipfs-cluster/ipfs-cluster/issues/932) | [ipfs-cluster/ipfs-cluster#973](https://github.com/ipfs-cluster/ipfs-cluster/issues/973) | [ipfs-cluster/ipfs-cluster#975](https://github.com/ipfs-cluster/ipfs-cluster/issues/975) +* cluster: `health/graph` improvements | [ipfs-cluster/ipfs-cluster#800](https://github.com/ipfs-cluster/ipfs-cluster/issues/800) | [ipfs-cluster/ipfs-cluster#925](https://github.com/ipfs-cluster/ipfs-cluster/issues/925) | [ipfs-cluster/ipfs-cluster#954](https://github.com/ipfs-cluster/ipfs-cluster/issues/954) +* cluster: `ipfs-cluster-ctl ipfs gc` triggers GC on cluster peers | [ipfs-cluster/ipfs-cluster#628](https://github.com/ipfs-cluster/ipfs-cluster/issues/628) | [ipfs-cluster/ipfs-cluster#777](https://github.com/ipfs-cluster/ipfs-cluster/issues/777) | [ipfs-cluster/ipfs-cluster#739](https://github.com/ipfs-cluster/ipfs-cluster/issues/739) | [ipfs-cluster/ipfs-cluster#945](https://github.com/ipfs-cluster/ipfs-cluster/issues/945) | [ipfs-cluster/ipfs-cluster#961](https://github.com/ipfs-cluster/ipfs-cluster/issues/961) +* cluster: advertise external addresses as soon as known | [ipfs-cluster/ipfs-cluster#949](https://github.com/ipfs-cluster/ipfs-cluster/issues/949) | [ipfs-cluster/ipfs-cluster#950](https://github.com/ipfs-cluster/ipfs-cluster/issues/950) +* cluster: skip contacting remote-allocations (peers) for recover/status operations | [ipfs-cluster/ipfs-cluster#935](https://github.com/ipfs-cluster/ipfs-cluster/issues/935) | [ipfs-cluster/ipfs-cluster#947](https://github.com/ipfs-cluster/ipfs-cluster/issues/947) +* restapi: support listening on a unix socket | [ipfs-cluster/ipfs-cluster#969](https://github.com/ipfs-cluster/ipfs-cluster/issues/969) +* config: support `peer_addresses` | [ipfs-cluster/ipfs-cluster#791](https://github.com/ipfs-cluster/ipfs-cluster/issues/791) +* pintracker: remove `mappintracker`. Upgrade `stateless` for prime-time | [ipfs-cluster/ipfs-cluster#944](https://github.com/ipfs-cluster/ipfs-cluster/issues/944) | [ipfs-cluster/ipfs-cluster#929](https://github.com/ipfs-cluster/ipfs-cluster/issues/929) +* service: `--loglevel` supports specifying levels for multiple components | [ipfs-cluster/ipfs-cluster#938](https://github.com/ipfs-cluster/ipfs-cluster/issues/938) | [ipfs-cluster/ipfs-cluster#960](https://github.com/ipfs-cluster/ipfs-cluster/issues/960) +* ipfs-cluster-follow: a new CLI tool to run follower cluster peers | [ipfs-cluster/ipfs-cluster#976](https://github.com/ipfs-cluster/ipfs-cluster/issues/976) ##### Bug fixes -* restapi/client: Fix out of bounds error on load balanced client | [ipfs/ipfs-cluster#951](https://github.com/ipfs/ipfs-cluster/issues/951) -* service: disable libp2p restapi on CRDT clusters | [ipfs/ipfs-cluster#968](https://github.com/ipfs/ipfs-cluster/issues/968) -* observations: Fix pprof index links | [ipfs/ipfs-cluster#965](https://github.com/ipfs/ipfs-cluster/issues/965) +* restapi/client: Fix out of bounds error on load balanced client | [ipfs-cluster/ipfs-cluster#951](https://github.com/ipfs-cluster/ipfs-cluster/issues/951) +* service: disable libp2p restapi on CRDT clusters | [ipfs-cluster/ipfs-cluster#968](https://github.com/ipfs-cluster/ipfs-cluster/issues/968) +* observations: Fix pprof index links | [ipfs-cluster/ipfs-cluster#965](https://github.com/ipfs-cluster/ipfs-cluster/issues/965) ##### Other changes -* Spelling fix in changelog | [ipfs/ipfs-cluster#920](https://github.com/ipfs/ipfs-cluster/issues/920) -* Tests: multiple fixes | [ipfs/ipfs-cluster#919](https://github.com/ipfs/ipfs-cluster/issues/919) | [ipfs/ipfs-cluster#943](https://github.com/ipfs/ipfs-cluster/issues/943) | [ipfs/ipfs-cluster#953](https://github.com/ipfs/ipfs-cluster/issues/953) | [ipfs/ipfs-cluster#956](https://github.com/ipfs/ipfs-cluster/issues/956) -* Stateless tracker: increase default queue size | [ipfs/ipfs-cluster#377](https://github.com/ipfs/ipfs-cluster/issues/377) | [ipfs/ipfs-cluster#917](https://github.com/ipfs/ipfs-cluster/issues/917) -* Upgrade to Go1.13 | [ipfs/ipfs-cluster#934](https://github.com/ipfs/ipfs-cluster/issues/934) -* Dockerfiles: improvements | [ipfs/ipfs-cluster#946](https://github.com/ipfs/ipfs-cluster/issues/946) -* cluster: support multiple informers on initialization | [ipfs/ipfs-cluster#940](https://github.com/ipfs/ipfs-cluster/issues/940) | 962 -* cmdutils: move some methods to cmdutils | [ipfs/ipfs-cluster#970](https://github.com/ipfs/ipfs-cluster/issues/970) +* Spelling fix in changelog | [ipfs-cluster/ipfs-cluster#920](https://github.com/ipfs-cluster/ipfs-cluster/issues/920) +* Tests: multiple fixes | [ipfs-cluster/ipfs-cluster#919](https://github.com/ipfs-cluster/ipfs-cluster/issues/919) | [ipfs-cluster/ipfs-cluster#943](https://github.com/ipfs-cluster/ipfs-cluster/issues/943) | [ipfs-cluster/ipfs-cluster#953](https://github.com/ipfs-cluster/ipfs-cluster/issues/953) | [ipfs-cluster/ipfs-cluster#956](https://github.com/ipfs-cluster/ipfs-cluster/issues/956) +* Stateless tracker: increase default queue size | [ipfs-cluster/ipfs-cluster#377](https://github.com/ipfs-cluster/ipfs-cluster/issues/377) | [ipfs-cluster/ipfs-cluster#917](https://github.com/ipfs-cluster/ipfs-cluster/issues/917) +* Upgrade to Go1.13 | [ipfs-cluster/ipfs-cluster#934](https://github.com/ipfs-cluster/ipfs-cluster/issues/934) +* Dockerfiles: improvements | [ipfs-cluster/ipfs-cluster#946](https://github.com/ipfs-cluster/ipfs-cluster/issues/946) +* cluster: support multiple informers on initialization | [ipfs-cluster/ipfs-cluster#940](https://github.com/ipfs-cluster/ipfs-cluster/issues/940) | 962 +* cmdutils: move some methods to cmdutils | [ipfs-cluster/ipfs-cluster#970](https://github.com/ipfs-cluster/ipfs-cluster/issues/970) #### Upgrading notices @@ -1308,62 +1308,62 @@ type. ##### Features -* crdt: introduce crdt-based consensus component | [ipfs/ipfs-cluster#685](https://github.com/ipfs/ipfs-cluster/issues/685) | [ipfs/ipfs-cluster#804](https://github.com/ipfs/ipfs-cluster/issues/804) | [ipfs/ipfs-cluster#787](https://github.com/ipfs/ipfs-cluster/issues/787) | [ipfs/ipfs-cluster#798](https://github.com/ipfs/ipfs-cluster/issues/798) | [ipfs/ipfs-cluster#805](https://github.com/ipfs/ipfs-cluster/issues/805) | [ipfs/ipfs-cluster#811](https://github.com/ipfs/ipfs-cluster/issues/811) | [ipfs/ipfs-cluster#816](https://github.com/ipfs/ipfs-cluster/issues/816) | [ipfs/ipfs-cluster#820](https://github.com/ipfs/ipfs-cluster/issues/820) | [ipfs/ipfs-cluster#856](https://github.com/ipfs/ipfs-cluster/issues/856) | [ipfs/ipfs-cluster#857](https://github.com/ipfs/ipfs-cluster/issues/857) | [ipfs/ipfs-cluster#834](https://github.com/ipfs/ipfs-cluster/issues/834) | [ipfs/ipfs-cluster#856](https://github.com/ipfs/ipfs-cluster/issues/856) | [ipfs/ipfs-cluster#867](https://github.com/ipfs/ipfs-cluster/issues/867) | [ipfs/ipfs-cluster#874](https://github.com/ipfs/ipfs-cluster/issues/874) | [ipfs/ipfs-cluster#885](https://github.com/ipfs/ipfs-cluster/issues/885) | [ipfs/ipfs-cluster#899](https://github.com/ipfs/ipfs-cluster/issues/899) | [ipfs/ipfs-cluster#906](https://github.com/ipfs/ipfs-cluster/issues/906) | [ipfs/ipfs-cluster#918](https://github.com/ipfs/ipfs-cluster/issues/918) -* configs: separate identity and configuration | [ipfs/ipfs-cluster#760](https://github.com/ipfs/ipfs-cluster/issues/760) | [ipfs/ipfs-cluster#766](https://github.com/ipfs/ipfs-cluster/issues/766) | [ipfs/ipfs-cluster#780](https://github.com/ipfs/ipfs-cluster/issues/780) -* configs: support running with a remote `service.json` (http) | [ipfs/ipfs-cluster#868](https://github.com/ipfs/ipfs-cluster/issues/868) -* configs: support a `follower_mode` option | [ipfs/ipfs-cluster#803](https://github.com/ipfs/ipfs-cluster/issues/803) | [ipfs/ipfs-cluster#864](https://github.com/ipfs/ipfs-cluster/issues/864) -* service/configs: do not load API components if no config present | [ipfs/ipfs-cluster#452](https://github.com/ipfs/ipfs-cluster/issues/452) | [ipfs/ipfs-cluster#836](https://github.com/ipfs/ipfs-cluster/issues/836) -* service: add `ipfs-cluster-service init --peers` flag to initialize with given peers | [ipfs/ipfs-cluster#835](https://github.com/ipfs/ipfs-cluster/issues/835) | [ipfs/ipfs-cluster#839](https://github.com/ipfs/ipfs-cluster/issues/839) | [ipfs/ipfs-cluster#870](https://github.com/ipfs/ipfs-cluster/issues/870) -* cluster: RPC auth: block rpc endpoints for non trusted peers | [ipfs/ipfs-cluster#775](https://github.com/ipfs/ipfs-cluster/issues/775) | [ipfs/ipfs-cluster#710](https://github.com/ipfs/ipfs-cluster/issues/710) | [ipfs/ipfs-cluster#666](https://github.com/ipfs/ipfs-cluster/issues/666) | [ipfs/ipfs-cluster#773](https://github.com/ipfs/ipfs-cluster/issues/773) | [ipfs/ipfs-cluster#905](https://github.com/ipfs/ipfs-cluster/issues/905) -* cluster: introduce connection manager | [ipfs/ipfs-cluster#791](https://github.com/ipfs/ipfs-cluster/issues/791) -* cluster: support new `PinUpdate` option for new pins | [ipfs/ipfs-cluster#869](https://github.com/ipfs/ipfs-cluster/issues/869) | [ipfs/ipfs-cluster#732](https://github.com/ipfs/ipfs-cluster/issues/732) -* cluster: trigger `Recover` automatically on a configurable interval | [ipfs/ipfs-cluster#831](https://github.com/ipfs/ipfs-cluster/issues/831) | [ipfs/ipfs-cluster#887](https://github.com/ipfs/ipfs-cluster/issues/887) -* cluster: enable mDNS discovery for peers | [ipfs/ipfs-cluster#882](https://github.com/ipfs/ipfs-cluster/issues/882) | [ipfs/ipfs-cluster#900](https://github.com/ipfs/ipfs-cluster/issues/900) -* IPFS Proxy: Support `pin/update` | [ipfs/ipfs-cluster#732](https://github.com/ipfs/ipfs-cluster/issues/732) | [ipfs/ipfs-cluster#768](https://github.com/ipfs/ipfs-cluster/issues/768) | [ipfs/ipfs-cluster#887](https://github.com/ipfs/ipfs-cluster/issues/887) -* monitor: Accrual failure detection. Leaderless re-pinning | [ipfs/ipfs-cluster#413](https://github.com/ipfs/ipfs-cluster/issues/413) | [ipfs/ipfs-cluster#713](https://github.com/ipfs/ipfs-cluster/issues/713) | [ipfs/ipfs-cluster#714](https://github.com/ipfs/ipfs-cluster/issues/714) | [ipfs/ipfs-cluster#812](https://github.com/ipfs/ipfs-cluster/issues/812) | [ipfs/ipfs-cluster#813](https://github.com/ipfs/ipfs-cluster/issues/813) | [ipfs/ipfs-cluster#814](https://github.com/ipfs/ipfs-cluster/issues/814) | [ipfs/ipfs-cluster#815](https://github.com/ipfs/ipfs-cluster/issues/815) -* datastore: Expose badger configuration | [ipfs/ipfs-cluster#771](https://github.com/ipfs/ipfs-cluster/issues/771) | [ipfs/ipfs-cluster#776](https://github.com/ipfs/ipfs-cluster/issues/776) -* IPFSConnector: pin timeout start counting from last received block | [ipfs/ipfs-cluster#497](https://github.com/ipfs/ipfs-cluster/issues/497) | [ipfs/ipfs-cluster#738](https://github.com/ipfs/ipfs-cluster/issues/738) -* IPFSConnector: remove pin method options | [ipfs/ipfs-cluster#875](https://github.com/ipfs/ipfs-cluster/issues/875) -* IPFSConnector: `unpin_disable` removes the ability to unpin anything from ipfs (experimental) | [ipfs/ipfs-cluster#793](https://github.com/ipfs/ipfs-cluster/issues/793) | [ipfs/ipfs-cluster#832](https://github.com/ipfs/ipfs-cluster/issues/832) -* REST API Client: Load-balancing Go client | [ipfs/ipfs-cluster#448](https://github.com/ipfs/ipfs-cluster/issues/448) | [ipfs/ipfs-cluster#737](https://github.com/ipfs/ipfs-cluster/issues/737) -* REST API: Return allocation objects on pin/unpin | [ipfs/ipfs-cluster#843](https://github.com/ipfs/ipfs-cluster/issues/843) -* REST API: Support request logging | [ipfs/ipfs-cluster#574](https://github.com/ipfs/ipfs-cluster/issues/574) | [ipfs/ipfs-cluster#894](https://github.com/ipfs/ipfs-cluster/issues/894) -* Adder: improve error handling. Keep adding while at least one allocation works | [ipfs/ipfs-cluster#852](https://github.com/ipfs/ipfs-cluster/issues/852) | [ipfs/ipfs-cluster#871](https://github.com/ipfs/ipfs-cluster/issues/871) -* Adder: support user-given allocations for the `Add` operation | [ipfs/ipfs-cluster#761](https://github.com/ipfs/ipfs-cluster/issues/761) | [ipfs/ipfs-cluster#890](https://github.com/ipfs/ipfs-cluster/issues/890) -* ctl: support adding pin metadata | [ipfs/ipfs-cluster#670](https://github.com/ipfs/ipfs-cluster/issues/670) | [ipfs/ipfs-cluster#891](https://github.com/ipfs/ipfs-cluster/issues/891) +* crdt: introduce crdt-based consensus component | [ipfs-cluster/ipfs-cluster#685](https://github.com/ipfs-cluster/ipfs-cluster/issues/685) | [ipfs-cluster/ipfs-cluster#804](https://github.com/ipfs-cluster/ipfs-cluster/issues/804) | [ipfs-cluster/ipfs-cluster#787](https://github.com/ipfs-cluster/ipfs-cluster/issues/787) | [ipfs-cluster/ipfs-cluster#798](https://github.com/ipfs-cluster/ipfs-cluster/issues/798) | [ipfs-cluster/ipfs-cluster#805](https://github.com/ipfs-cluster/ipfs-cluster/issues/805) | [ipfs-cluster/ipfs-cluster#811](https://github.com/ipfs-cluster/ipfs-cluster/issues/811) | [ipfs-cluster/ipfs-cluster#816](https://github.com/ipfs-cluster/ipfs-cluster/issues/816) | [ipfs-cluster/ipfs-cluster#820](https://github.com/ipfs-cluster/ipfs-cluster/issues/820) | [ipfs-cluster/ipfs-cluster#856](https://github.com/ipfs-cluster/ipfs-cluster/issues/856) | [ipfs-cluster/ipfs-cluster#857](https://github.com/ipfs-cluster/ipfs-cluster/issues/857) | [ipfs-cluster/ipfs-cluster#834](https://github.com/ipfs-cluster/ipfs-cluster/issues/834) | [ipfs-cluster/ipfs-cluster#856](https://github.com/ipfs-cluster/ipfs-cluster/issues/856) | [ipfs-cluster/ipfs-cluster#867](https://github.com/ipfs-cluster/ipfs-cluster/issues/867) | [ipfs-cluster/ipfs-cluster#874](https://github.com/ipfs-cluster/ipfs-cluster/issues/874) | [ipfs-cluster/ipfs-cluster#885](https://github.com/ipfs-cluster/ipfs-cluster/issues/885) | [ipfs-cluster/ipfs-cluster#899](https://github.com/ipfs-cluster/ipfs-cluster/issues/899) | [ipfs-cluster/ipfs-cluster#906](https://github.com/ipfs-cluster/ipfs-cluster/issues/906) | [ipfs-cluster/ipfs-cluster#918](https://github.com/ipfs-cluster/ipfs-cluster/issues/918) +* configs: separate identity and configuration | [ipfs-cluster/ipfs-cluster#760](https://github.com/ipfs-cluster/ipfs-cluster/issues/760) | [ipfs-cluster/ipfs-cluster#766](https://github.com/ipfs-cluster/ipfs-cluster/issues/766) | [ipfs-cluster/ipfs-cluster#780](https://github.com/ipfs-cluster/ipfs-cluster/issues/780) +* configs: support running with a remote `service.json` (http) | [ipfs-cluster/ipfs-cluster#868](https://github.com/ipfs-cluster/ipfs-cluster/issues/868) +* configs: support a `follower_mode` option | [ipfs-cluster/ipfs-cluster#803](https://github.com/ipfs-cluster/ipfs-cluster/issues/803) | [ipfs-cluster/ipfs-cluster#864](https://github.com/ipfs-cluster/ipfs-cluster/issues/864) +* service/configs: do not load API components if no config present | [ipfs-cluster/ipfs-cluster#452](https://github.com/ipfs-cluster/ipfs-cluster/issues/452) | [ipfs-cluster/ipfs-cluster#836](https://github.com/ipfs-cluster/ipfs-cluster/issues/836) +* service: add `ipfs-cluster-service init --peers` flag to initialize with given peers | [ipfs-cluster/ipfs-cluster#835](https://github.com/ipfs-cluster/ipfs-cluster/issues/835) | [ipfs-cluster/ipfs-cluster#839](https://github.com/ipfs-cluster/ipfs-cluster/issues/839) | [ipfs-cluster/ipfs-cluster#870](https://github.com/ipfs-cluster/ipfs-cluster/issues/870) +* cluster: RPC auth: block rpc endpoints for non trusted peers | [ipfs-cluster/ipfs-cluster#775](https://github.com/ipfs-cluster/ipfs-cluster/issues/775) | [ipfs-cluster/ipfs-cluster#710](https://github.com/ipfs-cluster/ipfs-cluster/issues/710) | [ipfs-cluster/ipfs-cluster#666](https://github.com/ipfs-cluster/ipfs-cluster/issues/666) | [ipfs-cluster/ipfs-cluster#773](https://github.com/ipfs-cluster/ipfs-cluster/issues/773) | [ipfs-cluster/ipfs-cluster#905](https://github.com/ipfs-cluster/ipfs-cluster/issues/905) +* cluster: introduce connection manager | [ipfs-cluster/ipfs-cluster#791](https://github.com/ipfs-cluster/ipfs-cluster/issues/791) +* cluster: support new `PinUpdate` option for new pins | [ipfs-cluster/ipfs-cluster#869](https://github.com/ipfs-cluster/ipfs-cluster/issues/869) | [ipfs-cluster/ipfs-cluster#732](https://github.com/ipfs-cluster/ipfs-cluster/issues/732) +* cluster: trigger `Recover` automatically on a configurable interval | [ipfs-cluster/ipfs-cluster#831](https://github.com/ipfs-cluster/ipfs-cluster/issues/831) | [ipfs-cluster/ipfs-cluster#887](https://github.com/ipfs-cluster/ipfs-cluster/issues/887) +* cluster: enable mDNS discovery for peers | [ipfs-cluster/ipfs-cluster#882](https://github.com/ipfs-cluster/ipfs-cluster/issues/882) | [ipfs-cluster/ipfs-cluster#900](https://github.com/ipfs-cluster/ipfs-cluster/issues/900) +* IPFS Proxy: Support `pin/update` | [ipfs-cluster/ipfs-cluster#732](https://github.com/ipfs-cluster/ipfs-cluster/issues/732) | [ipfs-cluster/ipfs-cluster#768](https://github.com/ipfs-cluster/ipfs-cluster/issues/768) | [ipfs-cluster/ipfs-cluster#887](https://github.com/ipfs-cluster/ipfs-cluster/issues/887) +* monitor: Accrual failure detection. Leaderless re-pinning | [ipfs-cluster/ipfs-cluster#413](https://github.com/ipfs-cluster/ipfs-cluster/issues/413) | [ipfs-cluster/ipfs-cluster#713](https://github.com/ipfs-cluster/ipfs-cluster/issues/713) | [ipfs-cluster/ipfs-cluster#714](https://github.com/ipfs-cluster/ipfs-cluster/issues/714) | [ipfs-cluster/ipfs-cluster#812](https://github.com/ipfs-cluster/ipfs-cluster/issues/812) | [ipfs-cluster/ipfs-cluster#813](https://github.com/ipfs-cluster/ipfs-cluster/issues/813) | [ipfs-cluster/ipfs-cluster#814](https://github.com/ipfs-cluster/ipfs-cluster/issues/814) | [ipfs-cluster/ipfs-cluster#815](https://github.com/ipfs-cluster/ipfs-cluster/issues/815) +* datastore: Expose badger configuration | [ipfs-cluster/ipfs-cluster#771](https://github.com/ipfs-cluster/ipfs-cluster/issues/771) | [ipfs-cluster/ipfs-cluster#776](https://github.com/ipfs-cluster/ipfs-cluster/issues/776) +* IPFSConnector: pin timeout start counting from last received block | [ipfs-cluster/ipfs-cluster#497](https://github.com/ipfs-cluster/ipfs-cluster/issues/497) | [ipfs-cluster/ipfs-cluster#738](https://github.com/ipfs-cluster/ipfs-cluster/issues/738) +* IPFSConnector: remove pin method options | [ipfs-cluster/ipfs-cluster#875](https://github.com/ipfs-cluster/ipfs-cluster/issues/875) +* IPFSConnector: `unpin_disable` removes the ability to unpin anything from ipfs (experimental) | [ipfs-cluster/ipfs-cluster#793](https://github.com/ipfs-cluster/ipfs-cluster/issues/793) | [ipfs-cluster/ipfs-cluster#832](https://github.com/ipfs-cluster/ipfs-cluster/issues/832) +* REST API Client: Load-balancing Go client | [ipfs-cluster/ipfs-cluster#448](https://github.com/ipfs-cluster/ipfs-cluster/issues/448) | [ipfs-cluster/ipfs-cluster#737](https://github.com/ipfs-cluster/ipfs-cluster/issues/737) +* REST API: Return allocation objects on pin/unpin | [ipfs-cluster/ipfs-cluster#843](https://github.com/ipfs-cluster/ipfs-cluster/issues/843) +* REST API: Support request logging | [ipfs-cluster/ipfs-cluster#574](https://github.com/ipfs-cluster/ipfs-cluster/issues/574) | [ipfs-cluster/ipfs-cluster#894](https://github.com/ipfs-cluster/ipfs-cluster/issues/894) +* Adder: improve error handling. Keep adding while at least one allocation works | [ipfs-cluster/ipfs-cluster#852](https://github.com/ipfs-cluster/ipfs-cluster/issues/852) | [ipfs-cluster/ipfs-cluster#871](https://github.com/ipfs-cluster/ipfs-cluster/issues/871) +* Adder: support user-given allocations for the `Add` operation | [ipfs-cluster/ipfs-cluster#761](https://github.com/ipfs-cluster/ipfs-cluster/issues/761) | [ipfs-cluster/ipfs-cluster#890](https://github.com/ipfs-cluster/ipfs-cluster/issues/890) +* ctl: support adding pin metadata | [ipfs-cluster/ipfs-cluster#670](https://github.com/ipfs-cluster/ipfs-cluster/issues/670) | [ipfs-cluster/ipfs-cluster#891](https://github.com/ipfs-cluster/ipfs-cluster/issues/891) ##### Bug fixes -* REST API: Fix `/allocations` when filter unset | [ipfs/ipfs-cluster#762](https://github.com/ipfs/ipfs-cluster/issues/762) -* REST API: Fix DELETE returning 500 when pin does not exist | [ipfs/ipfs-cluster#742](https://github.com/ipfs/ipfs-cluster/issues/742) | [ipfs/ipfs-cluster#854](https://github.com/ipfs/ipfs-cluster/issues/854) -* REST API: Return JSON body on 404s | [ipfs/ipfs-cluster#657](https://github.com/ipfs/ipfs-cluster/issues/657) | [ipfs/ipfs-cluster#879](https://github.com/ipfs/ipfs-cluster/issues/879) -* service: connectivity fixes | [ipfs/ipfs-cluster#787](https://github.com/ipfs/ipfs-cluster/issues/787) | [ipfs/ipfs-cluster#792](https://github.com/ipfs/ipfs-cluster/issues/792) -* service: fix using `/dnsaddr` peers | [ipfs/ipfs-cluster#818](https://github.com/ipfs/ipfs-cluster/issues/818) -* service: reading empty lines on peerstore panics | [ipfs/ipfs-cluster#886](https://github.com/ipfs/ipfs-cluster/issues/886) -* service/ctl: fix parsing string lists | [ipfs/ipfs-cluster#876](https://github.com/ipfs/ipfs-cluster/issues/876) | [ipfs/ipfs-cluster#841](https://github.com/ipfs/ipfs-cluster/issues/841) -* IPFSConnector: `pin/ls` does handle base32 and base58 cids properly | [ipfs/ipfs-cluster#808](https://github.com/ipfs/ipfs-cluster/issues/808) [ipfs/ipfs-cluster#809](https://github.com/ipfs/ipfs-cluster/issues/809) -* configs: some config keys not matching ENV vars names | [ipfs/ipfs-cluster#837](https://github.com/ipfs/ipfs-cluster/issues/837) | [ipfs/ipfs-cluster#778](https://github.com/ipfs/ipfs-cluster/issues/778) -* raft: delete removed raft peers from peerstore | [ipfs/ipfs-cluster#840](https://github.com/ipfs/ipfs-cluster/issues/840) | [ipfs/ipfs-cluster#846](https://github.com/ipfs/ipfs-cluster/issues/846) -* cluster: peers forgotten after being down | [ipfs/ipfs-cluster#648](https://github.com/ipfs/ipfs-cluster/issues/648) | [ipfs/ipfs-cluster#860](https://github.com/ipfs/ipfs-cluster/issues/860) -* cluster: State sync should not keep tracking when queue is full | [ipfs/ipfs-cluster#377](https://github.com/ipfs/ipfs-cluster/issues/377) | [ipfs/ipfs-cluster#901](https://github.com/ipfs/ipfs-cluster/issues/901) -* cluster: avoid random order on peer lists and listen multiaddresses | [ipfs/ipfs-cluster#327](https://github.com/ipfs/ipfs-cluster/issues/327) | [ipfs/ipfs-cluster#878](https://github.com/ipfs/ipfs-cluster/issues/878) -* cluster: fix recover and allocation re-assignment to existing pins | [ipfs/ipfs-cluster#912](https://github.com/ipfs/ipfs-cluster/issues/912) | [ipfs/ipfs-cluster#888](https://github.com/ipfs/ipfs-cluster/issues/888) +* REST API: Fix `/allocations` when filter unset | [ipfs-cluster/ipfs-cluster#762](https://github.com/ipfs-cluster/ipfs-cluster/issues/762) +* REST API: Fix DELETE returning 500 when pin does not exist | [ipfs-cluster/ipfs-cluster#742](https://github.com/ipfs-cluster/ipfs-cluster/issues/742) | [ipfs-cluster/ipfs-cluster#854](https://github.com/ipfs-cluster/ipfs-cluster/issues/854) +* REST API: Return JSON body on 404s | [ipfs-cluster/ipfs-cluster#657](https://github.com/ipfs-cluster/ipfs-cluster/issues/657) | [ipfs-cluster/ipfs-cluster#879](https://github.com/ipfs-cluster/ipfs-cluster/issues/879) +* service: connectivity fixes | [ipfs-cluster/ipfs-cluster#787](https://github.com/ipfs-cluster/ipfs-cluster/issues/787) | [ipfs-cluster/ipfs-cluster#792](https://github.com/ipfs-cluster/ipfs-cluster/issues/792) +* service: fix using `/dnsaddr` peers | [ipfs-cluster/ipfs-cluster#818](https://github.com/ipfs-cluster/ipfs-cluster/issues/818) +* service: reading empty lines on peerstore panics | [ipfs-cluster/ipfs-cluster#886](https://github.com/ipfs-cluster/ipfs-cluster/issues/886) +* service/ctl: fix parsing string lists | [ipfs-cluster/ipfs-cluster#876](https://github.com/ipfs-cluster/ipfs-cluster/issues/876) | [ipfs-cluster/ipfs-cluster#841](https://github.com/ipfs-cluster/ipfs-cluster/issues/841) +* IPFSConnector: `pin/ls` does handle base32 and base58 cids properly | [ipfs-cluster/ipfs-cluster#808](https://github.com/ipfs-cluster/ipfs-cluster/issues/808) [ipfs-cluster/ipfs-cluster#809](https://github.com/ipfs-cluster/ipfs-cluster/issues/809) +* configs: some config keys not matching ENV vars names | [ipfs-cluster/ipfs-cluster#837](https://github.com/ipfs-cluster/ipfs-cluster/issues/837) | [ipfs-cluster/ipfs-cluster#778](https://github.com/ipfs-cluster/ipfs-cluster/issues/778) +* raft: delete removed raft peers from peerstore | [ipfs-cluster/ipfs-cluster#840](https://github.com/ipfs-cluster/ipfs-cluster/issues/840) | [ipfs-cluster/ipfs-cluster#846](https://github.com/ipfs-cluster/ipfs-cluster/issues/846) +* cluster: peers forgotten after being down | [ipfs-cluster/ipfs-cluster#648](https://github.com/ipfs-cluster/ipfs-cluster/issues/648) | [ipfs-cluster/ipfs-cluster#860](https://github.com/ipfs-cluster/ipfs-cluster/issues/860) +* cluster: State sync should not keep tracking when queue is full | [ipfs-cluster/ipfs-cluster#377](https://github.com/ipfs-cluster/ipfs-cluster/issues/377) | [ipfs-cluster/ipfs-cluster#901](https://github.com/ipfs-cluster/ipfs-cluster/issues/901) +* cluster: avoid random order on peer lists and listen multiaddresses | [ipfs-cluster/ipfs-cluster#327](https://github.com/ipfs-cluster/ipfs-cluster/issues/327) | [ipfs-cluster/ipfs-cluster#878](https://github.com/ipfs-cluster/ipfs-cluster/issues/878) +* cluster: fix recover and allocation re-assignment to existing pins | [ipfs-cluster/ipfs-cluster#912](https://github.com/ipfs-cluster/ipfs-cluster/issues/912) | [ipfs-cluster/ipfs-cluster#888](https://github.com/ipfs-cluster/ipfs-cluster/issues/888) ##### Other changes -* cluster: Dependency updates | [ipfs/ipfs-cluster#769](https://github.com/ipfs/ipfs-cluster/issues/769) | [ipfs/ipfs-cluster#789](https://github.com/ipfs/ipfs-cluster/issues/789) | [ipfs/ipfs-cluster#795](https://github.com/ipfs/ipfs-cluster/issues/795) | [ipfs/ipfs-cluster#822](https://github.com/ipfs/ipfs-cluster/issues/822) | [ipfs/ipfs-cluster#823](https://github.com/ipfs/ipfs-cluster/issues/823) | [ipfs/ipfs-cluster#828](https://github.com/ipfs/ipfs-cluster/issues/828) | [ipfs/ipfs-cluster#830](https://github.com/ipfs/ipfs-cluster/issues/830) | [ipfs/ipfs-cluster#853](https://github.com/ipfs/ipfs-cluster/issues/853) | [ipfs/ipfs-cluster#839](https://github.com/ipfs/ipfs-cluster/issues/839) -* cluster: Set `[]peer.ID` as type for user allocations | [ipfs/ipfs-cluster#767](https://github.com/ipfs/ipfs-cluster/issues/767) -* cluster: RPC: Split services among components | [ipfs/ipfs-cluster#773](https://github.com/ipfs/ipfs-cluster/issues/773) -* cluster: Multiple improvements to tests | [ipfs/ipfs-cluster#360](https://github.com/ipfs/ipfs-cluster/issues/360) | [ipfs/ipfs-cluster#502](https://github.com/ipfs/ipfs-cluster/issues/502) | [ipfs/ipfs-cluster#779](https://github.com/ipfs/ipfs-cluster/issues/779) | [ipfs/ipfs-cluster#833](https://github.com/ipfs/ipfs-cluster/issues/833) | [ipfs/ipfs-cluster#863](https://github.com/ipfs/ipfs-cluster/issues/863) | [ipfs/ipfs-cluster#883](https://github.com/ipfs/ipfs-cluster/issues/883) | [ipfs/ipfs-cluster#884](https://github.com/ipfs/ipfs-cluster/issues/884) | [ipfs/ipfs-cluster#797](https://github.com/ipfs/ipfs-cluster/issues/797) | [ipfs/ipfs-cluster#892](https://github.com/ipfs/ipfs-cluster/issues/892) -* cluster: Remove Gx | [ipfs/ipfs-cluster#765](https://github.com/ipfs/ipfs-cluster/issues/765) | [ipfs/ipfs-cluster#781](https://github.com/ipfs/ipfs-cluster/issues/781) -* cluster: Use `/p2p/` instead of `/ipfs/` in multiaddresses | [ipfs/ipfs-cluster#431](https://github.com/ipfs/ipfs-cluster/issues/431) | [ipfs/ipfs-cluster#877](https://github.com/ipfs/ipfs-cluster/issues/877) -* cluster: consolidate parsing of pin options | [ipfs/ipfs-cluster#913](https://github.com/ipfs/ipfs-cluster/issues/913) -* REST API: Replace regexps with `strings.HasPrefix` | [ipfs/ipfs-cluster#806](https://github.com/ipfs/ipfs-cluster/issues/806) | [ipfs/ipfs-cluster#807](https://github.com/ipfs/ipfs-cluster/issues/807) -* docker: use GOPROXY to build containers | [ipfs/ipfs-cluster#872](https://github.com/ipfs/ipfs-cluster/issues/872) -* docker: support `IPFS_CLUSTER_CONSENSUS` flag and other improvements | [ipfs/ipfs-cluster#882](https://github.com/ipfs/ipfs-cluster/issues/882) -* ctl: increase space for peernames | [ipfs/ipfs-cluster#887](https://github.com/ipfs/ipfs-cluster/issues/887) -* ctl: improve replication factor 0 explanation | [ipfs/ipfs-cluster#755](https://github.com/ipfs/ipfs-cluster/issues/755) | [ipfs/ipfs-cluster#909](https://github.com/ipfs/ipfs-cluster/issues/909) +* cluster: Dependency updates | [ipfs-cluster/ipfs-cluster#769](https://github.com/ipfs-cluster/ipfs-cluster/issues/769) | [ipfs-cluster/ipfs-cluster#789](https://github.com/ipfs-cluster/ipfs-cluster/issues/789) | [ipfs-cluster/ipfs-cluster#795](https://github.com/ipfs-cluster/ipfs-cluster/issues/795) | [ipfs-cluster/ipfs-cluster#822](https://github.com/ipfs-cluster/ipfs-cluster/issues/822) | [ipfs-cluster/ipfs-cluster#823](https://github.com/ipfs-cluster/ipfs-cluster/issues/823) | [ipfs-cluster/ipfs-cluster#828](https://github.com/ipfs-cluster/ipfs-cluster/issues/828) | [ipfs-cluster/ipfs-cluster#830](https://github.com/ipfs-cluster/ipfs-cluster/issues/830) | [ipfs-cluster/ipfs-cluster#853](https://github.com/ipfs-cluster/ipfs-cluster/issues/853) | [ipfs-cluster/ipfs-cluster#839](https://github.com/ipfs-cluster/ipfs-cluster/issues/839) +* cluster: Set `[]peer.ID` as type for user allocations | [ipfs-cluster/ipfs-cluster#767](https://github.com/ipfs-cluster/ipfs-cluster/issues/767) +* cluster: RPC: Split services among components | [ipfs-cluster/ipfs-cluster#773](https://github.com/ipfs-cluster/ipfs-cluster/issues/773) +* cluster: Multiple improvements to tests | [ipfs-cluster/ipfs-cluster#360](https://github.com/ipfs-cluster/ipfs-cluster/issues/360) | [ipfs-cluster/ipfs-cluster#502](https://github.com/ipfs-cluster/ipfs-cluster/issues/502) | [ipfs-cluster/ipfs-cluster#779](https://github.com/ipfs-cluster/ipfs-cluster/issues/779) | [ipfs-cluster/ipfs-cluster#833](https://github.com/ipfs-cluster/ipfs-cluster/issues/833) | [ipfs-cluster/ipfs-cluster#863](https://github.com/ipfs-cluster/ipfs-cluster/issues/863) | [ipfs-cluster/ipfs-cluster#883](https://github.com/ipfs-cluster/ipfs-cluster/issues/883) | [ipfs-cluster/ipfs-cluster#884](https://github.com/ipfs-cluster/ipfs-cluster/issues/884) | [ipfs-cluster/ipfs-cluster#797](https://github.com/ipfs-cluster/ipfs-cluster/issues/797) | [ipfs-cluster/ipfs-cluster#892](https://github.com/ipfs-cluster/ipfs-cluster/issues/892) +* cluster: Remove Gx | [ipfs-cluster/ipfs-cluster#765](https://github.com/ipfs-cluster/ipfs-cluster/issues/765) | [ipfs-cluster/ipfs-cluster#781](https://github.com/ipfs-cluster/ipfs-cluster/issues/781) +* cluster: Use `/p2p/` instead of `/ipfs/` in multiaddresses | [ipfs-cluster/ipfs-cluster#431](https://github.com/ipfs-cluster/ipfs-cluster/issues/431) | [ipfs-cluster/ipfs-cluster#877](https://github.com/ipfs-cluster/ipfs-cluster/issues/877) +* cluster: consolidate parsing of pin options | [ipfs-cluster/ipfs-cluster#913](https://github.com/ipfs-cluster/ipfs-cluster/issues/913) +* REST API: Replace regexps with `strings.HasPrefix` | [ipfs-cluster/ipfs-cluster#806](https://github.com/ipfs-cluster/ipfs-cluster/issues/806) | [ipfs-cluster/ipfs-cluster#807](https://github.com/ipfs-cluster/ipfs-cluster/issues/807) +* docker: use GOPROXY to build containers | [ipfs-cluster/ipfs-cluster#872](https://github.com/ipfs-cluster/ipfs-cluster/issues/872) +* docker: support `IPFS_CLUSTER_CONSENSUS` flag and other improvements | [ipfs-cluster/ipfs-cluster#882](https://github.com/ipfs-cluster/ipfs-cluster/issues/882) +* ctl: increase space for peernames | [ipfs-cluster/ipfs-cluster#887](https://github.com/ipfs-cluster/ipfs-cluster/issues/887) +* ctl: improve replication factor 0 explanation | [ipfs-cluster/ipfs-cluster#755](https://github.com/ipfs-cluster/ipfs-cluster/issues/755) | [ipfs-cluster/ipfs-cluster#909](https://github.com/ipfs-cluster/ipfs-cluster/issues/909) #### Upgrading notices @@ -1537,20 +1537,20 @@ This release is a maintenance release with a number of bug fixes and a couple of ##### Features -* Switch to go.mod | [ipfs/ipfs-cluster#706](https://github.com/ipfs/ipfs-cluster/issues/706) | [ipfs/ipfs-cluster#707](https://github.com/ipfs/ipfs-cluster/issues/707) | [ipfs/ipfs-cluster#708](https://github.com/ipfs/ipfs-cluster/issues/708) -* Remove basic monitor | [ipfs/ipfs-cluster#689](https://github.com/ipfs/ipfs-cluster/issues/689) | [ipfs/ipfs-cluster#726](https://github.com/ipfs/ipfs-cluster/issues/726) -* Support `nocopy` when adding URLs | [ipfs/ipfs-cluster#735](https://github.com/ipfs/ipfs-cluster/issues/735) +* Switch to go.mod | [ipfs-cluster/ipfs-cluster#706](https://github.com/ipfs-cluster/ipfs-cluster/issues/706) | [ipfs-cluster/ipfs-cluster#707](https://github.com/ipfs-cluster/ipfs-cluster/issues/707) | [ipfs-cluster/ipfs-cluster#708](https://github.com/ipfs-cluster/ipfs-cluster/issues/708) +* Remove basic monitor | [ipfs-cluster/ipfs-cluster#689](https://github.com/ipfs-cluster/ipfs-cluster/issues/689) | [ipfs-cluster/ipfs-cluster#726](https://github.com/ipfs-cluster/ipfs-cluster/issues/726) +* Support `nocopy` when adding URLs | [ipfs-cluster/ipfs-cluster#735](https://github.com/ipfs-cluster/ipfs-cluster/issues/735) ##### Bug fixes -* Mitigate long header attack | [ipfs/ipfs-cluster#636](https://github.com/ipfs/ipfs-cluster/issues/636) | [ipfs/ipfs-cluster#712](https://github.com/ipfs/ipfs-cluster/issues/712) -* Fix download link in README | [ipfs/ipfs-cluster#723](https://github.com/ipfs/ipfs-cluster/issues/723) -* Fix `peers ls` error when peers down | [ipfs/ipfs-cluster#715](https://github.com/ipfs/ipfs-cluster/issues/715) | [ipfs/ipfs-cluster#719](https://github.com/ipfs/ipfs-cluster/issues/719) -* Nil pointer panic on `ipfs-cluster-ctl add` | [ipfs/ipfs-cluster#727](https://github.com/ipfs/ipfs-cluster/issues/727) | [ipfs/ipfs-cluster#728](https://github.com/ipfs/ipfs-cluster/issues/728) -* Fix `enc=json` output on `ipfs-cluster-ctl add` | [ipfs/ipfs-cluster#729](https://github.com/ipfs/ipfs-cluster/issues/729) -* Add SSL CAs to Docker container | [ipfs/ipfs-cluster#730](https://github.com/ipfs/ipfs-cluster/issues/730) | [ipfs/ipfs-cluster#731](https://github.com/ipfs/ipfs-cluster/issues/731) -* Remove duplicate import | [ipfs/ipfs-cluster#734](https://github.com/ipfs/ipfs-cluster/issues/734) -* Fix version json object | [ipfs/ipfs-cluster#743](https://github.com/ipfs/ipfs-cluster/issues/743) | [ipfs/ipfs-cluster#752](https://github.com/ipfs/ipfs-cluster/issues/752) +* Mitigate long header attack | [ipfs-cluster/ipfs-cluster#636](https://github.com/ipfs-cluster/ipfs-cluster/issues/636) | [ipfs-cluster/ipfs-cluster#712](https://github.com/ipfs-cluster/ipfs-cluster/issues/712) +* Fix download link in README | [ipfs-cluster/ipfs-cluster#723](https://github.com/ipfs-cluster/ipfs-cluster/issues/723) +* Fix `peers ls` error when peers down | [ipfs-cluster/ipfs-cluster#715](https://github.com/ipfs-cluster/ipfs-cluster/issues/715) | [ipfs-cluster/ipfs-cluster#719](https://github.com/ipfs-cluster/ipfs-cluster/issues/719) +* Nil pointer panic on `ipfs-cluster-ctl add` | [ipfs-cluster/ipfs-cluster#727](https://github.com/ipfs-cluster/ipfs-cluster/issues/727) | [ipfs-cluster/ipfs-cluster#728](https://github.com/ipfs-cluster/ipfs-cluster/issues/728) +* Fix `enc=json` output on `ipfs-cluster-ctl add` | [ipfs-cluster/ipfs-cluster#729](https://github.com/ipfs-cluster/ipfs-cluster/issues/729) +* Add SSL CAs to Docker container | [ipfs-cluster/ipfs-cluster#730](https://github.com/ipfs-cluster/ipfs-cluster/issues/730) | [ipfs-cluster/ipfs-cluster#731](https://github.com/ipfs-cluster/ipfs-cluster/issues/731) +* Remove duplicate import | [ipfs-cluster/ipfs-cluster#734](https://github.com/ipfs-cluster/ipfs-cluster/issues/734) +* Fix version json object | [ipfs-cluster/ipfs-cluster#743](https://github.com/ipfs-cluster/ipfs-cluster/issues/743) | [ipfs-cluster/ipfs-cluster#752](https://github.com/ipfs-cluster/ipfs-cluster/issues/752) #### Upgrading notices @@ -1621,23 +1621,23 @@ comparing your configuration with the new default one. ##### Features - * Add full support for environment variables in configurations and initialization | [ipfs/ipfs-cluster#656](https://github.com/ipfs/ipfs-cluster/issues/656) | [ipfs/ipfs-cluster#663](https://github.com/ipfs/ipfs-cluster/issues/663) | [ipfs/ipfs-cluster#667](https://github.com/ipfs/ipfs-cluster/issues/667) - * Switch to codecov | [ipfs/ipfs-cluster#683](https://github.com/ipfs/ipfs-cluster/issues/683) - * Add auto-resolving IPFS paths | [ipfs/ipfs-cluster#450](https://github.com/ipfs/ipfs-cluster/issues/450) | [ipfs/ipfs-cluster#634](https://github.com/ipfs/ipfs-cluster/issues/634) - * Support user-defined allocations | [ipfs/ipfs-cluster#646](https://github.com/ipfs/ipfs-cluster/issues/646) | [ipfs/ipfs-cluster#647](https://github.com/ipfs/ipfs-cluster/issues/647) - * Support user-defined metadata in pin objects | [ipfs/ipfs-cluster#681](https://github.com/ipfs/ipfs-cluster/issues/681) - * Make normal types serializable and remove `*Serial` types | [ipfs/ipfs-cluster#654](https://github.com/ipfs/ipfs-cluster/issues/654) | [ipfs/ipfs-cluster#688](https://github.com/ipfs/ipfs-cluster/issues/688) | [ipfs/ipfs-cluster#700](https://github.com/ipfs/ipfs-cluster/issues/700) - * Support IPFS paths in the IPFS proxy | [ipfs/ipfs-cluster#480](https://github.com/ipfs/ipfs-cluster/issues/480) | [ipfs/ipfs-cluster#690](https://github.com/ipfs/ipfs-cluster/issues/690) - * Use go-datastore as backend for the cluster state | [ipfs/ipfs-cluster#655](https://github.com/ipfs/ipfs-cluster/issues/655) - * Upgrade dependencies | [ipfs/ipfs-cluster#675](https://github.com/ipfs/ipfs-cluster/issues/675) | [ipfs/ipfs-cluster#679](https://github.com/ipfs/ipfs-cluster/issues/679) | [ipfs/ipfs-cluster#686](https://github.com/ipfs/ipfs-cluster/issues/686) | [ipfs/ipfs-cluster#687](https://github.com/ipfs/ipfs-cluster/issues/687) - * Adopt MIT+Apache 2 License (no more sign-off required) | [ipfs/ipfs-cluster#692](https://github.com/ipfs/ipfs-cluster/issues/692) - * Add codecov configurtion file | [ipfs/ipfs-cluster#693](https://github.com/ipfs/ipfs-cluster/issues/693) - * Additional tests for basic auth | [ipfs/ipfs-cluster#645](https://github.com/ipfs/ipfs-cluster/issues/645) | [ipfs/ipfs-cluster#694](https://github.com/ipfs/ipfs-cluster/issues/694) + * Add full support for environment variables in configurations and initialization | [ipfs-cluster/ipfs-cluster#656](https://github.com/ipfs-cluster/ipfs-cluster/issues/656) | [ipfs-cluster/ipfs-cluster#663](https://github.com/ipfs-cluster/ipfs-cluster/issues/663) | [ipfs-cluster/ipfs-cluster#667](https://github.com/ipfs-cluster/ipfs-cluster/issues/667) + * Switch to codecov | [ipfs-cluster/ipfs-cluster#683](https://github.com/ipfs-cluster/ipfs-cluster/issues/683) + * Add auto-resolving IPFS paths | [ipfs-cluster/ipfs-cluster#450](https://github.com/ipfs-cluster/ipfs-cluster/issues/450) | [ipfs-cluster/ipfs-cluster#634](https://github.com/ipfs-cluster/ipfs-cluster/issues/634) + * Support user-defined allocations | [ipfs-cluster/ipfs-cluster#646](https://github.com/ipfs-cluster/ipfs-cluster/issues/646) | [ipfs-cluster/ipfs-cluster#647](https://github.com/ipfs-cluster/ipfs-cluster/issues/647) + * Support user-defined metadata in pin objects | [ipfs-cluster/ipfs-cluster#681](https://github.com/ipfs-cluster/ipfs-cluster/issues/681) + * Make normal types serializable and remove `*Serial` types | [ipfs-cluster/ipfs-cluster#654](https://github.com/ipfs-cluster/ipfs-cluster/issues/654) | [ipfs-cluster/ipfs-cluster#688](https://github.com/ipfs-cluster/ipfs-cluster/issues/688) | [ipfs-cluster/ipfs-cluster#700](https://github.com/ipfs-cluster/ipfs-cluster/issues/700) + * Support IPFS paths in the IPFS proxy | [ipfs-cluster/ipfs-cluster#480](https://github.com/ipfs-cluster/ipfs-cluster/issues/480) | [ipfs-cluster/ipfs-cluster#690](https://github.com/ipfs-cluster/ipfs-cluster/issues/690) + * Use go-datastore as backend for the cluster state | [ipfs-cluster/ipfs-cluster#655](https://github.com/ipfs-cluster/ipfs-cluster/issues/655) + * Upgrade dependencies | [ipfs-cluster/ipfs-cluster#675](https://github.com/ipfs-cluster/ipfs-cluster/issues/675) | [ipfs-cluster/ipfs-cluster#679](https://github.com/ipfs-cluster/ipfs-cluster/issues/679) | [ipfs-cluster/ipfs-cluster#686](https://github.com/ipfs-cluster/ipfs-cluster/issues/686) | [ipfs-cluster/ipfs-cluster#687](https://github.com/ipfs-cluster/ipfs-cluster/issues/687) + * Adopt MIT+Apache 2 License (no more sign-off required) | [ipfs-cluster/ipfs-cluster#692](https://github.com/ipfs-cluster/ipfs-cluster/issues/692) + * Add codecov configurtion file | [ipfs-cluster/ipfs-cluster#693](https://github.com/ipfs-cluster/ipfs-cluster/issues/693) + * Additional tests for basic auth | [ipfs-cluster/ipfs-cluster#645](https://github.com/ipfs-cluster/ipfs-cluster/issues/645) | [ipfs-cluster/ipfs-cluster#694](https://github.com/ipfs-cluster/ipfs-cluster/issues/694) ##### Bug fixes - * Fix docker compose tests | [ipfs/ipfs-cluster#696](https://github.com/ipfs/ipfs-cluster/issues/696) - * Hide `ipfsproxy.extract_headers_ttl` and `ipfsproxy.extract_headers_path` options by default | [ipfs/ipfs-cluster#699](https://github.com/ipfs/ipfs-cluster/issues/699) + * Fix docker compose tests | [ipfs-cluster/ipfs-cluster#696](https://github.com/ipfs-cluster/ipfs-cluster/issues/696) + * Hide `ipfsproxy.extract_headers_ttl` and `ipfsproxy.extract_headers_path` options by default | [ipfs-cluster/ipfs-cluster#699](https://github.com/ipfs-cluster/ipfs-cluster/issues/699) #### Upgrading notices @@ -1706,7 +1706,7 @@ IPFS Cluster version 0.9.0 comes with one big new feature, [OpenCensus](https:// ##### Features - * Integrate [OpenCensus](https://opencensus.io) tracing and metrics into IPFS Cluster codebase | [ipfs/ipfs-cluster#486](https://github.com/ipfs/ipfs-cluster/issues/486) | [ipfs/ipfs-cluster#658](https://github.com/ipfs/ipfs-cluster/issues/658) | [ipfs/ipfs-cluster#659](https://github.com/ipfs/ipfs-cluster/issues/659) | [ipfs/ipfs-cluster#676](https://github.com/ipfs/ipfs-cluster/issues/676) | [ipfs/ipfs-cluster#671](https://github.com/ipfs/ipfs-cluster/issues/671) | [ipfs/ipfs-cluster#674](https://github.com/ipfs/ipfs-cluster/issues/674) + * Integrate [OpenCensus](https://opencensus.io) tracing and metrics into IPFS Cluster codebase | [ipfs-cluster/ipfs-cluster#486](https://github.com/ipfs-cluster/ipfs-cluster/issues/486) | [ipfs-cluster/ipfs-cluster#658](https://github.com/ipfs-cluster/ipfs-cluster/issues/658) | [ipfs-cluster/ipfs-cluster#659](https://github.com/ipfs-cluster/ipfs-cluster/issues/659) | [ipfs-cluster/ipfs-cluster#676](https://github.com/ipfs-cluster/ipfs-cluster/issues/676) | [ipfs-cluster/ipfs-cluster#671](https://github.com/ipfs-cluster/ipfs-cluster/issues/671) | [ipfs-cluster/ipfs-cluster#674](https://github.com/ipfs-cluster/ipfs-cluster/issues/674) ##### Bug Fixes @@ -1714,7 +1714,7 @@ No bugs were fixed from the previous release. ##### Deprecated - * The snap distribution of IPFS Cluster has been removed | [ipfs/ipfs-cluster#593](https://github.com/ipfs/ipfs-cluster/issues/593) | [ipfs/ipfs-cluster#649](https://github.com/ipfs/ipfs-cluster/issues/649). + * The snap distribution of IPFS Cluster has been removed | [ipfs-cluster/ipfs-cluster#593](https://github.com/ipfs-cluster/ipfs-cluster/issues/593) | [ipfs-cluster/ipfs-cluster#649](https://github.com/ipfs-cluster/ipfs-cluster/issues/649). #### Upgrading notices @@ -1874,22 +1874,22 @@ adding a file, which is always the root hash. ##### Features - * IPFS Proxy extraction to its own `API` component: `ipfsproxy` | [ipfs/ipfs-cluster#453](https://github.com/ipfs/ipfs-cluster/issues/453) | [ipfs/ipfs-cluster#576](https://github.com/ipfs/ipfs-cluster/issues/576) | [ipfs/ipfs-cluster#616](https://github.com/ipfs/ipfs-cluster/issues/616) | [ipfs/ipfs-cluster#617](https://github.com/ipfs/ipfs-cluster/issues/617) - * Add full CORS handling to `restapi` | [ipfs/ipfs-cluster#639](https://github.com/ipfs/ipfs-cluster/issues/639) | [ipfs/ipfs-cluster#640](https://github.com/ipfs/ipfs-cluster/issues/640) - * `restapi` configuration section entries can be overridden from environment variables | [ipfs/ipfs-cluster#609](https://github.com/ipfs/ipfs-cluster/issues/609) - * Update to `go-ipfs-files` 2.0 | [ipfs/ipfs-cluster#613](https://github.com/ipfs/ipfs-cluster/issues/613) - * Tests for the `/monitor/metrics` endpoint | [ipfs/ipfs-cluster#587](https://github.com/ipfs/ipfs-cluster/issues/587) | [ipfs/ipfs-cluster#622](https://github.com/ipfs/ipfs-cluster/issues/622) - * Support `stream-channels=fase` query parameter in `/add` | [ipfs/ipfs-cluster#632](https://github.com/ipfs/ipfs-cluster/issues/632) | [ipfs/ipfs-cluster#633](https://github.com/ipfs/ipfs-cluster/issues/633) - * Support server side `/pins` filtering | [ipfs/ipfs-cluster#445](https://github.com/ipfs/ipfs-cluster/issues/445) | [ipfs/ipfs-cluster#478](https://github.com/ipfs/ipfs-cluster/issues/478) | [ipfs/ipfs-cluster#627](https://github.com/ipfs/ipfs-cluster/issues/627) - * `ipfs-cluster-ctl add --no-stream` option | [ipfs/ipfs-cluster#632](https://github.com/ipfs/ipfs-cluster/issues/632) | [ipfs/ipfs-cluster#637](https://github.com/ipfs/ipfs-cluster/issues/637) - * Upgrade dependencies and libp2p to version 6.0.29 | [ipfs/ipfs-cluster#624](https://github.com/ipfs/ipfs-cluster/issues/624) + * IPFS Proxy extraction to its own `API` component: `ipfsproxy` | [ipfs-cluster/ipfs-cluster#453](https://github.com/ipfs-cluster/ipfs-cluster/issues/453) | [ipfs-cluster/ipfs-cluster#576](https://github.com/ipfs-cluster/ipfs-cluster/issues/576) | [ipfs-cluster/ipfs-cluster#616](https://github.com/ipfs-cluster/ipfs-cluster/issues/616) | [ipfs-cluster/ipfs-cluster#617](https://github.com/ipfs-cluster/ipfs-cluster/issues/617) + * Add full CORS handling to `restapi` | [ipfs-cluster/ipfs-cluster#639](https://github.com/ipfs-cluster/ipfs-cluster/issues/639) | [ipfs-cluster/ipfs-cluster#640](https://github.com/ipfs-cluster/ipfs-cluster/issues/640) + * `restapi` configuration section entries can be overridden from environment variables | [ipfs-cluster/ipfs-cluster#609](https://github.com/ipfs-cluster/ipfs-cluster/issues/609) + * Update to `go-ipfs-files` 2.0 | [ipfs-cluster/ipfs-cluster#613](https://github.com/ipfs-cluster/ipfs-cluster/issues/613) + * Tests for the `/monitor/metrics` endpoint | [ipfs-cluster/ipfs-cluster#587](https://github.com/ipfs-cluster/ipfs-cluster/issues/587) | [ipfs-cluster/ipfs-cluster#622](https://github.com/ipfs-cluster/ipfs-cluster/issues/622) + * Support `stream-channels=fase` query parameter in `/add` | [ipfs-cluster/ipfs-cluster#632](https://github.com/ipfs-cluster/ipfs-cluster/issues/632) | [ipfs-cluster/ipfs-cluster#633](https://github.com/ipfs-cluster/ipfs-cluster/issues/633) + * Support server side `/pins` filtering | [ipfs-cluster/ipfs-cluster#445](https://github.com/ipfs-cluster/ipfs-cluster/issues/445) | [ipfs-cluster/ipfs-cluster#478](https://github.com/ipfs-cluster/ipfs-cluster/issues/478) | [ipfs-cluster/ipfs-cluster#627](https://github.com/ipfs-cluster/ipfs-cluster/issues/627) + * `ipfs-cluster-ctl add --no-stream` option | [ipfs-cluster/ipfs-cluster#632](https://github.com/ipfs-cluster/ipfs-cluster/issues/632) | [ipfs-cluster/ipfs-cluster#637](https://github.com/ipfs-cluster/ipfs-cluster/issues/637) + * Upgrade dependencies and libp2p to version 6.0.29 | [ipfs-cluster/ipfs-cluster#624](https://github.com/ipfs-cluster/ipfs-cluster/issues/624) ##### Bug fixes - * Respect IPFS daemon response headers on non-proxied calls | [ipfs/ipfs-cluster#382](https://github.com/ipfs/ipfs-cluster/issues/382) | [ipfs/ipfs-cluster#623](https://github.com/ipfs/ipfs-cluster/issues/623) | [ipfs/ipfs-cluster#638](https://github.com/ipfs/ipfs-cluster/issues/638) - * Fix `ipfs-cluster-ctl` usage with HTTPs and `/dns*` hostnames | [ipfs/ipfs-cluster#626](https://github.com/ipfs/ipfs-cluster/issues/626) - * Minor fixes in sharness | [ipfs/ipfs-cluster#641](https://github.com/ipfs/ipfs-cluster/issues/641) | [ipfs/ipfs-cluster#643](https://github.com/ipfs/ipfs-cluster/issues/643) - * Fix error handling when parsing the configuration | [ipfs/ipfs-cluster#642](https://github.com/ipfs/ipfs-cluster/issues/642) + * Respect IPFS daemon response headers on non-proxied calls | [ipfs-cluster/ipfs-cluster#382](https://github.com/ipfs-cluster/ipfs-cluster/issues/382) | [ipfs-cluster/ipfs-cluster#623](https://github.com/ipfs-cluster/ipfs-cluster/issues/623) | [ipfs-cluster/ipfs-cluster#638](https://github.com/ipfs-cluster/ipfs-cluster/issues/638) + * Fix `ipfs-cluster-ctl` usage with HTTPs and `/dns*` hostnames | [ipfs-cluster/ipfs-cluster#626](https://github.com/ipfs-cluster/ipfs-cluster/issues/626) + * Minor fixes in sharness | [ipfs-cluster/ipfs-cluster#641](https://github.com/ipfs-cluster/ipfs-cluster/issues/641) | [ipfs-cluster/ipfs-cluster#643](https://github.com/ipfs-cluster/ipfs-cluster/issues/643) + * Fix error handling when parsing the configuration | [ipfs-cluster/ipfs-cluster#642](https://github.com/ipfs-cluster/ipfs-cluster/issues/642) @@ -2005,27 +2005,27 @@ Note that the REST API response format for the `/add` endpoint has changed. Thus ##### Features - * Clean (rotate) the state when running `init` | [ipfs/ipfs-cluster#532](https://github.com/ipfs/ipfs-cluster/issues/532) | [ipfs/ipfs-cluster#553](https://github.com/ipfs/ipfs-cluster/issues/553) - * Configurable REST API headers and CORS defaults | [ipfs/ipfs-cluster#578](https://github.com/ipfs/ipfs-cluster/issues/578) - * Upgrade libp2p and other deps | [ipfs/ipfs-cluster#580](https://github.com/ipfs/ipfs-cluster/issues/580) | [ipfs/ipfs-cluster#590](https://github.com/ipfs/ipfs-cluster/issues/590) | [ipfs/ipfs-cluster#592](https://github.com/ipfs/ipfs-cluster/issues/592) | [ipfs/ipfs-cluster#598](https://github.com/ipfs/ipfs-cluster/issues/598) | [ipfs/ipfs-cluster#599](https://github.com/ipfs/ipfs-cluster/issues/599) - * Use `gossipsub` to broadcast metrics | [ipfs/ipfs-cluster#573](https://github.com/ipfs/ipfs-cluster/issues/573) - * Download gx and gx-go from IPFS preferentially | [ipfs/ipfs-cluster#577](https://github.com/ipfs/ipfs-cluster/issues/577) | [ipfs/ipfs-cluster#581](https://github.com/ipfs/ipfs-cluster/issues/581) - * Expose peer metrics in the API + ctl commands | [ipfs/ipfs-cluster#449](https://github.com/ipfs/ipfs-cluster/issues/449) | [ipfs/ipfs-cluster#572](https://github.com/ipfs/ipfs-cluster/issues/572) | [ipfs/ipfs-cluster#589](https://github.com/ipfs/ipfs-cluster/issues/589) | [ipfs/ipfs-cluster#587](https://github.com/ipfs/ipfs-cluster/issues/587) - * Add a `docker-compose.yml` template, which creates a two peer cluster | [ipfs/ipfs-cluster#585](https://github.com/ipfs/ipfs-cluster/issues/585) | [ipfs/ipfs-cluster#588](https://github.com/ipfs/ipfs-cluster/issues/588) - * Support overwriting configuration values in the `cluster` section with environmental values | [ipfs/ipfs-cluster#575](https://github.com/ipfs/ipfs-cluster/issues/575) | [ipfs/ipfs-cluster#596](https://github.com/ipfs/ipfs-cluster/issues/596) - * Set snaps to `classic` confinement mode and revert it since approval never arrived | [ipfs/ipfs-cluster#579](https://github.com/ipfs/ipfs-cluster/issues/579) | [ipfs/ipfs-cluster#594](https://github.com/ipfs/ipfs-cluster/issues/594) -* Use Go's reverse proxy library in the proxy endpoint | [ipfs/ipfs-cluster#570](https://github.com/ipfs/ipfs-cluster/issues/570) | [ipfs/ipfs-cluster#605](https://github.com/ipfs/ipfs-cluster/issues/605) + * Clean (rotate) the state when running `init` | [ipfs-cluster/ipfs-cluster#532](https://github.com/ipfs-cluster/ipfs-cluster/issues/532) | [ipfs-cluster/ipfs-cluster#553](https://github.com/ipfs-cluster/ipfs-cluster/issues/553) + * Configurable REST API headers and CORS defaults | [ipfs-cluster/ipfs-cluster#578](https://github.com/ipfs-cluster/ipfs-cluster/issues/578) + * Upgrade libp2p and other deps | [ipfs-cluster/ipfs-cluster#580](https://github.com/ipfs-cluster/ipfs-cluster/issues/580) | [ipfs-cluster/ipfs-cluster#590](https://github.com/ipfs-cluster/ipfs-cluster/issues/590) | [ipfs-cluster/ipfs-cluster#592](https://github.com/ipfs-cluster/ipfs-cluster/issues/592) | [ipfs-cluster/ipfs-cluster#598](https://github.com/ipfs-cluster/ipfs-cluster/issues/598) | [ipfs-cluster/ipfs-cluster#599](https://github.com/ipfs-cluster/ipfs-cluster/issues/599) + * Use `gossipsub` to broadcast metrics | [ipfs-cluster/ipfs-cluster#573](https://github.com/ipfs-cluster/ipfs-cluster/issues/573) + * Download gx and gx-go from IPFS preferentially | [ipfs-cluster/ipfs-cluster#577](https://github.com/ipfs-cluster/ipfs-cluster/issues/577) | [ipfs-cluster/ipfs-cluster#581](https://github.com/ipfs-cluster/ipfs-cluster/issues/581) + * Expose peer metrics in the API + ctl commands | [ipfs-cluster/ipfs-cluster#449](https://github.com/ipfs-cluster/ipfs-cluster/issues/449) | [ipfs-cluster/ipfs-cluster#572](https://github.com/ipfs-cluster/ipfs-cluster/issues/572) | [ipfs-cluster/ipfs-cluster#589](https://github.com/ipfs-cluster/ipfs-cluster/issues/589) | [ipfs-cluster/ipfs-cluster#587](https://github.com/ipfs-cluster/ipfs-cluster/issues/587) + * Add a `docker-compose.yml` template, which creates a two peer cluster | [ipfs-cluster/ipfs-cluster#585](https://github.com/ipfs-cluster/ipfs-cluster/issues/585) | [ipfs-cluster/ipfs-cluster#588](https://github.com/ipfs-cluster/ipfs-cluster/issues/588) + * Support overwriting configuration values in the `cluster` section with environmental values | [ipfs-cluster/ipfs-cluster#575](https://github.com/ipfs-cluster/ipfs-cluster/issues/575) | [ipfs-cluster/ipfs-cluster#596](https://github.com/ipfs-cluster/ipfs-cluster/issues/596) + * Set snaps to `classic` confinement mode and revert it since approval never arrived | [ipfs-cluster/ipfs-cluster#579](https://github.com/ipfs-cluster/ipfs-cluster/issues/579) | [ipfs-cluster/ipfs-cluster#594](https://github.com/ipfs-cluster/ipfs-cluster/issues/594) +* Use Go's reverse proxy library in the proxy endpoint | [ipfs-cluster/ipfs-cluster#570](https://github.com/ipfs-cluster/ipfs-cluster/issues/570) | [ipfs-cluster/ipfs-cluster#605](https://github.com/ipfs-cluster/ipfs-cluster/issues/605) ##### Bug fixes - * `/add` endpoints improvements and IPFS Companion compatiblity | [ipfs/ipfs-cluster#582](https://github.com/ipfs/ipfs-cluster/issues/582) | [ipfs/ipfs-cluster#569](https://github.com/ipfs/ipfs-cluster/issues/569) - * Fix adding with spaces in the name parameter | [ipfs/ipfs-cluster#583](https://github.com/ipfs/ipfs-cluster/issues/583) - * Escape filter query parameter | [ipfs/ipfs-cluster#586](https://github.com/ipfs/ipfs-cluster/issues/586) - * Fix some race conditions | [ipfs/ipfs-cluster#597](https://github.com/ipfs/ipfs-cluster/issues/597) - * Improve pin deserialization efficiency | [ipfs/ipfs-cluster#601](https://github.com/ipfs/ipfs-cluster/issues/601) - * Do not error remote pins | [ipfs/ipfs-cluster#600](https://github.com/ipfs/ipfs-cluster/issues/600) | [ipfs/ipfs-cluster#603](https://github.com/ipfs/ipfs-cluster/issues/603) - * Clean up testing folders in `rest` and `rest/client` after tests | [ipfs/ipfs-cluster#607](https://github.com/ipfs/ipfs-cluster/issues/607) + * `/add` endpoints improvements and IPFS Companion compatiblity | [ipfs-cluster/ipfs-cluster#582](https://github.com/ipfs-cluster/ipfs-cluster/issues/582) | [ipfs-cluster/ipfs-cluster#569](https://github.com/ipfs-cluster/ipfs-cluster/issues/569) + * Fix adding with spaces in the name parameter | [ipfs-cluster/ipfs-cluster#583](https://github.com/ipfs-cluster/ipfs-cluster/issues/583) + * Escape filter query parameter | [ipfs-cluster/ipfs-cluster#586](https://github.com/ipfs-cluster/ipfs-cluster/issues/586) + * Fix some race conditions | [ipfs-cluster/ipfs-cluster#597](https://github.com/ipfs-cluster/ipfs-cluster/issues/597) + * Improve pin deserialization efficiency | [ipfs-cluster/ipfs-cluster#601](https://github.com/ipfs-cluster/ipfs-cluster/issues/601) + * Do not error remote pins | [ipfs-cluster/ipfs-cluster#600](https://github.com/ipfs-cluster/ipfs-cluster/issues/600) | [ipfs-cluster/ipfs-cluster#603](https://github.com/ipfs-cluster/ipfs-cluster/issues/603) + * Clean up testing folders in `rest` and `rest/client` after tests | [ipfs-cluster/ipfs-cluster#607](https://github.com/ipfs-cluster/ipfs-cluster/issues/607) #### Upgrading notices @@ -2093,21 +2093,21 @@ Many thanks to all the contributors to this release: @lanzafame, @meiqimichelle, ##### Features - * Move commands to the `cmd/` folder | [ipfs/ipfs-cluster#485](https://github.com/ipfs/ipfs-cluster/issues/485) | [ipfs/ipfs-cluster#521](https://github.com/ipfs/ipfs-cluster/issues/521) | [ipfs/ipfs-cluster#556](https://github.com/ipfs/ipfs-cluster/issues/556) - * Dependency upgrades: `go-dot`, `go-libp2p`, `cid` | [ipfs/ipfs-cluster#533](https://github.com/ipfs/ipfs-cluster/issues/533) | [ipfs/ipfs-cluster#537](https://github.com/ipfs/ipfs-cluster/issues/537) | [ipfs/ipfs-cluster#535](https://github.com/ipfs/ipfs-cluster/issues/535) | [ipfs/ipfs-cluster#544](https://github.com/ipfs/ipfs-cluster/issues/544) | [ipfs/ipfs-cluster#561](https://github.com/ipfs/ipfs-cluster/issues/561) - * Build with go-1.11 | [ipfs/ipfs-cluster#558](https://github.com/ipfs/ipfs-cluster/issues/558) - * Peer names in `PinInfo` | [ipfs/ipfs-cluster#446](https://github.com/ipfs/ipfs-cluster/issues/446) | [ipfs/ipfs-cluster#531](https://github.com/ipfs/ipfs-cluster/issues/531) - * Wrap API client in an interface | [ipfs/ipfs-cluster#447](https://github.com/ipfs/ipfs-cluster/issues/447) | [ipfs/ipfs-cluster#523](https://github.com/ipfs/ipfs-cluster/issues/523) | [ipfs/ipfs-cluster#564](https://github.com/ipfs/ipfs-cluster/issues/564) - * `Makefile`: add `prcheck` target and fix `make all` | [ipfs/ipfs-cluster#536](https://github.com/ipfs/ipfs-cluster/issues/536) | [ipfs/ipfs-cluster#542](https://github.com/ipfs/ipfs-cluster/issues/542) | [ipfs/ipfs-cluster#539](https://github.com/ipfs/ipfs-cluster/issues/539) - * Docker: speed up [re]builds | [ipfs/ipfs-cluster#529](https://github.com/ipfs/ipfs-cluster/issues/529) - * Re-enable keep-alives on servers | [ipfs/ipfs-cluster#548](https://github.com/ipfs/ipfs-cluster/issues/548) | [ipfs/ipfs-cluster#560](https://github.com/ipfs/ipfs-cluster/issues/560) + * Move commands to the `cmd/` folder | [ipfs-cluster/ipfs-cluster#485](https://github.com/ipfs-cluster/ipfs-cluster/issues/485) | [ipfs-cluster/ipfs-cluster#521](https://github.com/ipfs-cluster/ipfs-cluster/issues/521) | [ipfs-cluster/ipfs-cluster#556](https://github.com/ipfs-cluster/ipfs-cluster/issues/556) + * Dependency upgrades: `go-dot`, `go-libp2p`, `cid` | [ipfs-cluster/ipfs-cluster#533](https://github.com/ipfs-cluster/ipfs-cluster/issues/533) | [ipfs-cluster/ipfs-cluster#537](https://github.com/ipfs-cluster/ipfs-cluster/issues/537) | [ipfs-cluster/ipfs-cluster#535](https://github.com/ipfs-cluster/ipfs-cluster/issues/535) | [ipfs-cluster/ipfs-cluster#544](https://github.com/ipfs-cluster/ipfs-cluster/issues/544) | [ipfs-cluster/ipfs-cluster#561](https://github.com/ipfs-cluster/ipfs-cluster/issues/561) + * Build with go-1.11 | [ipfs-cluster/ipfs-cluster#558](https://github.com/ipfs-cluster/ipfs-cluster/issues/558) + * Peer names in `PinInfo` | [ipfs-cluster/ipfs-cluster#446](https://github.com/ipfs-cluster/ipfs-cluster/issues/446) | [ipfs-cluster/ipfs-cluster#531](https://github.com/ipfs-cluster/ipfs-cluster/issues/531) + * Wrap API client in an interface | [ipfs-cluster/ipfs-cluster#447](https://github.com/ipfs-cluster/ipfs-cluster/issues/447) | [ipfs-cluster/ipfs-cluster#523](https://github.com/ipfs-cluster/ipfs-cluster/issues/523) | [ipfs-cluster/ipfs-cluster#564](https://github.com/ipfs-cluster/ipfs-cluster/issues/564) + * `Makefile`: add `prcheck` target and fix `make all` | [ipfs-cluster/ipfs-cluster#536](https://github.com/ipfs-cluster/ipfs-cluster/issues/536) | [ipfs-cluster/ipfs-cluster#542](https://github.com/ipfs-cluster/ipfs-cluster/issues/542) | [ipfs-cluster/ipfs-cluster#539](https://github.com/ipfs-cluster/ipfs-cluster/issues/539) + * Docker: speed up [re]builds | [ipfs-cluster/ipfs-cluster#529](https://github.com/ipfs-cluster/ipfs-cluster/issues/529) + * Re-enable keep-alives on servers | [ipfs-cluster/ipfs-cluster#548](https://github.com/ipfs-cluster/ipfs-cluster/issues/548) | [ipfs-cluster/ipfs-cluster#560](https://github.com/ipfs-cluster/ipfs-cluster/issues/560) ##### Bugfixes - * Fix adding to cluster with unhealthy peers | [ipfs/ipfs-cluster#543](https://github.com/ipfs/ipfs-cluster/issues/543) | [ipfs/ipfs-cluster#549](https://github.com/ipfs/ipfs-cluster/issues/549) - * Fix Snap builds and pushes: multiple architectures re-enabled | [ipfs/ipfs-cluster#520](https://github.com/ipfs/ipfs-cluster/issues/520) | [ipfs/ipfs-cluster#554](https://github.com/ipfs/ipfs-cluster/issues/554) | [ipfs/ipfs-cluster#557](https://github.com/ipfs/ipfs-cluster/issues/557) | [ipfs/ipfs-cluster#562](https://github.com/ipfs/ipfs-cluster/issues/562) | [ipfs/ipfs-cluster#565](https://github.com/ipfs/ipfs-cluster/issues/565) - * Docs: Typos in Readme and some improvements | [ipfs/ipfs-cluster#547](https://github.com/ipfs/ipfs-cluster/issues/547) | [ipfs/ipfs-cluster#567](https://github.com/ipfs/ipfs-cluster/issues/567) - * Fix tests in `stateless` PinTracker | [ipfs/ipfs-cluster#552](https://github.com/ipfs/ipfs-cluster/issues/552) | [ipfs/ipfs-cluster#563](https://github.com/ipfs/ipfs-cluster/issues/563) + * Fix adding to cluster with unhealthy peers | [ipfs-cluster/ipfs-cluster#543](https://github.com/ipfs-cluster/ipfs-cluster/issues/543) | [ipfs-cluster/ipfs-cluster#549](https://github.com/ipfs-cluster/ipfs-cluster/issues/549) + * Fix Snap builds and pushes: multiple architectures re-enabled | [ipfs-cluster/ipfs-cluster#520](https://github.com/ipfs-cluster/ipfs-cluster/issues/520) | [ipfs-cluster/ipfs-cluster#554](https://github.com/ipfs-cluster/ipfs-cluster/issues/554) | [ipfs-cluster/ipfs-cluster#557](https://github.com/ipfs-cluster/ipfs-cluster/issues/557) | [ipfs-cluster/ipfs-cluster#562](https://github.com/ipfs-cluster/ipfs-cluster/issues/562) | [ipfs-cluster/ipfs-cluster#565](https://github.com/ipfs-cluster/ipfs-cluster/issues/565) + * Docs: Typos in Readme and some improvements | [ipfs-cluster/ipfs-cluster#547](https://github.com/ipfs-cluster/ipfs-cluster/issues/547) | [ipfs-cluster/ipfs-cluster#567](https://github.com/ipfs-cluster/ipfs-cluster/issues/567) + * Fix tests in `stateless` PinTracker | [ipfs-cluster/ipfs-cluster#552](https://github.com/ipfs-cluster/ipfs-cluster/issues/552) | [ipfs-cluster/ipfs-cluster#563](https://github.com/ipfs-cluster/ipfs-cluster/issues/563) #### Upgrading notices @@ -2150,28 +2150,28 @@ This release requires a state upgrade migration. It can be performed with `ipfs- ##### Features - * Libp2p upgrades (up to v6) | [ipfs/ipfs-cluster#456](https://github.com/ipfs/ipfs-cluster/issues/456) | [ipfs/ipfs-cluster#482](https://github.com/ipfs/ipfs-cluster/issues/482) - * Support `/dns` multiaddresses for `node_multiaddress` | [ipfs/ipfs-cluster#462](https://github.com/ipfs/ipfs-cluster/issues/462) | [ipfs/ipfs-cluster#463](https://github.com/ipfs/ipfs-cluster/issues/463) - * Increase `state_sync_interval` to 10 minutes | [ipfs/ipfs-cluster#468](https://github.com/ipfs/ipfs-cluster/issues/468) | [ipfs/ipfs-cluster#469](https://github.com/ipfs/ipfs-cluster/issues/469) - * Auto-interpret libp2p addresses in `rest/client`'s `APIAddr` configuration option | [ipfs/ipfs-cluster#498](https://github.com/ipfs/ipfs-cluster/issues/498) - * Resolve `APIAddr` (for `/dnsaddr` usage) in `rest/client` | [ipfs/ipfs-cluster#498](https://github.com/ipfs/ipfs-cluster/issues/498) - * Support for adding content to Cluster and sharding (sharding is disabled) | [ipfs/ipfs-cluster#484](https://github.com/ipfs/ipfs-cluster/issues/484) | [ipfs/ipfs-cluster#503](https://github.com/ipfs/ipfs-cluster/issues/503) | [ipfs/ipfs-cluster#495](https://github.com/ipfs/ipfs-cluster/issues/495) | [ipfs/ipfs-cluster#504](https://github.com/ipfs/ipfs-cluster/issues/504) | [ipfs/ipfs-cluster#509](https://github.com/ipfs/ipfs-cluster/issues/509) | [ipfs/ipfs-cluster#511](https://github.com/ipfs/ipfs-cluster/issues/511) | [ipfs/ipfs-cluster#518](https://github.com/ipfs/ipfs-cluster/issues/518) - * `stateless` PinTracker [ipfs/ipfs-cluster#308](https://github.com/ipfs/ipfs-cluster/issues/308) | [ipfs/ipfs-cluster#460](https://github.com/ipfs/ipfs-cluster/issues/460) - * Add `size-only=true` to `repo/stat` calls | [ipfs/ipfs-cluster#507](https://github.com/ipfs/ipfs-cluster/issues/507) - * Enable DHT-based peer discovery and routing for cluster peers | [ipfs/ipfs-cluster#489](https://github.com/ipfs/ipfs-cluster/issues/489) | [ipfs/ipfs-cluster#508](https://github.com/ipfs/ipfs-cluster/issues/508) - * Gx-go upgrade | [ipfs/ipfs-cluster#517](https://github.com/ipfs/ipfs-cluster/issues/517) + * Libp2p upgrades (up to v6) | [ipfs-cluster/ipfs-cluster#456](https://github.com/ipfs-cluster/ipfs-cluster/issues/456) | [ipfs-cluster/ipfs-cluster#482](https://github.com/ipfs-cluster/ipfs-cluster/issues/482) + * Support `/dns` multiaddresses for `node_multiaddress` | [ipfs-cluster/ipfs-cluster#462](https://github.com/ipfs-cluster/ipfs-cluster/issues/462) | [ipfs-cluster/ipfs-cluster#463](https://github.com/ipfs-cluster/ipfs-cluster/issues/463) + * Increase `state_sync_interval` to 10 minutes | [ipfs-cluster/ipfs-cluster#468](https://github.com/ipfs-cluster/ipfs-cluster/issues/468) | [ipfs-cluster/ipfs-cluster#469](https://github.com/ipfs-cluster/ipfs-cluster/issues/469) + * Auto-interpret libp2p addresses in `rest/client`'s `APIAddr` configuration option | [ipfs-cluster/ipfs-cluster#498](https://github.com/ipfs-cluster/ipfs-cluster/issues/498) + * Resolve `APIAddr` (for `/dnsaddr` usage) in `rest/client` | [ipfs-cluster/ipfs-cluster#498](https://github.com/ipfs-cluster/ipfs-cluster/issues/498) + * Support for adding content to Cluster and sharding (sharding is disabled) | [ipfs-cluster/ipfs-cluster#484](https://github.com/ipfs-cluster/ipfs-cluster/issues/484) | [ipfs-cluster/ipfs-cluster#503](https://github.com/ipfs-cluster/ipfs-cluster/issues/503) | [ipfs-cluster/ipfs-cluster#495](https://github.com/ipfs-cluster/ipfs-cluster/issues/495) | [ipfs-cluster/ipfs-cluster#504](https://github.com/ipfs-cluster/ipfs-cluster/issues/504) | [ipfs-cluster/ipfs-cluster#509](https://github.com/ipfs-cluster/ipfs-cluster/issues/509) | [ipfs-cluster/ipfs-cluster#511](https://github.com/ipfs-cluster/ipfs-cluster/issues/511) | [ipfs-cluster/ipfs-cluster#518](https://github.com/ipfs-cluster/ipfs-cluster/issues/518) + * `stateless` PinTracker [ipfs-cluster/ipfs-cluster#308](https://github.com/ipfs-cluster/ipfs-cluster/issues/308) | [ipfs-cluster/ipfs-cluster#460](https://github.com/ipfs-cluster/ipfs-cluster/issues/460) + * Add `size-only=true` to `repo/stat` calls | [ipfs-cluster/ipfs-cluster#507](https://github.com/ipfs-cluster/ipfs-cluster/issues/507) + * Enable DHT-based peer discovery and routing for cluster peers | [ipfs-cluster/ipfs-cluster#489](https://github.com/ipfs-cluster/ipfs-cluster/issues/489) | [ipfs-cluster/ipfs-cluster#508](https://github.com/ipfs-cluster/ipfs-cluster/issues/508) + * Gx-go upgrade | [ipfs-cluster/ipfs-cluster#517](https://github.com/ipfs-cluster/ipfs-cluster/issues/517) ##### Bugfixes - * Fix type for constants | [ipfs/ipfs-cluster#455](https://github.com/ipfs/ipfs-cluster/issues/455) - * Gofmt fix | [ipfs/ipfs-cluster#464](https://github.com/ipfs/ipfs-cluster/issues/464) - * Fix tests for forked repositories | [ipfs/ipfs-cluster#465](https://github.com/ipfs/ipfs-cluster/issues/465) | [ipfs/ipfs-cluster#472](https://github.com/ipfs/ipfs-cluster/issues/472) - * Fix resolve panic on `rest/client` | [ipfs/ipfs-cluster#498](https://github.com/ipfs/ipfs-cluster/issues/498) - * Fix remote pins stuck in error state | [ipfs/ipfs-cluster#500](https://github.com/ipfs/ipfs-cluster/issues/500) | [ipfs/ipfs-cluster#460](https://github.com/ipfs/ipfs-cluster/issues/460) - * Fix running some tests with `-race` | [ipfs/ipfs-cluster#340](https://github.com/ipfs/ipfs-cluster/issues/340) | [ipfs/ipfs-cluster#458](https://github.com/ipfs/ipfs-cluster/issues/458) - * Fix ipfs proxy `/add` endpoint | [ipfs/ipfs-cluster#495](https://github.com/ipfs/ipfs-cluster/issues/495) | [ipfs/ipfs-cluster#81](https://github.com/ipfs/ipfs-cluster/issues/81) | [ipfs/ipfs-cluster#505](https://github.com/ipfs/ipfs-cluster/issues/505) - * Fix ipfs proxy not hijacking `repo/stat` | [ipfs/ipfs-cluster#466](https://github.com/ipfs/ipfs-cluster/issues/466) | [ipfs/ipfs-cluster#514](https://github.com/ipfs/ipfs-cluster/issues/514) - * Fix some godoc comments | [ipfs/ipfs-cluster#519](https://github.com/ipfs/ipfs-cluster/issues/519) + * Fix type for constants | [ipfs-cluster/ipfs-cluster#455](https://github.com/ipfs-cluster/ipfs-cluster/issues/455) + * Gofmt fix | [ipfs-cluster/ipfs-cluster#464](https://github.com/ipfs-cluster/ipfs-cluster/issues/464) + * Fix tests for forked repositories | [ipfs-cluster/ipfs-cluster#465](https://github.com/ipfs-cluster/ipfs-cluster/issues/465) | [ipfs-cluster/ipfs-cluster#472](https://github.com/ipfs-cluster/ipfs-cluster/issues/472) + * Fix resolve panic on `rest/client` | [ipfs-cluster/ipfs-cluster#498](https://github.com/ipfs-cluster/ipfs-cluster/issues/498) + * Fix remote pins stuck in error state | [ipfs-cluster/ipfs-cluster#500](https://github.com/ipfs-cluster/ipfs-cluster/issues/500) | [ipfs-cluster/ipfs-cluster#460](https://github.com/ipfs-cluster/ipfs-cluster/issues/460) + * Fix running some tests with `-race` | [ipfs-cluster/ipfs-cluster#340](https://github.com/ipfs-cluster/ipfs-cluster/issues/340) | [ipfs-cluster/ipfs-cluster#458](https://github.com/ipfs-cluster/ipfs-cluster/issues/458) + * Fix ipfs proxy `/add` endpoint | [ipfs-cluster/ipfs-cluster#495](https://github.com/ipfs-cluster/ipfs-cluster/issues/495) | [ipfs-cluster/ipfs-cluster#81](https://github.com/ipfs-cluster/ipfs-cluster/issues/81) | [ipfs-cluster/ipfs-cluster#505](https://github.com/ipfs-cluster/ipfs-cluster/issues/505) + * Fix ipfs proxy not hijacking `repo/stat` | [ipfs-cluster/ipfs-cluster#466](https://github.com/ipfs-cluster/ipfs-cluster/issues/466) | [ipfs-cluster/ipfs-cluster#514](https://github.com/ipfs-cluster/ipfs-cluster/issues/514) + * Fix some godoc comments | [ipfs-cluster/ipfs-cluster#519](https://github.com/ipfs-cluster/ipfs-cluster/issues/519) #### Upgrading notices @@ -2222,38 +2222,38 @@ whether an item is pinning (a request to ipfs is ongoing) vs. pin-queued (waitin ##### Features - * Consensus refactorings | [ipfs/ipfs-cluster#398](https://github.com/ipfs/ipfs-cluster/issues/398) | [ipfs/ipfs-cluster#371](https://github.com/ipfs/ipfs-cluster/issues/371) - * Pintracker revamp | [ipfs/ipfs-cluster#308](https://github.com/ipfs/ipfs-cluster/issues/308) | [ipfs/ipfs-cluster#383](https://github.com/ipfs/ipfs-cluster/issues/383) | [ipfs/ipfs-cluster#408](https://github.com/ipfs/ipfs-cluster/issues/408) | [ipfs/ipfs-cluster#415](https://github.com/ipfs/ipfs-cluster/issues/415) | [ipfs/ipfs-cluster#421](https://github.com/ipfs/ipfs-cluster/issues/421) | [ipfs/ipfs-cluster#427](https://github.com/ipfs/ipfs-cluster/issues/427) | [ipfs/ipfs-cluster#432](https://github.com/ipfs/ipfs-cluster/issues/432) - * Pubsub monitoring | [ipfs/ipfs-cluster#400](https://github.com/ipfs/ipfs-cluster/issues/400) - * Force killing cluster with double CTRL-C | [ipfs/ipfs-cluster#258](https://github.com/ipfs/ipfs-cluster/issues/258) | [ipfs/ipfs-cluster#358](https://github.com/ipfs/ipfs-cluster/issues/358) - * 3x faster testsuite | [ipfs/ipfs-cluster#339](https://github.com/ipfs/ipfs-cluster/issues/339) | [ipfs/ipfs-cluster#350](https://github.com/ipfs/ipfs-cluster/issues/350) - * Introduce `disable_repinning` option | [ipfs/ipfs-cluster#369](https://github.com/ipfs/ipfs-cluster/issues/369) | [ipfs/ipfs-cluster#387](https://github.com/ipfs/ipfs-cluster/issues/387) - * Documentation moved to website and fixes | [ipfs/ipfs-cluster#390](https://github.com/ipfs/ipfs-cluster/issues/390) | [ipfs/ipfs-cluster#391](https://github.com/ipfs/ipfs-cluster/issues/391) | [ipfs/ipfs-cluster#393](https://github.com/ipfs/ipfs-cluster/issues/393) | [ipfs/ipfs-cluster#347](https://github.com/ipfs/ipfs-cluster/issues/347) - * Run Docker container with `daemon --upgrade` by default | [ipfs/ipfs-cluster#394](https://github.com/ipfs/ipfs-cluster/issues/394) - * Remove the `ipfs-cluster-ctl peers add` command (bootstrap should be used to add peers) | [ipfs/ipfs-cluster#397](https://github.com/ipfs/ipfs-cluster/issues/397) - * Add tests using HTTPs endpoints | [ipfs/ipfs-cluster#191](https://github.com/ipfs/ipfs-cluster/issues/191) | [ipfs/ipfs-cluster#403](https://github.com/ipfs/ipfs-cluster/issues/403) - * Set `refs` as default `pinning_method` and `10` as default `concurrent_pins` | [ipfs/ipfs-cluster#420](https://github.com/ipfs/ipfs-cluster/issues/420) - * Use latest `gx` and `gx-go`. Be more verbose when installing | [ipfs/ipfs-cluster#418](https://github.com/ipfs/ipfs-cluster/issues/418) - * Makefile: Properly retrigger builds on source change | [ipfs/ipfs-cluster#426](https://github.com/ipfs/ipfs-cluster/issues/426) - * Improvements to StateSync() | [ipfs/ipfs-cluster#429](https://github.com/ipfs/ipfs-cluster/issues/429) - * Rename `ipfs-cluster-data` folder to `raft` | [ipfs/ipfs-cluster#430](https://github.com/ipfs/ipfs-cluster/issues/430) - * Officially support go 1.10 | [ipfs/ipfs-cluster#439](https://github.com/ipfs/ipfs-cluster/issues/439) - * Update to libp2p 5.0.17 | [ipfs/ipfs-cluster#440](https://github.com/ipfs/ipfs-cluster/issues/440) + * Consensus refactorings | [ipfs-cluster/ipfs-cluster#398](https://github.com/ipfs-cluster/ipfs-cluster/issues/398) | [ipfs-cluster/ipfs-cluster#371](https://github.com/ipfs-cluster/ipfs-cluster/issues/371) + * Pintracker revamp | [ipfs-cluster/ipfs-cluster#308](https://github.com/ipfs-cluster/ipfs-cluster/issues/308) | [ipfs-cluster/ipfs-cluster#383](https://github.com/ipfs-cluster/ipfs-cluster/issues/383) | [ipfs-cluster/ipfs-cluster#408](https://github.com/ipfs-cluster/ipfs-cluster/issues/408) | [ipfs-cluster/ipfs-cluster#415](https://github.com/ipfs-cluster/ipfs-cluster/issues/415) | [ipfs-cluster/ipfs-cluster#421](https://github.com/ipfs-cluster/ipfs-cluster/issues/421) | [ipfs-cluster/ipfs-cluster#427](https://github.com/ipfs-cluster/ipfs-cluster/issues/427) | [ipfs-cluster/ipfs-cluster#432](https://github.com/ipfs-cluster/ipfs-cluster/issues/432) + * Pubsub monitoring | [ipfs-cluster/ipfs-cluster#400](https://github.com/ipfs-cluster/ipfs-cluster/issues/400) + * Force killing cluster with double CTRL-C | [ipfs-cluster/ipfs-cluster#258](https://github.com/ipfs-cluster/ipfs-cluster/issues/258) | [ipfs-cluster/ipfs-cluster#358](https://github.com/ipfs-cluster/ipfs-cluster/issues/358) + * 3x faster testsuite | [ipfs-cluster/ipfs-cluster#339](https://github.com/ipfs-cluster/ipfs-cluster/issues/339) | [ipfs-cluster/ipfs-cluster#350](https://github.com/ipfs-cluster/ipfs-cluster/issues/350) + * Introduce `disable_repinning` option | [ipfs-cluster/ipfs-cluster#369](https://github.com/ipfs-cluster/ipfs-cluster/issues/369) | [ipfs-cluster/ipfs-cluster#387](https://github.com/ipfs-cluster/ipfs-cluster/issues/387) + * Documentation moved to website and fixes | [ipfs-cluster/ipfs-cluster#390](https://github.com/ipfs-cluster/ipfs-cluster/issues/390) | [ipfs-cluster/ipfs-cluster#391](https://github.com/ipfs-cluster/ipfs-cluster/issues/391) | [ipfs-cluster/ipfs-cluster#393](https://github.com/ipfs-cluster/ipfs-cluster/issues/393) | [ipfs-cluster/ipfs-cluster#347](https://github.com/ipfs-cluster/ipfs-cluster/issues/347) + * Run Docker container with `daemon --upgrade` by default | [ipfs-cluster/ipfs-cluster#394](https://github.com/ipfs-cluster/ipfs-cluster/issues/394) + * Remove the `ipfs-cluster-ctl peers add` command (bootstrap should be used to add peers) | [ipfs-cluster/ipfs-cluster#397](https://github.com/ipfs-cluster/ipfs-cluster/issues/397) + * Add tests using HTTPs endpoints | [ipfs-cluster/ipfs-cluster#191](https://github.com/ipfs-cluster/ipfs-cluster/issues/191) | [ipfs-cluster/ipfs-cluster#403](https://github.com/ipfs-cluster/ipfs-cluster/issues/403) + * Set `refs` as default `pinning_method` and `10` as default `concurrent_pins` | [ipfs-cluster/ipfs-cluster#420](https://github.com/ipfs-cluster/ipfs-cluster/issues/420) + * Use latest `gx` and `gx-go`. Be more verbose when installing | [ipfs-cluster/ipfs-cluster#418](https://github.com/ipfs-cluster/ipfs-cluster/issues/418) + * Makefile: Properly retrigger builds on source change | [ipfs-cluster/ipfs-cluster#426](https://github.com/ipfs-cluster/ipfs-cluster/issues/426) + * Improvements to StateSync() | [ipfs-cluster/ipfs-cluster#429](https://github.com/ipfs-cluster/ipfs-cluster/issues/429) + * Rename `ipfs-cluster-data` folder to `raft` | [ipfs-cluster/ipfs-cluster#430](https://github.com/ipfs-cluster/ipfs-cluster/issues/430) + * Officially support go 1.10 | [ipfs-cluster/ipfs-cluster#439](https://github.com/ipfs-cluster/ipfs-cluster/issues/439) + * Update to libp2p 5.0.17 | [ipfs-cluster/ipfs-cluster#440](https://github.com/ipfs-cluster/ipfs-cluster/issues/440) ##### Bugsfixes: - * Don't keep peers /ip*/ addresses if we know DNS addresses for them | [ipfs/ipfs-cluster#381](https://github.com/ipfs/ipfs-cluster/issues/381) - * Running cluster with wrong configuration path gives misleading error | [ipfs/ipfs-cluster#343](https://github.com/ipfs/ipfs-cluster/issues/343) | [ipfs/ipfs-cluster#370](https://github.com/ipfs/ipfs-cluster/issues/370) | [ipfs/ipfs-cluster#373](https://github.com/ipfs/ipfs-cluster/issues/373) - * Do not fail when running with `daemon --upgrade` and no state is present | [ipfs/ipfs-cluster#395](https://github.com/ipfs/ipfs-cluster/issues/395) - * IPFS Proxy: handle arguments passed as part of the url | [ipfs/ipfs-cluster#380](https://github.com/ipfs/ipfs-cluster/issues/380) | [ipfs/ipfs-cluster#392](https://github.com/ipfs/ipfs-cluster/issues/392) - * WaitForUpdates() may return before state is fully synced | [ipfs/ipfs-cluster#378](https://github.com/ipfs/ipfs-cluster/issues/378) - * Configuration mutates no more and shadowing is no longer necessary | [ipfs/ipfs-cluster#235](https://github.com/ipfs/ipfs-cluster/issues/235) - * Govet fixes | [ipfs/ipfs-cluster#417](https://github.com/ipfs/ipfs-cluster/issues/417) + * Don't keep peers /ip*/ addresses if we know DNS addresses for them | [ipfs-cluster/ipfs-cluster#381](https://github.com/ipfs-cluster/ipfs-cluster/issues/381) + * Running cluster with wrong configuration path gives misleading error | [ipfs-cluster/ipfs-cluster#343](https://github.com/ipfs-cluster/ipfs-cluster/issues/343) | [ipfs-cluster/ipfs-cluster#370](https://github.com/ipfs-cluster/ipfs-cluster/issues/370) | [ipfs-cluster/ipfs-cluster#373](https://github.com/ipfs-cluster/ipfs-cluster/issues/373) + * Do not fail when running with `daemon --upgrade` and no state is present | [ipfs-cluster/ipfs-cluster#395](https://github.com/ipfs-cluster/ipfs-cluster/issues/395) + * IPFS Proxy: handle arguments passed as part of the url | [ipfs-cluster/ipfs-cluster#380](https://github.com/ipfs-cluster/ipfs-cluster/issues/380) | [ipfs-cluster/ipfs-cluster#392](https://github.com/ipfs-cluster/ipfs-cluster/issues/392) + * WaitForUpdates() may return before state is fully synced | [ipfs-cluster/ipfs-cluster#378](https://github.com/ipfs-cluster/ipfs-cluster/issues/378) + * Configuration mutates no more and shadowing is no longer necessary | [ipfs-cluster/ipfs-cluster#235](https://github.com/ipfs-cluster/ipfs-cluster/issues/235) + * Govet fixes | [ipfs-cluster/ipfs-cluster#417](https://github.com/ipfs-cluster/ipfs-cluster/issues/417) * Fix release changelog when having RC tags - * Fix lock file not being removed on cluster force-kill | [ipfs/ipfs-cluster#423](https://github.com/ipfs/ipfs-cluster/issues/423) | [ipfs/ipfs-cluster#437](https://github.com/ipfs/ipfs-cluster/issues/437) - * Fix indirect pins not being correctly parsed | [ipfs/ipfs-cluster#428](https://github.com/ipfs/ipfs-cluster/issues/428) | [ipfs/ipfs-cluster#436](https://github.com/ipfs/ipfs-cluster/issues/436) - * Enable NAT support in libp2p host | [ipfs/ipfs-cluster#346](https://github.com/ipfs/ipfs-cluster/issues/346) | [ipfs/ipfs-cluster#441](https://github.com/ipfs/ipfs-cluster/issues/441) - * Fix pubsub monitor not working on ARM | [ipfs/ipfs-cluster#433](https://github.com/ipfs/ipfs-cluster/issues/433) | [ipfs/ipfs-cluster#443](https://github.com/ipfs/ipfs-cluster/issues/443) + * Fix lock file not being removed on cluster force-kill | [ipfs-cluster/ipfs-cluster#423](https://github.com/ipfs-cluster/ipfs-cluster/issues/423) | [ipfs-cluster/ipfs-cluster#437](https://github.com/ipfs-cluster/ipfs-cluster/issues/437) + * Fix indirect pins not being correctly parsed | [ipfs-cluster/ipfs-cluster#428](https://github.com/ipfs-cluster/ipfs-cluster/issues/428) | [ipfs-cluster/ipfs-cluster#436](https://github.com/ipfs-cluster/ipfs-cluster/issues/436) + * Enable NAT support in libp2p host | [ipfs-cluster/ipfs-cluster#346](https://github.com/ipfs-cluster/ipfs-cluster/issues/346) | [ipfs-cluster/ipfs-cluster#441](https://github.com/ipfs-cluster/ipfs-cluster/issues/441) + * Fix pubsub monitor not working on ARM | [ipfs-cluster/ipfs-cluster#433](https://github.com/ipfs-cluster/ipfs-cluster/issues/433) | [ipfs-cluster/ipfs-cluster#443](https://github.com/ipfs-cluster/ipfs-cluster/issues/443) #### Upgrading notices @@ -2297,18 +2297,18 @@ The `ipfs-cluster-ctl` no longer has a `peers add` subcommand. Peers should not This release comes full with new features. The biggest ones are the support for parallel pinning (using `refs -r` rather than `pin add` to pin things in IPFS), and the exposing of the http endpoints through libp2p. This allows users to securely interact with the HTTP API without having to setup SSL certificates. * Features - * `--no-status` for `ipfs-cluster-ctl pin add/rm` allows to speed up adding and removing by not fetching the status one second afterwards. Useful for ingesting pinsets to cluster | [ipfs/ipfs-cluster#286](https://github.com/ipfs/ipfs-cluster/issues/286) | [ipfs/ipfs-cluster#329](https://github.com/ipfs/ipfs-cluster/issues/329) - * `--wait` flag for `ipfs-cluster-ctl pin add/rm` allows to wait until a CID is fully pinned or unpinned [ipfs/ipfs-cluster#338](https://github.com/ipfs/ipfs-cluster/issues/338) | [ipfs/ipfs-cluster#348](https://github.com/ipfs/ipfs-cluster/issues/348) | [ipfs/ipfs-cluster#363](https://github.com/ipfs/ipfs-cluster/issues/363) - * Support `refs` pinning method. Parallel pinning | [ipfs/ipfs-cluster#326](https://github.com/ipfs/ipfs-cluster/issues/326) | [ipfs/ipfs-cluster#331](https://github.com/ipfs/ipfs-cluster/issues/331) - * Double default timeouts for `ipfs-cluster-ctl` | [ipfs/ipfs-cluster#323](https://github.com/ipfs/ipfs-cluster/issues/323) | [ipfs/ipfs-cluster#334](https://github.com/ipfs/ipfs-cluster/issues/334) - * Better error messages during startup | [ipfs/ipfs-cluster#167](https://github.com/ipfs/ipfs-cluster/issues/167) | [ipfs/ipfs-cluster#344](https://github.com/ipfs/ipfs-cluster/issues/344) | [ipfs/ipfs-cluster#353](https://github.com/ipfs/ipfs-cluster/issues/353) - * REST API client now provides an `IPFS()` method which returns a `go-ipfs-api` shell instance pointing to the proxy endpoint | [ipfs/ipfs-cluster#269](https://github.com/ipfs/ipfs-cluster/issues/269) | [ipfs/ipfs-cluster#356](https://github.com/ipfs/ipfs-cluster/issues/356) - * REST http-api-over-libp2p. Server, client, `ipfs-cluster-ctl` support added | [ipfs/ipfs-cluster#305](https://github.com/ipfs/ipfs-cluster/issues/305) | [ipfs/ipfs-cluster#349](https://github.com/ipfs/ipfs-cluster/issues/349) - * Added support for priority pins and non-recursive pins (sharding-related) | [ipfs/ipfs-cluster#341](https://github.com/ipfs/ipfs-cluster/issues/341) | [ipfs/ipfs-cluster#342](https://github.com/ipfs/ipfs-cluster/issues/342) - * Documentation fixes | [ipfs/ipfs-cluster#328](https://github.com/ipfs/ipfs-cluster/issues/328) | [ipfs/ipfs-cluster#357](https://github.com/ipfs/ipfs-cluster/issues/357) + * `--no-status` for `ipfs-cluster-ctl pin add/rm` allows to speed up adding and removing by not fetching the status one second afterwards. Useful for ingesting pinsets to cluster | [ipfs-cluster/ipfs-cluster#286](https://github.com/ipfs-cluster/ipfs-cluster/issues/286) | [ipfs-cluster/ipfs-cluster#329](https://github.com/ipfs-cluster/ipfs-cluster/issues/329) + * `--wait` flag for `ipfs-cluster-ctl pin add/rm` allows to wait until a CID is fully pinned or unpinned [ipfs-cluster/ipfs-cluster#338](https://github.com/ipfs-cluster/ipfs-cluster/issues/338) | [ipfs-cluster/ipfs-cluster#348](https://github.com/ipfs-cluster/ipfs-cluster/issues/348) | [ipfs-cluster/ipfs-cluster#363](https://github.com/ipfs-cluster/ipfs-cluster/issues/363) + * Support `refs` pinning method. Parallel pinning | [ipfs-cluster/ipfs-cluster#326](https://github.com/ipfs-cluster/ipfs-cluster/issues/326) | [ipfs-cluster/ipfs-cluster#331](https://github.com/ipfs-cluster/ipfs-cluster/issues/331) + * Double default timeouts for `ipfs-cluster-ctl` | [ipfs-cluster/ipfs-cluster#323](https://github.com/ipfs-cluster/ipfs-cluster/issues/323) | [ipfs-cluster/ipfs-cluster#334](https://github.com/ipfs-cluster/ipfs-cluster/issues/334) + * Better error messages during startup | [ipfs-cluster/ipfs-cluster#167](https://github.com/ipfs-cluster/ipfs-cluster/issues/167) | [ipfs-cluster/ipfs-cluster#344](https://github.com/ipfs-cluster/ipfs-cluster/issues/344) | [ipfs-cluster/ipfs-cluster#353](https://github.com/ipfs-cluster/ipfs-cluster/issues/353) + * REST API client now provides an `IPFS()` method which returns a `go-ipfs-api` shell instance pointing to the proxy endpoint | [ipfs-cluster/ipfs-cluster#269](https://github.com/ipfs-cluster/ipfs-cluster/issues/269) | [ipfs-cluster/ipfs-cluster#356](https://github.com/ipfs-cluster/ipfs-cluster/issues/356) + * REST http-api-over-libp2p. Server, client, `ipfs-cluster-ctl` support added | [ipfs-cluster/ipfs-cluster#305](https://github.com/ipfs-cluster/ipfs-cluster/issues/305) | [ipfs-cluster/ipfs-cluster#349](https://github.com/ipfs-cluster/ipfs-cluster/issues/349) + * Added support for priority pins and non-recursive pins (sharding-related) | [ipfs-cluster/ipfs-cluster#341](https://github.com/ipfs-cluster/ipfs-cluster/issues/341) | [ipfs-cluster/ipfs-cluster#342](https://github.com/ipfs-cluster/ipfs-cluster/issues/342) + * Documentation fixes | [ipfs-cluster/ipfs-cluster#328](https://github.com/ipfs-cluster/ipfs-cluster/issues/328) | [ipfs-cluster/ipfs-cluster#357](https://github.com/ipfs-cluster/ipfs-cluster/issues/357) * Bugfixes - * Print lock path in logs | [ipfs/ipfs-cluster#332](https://github.com/ipfs/ipfs-cluster/issues/332) | [ipfs/ipfs-cluster#333](https://github.com/ipfs/ipfs-cluster/issues/333) + * Print lock path in logs | [ipfs-cluster/ipfs-cluster#332](https://github.com/ipfs-cluster/ipfs-cluster/issues/332) | [ipfs-cluster/ipfs-cluster#333](https://github.com/ipfs-cluster/ipfs-cluster/issues/333) There are no breaking API changes and all configurations should be backwards compatible. The `api/rest/client` provides a new `IPFS()` method. @@ -2327,7 +2327,7 @@ This release will require a **state upgrade**. Run `ipfs-cluster-service state u This release fixes the pre-built binaries. * Bugfixes - * Pre-built binaries panic on start | [ipfs/ipfs-cluster#320](https://github.com/ipfs/ipfs-cluster/issues/320) + * Pre-built binaries panic on start | [ipfs-cluster/ipfs-cluster#320](https://github.com/ipfs-cluster/ipfs-cluster/issues/320) --- @@ -2336,13 +2336,13 @@ This release fixes the pre-built binaries. This release includes additional `ipfs-cluster-service state` subcommands and the connectivity graph feature. * Features - * `ipfs-cluster-service daemon --upgrade` allows to automatically run migrations before starting | [ipfs/ipfs-cluster#300](https://github.com/ipfs/ipfs-cluster/issues/300) | [ipfs/ipfs-cluster#307](https://github.com/ipfs/ipfs-cluster/issues/307) - * `ipfs-cluster-service state version` reports the shared state format version | [ipfs/ipfs-cluster#298](https://github.com/ipfs/ipfs-cluster/issues/298) | [ipfs/ipfs-cluster#307](https://github.com/ipfs/ipfs-cluster/issues/307) - * `ipfs-cluster-service health graph` generates a .dot graph file of cluster connectivity | [ipfs/ipfs-cluster#17](https://github.com/ipfs/ipfs-cluster/issues/17) | [ipfs/ipfs-cluster#291](https://github.com/ipfs/ipfs-cluster/issues/291) | [ipfs/ipfs-cluster#311](https://github.com/ipfs/ipfs-cluster/issues/311) + * `ipfs-cluster-service daemon --upgrade` allows to automatically run migrations before starting | [ipfs-cluster/ipfs-cluster#300](https://github.com/ipfs-cluster/ipfs-cluster/issues/300) | [ipfs-cluster/ipfs-cluster#307](https://github.com/ipfs-cluster/ipfs-cluster/issues/307) + * `ipfs-cluster-service state version` reports the shared state format version | [ipfs-cluster/ipfs-cluster#298](https://github.com/ipfs-cluster/ipfs-cluster/issues/298) | [ipfs-cluster/ipfs-cluster#307](https://github.com/ipfs-cluster/ipfs-cluster/issues/307) + * `ipfs-cluster-service health graph` generates a .dot graph file of cluster connectivity | [ipfs-cluster/ipfs-cluster#17](https://github.com/ipfs-cluster/ipfs-cluster/issues/17) | [ipfs-cluster/ipfs-cluster#291](https://github.com/ipfs-cluster/ipfs-cluster/issues/291) | [ipfs-cluster/ipfs-cluster#311](https://github.com/ipfs-cluster/ipfs-cluster/issues/311) * Bugfixes - * Do not upgrade state if already up to date | [ipfs/ipfs-cluster#296](https://github.com/ipfs/ipfs-cluster/issues/296) | [ipfs/ipfs-cluster#307](https://github.com/ipfs/ipfs-cluster/issues/307) - * Fix `ipfs-cluster-service daemon` failing with `unknown allocation strategy` error | [ipfs/ipfs-cluster#314](https://github.com/ipfs/ipfs-cluster/issues/314) | [ipfs/ipfs-cluster#315](https://github.com/ipfs/ipfs-cluster/issues/315) + * Do not upgrade state if already up to date | [ipfs-cluster/ipfs-cluster#296](https://github.com/ipfs-cluster/ipfs-cluster/issues/296) | [ipfs-cluster/ipfs-cluster#307](https://github.com/ipfs-cluster/ipfs-cluster/issues/307) + * Fix `ipfs-cluster-service daemon` failing with `unknown allocation strategy` error | [ipfs-cluster/ipfs-cluster#314](https://github.com/ipfs-cluster/ipfs-cluster/issues/314) | [ipfs-cluster/ipfs-cluster#315](https://github.com/ipfs-cluster/ipfs-cluster/issues/315) APIs have not changed in this release. The `/health/graph` endpoint has been added. @@ -2355,25 +2355,25 @@ This release includes a number of bufixes regarding the upgrade and import of st * The introduction of `replication_factor_min` and `replication_factor_max` parameters for every Pin (along with the deprecation of `replication_factor`). The defaults are specified in the configuration. For more information on the usage and behavour of these new options, check the IPFS cluster guide. * Features - * New `ipfs-cluster-service state export/import/cleanup` commands | [ipfs/ipfs-cluster#240](https://github.com/ipfs/ipfs-cluster/issues/240) | [ipfs/ipfs-cluster#290](https://github.com/ipfs/ipfs-cluster/issues/290) - * New min/max replication factor control | [ipfs/ipfs-cluster#277](https://github.com/ipfs/ipfs-cluster/issues/277) | [ipfs/ipfs-cluster#292](https://github.com/ipfs/ipfs-cluster/issues/292) - * Improved migration code | [ipfs/ipfs-cluster#283](https://github.com/ipfs/ipfs-cluster/issues/283) - * `ipfs-cluster-service version` output simplified (see below) | [ipfs/ipfs-cluster#274](https://github.com/ipfs/ipfs-cluster/issues/274) + * New `ipfs-cluster-service state export/import/cleanup` commands | [ipfs-cluster/ipfs-cluster#240](https://github.com/ipfs-cluster/ipfs-cluster/issues/240) | [ipfs-cluster/ipfs-cluster#290](https://github.com/ipfs-cluster/ipfs-cluster/issues/290) + * New min/max replication factor control | [ipfs-cluster/ipfs-cluster#277](https://github.com/ipfs-cluster/ipfs-cluster/issues/277) | [ipfs-cluster/ipfs-cluster#292](https://github.com/ipfs-cluster/ipfs-cluster/issues/292) + * Improved migration code | [ipfs-cluster/ipfs-cluster#283](https://github.com/ipfs-cluster/ipfs-cluster/issues/283) + * `ipfs-cluster-service version` output simplified (see below) | [ipfs-cluster/ipfs-cluster#274](https://github.com/ipfs-cluster/ipfs-cluster/issues/274) * Testing improvements: - * Added tests for Dockerfiles | [ipfs/ipfs-cluster#200](https://github.com/ipfs/ipfs-cluster/issues/200) | [ipfs/ipfs-cluster#282](https://github.com/ipfs/ipfs-cluster/issues/282) - * Enabled Jenkins testing and made it work | [ipfs/ipfs-cluster#256](https://github.com/ipfs/ipfs-cluster/issues/256) | [ipfs/ipfs-cluster#294](https://github.com/ipfs/ipfs-cluster/issues/294) + * Added tests for Dockerfiles | [ipfs-cluster/ipfs-cluster#200](https://github.com/ipfs-cluster/ipfs-cluster/issues/200) | [ipfs-cluster/ipfs-cluster#282](https://github.com/ipfs-cluster/ipfs-cluster/issues/282) + * Enabled Jenkins testing and made it work | [ipfs-cluster/ipfs-cluster#256](https://github.com/ipfs-cluster/ipfs-cluster/issues/256) | [ipfs-cluster/ipfs-cluster#294](https://github.com/ipfs-cluster/ipfs-cluster/issues/294) * Documentation improvements: - * Guide contains more details on state upgrade procedures | [ipfs/ipfs-cluster#270](https://github.com/ipfs/ipfs-cluster/issues/270) - * ipfs-cluster-ctl exit status are documented on the README | [ipfs/ipfs-cluster#178](https://github.com/ipfs/ipfs-cluster/issues/178) + * Guide contains more details on state upgrade procedures | [ipfs-cluster/ipfs-cluster#270](https://github.com/ipfs-cluster/ipfs-cluster/issues/270) + * ipfs-cluster-ctl exit status are documented on the README | [ipfs-cluster/ipfs-cluster#178](https://github.com/ipfs-cluster/ipfs-cluster/issues/178) * Bugfixes - * Force cleanup after sharness tests | [ipfs/ipfs-cluster#181](https://github.com/ipfs/ipfs-cluster/issues/181) | [ipfs/ipfs-cluster#288](https://github.com/ipfs/ipfs-cluster/issues/288) - * Fix state version validation on start | [ipfs/ipfs-cluster#293](https://github.com/ipfs/ipfs-cluster/issues/293) - * Wait until last index is applied before attempting snapshot on shutdown | [ipfs/ipfs-cluster#275](https://github.com/ipfs/ipfs-cluster/issues/275) + * Force cleanup after sharness tests | [ipfs-cluster/ipfs-cluster#181](https://github.com/ipfs-cluster/ipfs-cluster/issues/181) | [ipfs-cluster/ipfs-cluster#288](https://github.com/ipfs-cluster/ipfs-cluster/issues/288) + * Fix state version validation on start | [ipfs-cluster/ipfs-cluster#293](https://github.com/ipfs-cluster/ipfs-cluster/issues/293) + * Wait until last index is applied before attempting snapshot on shutdown | [ipfs-cluster/ipfs-cluster#275](https://github.com/ipfs-cluster/ipfs-cluster/issues/275) * Snaps from master not pushed due to bad credentials - * Fix overpinning or underpinning of CIDs after re-join | [ipfs/ipfs-cluster#222](https://github.com/ipfs/ipfs-cluster/issues/222) - * Fix unmarshaling state on top of an existing one | [ipfs/ipfs-cluster#297](https://github.com/ipfs/ipfs-cluster/issues/297) - * Fix catching up on imported state | [ipfs/ipfs-cluster#297](https://github.com/ipfs/ipfs-cluster/issues/297) + * Fix overpinning or underpinning of CIDs after re-join | [ipfs-cluster/ipfs-cluster#222](https://github.com/ipfs-cluster/ipfs-cluster/issues/222) + * Fix unmarshaling state on top of an existing one | [ipfs-cluster/ipfs-cluster#297](https://github.com/ipfs-cluster/ipfs-cluster/issues/297) + * Fix catching up on imported state | [ipfs-cluster/ipfs-cluster#297](https://github.com/ipfs-cluster/ipfs-cluster/issues/297) These release is compatible with previous versions of ipfs-cluster on the API level, with the exception of the `ipfs-cluster-service version` command, which returns `x.x.x-shortcommit` rather than `ipfs-cluster-service version 0.3.1`. The former output is still available as `ipfs-cluster-service --version`. @@ -2386,16 +2386,16 @@ The `replication_factor` option is deprecated, but still supported and will serv This release includes changes around the consensus state management, so that upgrades can be performed when the internal format changes. It also comes with several features and changes to support a live deployment and integration with IPFS pin-bot, including a REST API client for Go. * Features - * `ipfs-cluster-service state upgrade` | [ipfs/ipfs-cluster#194](https://github.com/ipfs/ipfs-cluster/issues/194) - * `ipfs-cluster-test` Docker image runs with `ipfs:master` | [ipfs/ipfs-cluster#155](https://github.com/ipfs/ipfs-cluster/issues/155) | [ipfs/ipfs-cluster#259](https://github.com/ipfs/ipfs-cluster/issues/259) - * `ipfs-cluster` Docker image only runs `ipfs-cluster-service` (and not the ipfs daemon anymore) | [ipfs/ipfs-cluster#197](https://github.com/ipfs/ipfs-cluster/issues/197) | [ipfs/ipfs-cluster#155](https://github.com/ipfs/ipfs-cluster/issues/155) | [ipfs/ipfs-cluster#259](https://github.com/ipfs/ipfs-cluster/issues/259) - * Support for DNS multiaddresses for cluster peers | [ipfs/ipfs-cluster#155](https://github.com/ipfs/ipfs-cluster/issues/155) | [ipfs/ipfs-cluster#259](https://github.com/ipfs/ipfs-cluster/issues/259) - * Add configuration section and options for `pin_tracker` | [ipfs/ipfs-cluster#155](https://github.com/ipfs/ipfs-cluster/issues/155) | [ipfs/ipfs-cluster#259](https://github.com/ipfs/ipfs-cluster/issues/259) - * Add `local` flag to Status, Sync, Recover endpoints which allows to run this operations only in the peer receiving the request | [ipfs/ipfs-cluster#155](https://github.com/ipfs/ipfs-cluster/issues/155) | [ipfs/ipfs-cluster#259](https://github.com/ipfs/ipfs-cluster/issues/259) - * Add Pin names | [ipfs/ipfs-cluster#249](https://github.com/ipfs/ipfs-cluster/issues/249) - * Add Peer names | [ipfs/ipfs-cluster#250](https://github.com/ipfs/ipfs-cluster/issues/250) - * New REST API Client module `github.com/ipfs/ipfs-cluster/api/rest/client` allows to integrate against cluster | [ipfs/ipfs-cluster#260](https://github.com/ipfs/ipfs-cluster/issues/260) | [ipfs/ipfs-cluster#263](https://github.com/ipfs/ipfs-cluster/issues/263) | [ipfs/ipfs-cluster#266](https://github.com/ipfs/ipfs-cluster/issues/266) - * A few rounds addressing code quality issues | [ipfs/ipfs-cluster#264](https://github.com/ipfs/ipfs-cluster/issues/264) + * `ipfs-cluster-service state upgrade` | [ipfs-cluster/ipfs-cluster#194](https://github.com/ipfs-cluster/ipfs-cluster/issues/194) + * `ipfs-cluster-test` Docker image runs with `ipfs:master` | [ipfs-cluster/ipfs-cluster#155](https://github.com/ipfs-cluster/ipfs-cluster/issues/155) | [ipfs-cluster/ipfs-cluster#259](https://github.com/ipfs-cluster/ipfs-cluster/issues/259) + * `ipfs-cluster` Docker image only runs `ipfs-cluster-service` (and not the ipfs daemon anymore) | [ipfs-cluster/ipfs-cluster#197](https://github.com/ipfs-cluster/ipfs-cluster/issues/197) | [ipfs-cluster/ipfs-cluster#155](https://github.com/ipfs-cluster/ipfs-cluster/issues/155) | [ipfs-cluster/ipfs-cluster#259](https://github.com/ipfs-cluster/ipfs-cluster/issues/259) + * Support for DNS multiaddresses for cluster peers | [ipfs-cluster/ipfs-cluster#155](https://github.com/ipfs-cluster/ipfs-cluster/issues/155) | [ipfs-cluster/ipfs-cluster#259](https://github.com/ipfs-cluster/ipfs-cluster/issues/259) + * Add configuration section and options for `pin_tracker` | [ipfs-cluster/ipfs-cluster#155](https://github.com/ipfs-cluster/ipfs-cluster/issues/155) | [ipfs-cluster/ipfs-cluster#259](https://github.com/ipfs-cluster/ipfs-cluster/issues/259) + * Add `local` flag to Status, Sync, Recover endpoints which allows to run this operations only in the peer receiving the request | [ipfs-cluster/ipfs-cluster#155](https://github.com/ipfs-cluster/ipfs-cluster/issues/155) | [ipfs-cluster/ipfs-cluster#259](https://github.com/ipfs-cluster/ipfs-cluster/issues/259) + * Add Pin names | [ipfs-cluster/ipfs-cluster#249](https://github.com/ipfs-cluster/ipfs-cluster/issues/249) + * Add Peer names | [ipfs-cluster/ipfs-cluster#250](https://github.com/ipfs-cluster/ipfs-cluster/issues/250) + * New REST API Client module `github.com/ipfs-cluster/ipfs-cluster/api/rest/client` allows to integrate against cluster | [ipfs-cluster/ipfs-cluster#260](https://github.com/ipfs-cluster/ipfs-cluster/issues/260) | [ipfs-cluster/ipfs-cluster#263](https://github.com/ipfs-cluster/ipfs-cluster/issues/263) | [ipfs-cluster/ipfs-cluster#266](https://github.com/ipfs-cluster/ipfs-cluster/issues/266) + * A few rounds addressing code quality issues | [ipfs-cluster/ipfs-cluster#264](https://github.com/ipfs-cluster/ipfs-cluster/issues/264) This release should stay backwards compatible with the previous one. Nevertheless, some REST API endpoints take the `local` flag, and matching new Go public functions have been added (`RecoverAllLocal`, `SyncAllLocal`...). @@ -2406,17 +2406,17 @@ This release should stay backwards compatible with the previous one. Nevertheles This release introduces Raft 1.0.0 and incorporates deep changes to the management of the cluster peerset. * Features - * Upgrade Raft to 1.0.0 | [ipfs/ipfs-cluster#194](https://github.com/ipfs/ipfs-cluster/issues/194) | [ipfs/ipfs-cluster#196](https://github.com/ipfs/ipfs-cluster/issues/196) - * Support Snaps | [ipfs/ipfs-cluster#234](https://github.com/ipfs/ipfs-cluster/issues/234) | [ipfs/ipfs-cluster#228](https://github.com/ipfs/ipfs-cluster/issues/228) | [ipfs/ipfs-cluster#232](https://github.com/ipfs/ipfs-cluster/issues/232) - * Rotating backups for ipfs-cluster-data | [ipfs/ipfs-cluster#233](https://github.com/ipfs/ipfs-cluster/issues/233) - * Bring documentation up to date with the code [ipfs/ipfs-cluster#223](https://github.com/ipfs/ipfs-cluster/issues/223) + * Upgrade Raft to 1.0.0 | [ipfs-cluster/ipfs-cluster#194](https://github.com/ipfs-cluster/ipfs-cluster/issues/194) | [ipfs-cluster/ipfs-cluster#196](https://github.com/ipfs-cluster/ipfs-cluster/issues/196) + * Support Snaps | [ipfs-cluster/ipfs-cluster#234](https://github.com/ipfs-cluster/ipfs-cluster/issues/234) | [ipfs-cluster/ipfs-cluster#228](https://github.com/ipfs-cluster/ipfs-cluster/issues/228) | [ipfs-cluster/ipfs-cluster#232](https://github.com/ipfs-cluster/ipfs-cluster/issues/232) + * Rotating backups for ipfs-cluster-data | [ipfs-cluster/ipfs-cluster#233](https://github.com/ipfs-cluster/ipfs-cluster/issues/233) + * Bring documentation up to date with the code [ipfs-cluster/ipfs-cluster#223](https://github.com/ipfs-cluster/ipfs-cluster/issues/223) Bugfixes: - * Fix docker startup | [ipfs/ipfs-cluster#216](https://github.com/ipfs/ipfs-cluster/issues/216) | [ipfs/ipfs-cluster#217](https://github.com/ipfs/ipfs-cluster/issues/217) - * Fix configuration save | [ipfs/ipfs-cluster#213](https://github.com/ipfs/ipfs-cluster/issues/213) | [ipfs/ipfs-cluster#214](https://github.com/ipfs/ipfs-cluster/issues/214) - * Forward progress updates with IPFS-Proxy | [ipfs/ipfs-cluster#224](https://github.com/ipfs/ipfs-cluster/issues/224) | [ipfs/ipfs-cluster#231](https://github.com/ipfs/ipfs-cluster/issues/231) - * Delay ipfs connect swarms on boot and safeguard against panic condition | [ipfs/ipfs-cluster#238](https://github.com/ipfs/ipfs-cluster/issues/238) - * Multiple minor fixes | [ipfs/ipfs-cluster#236](https://github.com/ipfs/ipfs-cluster/issues/236) + * Fix docker startup | [ipfs-cluster/ipfs-cluster#216](https://github.com/ipfs-cluster/ipfs-cluster/issues/216) | [ipfs-cluster/ipfs-cluster#217](https://github.com/ipfs-cluster/ipfs-cluster/issues/217) + * Fix configuration save | [ipfs-cluster/ipfs-cluster#213](https://github.com/ipfs-cluster/ipfs-cluster/issues/213) | [ipfs-cluster/ipfs-cluster#214](https://github.com/ipfs-cluster/ipfs-cluster/issues/214) + * Forward progress updates with IPFS-Proxy | [ipfs-cluster/ipfs-cluster#224](https://github.com/ipfs-cluster/ipfs-cluster/issues/224) | [ipfs-cluster/ipfs-cluster#231](https://github.com/ipfs-cluster/ipfs-cluster/issues/231) + * Delay ipfs connect swarms on boot and safeguard against panic condition | [ipfs-cluster/ipfs-cluster#238](https://github.com/ipfs-cluster/ipfs-cluster/issues/238) + * Multiple minor fixes | [ipfs-cluster/ipfs-cluster#236](https://github.com/ipfs-cluster/ipfs-cluster/issues/236) * Avoid shutting down consensus in the middle of a commit * Return an ID containing current peers in PeerAdd * Do not shut down libp2p host in the middle of peer removal @@ -2429,7 +2429,7 @@ This releases introduces some changes affecting the configuration file and some * The `consensus.raft` section of the configuration has new options but should be backwards compatible. * The `Consensus` component interface has changed, `LogAddPeer` and `LogRmPeer` have been replaced by `AddPeer` and `RmPeer`. It additionally provides `Clean` and `Peers` methods. The `consensus/raft` implementation has been updated accordingly. * The `api.ID` (used in REST API among others) object key `ClusterPeers` key is now a list of peer IDs, and not a list of multiaddresses as before. The object includes a new key `ClusterPeersAddresses` which includes the multiaddresses. -* Note that `--bootstrap` and `--leave` flags when calling `ipfs-cluster-service` will be stored permanently in the configuration (see [ipfs/ipfs-cluster#235](https://github.com/ipfs/ipfs-cluster/issues/235)). +* Note that `--bootstrap` and `--leave` flags when calling `ipfs-cluster-service` will be stored permanently in the configuration (see [ipfs-cluster/ipfs-cluster#235](https://github.com/ipfs-cluster/ipfs-cluster/issues/235)). --- @@ -2438,10 +2438,10 @@ This releases introduces some changes affecting the configuration file and some This is a maintenance release with some important bugfixes. * Fixes: - * Dockerfile runs `ipfs-cluster-service` instead of `ctl` | [ipfs/ipfs-cluster#194](https://github.com/ipfs/ipfs-cluster/issues/194) | [ipfs/ipfs-cluster#196](https://github.com/ipfs/ipfs-cluster/issues/196) - * Peers and bootstrap entries in the configuration are ignored | [ipfs/ipfs-cluster#203](https://github.com/ipfs/ipfs-cluster/issues/203) | [ipfs/ipfs-cluster#204](https://github.com/ipfs/ipfs-cluster/issues/204) - * Informers do not work on 32-bit architectures | [ipfs/ipfs-cluster#202](https://github.com/ipfs/ipfs-cluster/issues/202) | [ipfs/ipfs-cluster#205](https://github.com/ipfs/ipfs-cluster/issues/205) - * Replication factor entry in the configuration is ignored | [ipfs/ipfs-cluster#208](https://github.com/ipfs/ipfs-cluster/issues/208) | [ipfs/ipfs-cluster#209](https://github.com/ipfs/ipfs-cluster/issues/209) + * Dockerfile runs `ipfs-cluster-service` instead of `ctl` | [ipfs-cluster/ipfs-cluster#194](https://github.com/ipfs-cluster/ipfs-cluster/issues/194) | [ipfs-cluster/ipfs-cluster#196](https://github.com/ipfs-cluster/ipfs-cluster/issues/196) + * Peers and bootstrap entries in the configuration are ignored | [ipfs-cluster/ipfs-cluster#203](https://github.com/ipfs-cluster/ipfs-cluster/issues/203) | [ipfs-cluster/ipfs-cluster#204](https://github.com/ipfs-cluster/ipfs-cluster/issues/204) + * Informers do not work on 32-bit architectures | [ipfs-cluster/ipfs-cluster#202](https://github.com/ipfs-cluster/ipfs-cluster/issues/202) | [ipfs-cluster/ipfs-cluster#205](https://github.com/ipfs-cluster/ipfs-cluster/issues/205) + * Replication factor entry in the configuration is ignored | [ipfs-cluster/ipfs-cluster#208](https://github.com/ipfs-cluster/ipfs-cluster/issues/208) | [ipfs-cluster/ipfs-cluster#209](https://github.com/ipfs-cluster/ipfs-cluster/issues/209) The fix for 32-bit architectures has required a change in the `IPFSConnector` interface (`FreeSpace()` and `Reposize()` return `uint64` now). The current implementation by the `ipfshttp` module has changed accordingly. @@ -2451,17 +2451,17 @@ The fix for 32-bit architectures has required a change in the `IPFSConnector` in ### v0.2.0 - 2017-10-23 * Features: - * Basic authentication support added to API component | [ipfs/ipfs-cluster#121](https://github.com/ipfs/ipfs-cluster/issues/121) | [ipfs/ipfs-cluster#147](https://github.com/ipfs/ipfs-cluster/issues/147) | [ipfs/ipfs-cluster#179](https://github.com/ipfs/ipfs-cluster/issues/179) - * Copy peers to bootstrap when leaving a cluster | [ipfs/ipfs-cluster#170](https://github.com/ipfs/ipfs-cluster/issues/170) | [ipfs/ipfs-cluster#112](https://github.com/ipfs/ipfs-cluster/issues/112) - * New configuration format | [ipfs/ipfs-cluster#162](https://github.com/ipfs/ipfs-cluster/issues/162) | [ipfs/ipfs-cluster#177](https://github.com/ipfs/ipfs-cluster/issues/177) - * Freespace disk metric implementation. It's now the default. | [ipfs/ipfs-cluster#142](https://github.com/ipfs/ipfs-cluster/issues/142) | [ipfs/ipfs-cluster#99](https://github.com/ipfs/ipfs-cluster/issues/99) + * Basic authentication support added to API component | [ipfs-cluster/ipfs-cluster#121](https://github.com/ipfs-cluster/ipfs-cluster/issues/121) | [ipfs-cluster/ipfs-cluster#147](https://github.com/ipfs-cluster/ipfs-cluster/issues/147) | [ipfs-cluster/ipfs-cluster#179](https://github.com/ipfs-cluster/ipfs-cluster/issues/179) + * Copy peers to bootstrap when leaving a cluster | [ipfs-cluster/ipfs-cluster#170](https://github.com/ipfs-cluster/ipfs-cluster/issues/170) | [ipfs-cluster/ipfs-cluster#112](https://github.com/ipfs-cluster/ipfs-cluster/issues/112) + * New configuration format | [ipfs-cluster/ipfs-cluster#162](https://github.com/ipfs-cluster/ipfs-cluster/issues/162) | [ipfs-cluster/ipfs-cluster#177](https://github.com/ipfs-cluster/ipfs-cluster/issues/177) + * Freespace disk metric implementation. It's now the default. | [ipfs-cluster/ipfs-cluster#142](https://github.com/ipfs-cluster/ipfs-cluster/issues/142) | [ipfs-cluster/ipfs-cluster#99](https://github.com/ipfs-cluster/ipfs-cluster/issues/99) * Fixes: - * IPFS Connector should use only POST | [ipfs/ipfs-cluster#176](https://github.com/ipfs/ipfs-cluster/issues/176) | [ipfs/ipfs-cluster#161](https://github.com/ipfs/ipfs-cluster/issues/161) - * `ipfs-cluster-ctl` exit status with error responses | [ipfs/ipfs-cluster#174](https://github.com/ipfs/ipfs-cluster/issues/174) - * Sharness tests and update testing container | [ipfs/ipfs-cluster#171](https://github.com/ipfs/ipfs-cluster/issues/171) - * Update Dockerfiles | [ipfs/ipfs-cluster#154](https://github.com/ipfs/ipfs-cluster/issues/154) | [ipfs/ipfs-cluster#185](https://github.com/ipfs/ipfs-cluster/issues/185) - * `ipfs-cluster-service`: Do not run service with unknown subcommands | [ipfs/ipfs-cluster#186](https://github.com/ipfs/ipfs-cluster/issues/186) + * IPFS Connector should use only POST | [ipfs-cluster/ipfs-cluster#176](https://github.com/ipfs-cluster/ipfs-cluster/issues/176) | [ipfs-cluster/ipfs-cluster#161](https://github.com/ipfs-cluster/ipfs-cluster/issues/161) + * `ipfs-cluster-ctl` exit status with error responses | [ipfs-cluster/ipfs-cluster#174](https://github.com/ipfs-cluster/ipfs-cluster/issues/174) + * Sharness tests and update testing container | [ipfs-cluster/ipfs-cluster#171](https://github.com/ipfs-cluster/ipfs-cluster/issues/171) + * Update Dockerfiles | [ipfs-cluster/ipfs-cluster#154](https://github.com/ipfs-cluster/ipfs-cluster/issues/154) | [ipfs-cluster/ipfs-cluster#185](https://github.com/ipfs-cluster/ipfs-cluster/issues/185) + * `ipfs-cluster-service`: Do not run service with unknown subcommands | [ipfs-cluster/ipfs-cluster#186](https://github.com/ipfs-cluster/ipfs-cluster/issues/186) This release introduces some breaking changes affecting configuration files and `go` integrations: diff --git a/Dockerfile b/Dockerfile index 24ee8320..3654fa6c 100644 --- a/Dockerfile +++ b/Dockerfile @@ -4,7 +4,7 @@ MAINTAINER Hector Sanjuan # This dockerfile builds and runs ipfs-cluster-service. ENV GOPATH /go -ENV SRC_PATH $GOPATH/src/github.com/ipfs/ipfs-cluster +ENV SRC_PATH $GOPATH/src/github.com/ipfs-cluster/ipfs-cluster ENV GO111MODULE on ENV GOPROXY https://proxy.golang.org @@ -41,7 +41,7 @@ FROM busybox:1-glibc MAINTAINER Hector Sanjuan ENV GOPATH /go -ENV SRC_PATH /go/src/github.com/ipfs/ipfs-cluster +ENV SRC_PATH /go/src/github.com/ipfs-cluster/ipfs-cluster ENV IPFS_CLUSTER_PATH /data/ipfs-cluster ENV IPFS_CLUSTER_CONSENSUS crdt ENV IPFS_CLUSTER_DATASTORE leveldb diff --git a/Dockerfile-bundle b/Dockerfile-bundle index 2d29bfba..470e2e0e 100644 --- a/Dockerfile-bundle +++ b/Dockerfile-bundle @@ -6,7 +6,7 @@ MAINTAINER Hector Sanjuan # This builder just builds the cluster binaries ENV GOPATH /go -ENV SRC_PATH $GOPATH/src/github.com/ipfs/ipfs-cluster +ENV SRC_PATH $GOPATH/src/github.com/ipfs-cluster/ipfs-cluster ENV GO111MODULE on ENV GOPROXY https://proxy.golang.org @@ -25,7 +25,7 @@ MAINTAINER Hector Sanjuan # built binaries on the go-ipfs-container. ENV GOPATH /go -ENV SRC_PATH /go/src/github.com/ipfs/ipfs-cluster +ENV SRC_PATH /go/src/github.com/ipfs-cluster/ipfs-cluster ENV IPFS_CLUSTER_PATH /data/ipfs-cluster ENV IPFS_CLUSTER_CONSENSUS crdt ENV IPFS_CLUSTER_DATASTORE leveldb diff --git a/Dockerfile-test b/Dockerfile-test index 5e92be3b..193a5751 100644 --- a/Dockerfile-test +++ b/Dockerfile-test @@ -4,7 +4,7 @@ MAINTAINER Hector Sanjuan # This build state just builds the cluster binaries ENV GOPATH /go -ENV SRC_PATH $GOPATH/src/github.com/ipfs/ipfs-cluster +ENV SRC_PATH $GOPATH/src/github.com/ipfs-cluster/ipfs-cluster ENV GO111MODULE on ENV GOPROXY https://proxy.golang.org @@ -27,7 +27,7 @@ MAINTAINER Hector Sanjuan # built binaries on the go-ipfs-container. ENV GOPATH /go -ENV SRC_PATH /go/src/github.com/ipfs/ipfs-cluster +ENV SRC_PATH /go/src/github.com/ipfs-cluster/ipfs-cluster ENV IPFS_CLUSTER_PATH /data/ipfs-cluster ENV IPFS_CLUSTER_CONSENSUS crdt ENV IPFS_CLUSTER_DATASTORE leveldb diff --git a/README.md b/README.md index b6f70ff3..d2a066b3 100644 --- a/README.md +++ b/README.md @@ -2,14 +2,13 @@ [![Made by](https://img.shields.io/badge/made%20by-Protocol%20Labs-blue.svg?style=flat-square)](https://protocol.ai) -[![Main project](https://img.shields.io/badge/project-ipfs-blue.svg?style=flat-square)](http://github.com/ipfs/ipfs) +[![Main project](https://img.shields.io/badge/project-ipfs-cluster-blue.svg?style=flat-square)](http://github.com/ipfs-cluster) [![Matrix channel](https://img.shields.io/badge/matrix-%23ipfs--cluster-blue.svg?style=flat-square)](https://app.element.io/#/room/#ipfs-cluster:ipfs.io) -[![GoDoc](https://godoc.org/github.com/ipfs/ipfs-cluster?status.svg)](https://godoc.org/github.com/ipfs/ipfs-cluster) -[![Go Report Card](https://goreportcard.com/badge/github.com/ipfs/ipfs-cluster)](https://goreportcard.com/report/github.com/ipfs/ipfs-cluster) -[![Build Status](https://travis-ci.com/ipfs/ipfs-cluster.svg?branch=master)](https://travis-ci.com/ipfs/ipfs-cluster) -[![codecov](https://codecov.io/gh/ipfs/ipfs-cluster/branch/master/graph/badge.svg)](https://codecov.io/gh/ipfs/ipfs-cluster) +[![pkg.go.dev](https://pkg.go.dev/badge/github.com/ipfs-cluster/ipfs-cluster)](https://pkg.go.dev/github.com/ipfs-cluster/ipfs-cluster) +[![Go Report Card](https://goreportcard.com/badge/github.com/ipfs-cluster/ipfs-cluster)](https://goreportcard.com/report/github.com/ipfs-cluster/ipfs-cluster) +[![codecov](https://codecov.io/gh/ipfs-cluster/ipfs-cluster/branch/master/graph/badge.svg)](https://codecov.io/gh/ipfs-cluster/ipfs-cluster) -> Automated data availability and redundancy on IPFS +> Pinset orchestration for IPFS

logo @@ -17,9 +16,9 @@ IPFS Cluster provides data orchestration across a swarm of IPFS daemons by allocating, replicating and tracking a global pinset distributed among multiple peers. -It provides: +There are 3 different applications: -* A cluster peer application: `ipfs-cluster-service`, to be run along with `go-ipfs`. +* A cluster peer application: `ipfs-cluster-service`, to be run along with `go-ipfs` as a sidecar. * A client CLI application: `ipfs-cluster-ctl`, which allows easily interacting with the peer's HTTP API. * An additional "follower" peer application: `ipfs-cluster-follow`, focused on simplifying the process of configuring and running follower peers. @@ -71,4 +70,4 @@ PRs accepted. As part of the IPFS project, we have some [contribution guidelines This library is dual-licensed under Apache 2.0 and MIT terms. -© 2020. Protocol Labs, Inc. +© 2022. Protocol Labs, Inc. diff --git a/add_test.go b/add_test.go index e79bc7f2..88b58309 100644 --- a/add_test.go +++ b/add_test.go @@ -10,9 +10,9 @@ import ( "time" files "github.com/ipfs/go-ipfs-files" - "github.com/ipfs/ipfs-cluster/adder" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/adder" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" peer "github.com/libp2p/go-libp2p-core/peer" ) diff --git a/adder/adder.go b/adder/adder.go index 6b93656e..128f9511 100644 --- a/adder/adder.go +++ b/adder/adder.go @@ -11,8 +11,8 @@ import ( "strings" "github.com/ipfs/go-unixfs" - "github.com/ipfs/ipfs-cluster/adder/ipfsadd" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/adder/ipfsadd" + "github.com/ipfs-cluster/ipfs-cluster/api" "github.com/ipld/go-car" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/adder/adder_test.go b/adder/adder_test.go index 61d39984..3a81b45f 100644 --- a/adder/adder_test.go +++ b/adder/adder_test.go @@ -8,8 +8,8 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" "github.com/ipld/go-car" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/adder/adderutils/adderutils.go b/adder/adderutils/adderutils.go index 0a181d91..a35f5dcc 100644 --- a/adder/adderutils/adderutils.go +++ b/adder/adderutils/adderutils.go @@ -8,10 +8,10 @@ import ( "net/http" "sync" - "github.com/ipfs/ipfs-cluster/adder" - "github.com/ipfs/ipfs-cluster/adder/sharding" - "github.com/ipfs/ipfs-cluster/adder/single" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/adder" + "github.com/ipfs-cluster/ipfs-cluster/adder/sharding" + "github.com/ipfs-cluster/ipfs-cluster/adder/single" + "github.com/ipfs-cluster/ipfs-cluster/api" logging "github.com/ipfs/go-log/v2" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/adder/ipfsadd/add.go b/adder/ipfsadd/add.go index f25c3f77..603f4476 100644 --- a/adder/ipfsadd/add.go +++ b/adder/ipfsadd/add.go @@ -9,7 +9,7 @@ import ( gopath "path" "path/filepath" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" cid "github.com/ipfs/go-cid" chunker "github.com/ipfs/go-ipfs-chunker" diff --git a/adder/sharding/dag_service.go b/adder/sharding/dag_service.go index da343478..4fea1a2a 100644 --- a/adder/sharding/dag_service.go +++ b/adder/sharding/dag_service.go @@ -10,8 +10,8 @@ import ( "time" - "github.com/ipfs/ipfs-cluster/adder" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/adder" + "github.com/ipfs-cluster/ipfs-cluster/api" humanize "github.com/dustin/go-humanize" cid "github.com/ipfs/go-cid" diff --git a/adder/sharding/dag_service_test.go b/adder/sharding/dag_service_test.go index 2128e456..8652f53b 100644 --- a/adder/sharding/dag_service_test.go +++ b/adder/sharding/dag_service_test.go @@ -7,9 +7,9 @@ import ( "sync" "testing" - adder "github.com/ipfs/ipfs-cluster/adder" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + adder "github.com/ipfs-cluster/ipfs-cluster/adder" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" logging "github.com/ipfs/go-log/v2" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/adder/sharding/shard.go b/adder/sharding/shard.go index cb1ae37c..35d28843 100644 --- a/adder/sharding/shard.go +++ b/adder/sharding/shard.go @@ -5,8 +5,8 @@ import ( "fmt" ipld "github.com/ipfs/go-ipld-format" - "github.com/ipfs/ipfs-cluster/adder" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/adder" + "github.com/ipfs-cluster/ipfs-cluster/api" cid "github.com/ipfs/go-cid" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/adder/sharding/verify.go b/adder/sharding/verify.go index a588669c..4af15c51 100644 --- a/adder/sharding/verify.go +++ b/adder/sharding/verify.go @@ -6,7 +6,7 @@ import ( "fmt" "testing" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" ) // MockPinStore is used in VerifyShards diff --git a/adder/single/dag_service.go b/adder/single/dag_service.go index 005fd186..246712e0 100644 --- a/adder/single/dag_service.go +++ b/adder/single/dag_service.go @@ -5,8 +5,8 @@ package single import ( "context" - adder "github.com/ipfs/ipfs-cluster/adder" - "github.com/ipfs/ipfs-cluster/api" + adder "github.com/ipfs-cluster/ipfs-cluster/adder" + "github.com/ipfs-cluster/ipfs-cluster/api" cid "github.com/ipfs/go-cid" ipld "github.com/ipfs/go-ipld-format" diff --git a/adder/single/dag_service_test.go b/adder/single/dag_service_test.go index 1dda2805..625cef35 100644 --- a/adder/single/dag_service_test.go +++ b/adder/single/dag_service_test.go @@ -7,9 +7,9 @@ import ( "sync" "testing" - adder "github.com/ipfs/ipfs-cluster/adder" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + adder "github.com/ipfs-cluster/ipfs-cluster/adder" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" peer "github.com/libp2p/go-libp2p-core/peer" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/adder/util.go b/adder/util.go index f647468a..8bdb0be9 100644 --- a/adder/util.go +++ b/adder/util.go @@ -6,7 +6,7 @@ import ( "fmt" "sync" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" "go.uber.org/multierr" cid "github.com/ipfs/go-cid" diff --git a/allocate.go b/allocate.go index 8efeccab..d93a2eb3 100644 --- a/allocate.go +++ b/allocate.go @@ -9,7 +9,7 @@ import ( "go.opencensus.io/trace" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" ) // This file gathers allocation logic used when pinning or re-pinning diff --git a/allocator/balanced/balanced.go b/allocator/balanced/balanced.go index 4b5999d9..a934c513 100644 --- a/allocator/balanced/balanced.go +++ b/allocator/balanced/balanced.go @@ -13,7 +13,7 @@ import ( "sort" logging "github.com/ipfs/go-log/v2" - api "github.com/ipfs/ipfs-cluster/api" + api "github.com/ipfs-cluster/ipfs-cluster/api" peer "github.com/libp2p/go-libp2p-core/peer" rpc "github.com/libp2p/go-libp2p-gorpc" ) diff --git a/allocator/balanced/balanced_test.go b/allocator/balanced/balanced_test.go index 943dca5a..99a1e46c 100644 --- a/allocator/balanced/balanced_test.go +++ b/allocator/balanced/balanced_test.go @@ -5,8 +5,8 @@ import ( "testing" "time" - api "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + api "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" peer "github.com/libp2p/go-libp2p-core/peer" ) diff --git a/allocator/balanced/config.go b/allocator/balanced/config.go index e931bbbe..44c015ce 100644 --- a/allocator/balanced/config.go +++ b/allocator/balanced/config.go @@ -4,7 +4,7 @@ import ( "encoding/json" "errors" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" "github.com/kelseyhightower/envconfig" ) diff --git a/api/common/api.go b/api/common/api.go index 60fe6cd6..480f8729 100644 --- a/api/common/api.go +++ b/api/common/api.go @@ -29,8 +29,8 @@ import ( logging "github.com/ipfs/go-log/v2" gopath "github.com/ipfs/go-path" - types "github.com/ipfs/ipfs-cluster/api" - state "github.com/ipfs/ipfs-cluster/state" + types "github.com/ipfs-cluster/ipfs-cluster/api" + state "github.com/ipfs-cluster/ipfs-cluster/state" libp2p "github.com/libp2p/go-libp2p" host "github.com/libp2p/go-libp2p-core/host" peer "github.com/libp2p/go-libp2p-core/peer" @@ -170,7 +170,7 @@ func NewAPIWithHost(ctx context.Context, cfg *Config, h host.Host, routes func(* } // See: https://github.com/ipfs/go-ipfs/issues/5168 - // See: https://github.com/ipfs/ipfs-cluster/issues/548 + // See: https://github.com/ipfs-cluster/ipfs-cluster/issues/548 // on why this is re-enabled. s.SetKeepAlivesEnabled(true) s.MaxHeaderBytes = cfg.MaxHeaderBytes @@ -239,7 +239,7 @@ func (api *API) setupLibp2p() error { if len(api.config.Libp2pListenAddr) > 0 { // We use a new host context. We will call // Close() on shutdown(). Avoids things like: - // https://github.com/ipfs/ipfs-cluster/issues/853 + // https://github.com/ipfs-cluster/ipfs-cluster/issues/853 h, err := libp2p.New( libp2p.Identity(api.config.PrivateKey), libp2p.ListenAddrs(api.config.Libp2pListenAddr...), diff --git a/api/common/api_test.go b/api/common/api_test.go index 769fb87e..b7aeff7d 100644 --- a/api/common/api_test.go +++ b/api/common/api_test.go @@ -12,9 +12,9 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/api/common/test" - rpctest "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api/common/test" + rpctest "github.com/ipfs-cluster/ipfs-cluster/test" libp2p "github.com/libp2p/go-libp2p" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/api/common/config.go b/api/common/config.go index 23046485..66e59126 100644 --- a/api/common/config.go +++ b/api/common/config.go @@ -20,7 +20,7 @@ import ( "github.com/kelseyhightower/envconfig" "github.com/rs/cors" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" ) const minMaxHeaderBytes = 4096 diff --git a/api/common/config_test.go b/api/common/config_test.go index 94f3547f..501501a7 100644 --- a/api/common/config_test.go +++ b/api/common/config_test.go @@ -8,7 +8,7 @@ import ( "time" logging "github.com/ipfs/go-log/v2" - types "github.com/ipfs/ipfs-cluster/api" + types "github.com/ipfs-cluster/ipfs-cluster/api" crypto "github.com/libp2p/go-libp2p-core/crypto" peer "github.com/libp2p/go-libp2p-core/peer" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/api/ipfsproxy/config.go b/api/ipfsproxy/config.go index f0faf763..5c6603e0 100644 --- a/api/ipfsproxy/config.go +++ b/api/ipfsproxy/config.go @@ -11,7 +11,7 @@ import ( "github.com/kelseyhightower/envconfig" ma "github.com/multiformats/go-multiaddr" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" ) const ( diff --git a/api/ipfsproxy/headers.go b/api/ipfsproxy/headers.go index af5d79d3..8b004325 100644 --- a/api/ipfsproxy/headers.go +++ b/api/ipfsproxy/headers.go @@ -5,7 +5,7 @@ import ( "net/http" "time" - "github.com/ipfs/ipfs-cluster/version" + "github.com/ipfs-cluster/ipfs-cluster/version" ) // This file has the collection of header-related functions diff --git a/api/ipfsproxy/ipfsproxy.go b/api/ipfsproxy/ipfsproxy.go index 592a1b77..f5bd06ff 100644 --- a/api/ipfsproxy/ipfsproxy.go +++ b/api/ipfsproxy/ipfsproxy.go @@ -21,9 +21,9 @@ import ( "sync" "time" - "github.com/ipfs/ipfs-cluster/adder/adderutils" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/rpcutil" + "github.com/ipfs-cluster/ipfs-cluster/adder/adderutils" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/rpcutil" handlers "github.com/gorilla/handlers" mux "github.com/gorilla/mux" @@ -190,7 +190,7 @@ func New(cfg *Config) (*Server, error) { } // See: https://github.com/ipfs/go-ipfs/issues/5168 - // See: https://github.com/ipfs/ipfs-cluster/issues/548 + // See: https://github.com/ipfs-cluster/ipfs-cluster/issues/548 // on why this is re-enabled. s.SetKeepAlivesEnabled(true) // A reminder that this can be changed diff --git a/api/ipfsproxy/ipfsproxy_test.go b/api/ipfsproxy/ipfsproxy_test.go index d112cf07..b58e2196 100644 --- a/api/ipfsproxy/ipfsproxy_test.go +++ b/api/ipfsproxy/ipfsproxy_test.go @@ -13,8 +13,8 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" cmd "github.com/ipfs/go-ipfs-cmds" logging "github.com/ipfs/go-log/v2" diff --git a/api/pinsvcapi/config.go b/api/pinsvcapi/config.go index 6a7991da..9464472c 100644 --- a/api/pinsvcapi/config.go +++ b/api/pinsvcapi/config.go @@ -6,8 +6,8 @@ import ( ma "github.com/multiformats/go-multiaddr" - "github.com/ipfs/ipfs-cluster/api/common" - "github.com/ipfs/ipfs-cluster/api/pinsvcapi/pinsvc" + "github.com/ipfs-cluster/ipfs-cluster/api/common" + "github.com/ipfs-cluster/ipfs-cluster/api/pinsvcapi/pinsvc" ) const configKey = "pinsvcapi" diff --git a/api/pinsvcapi/pinsvc/pinsvc.go b/api/pinsvcapi/pinsvc/pinsvc.go index 3baa5043..6fee969d 100644 --- a/api/pinsvcapi/pinsvc/pinsvc.go +++ b/api/pinsvcapi/pinsvc/pinsvc.go @@ -10,7 +10,7 @@ import ( "strings" "time" - types "github.com/ipfs/ipfs-cluster/api" + types "github.com/ipfs-cluster/ipfs-cluster/api" ) func init() { diff --git a/api/pinsvcapi/pinsvcapi.go b/api/pinsvcapi/pinsvcapi.go index 1490cee2..6423c47a 100644 --- a/api/pinsvcapi/pinsvcapi.go +++ b/api/pinsvcapi/pinsvcapi.go @@ -15,10 +15,10 @@ import ( "sync" "github.com/gorilla/mux" - types "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/api/common" - "github.com/ipfs/ipfs-cluster/api/pinsvcapi/pinsvc" - "github.com/ipfs/ipfs-cluster/state" + types "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api/common" + "github.com/ipfs-cluster/ipfs-cluster/api/pinsvcapi/pinsvc" + "github.com/ipfs-cluster/ipfs-cluster/state" "go.uber.org/multierr" logging "github.com/ipfs/go-log/v2" diff --git a/api/pinsvcapi/pinsvcapi_test.go b/api/pinsvcapi/pinsvcapi_test.go index 452e4a0b..1ea8d680 100644 --- a/api/pinsvcapi/pinsvcapi_test.go +++ b/api/pinsvcapi/pinsvcapi_test.go @@ -7,10 +7,10 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/api/common/test" - "github.com/ipfs/ipfs-cluster/api/pinsvcapi/pinsvc" - clustertest "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api/common/test" + "github.com/ipfs-cluster/ipfs-cluster/api/pinsvcapi/pinsvc" + clustertest "github.com/ipfs-cluster/ipfs-cluster/test" libp2p "github.com/libp2p/go-libp2p" ma "github.com/multiformats/go-multiaddr" diff --git a/api/rest/client/README.md b/api/rest/client/README.md index 9e366c68..f0925d09 100644 --- a/api/rest/client/README.md +++ b/api/rest/client/README.md @@ -1,21 +1,15 @@ # ipfs-cluster client - [![Made by](https://img.shields.io/badge/made%20by-Protocol%20Labs-blue.svg?style=flat-square)](https://protocol.ai) -[![Main project](https://img.shields.io/badge/project-ipfs-blue.svg?style=flat-square)](http://github.com/ipfs/ipfs) -[![IRC channel](https://img.shields.io/badge/freenode-%23ipfs--cluster-blue.svg?style=flat-square)](http://webchat.freenode.net/?channels=%23ipfs-cluster) -[![standard-readme compliant](https://img.shields.io/badge/standard--readme-OK-green.svg?style=flat-square)](https://github.com/RichardLitt/standard-readme) -[![GoDoc](https://godoc.org/github.com/ipfs/ipfs-cluster?status.svg)](https://godoc.org/github.com/ipfs/ipfs-cluster) -[![Go Report Card](https://goreportcard.com/badge/github.com/ipfs/ipfs-cluster)](https://goreportcard.com/report/github.com/ipfs/ipfs-cluster) -[![Build Status](https://travis-ci.org/ipfs/ipfs-cluster.svg?branch=master)](https://travis-ci.org/ipfs/ipfs-cluster) -[![Coverage Status](https://coveralls.io/repos/github/ipfs/ipfs-cluster/badge.svg?branch=master)](https://coveralls.io/github/ipfs/ipfs-cluster?branch=master) +[![Main project](https://img.shields.io/badge/project-ipfs-blue.svg?style=flat-square)](http://github.com/ipfs-cluster/ipfs-cluster) +[![Matrix channel](https://img.shields.io/badge/matrix-%23ipfs--cluster-blue.svg?style=flat-square)](https://app.element.io/#/room/#ipfs-cluster:ipfs.io) +[![pkg.go.dev](https://pkg.go.dev/badge/github.com/ipfs-cluster/ipfs-cluster)](https://pkg.go.dev/github.com/ipfs-cluster/ipfs-cluster/api/rest/client) -> Go client for ipfs-cluster HTTP API. +> Go client for the ipfs-cluster HTTP API. This is a Go client library to use the ipfs-cluster REST HTTP API. - ## Table of Contents - [Install](#install) @@ -25,19 +19,19 @@ This is a Go client library to use the ipfs-cluster REST HTTP API. ## Install -You can import `github.com/ipfs/ipfs-cluster/api/rest/client` in your code. +You can import `github.com/ipfs-cluster/ipfs-cluster/api/rest/client` in your code. The code can be downloaded and tested with: ``` -$ go get -u -d github.com/ipfs/ipfs-cluster -$ cd $GOPATH/src/github.com/ipfs/ipfs-cluster/rest/api/client +$ git clone https://github.com/ipfs-cluster/ipfs-cluster.git +$ cd ipfs-cluster/ipfs-cluster/rest/api/client $ go test -v ``` ## Usage -Documentation can be read at [Godoc](https://godoc.org/github.com/ipfs/ipfs-cluster/api/rest/client). +Documentation can be read at [pkg.go.dev](https://pkg.go.dev/github.com/ipfs-cluster/ipfs-cluster/api/rest/client). ## Contribute diff --git a/api/rest/client/client.go b/api/rest/client/client.go index f43e01ed..8601fc5f 100644 --- a/api/rest/client/client.go +++ b/api/rest/client/client.go @@ -10,7 +10,7 @@ import ( "net/http" "time" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" shell "github.com/ipfs/go-ipfs-api" files "github.com/ipfs/go-ipfs-files" diff --git a/api/rest/client/client_test.go b/api/rest/client/client_test.go index bbff3d49..37445fa4 100644 --- a/api/rest/client/client_test.go +++ b/api/rest/client/client_test.go @@ -6,8 +6,8 @@ import ( "strings" "testing" - "github.com/ipfs/ipfs-cluster/api/rest" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api/rest" + "github.com/ipfs-cluster/ipfs-cluster/test" libp2p "github.com/libp2p/go-libp2p" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/api/rest/client/lbclient.go b/api/rest/client/lbclient.go index 2b8cfdd6..cc1a5505 100644 --- a/api/rest/client/lbclient.go +++ b/api/rest/client/lbclient.go @@ -6,7 +6,7 @@ import ( shell "github.com/ipfs/go-ipfs-api" files "github.com/ipfs/go-ipfs-files" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" peer "github.com/libp2p/go-libp2p-core/peer" ) diff --git a/api/rest/client/lbclient_test.go b/api/rest/client/lbclient_test.go index cdef43f4..e0455c40 100644 --- a/api/rest/client/lbclient_test.go +++ b/api/rest/client/lbclient_test.go @@ -6,7 +6,7 @@ import ( "sync" "testing" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" ma "github.com/multiformats/go-multiaddr" ) diff --git a/api/rest/client/methods.go b/api/rest/client/methods.go index 9bfba5a4..00dfb100 100644 --- a/api/rest/client/methods.go +++ b/api/rest/client/methods.go @@ -13,7 +13,7 @@ import ( "strings" "time" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" files "github.com/ipfs/go-ipfs-files" gopath "github.com/ipfs/go-path" diff --git a/api/rest/client/methods_test.go b/api/rest/client/methods_test.go index a4de9518..bd8d8041 100644 --- a/api/rest/client/methods_test.go +++ b/api/rest/client/methods_test.go @@ -7,9 +7,9 @@ import ( "testing" "time" - types "github.com/ipfs/ipfs-cluster/api" - rest "github.com/ipfs/ipfs-cluster/api/rest" - test "github.com/ipfs/ipfs-cluster/test" + types "github.com/ipfs-cluster/ipfs-cluster/api" + rest "github.com/ipfs-cluster/ipfs-cluster/api/rest" + test "github.com/ipfs-cluster/ipfs-cluster/test" peer "github.com/libp2p/go-libp2p-core/peer" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/api/rest/client/request.go b/api/rest/client/request.go index 98aaa943..8c0ef8b2 100644 --- a/api/rest/client/request.go +++ b/api/rest/client/request.go @@ -9,7 +9,7 @@ import ( "net/http" "strings" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" "go.uber.org/multierr" "go.opencensus.io/trace" diff --git a/api/rest/config.go b/api/rest/config.go index 98a5fb49..d5e03936 100644 --- a/api/rest/config.go +++ b/api/rest/config.go @@ -6,8 +6,8 @@ import ( ma "github.com/multiformats/go-multiaddr" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/api/common" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api/common" ) const configKey = "restapi" diff --git a/api/rest/restapi.go b/api/rest/restapi.go index e8591c81..7b9a85c3 100644 --- a/api/rest/restapi.go +++ b/api/rest/restapi.go @@ -17,9 +17,9 @@ import ( "sync" "time" - "github.com/ipfs/ipfs-cluster/adder/adderutils" - types "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/api/common" + "github.com/ipfs-cluster/ipfs-cluster/adder/adderutils" + types "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api/common" logging "github.com/ipfs/go-log/v2" "github.com/libp2p/go-libp2p-core/host" diff --git a/api/rest/restapi_test.go b/api/rest/restapi_test.go index 328512be..25ef7740 100644 --- a/api/rest/restapi_test.go +++ b/api/rest/restapi_test.go @@ -9,9 +9,9 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - test "github.com/ipfs/ipfs-cluster/api/common/test" - clustertest "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + test "github.com/ipfs-cluster/ipfs-cluster/api/common/test" + clustertest "github.com/ipfs-cluster/ipfs-cluster/test" libp2p "github.com/libp2p/go-libp2p" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/api/types.go b/api/types.go index 960134cb..46dbb390 100644 --- a/api/types.go +++ b/api/types.go @@ -17,7 +17,7 @@ import ( "strings" "time" - pb "github.com/ipfs/ipfs-cluster/api/pb" + pb "github.com/ipfs-cluster/ipfs-cluster/api/pb" cid "github.com/ipfs/go-cid" logging "github.com/ipfs/go-log/v2" diff --git a/cluster.go b/cluster.go index 881eb254..9fbac673 100644 --- a/cluster.go +++ b/cluster.go @@ -9,14 +9,14 @@ import ( "sync" "time" - "github.com/ipfs/ipfs-cluster/adder" - "github.com/ipfs/ipfs-cluster/adder/sharding" - "github.com/ipfs/ipfs-cluster/adder/single" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/pstoremgr" - "github.com/ipfs/ipfs-cluster/rpcutil" - "github.com/ipfs/ipfs-cluster/state" - "github.com/ipfs/ipfs-cluster/version" + "github.com/ipfs-cluster/ipfs-cluster/adder" + "github.com/ipfs-cluster/ipfs-cluster/adder/sharding" + "github.com/ipfs-cluster/ipfs-cluster/adder/single" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/pstoremgr" + "github.com/ipfs-cluster/ipfs-cluster/rpcutil" + "github.com/ipfs-cluster/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/version" "go.uber.org/multierr" ds "github.com/ipfs/go-datastore" diff --git a/cluster_config.go b/cluster_config.go index f302273f..6e953158 100644 --- a/cluster_config.go +++ b/cluster_config.go @@ -11,7 +11,7 @@ import ( "reflect" "time" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" ipfsconfig "github.com/ipfs/go-ipfs-config" pnet "github.com/libp2p/go-libp2p-core/pnet" diff --git a/cluster_test.go b/cluster_test.go index b0d64438..c38b04e7 100644 --- a/cluster_test.go +++ b/cluster_test.go @@ -10,16 +10,16 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/adder/sharding" - "github.com/ipfs/ipfs-cluster/allocator/balanced" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/config" - "github.com/ipfs/ipfs-cluster/informer/numpin" - "github.com/ipfs/ipfs-cluster/monitor/pubsubmon" - "github.com/ipfs/ipfs-cluster/pintracker/stateless" - "github.com/ipfs/ipfs-cluster/state" - "github.com/ipfs/ipfs-cluster/test" - "github.com/ipfs/ipfs-cluster/version" + "github.com/ipfs-cluster/ipfs-cluster/adder/sharding" + "github.com/ipfs-cluster/ipfs-cluster/allocator/balanced" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/informer/numpin" + "github.com/ipfs-cluster/ipfs-cluster/monitor/pubsubmon" + "github.com/ipfs-cluster/ipfs-cluster/pintracker/stateless" + "github.com/ipfs-cluster/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/version" gopath "github.com/ipfs/go-path" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/clusterhost.go b/clusterhost.go index 15fbb4be..939890a3 100644 --- a/clusterhost.go +++ b/clusterhost.go @@ -7,7 +7,7 @@ import ( ds "github.com/ipfs/go-datastore" namespace "github.com/ipfs/go-datastore/namespace" ipns "github.com/ipfs/go-ipns" - config "github.com/ipfs/ipfs-cluster/config" + config "github.com/ipfs-cluster/ipfs-cluster/config" libp2p "github.com/libp2p/go-libp2p" connmgr "github.com/libp2p/go-libp2p-connmgr" crypto "github.com/libp2p/go-libp2p-core/crypto" diff --git a/cmd/ipfs-cluster-ctl/formatters.go b/cmd/ipfs-cluster-ctl/formatters.go index 1573990b..01a98da2 100644 --- a/cmd/ipfs-cluster-ctl/formatters.go +++ b/cmd/ipfs-cluster-ctl/formatters.go @@ -9,7 +9,7 @@ import ( "strings" "time" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/cmd/ipfs-cluster-ctl/graph.go b/cmd/ipfs-cluster-ctl/graph.go index 2251b77b..4a60c7cf 100644 --- a/cmd/ipfs-cluster-ctl/graph.go +++ b/cmd/ipfs-cluster-ctl/graph.go @@ -9,7 +9,7 @@ import ( dot "github.com/kishansagathiya/go-dot" peer "github.com/libp2p/go-libp2p-core/peer" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" ) /* diff --git a/cmd/ipfs-cluster-ctl/graph_test.go b/cmd/ipfs-cluster-ctl/graph_test.go index ac472f4f..6f42d780 100644 --- a/cmd/ipfs-cluster-ctl/graph_test.go +++ b/cmd/ipfs-cluster-ctl/graph_test.go @@ -6,7 +6,7 @@ import ( "strings" "testing" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" peer "github.com/libp2p/go-libp2p-core/peer" ) diff --git a/cmd/ipfs-cluster-ctl/main.go b/cmd/ipfs-cluster-ctl/main.go index cdf959da..1e0b0de9 100644 --- a/cmd/ipfs-cluster-ctl/main.go +++ b/cmd/ipfs-cluster-ctl/main.go @@ -12,8 +12,8 @@ import ( "sync" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/api/rest/client" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api/rest/client" logging "github.com/ipfs/go-log/v2" peer "github.com/libp2p/go-libp2p-core/peer" @@ -62,7 +62,7 @@ part, or a /dnsaddr that resolves to it. Provide the cluster secret with --secret as needed. For feedback, bug reports or any additional information, visit -https://github.com/ipfs/ipfs-cluster. +https://github.com/ipfs-cluster/ipfs-cluster. `, programName, programName, diff --git a/cmd/ipfs-cluster-follow/commands.go b/cmd/ipfs-cluster-follow/commands.go index e102fe7b..ee07ee7d 100644 --- a/cmd/ipfs-cluster-follow/commands.go +++ b/cmd/ipfs-cluster-follow/commands.go @@ -9,20 +9,20 @@ import ( "strings" "time" - ipfscluster "github.com/ipfs/ipfs-cluster" - "github.com/ipfs/ipfs-cluster/allocator/balanced" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/api/rest" - "github.com/ipfs/ipfs-cluster/cmdutils" - "github.com/ipfs/ipfs-cluster/config" - "github.com/ipfs/ipfs-cluster/consensus/crdt" - "github.com/ipfs/ipfs-cluster/datastore/badger" - "github.com/ipfs/ipfs-cluster/datastore/leveldb" - "github.com/ipfs/ipfs-cluster/informer/disk" - "github.com/ipfs/ipfs-cluster/ipfsconn/ipfshttp" - "github.com/ipfs/ipfs-cluster/monitor/pubsubmon" - "github.com/ipfs/ipfs-cluster/observations" - "github.com/ipfs/ipfs-cluster/pintracker/stateless" + ipfscluster "github.com/ipfs-cluster/ipfs-cluster" + "github.com/ipfs-cluster/ipfs-cluster/allocator/balanced" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api/rest" + "github.com/ipfs-cluster/ipfs-cluster/cmdutils" + "github.com/ipfs-cluster/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/consensus/crdt" + "github.com/ipfs-cluster/ipfs-cluster/datastore/badger" + "github.com/ipfs-cluster/ipfs-cluster/datastore/leveldb" + "github.com/ipfs-cluster/ipfs-cluster/informer/disk" + "github.com/ipfs-cluster/ipfs-cluster/ipfsconn/ipfshttp" + "github.com/ipfs-cluster/ipfs-cluster/monitor/pubsubmon" + "github.com/ipfs-cluster/ipfs-cluster/observations" + "github.com/ipfs-cluster/ipfs-cluster/pintracker/stateless" "github.com/multiformats/go-multiaddr" "github.com/pkg/errors" cli "github.com/urfave/cli/v2" diff --git a/cmd/ipfs-cluster-follow/main.go b/cmd/ipfs-cluster-follow/main.go index 1dd4cabf..d1821046 100644 --- a/cmd/ipfs-cluster-follow/main.go +++ b/cmd/ipfs-cluster-follow/main.go @@ -9,9 +9,9 @@ import ( "path/filepath" "syscall" - "github.com/ipfs/ipfs-cluster/api/rest/client" - "github.com/ipfs/ipfs-cluster/cmdutils" - "github.com/ipfs/ipfs-cluster/version" + "github.com/ipfs-cluster/ipfs-cluster/api/rest/client" + "github.com/ipfs-cluster/ipfs-cluster/cmdutils" + "github.com/ipfs-cluster/ipfs-cluster/version" "github.com/multiformats/go-multiaddr" "github.com/pkg/errors" @@ -63,7 +63,7 @@ and a datastore associated to it, which are kept under "~/%s/". For feedback, bug reports or any additional information, visit -https://github.com/ipfs/ipfs-cluster. +https://github.com/ipfs-cluster/ipfs-cluster. EXAMPLES: diff --git a/cmd/ipfs-cluster-service/daemon.go b/cmd/ipfs-cluster-service/daemon.go index 887528e2..fa50dbb5 100644 --- a/cmd/ipfs-cluster-service/daemon.go +++ b/cmd/ipfs-cluster-service/daemon.go @@ -5,22 +5,22 @@ import ( "strings" "time" - ipfscluster "github.com/ipfs/ipfs-cluster" - "github.com/ipfs/ipfs-cluster/allocator/balanced" - "github.com/ipfs/ipfs-cluster/api/ipfsproxy" - "github.com/ipfs/ipfs-cluster/api/pinsvcapi" - "github.com/ipfs/ipfs-cluster/api/rest" - "github.com/ipfs/ipfs-cluster/cmdutils" - "github.com/ipfs/ipfs-cluster/config" - "github.com/ipfs/ipfs-cluster/consensus/crdt" - "github.com/ipfs/ipfs-cluster/consensus/raft" - "github.com/ipfs/ipfs-cluster/informer/disk" - "github.com/ipfs/ipfs-cluster/informer/pinqueue" - "github.com/ipfs/ipfs-cluster/informer/tags" - "github.com/ipfs/ipfs-cluster/ipfsconn/ipfshttp" - "github.com/ipfs/ipfs-cluster/monitor/pubsubmon" - "github.com/ipfs/ipfs-cluster/observations" - "github.com/ipfs/ipfs-cluster/pintracker/stateless" + ipfscluster "github.com/ipfs-cluster/ipfs-cluster" + "github.com/ipfs-cluster/ipfs-cluster/allocator/balanced" + "github.com/ipfs-cluster/ipfs-cluster/api/ipfsproxy" + "github.com/ipfs-cluster/ipfs-cluster/api/pinsvcapi" + "github.com/ipfs-cluster/ipfs-cluster/api/rest" + "github.com/ipfs-cluster/ipfs-cluster/cmdutils" + "github.com/ipfs-cluster/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/consensus/crdt" + "github.com/ipfs-cluster/ipfs-cluster/consensus/raft" + "github.com/ipfs-cluster/ipfs-cluster/informer/disk" + "github.com/ipfs-cluster/ipfs-cluster/informer/pinqueue" + "github.com/ipfs-cluster/ipfs-cluster/informer/tags" + "github.com/ipfs-cluster/ipfs-cluster/ipfsconn/ipfshttp" + "github.com/ipfs-cluster/ipfs-cluster/monitor/pubsubmon" + "github.com/ipfs-cluster/ipfs-cluster/observations" + "github.com/ipfs-cluster/ipfs-cluster/pintracker/stateless" "go.opencensus.io/tag" ds "github.com/ipfs/go-datastore" diff --git a/cmd/ipfs-cluster-service/lock.go b/cmd/ipfs-cluster-service/lock.go index 5dcdd3ea..c488354f 100644 --- a/cmd/ipfs-cluster-service/lock.go +++ b/cmd/ipfs-cluster-service/lock.go @@ -7,7 +7,7 @@ import ( "path" fslock "github.com/ipfs/go-fs-lock" - "github.com/ipfs/ipfs-cluster/cmdutils" + "github.com/ipfs-cluster/ipfs-cluster/cmdutils" ) // lock logic heavily inspired by go-ipfs/repo/fsrepo/lock/lock.go diff --git a/cmd/ipfs-cluster-service/main.go b/cmd/ipfs-cluster-service/main.go index 1055d88f..0f72545f 100644 --- a/cmd/ipfs-cluster-service/main.go +++ b/cmd/ipfs-cluster-service/main.go @@ -12,11 +12,11 @@ import ( "path/filepath" "strings" - ipfscluster "github.com/ipfs/ipfs-cluster" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/cmdutils" - "github.com/ipfs/ipfs-cluster/pstoremgr" - "github.com/ipfs/ipfs-cluster/version" + ipfscluster "github.com/ipfs-cluster/ipfs-cluster" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/cmdutils" + "github.com/ipfs-cluster/ipfs-cluster/pstoremgr" + "github.com/ipfs-cluster/ipfs-cluster/version" peer "github.com/libp2p/go-libp2p-core/peer" ma "github.com/multiformats/go-multiaddr" @@ -83,7 +83,7 @@ default locations are ~/%s/%s and ~/%s/%s. For feedback, bug reports or any additional information, visit -https://github.com/ipfs/ipfs-cluster. +https://github.com/ipfs-cluster/ipfs-cluster. EXAMPLES: diff --git a/cmd/ipfs-cluster-service/main_test.go b/cmd/ipfs-cluster-service/main_test.go index f765faf1..22f8a1d6 100644 --- a/cmd/ipfs-cluster-service/main_test.go +++ b/cmd/ipfs-cluster-service/main_test.go @@ -3,7 +3,7 @@ package main import ( "testing" - "github.com/ipfs/ipfs-cluster/cmdutils" + "github.com/ipfs-cluster/ipfs-cluster/cmdutils" ma "github.com/multiformats/go-multiaddr" ) diff --git a/cmdutils/cmdutils.go b/cmdutils/cmdutils.go index 24da9287..8a2cf9a2 100644 --- a/cmdutils/cmdutils.go +++ b/cmdutils/cmdutils.go @@ -14,8 +14,8 @@ import ( "time" "github.com/ipfs/go-datastore" - ipfscluster "github.com/ipfs/ipfs-cluster" - ipfshttp "github.com/ipfs/ipfs-cluster/ipfsconn/ipfshttp" + ipfscluster "github.com/ipfs-cluster/ipfs-cluster" + ipfshttp "github.com/ipfs-cluster/ipfs-cluster/ipfsconn/ipfshttp" host "github.com/libp2p/go-libp2p-core/host" dual "github.com/libp2p/go-libp2p-kad-dht/dual" ma "github.com/multiformats/go-multiaddr" diff --git a/cmdutils/configs.go b/cmdutils/configs.go index 2490ef0f..46c02dfa 100644 --- a/cmdutils/configs.go +++ b/cmdutils/configs.go @@ -7,24 +7,24 @@ import ( "github.com/pkg/errors" - ipfscluster "github.com/ipfs/ipfs-cluster" - "github.com/ipfs/ipfs-cluster/allocator/balanced" - "github.com/ipfs/ipfs-cluster/api/ipfsproxy" - "github.com/ipfs/ipfs-cluster/api/pinsvcapi" - "github.com/ipfs/ipfs-cluster/api/rest" - "github.com/ipfs/ipfs-cluster/config" - "github.com/ipfs/ipfs-cluster/consensus/crdt" - "github.com/ipfs/ipfs-cluster/consensus/raft" - "github.com/ipfs/ipfs-cluster/datastore/badger" - "github.com/ipfs/ipfs-cluster/datastore/leveldb" - "github.com/ipfs/ipfs-cluster/informer/disk" - "github.com/ipfs/ipfs-cluster/informer/numpin" - "github.com/ipfs/ipfs-cluster/informer/pinqueue" - "github.com/ipfs/ipfs-cluster/informer/tags" - "github.com/ipfs/ipfs-cluster/ipfsconn/ipfshttp" - "github.com/ipfs/ipfs-cluster/monitor/pubsubmon" - "github.com/ipfs/ipfs-cluster/observations" - "github.com/ipfs/ipfs-cluster/pintracker/stateless" + ipfscluster "github.com/ipfs-cluster/ipfs-cluster" + "github.com/ipfs-cluster/ipfs-cluster/allocator/balanced" + "github.com/ipfs-cluster/ipfs-cluster/api/ipfsproxy" + "github.com/ipfs-cluster/ipfs-cluster/api/pinsvcapi" + "github.com/ipfs-cluster/ipfs-cluster/api/rest" + "github.com/ipfs-cluster/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/consensus/crdt" + "github.com/ipfs-cluster/ipfs-cluster/consensus/raft" + "github.com/ipfs-cluster/ipfs-cluster/datastore/badger" + "github.com/ipfs-cluster/ipfs-cluster/datastore/leveldb" + "github.com/ipfs-cluster/ipfs-cluster/informer/disk" + "github.com/ipfs-cluster/ipfs-cluster/informer/numpin" + "github.com/ipfs-cluster/ipfs-cluster/informer/pinqueue" + "github.com/ipfs-cluster/ipfs-cluster/informer/tags" + "github.com/ipfs-cluster/ipfs-cluster/ipfsconn/ipfshttp" + "github.com/ipfs-cluster/ipfs-cluster/monitor/pubsubmon" + "github.com/ipfs-cluster/ipfs-cluster/observations" + "github.com/ipfs-cluster/ipfs-cluster/pintracker/stateless" ) // Configs carries config types used by a Cluster Peer. diff --git a/cmdutils/state.go b/cmdutils/state.go index cb68167a..fdfa5ec6 100644 --- a/cmdutils/state.go +++ b/cmdutils/state.go @@ -7,16 +7,16 @@ import ( "fmt" "io" - ipfscluster "github.com/ipfs/ipfs-cluster" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/config" - "github.com/ipfs/ipfs-cluster/consensus/crdt" - "github.com/ipfs/ipfs-cluster/consensus/raft" - "github.com/ipfs/ipfs-cluster/datastore/badger" - "github.com/ipfs/ipfs-cluster/datastore/inmem" - "github.com/ipfs/ipfs-cluster/datastore/leveldb" - "github.com/ipfs/ipfs-cluster/pstoremgr" - "github.com/ipfs/ipfs-cluster/state" + ipfscluster "github.com/ipfs-cluster/ipfs-cluster" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/consensus/crdt" + "github.com/ipfs-cluster/ipfs-cluster/consensus/raft" + "github.com/ipfs-cluster/ipfs-cluster/datastore/badger" + "github.com/ipfs-cluster/ipfs-cluster/datastore/inmem" + "github.com/ipfs-cluster/ipfs-cluster/datastore/leveldb" + "github.com/ipfs-cluster/ipfs-cluster/pstoremgr" + "github.com/ipfs-cluster/ipfs-cluster/state" ds "github.com/ipfs/go-datastore" ) diff --git a/config_test.go b/config_test.go index 9ebb6f5b..c39871bb 100644 --- a/config_test.go +++ b/config_test.go @@ -1,19 +1,19 @@ package ipfscluster import ( - "github.com/ipfs/ipfs-cluster/allocator/balanced" - "github.com/ipfs/ipfs-cluster/api/ipfsproxy" - "github.com/ipfs/ipfs-cluster/api/rest" - "github.com/ipfs/ipfs-cluster/config" - "github.com/ipfs/ipfs-cluster/consensus/crdt" - "github.com/ipfs/ipfs-cluster/consensus/raft" - "github.com/ipfs/ipfs-cluster/datastore/badger" - "github.com/ipfs/ipfs-cluster/datastore/leveldb" - "github.com/ipfs/ipfs-cluster/informer/disk" - "github.com/ipfs/ipfs-cluster/ipfsconn/ipfshttp" - "github.com/ipfs/ipfs-cluster/monitor/pubsubmon" - "github.com/ipfs/ipfs-cluster/observations" - "github.com/ipfs/ipfs-cluster/pintracker/stateless" + "github.com/ipfs-cluster/ipfs-cluster/allocator/balanced" + "github.com/ipfs-cluster/ipfs-cluster/api/ipfsproxy" + "github.com/ipfs-cluster/ipfs-cluster/api/rest" + "github.com/ipfs-cluster/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/consensus/crdt" + "github.com/ipfs-cluster/ipfs-cluster/consensus/raft" + "github.com/ipfs-cluster/ipfs-cluster/datastore/badger" + "github.com/ipfs-cluster/ipfs-cluster/datastore/leveldb" + "github.com/ipfs-cluster/ipfs-cluster/informer/disk" + "github.com/ipfs-cluster/ipfs-cluster/ipfsconn/ipfshttp" + "github.com/ipfs-cluster/ipfs-cluster/monitor/pubsubmon" + "github.com/ipfs-cluster/ipfs-cluster/observations" + "github.com/ipfs-cluster/ipfs-cluster/pintracker/stateless" ) var testingClusterSecret, _ = DecodeClusterSecret("2588b80d5cb05374fa142aed6cbb047d1f4ef8ef15e37eba68c65b9d30df67ed") diff --git a/connect_graph.go b/connect_graph.go index ead6df4d..698582d9 100644 --- a/connect_graph.go +++ b/connect_graph.go @@ -1,7 +1,7 @@ package ipfscluster import ( - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/consensus/crdt/config.go b/consensus/crdt/config.go index 5af18a07..0c0ade7a 100644 --- a/consensus/crdt/config.go +++ b/consensus/crdt/config.go @@ -6,8 +6,8 @@ import ( "fmt" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/config" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/consensus/crdt/consensus.go b/consensus/crdt/consensus.go index 06f0d1c2..824aba76 100644 --- a/consensus/crdt/consensus.go +++ b/consensus/crdt/consensus.go @@ -10,10 +10,10 @@ import ( "sync" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/pstoremgr" - "github.com/ipfs/ipfs-cluster/state" - "github.com/ipfs/ipfs-cluster/state/dsstate" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/pstoremgr" + "github.com/ipfs-cluster/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/state/dsstate" ds "github.com/ipfs/go-datastore" namespace "github.com/ipfs/go-datastore/namespace" diff --git a/consensus/crdt/consensus_test.go b/consensus/crdt/consensus_test.go index 670229e5..4dadba04 100644 --- a/consensus/crdt/consensus_test.go +++ b/consensus/crdt/consensus_test.go @@ -6,9 +6,9 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/datastore/inmem" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/datastore/inmem" + "github.com/ipfs-cluster/ipfs-cluster/test" ipns "github.com/ipfs/go-ipns" libp2p "github.com/libp2p/go-libp2p" diff --git a/consensus/raft/config.go b/consensus/raft/config.go index 6db8bb76..21713c34 100644 --- a/consensus/raft/config.go +++ b/consensus/raft/config.go @@ -7,8 +7,8 @@ import ( "path/filepath" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/config" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/consensus/raft/consensus.go b/consensus/raft/consensus.go index 0de1e717..4a8ac8e4 100644 --- a/consensus/raft/consensus.go +++ b/consensus/raft/consensus.go @@ -10,9 +10,9 @@ import ( "sync" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/state" - "github.com/ipfs/ipfs-cluster/state/dsstate" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/state/dsstate" ds "github.com/ipfs/go-datastore" logging "github.com/ipfs/go-log/v2" @@ -136,7 +136,7 @@ func (cc *Consensus) WaitForSync(ctx context.Context) error { // Thus, waiting to be a Voter is a guarantee that we have a reasonable // up to date state. Otherwise, we might return too early (see - // https://github.com/ipfs/ipfs-cluster/issues/378) + // https://github.com/ipfs-cluster/ipfs-cluster/issues/378) _, err := cc.raft.WaitForLeader(leaderCtx) if err != nil { diff --git a/consensus/raft/consensus_test.go b/consensus/raft/consensus_test.go index e33eb5c0..17c49b18 100644 --- a/consensus/raft/consensus_test.go +++ b/consensus/raft/consensus_test.go @@ -7,10 +7,10 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/datastore/inmem" - "github.com/ipfs/ipfs-cluster/state/dsstate" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/datastore/inmem" + "github.com/ipfs-cluster/ipfs-cluster/state/dsstate" + "github.com/ipfs-cluster/ipfs-cluster/test" libp2p "github.com/libp2p/go-libp2p" host "github.com/libp2p/go-libp2p-core/host" diff --git a/consensus/raft/log_op.go b/consensus/raft/log_op.go index a6ffb783..9f18d44b 100644 --- a/consensus/raft/log_op.go +++ b/consensus/raft/log_op.go @@ -7,8 +7,8 @@ import ( "go.opencensus.io/tag" "go.opencensus.io/trace" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/state" consensus "github.com/libp2p/go-libp2p-consensus" ) diff --git a/consensus/raft/log_op_test.go b/consensus/raft/log_op_test.go index 9aa89350..27134b91 100644 --- a/consensus/raft/log_op_test.go +++ b/consensus/raft/log_op_test.go @@ -4,10 +4,10 @@ import ( "context" "testing" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/datastore/inmem" - "github.com/ipfs/ipfs-cluster/state/dsstate" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/datastore/inmem" + "github.com/ipfs-cluster/ipfs-cluster/state/dsstate" + "github.com/ipfs-cluster/ipfs-cluster/test" ) func TestApplyToPin(t *testing.T) { diff --git a/consensus/raft/raft.go b/consensus/raft/raft.go index 3c320b03..12e16dd7 100644 --- a/consensus/raft/raft.go +++ b/consensus/raft/raft.go @@ -9,7 +9,7 @@ import ( "path/filepath" "time" - "github.com/ipfs/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/state" host "github.com/libp2p/go-libp2p-core/host" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/datastore/badger/config.go b/datastore/badger/config.go index d103c62a..efcd6fb2 100644 --- a/datastore/badger/config.go +++ b/datastore/badger/config.go @@ -11,7 +11,7 @@ import ( "github.com/imdario/mergo" "github.com/kelseyhightower/envconfig" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" ) const configKey = "badger" diff --git a/datastore/leveldb/config.go b/datastore/leveldb/config.go index f041b1df..6f0cdf36 100644 --- a/datastore/leveldb/config.go +++ b/datastore/leveldb/config.go @@ -6,7 +6,7 @@ import ( "path/filepath" "github.com/imdario/mergo" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" "github.com/kelseyhightower/envconfig" goleveldb "github.com/syndtr/goleveldb/leveldb/opt" ) diff --git a/go.mod b/go.mod index 35d6bb4b..9c9a2038 100644 --- a/go.mod +++ b/go.mod @@ -1,4 +1,4 @@ -module github.com/ipfs/ipfs-cluster +module github.com/ipfs-cluster/ipfs-cluster require ( contrib.go.opencensus.io/exporter/jaeger v0.2.1 diff --git a/informer/disk/config.go b/informer/disk/config.go index f332dd7e..91508696 100644 --- a/informer/disk/config.go +++ b/informer/disk/config.go @@ -5,7 +5,7 @@ import ( "errors" "time" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" "github.com/kelseyhightower/envconfig" ) diff --git a/informer/disk/disk.go b/informer/disk/disk.go index 74ead119..17012809 100644 --- a/informer/disk/disk.go +++ b/informer/disk/disk.go @@ -7,7 +7,7 @@ import ( "fmt" "sync" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" logging "github.com/ipfs/go-log/v2" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/informer/disk/disk_test.go b/informer/disk/disk_test.go index 0d176646..a68bc0a0 100644 --- a/informer/disk/disk_test.go +++ b/informer/disk/disk_test.go @@ -5,8 +5,8 @@ import ( "errors" "testing" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" rpc "github.com/libp2p/go-libp2p-gorpc" ) diff --git a/informer/numpin/config.go b/informer/numpin/config.go index 83e8f468..cf3b0c39 100644 --- a/informer/numpin/config.go +++ b/informer/numpin/config.go @@ -5,7 +5,7 @@ import ( "errors" "time" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" "github.com/kelseyhightower/envconfig" ) diff --git a/informer/numpin/numpin.go b/informer/numpin/numpin.go index becddcb8..a070eb09 100644 --- a/informer/numpin/numpin.go +++ b/informer/numpin/numpin.go @@ -7,7 +7,7 @@ import ( "fmt" "sync" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/informer/numpin/numpin_test.go b/informer/numpin/numpin_test.go index de18330a..eb64341c 100644 --- a/informer/numpin/numpin_test.go +++ b/informer/numpin/numpin_test.go @@ -4,8 +4,8 @@ import ( "context" "testing" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" rpc "github.com/libp2p/go-libp2p-gorpc" ) diff --git a/informer/pinqueue/config.go b/informer/pinqueue/config.go index acbadab1..f03c60ab 100644 --- a/informer/pinqueue/config.go +++ b/informer/pinqueue/config.go @@ -5,7 +5,7 @@ import ( "errors" "time" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" "github.com/kelseyhightower/envconfig" ) diff --git a/informer/pinqueue/pinqueue.go b/informer/pinqueue/pinqueue.go index 26607962..e5142ecd 100644 --- a/informer/pinqueue/pinqueue.go +++ b/informer/pinqueue/pinqueue.go @@ -7,7 +7,7 @@ import ( "fmt" "sync" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/informer/tags/config.go b/informer/tags/config.go index c57c91f1..281c2414 100644 --- a/informer/tags/config.go +++ b/informer/tags/config.go @@ -5,7 +5,7 @@ import ( "errors" "time" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" "github.com/kelseyhightower/envconfig" ) diff --git a/informer/tags/tags.go b/informer/tags/tags.go index 1adb94f2..45b5c81a 100644 --- a/informer/tags/tags.go +++ b/informer/tags/tags.go @@ -6,7 +6,7 @@ import ( "context" "sync" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" logging "github.com/ipfs/go-log/v2" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/ipfscluster.go b/ipfscluster.go index 454ff064..6320bbb6 100644 --- a/ipfscluster.go +++ b/ipfscluster.go @@ -9,8 +9,8 @@ package ipfscluster import ( "context" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/state" peer "github.com/libp2p/go-libp2p-core/peer" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/ipfscluster_test.go b/ipfscluster_test.go index 3e4d904e..a3c3a088 100644 --- a/ipfscluster_test.go +++ b/ipfscluster_test.go @@ -15,22 +15,22 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/allocator/balanced" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/api/rest" - "github.com/ipfs/ipfs-cluster/consensus/crdt" - "github.com/ipfs/ipfs-cluster/consensus/raft" - "github.com/ipfs/ipfs-cluster/datastore/badger" - "github.com/ipfs/ipfs-cluster/datastore/inmem" - "github.com/ipfs/ipfs-cluster/datastore/leveldb" - "github.com/ipfs/ipfs-cluster/informer/disk" - "github.com/ipfs/ipfs-cluster/ipfsconn/ipfshttp" - "github.com/ipfs/ipfs-cluster/monitor/pubsubmon" - "github.com/ipfs/ipfs-cluster/observations" - "github.com/ipfs/ipfs-cluster/pintracker/stateless" - "github.com/ipfs/ipfs-cluster/state" - "github.com/ipfs/ipfs-cluster/test" - "github.com/ipfs/ipfs-cluster/version" + "github.com/ipfs-cluster/ipfs-cluster/allocator/balanced" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api/rest" + "github.com/ipfs-cluster/ipfs-cluster/consensus/crdt" + "github.com/ipfs-cluster/ipfs-cluster/consensus/raft" + "github.com/ipfs-cluster/ipfs-cluster/datastore/badger" + "github.com/ipfs-cluster/ipfs-cluster/datastore/inmem" + "github.com/ipfs-cluster/ipfs-cluster/datastore/leveldb" + "github.com/ipfs-cluster/ipfs-cluster/informer/disk" + "github.com/ipfs-cluster/ipfs-cluster/ipfsconn/ipfshttp" + "github.com/ipfs-cluster/ipfs-cluster/monitor/pubsubmon" + "github.com/ipfs-cluster/ipfs-cluster/observations" + "github.com/ipfs-cluster/ipfs-cluster/pintracker/stateless" + "github.com/ipfs-cluster/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/version" ds "github.com/ipfs/go-datastore" libp2p "github.com/libp2p/go-libp2p" diff --git a/ipfsconn/ipfshttp/config.go b/ipfsconn/ipfshttp/config.go index 757722c5..5c114806 100644 --- a/ipfsconn/ipfshttp/config.go +++ b/ipfsconn/ipfshttp/config.go @@ -8,7 +8,7 @@ import ( "github.com/kelseyhightower/envconfig" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" ma "github.com/multiformats/go-multiaddr" ) diff --git a/ipfsconn/ipfshttp/ipfshttp.go b/ipfsconn/ipfshttp/ipfshttp.go index 9e26f4b9..5801eed0 100644 --- a/ipfsconn/ipfshttp/ipfshttp.go +++ b/ipfsconn/ipfshttp/ipfshttp.go @@ -17,8 +17,8 @@ import ( "sync/atomic" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/observations" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/observations" cid "github.com/ipfs/go-cid" files "github.com/ipfs/go-ipfs-files" @@ -1111,6 +1111,7 @@ func (ipfs *Connector) BlockStream(ctx context.Context, blocks <-chan api.NodeWi // Now we stream the blocks to ipfs. In case of error, we return // directly, but leave a goroutine draining the channel until it is // closed, which should be soon after returning. + stats.Record(ctx, observations.BlocksPut.M(1)) multiFileR := files.NewMultiFileReader(dir, true) contentType := "multipart/form-data; boundary=" + multiFileR.Boundary() body, err := ipfs.postCtxStreamResponse(ctx, url, contentType, multiFileR) diff --git a/ipfsconn/ipfshttp/ipfshttp_test.go b/ipfsconn/ipfshttp/ipfshttp_test.go index c06dc8a3..f82b2d22 100644 --- a/ipfsconn/ipfshttp/ipfshttp_test.go +++ b/ipfsconn/ipfshttp/ipfshttp_test.go @@ -11,8 +11,8 @@ import ( ma "github.com/multiformats/go-multiaddr" merkledag "github.com/ipfs/go-merkledag" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" ) func init() { diff --git a/monitor/metrics/checker.go b/monitor/metrics/checker.go index a035c253..8c2f3c07 100644 --- a/monitor/metrics/checker.go +++ b/monitor/metrics/checker.go @@ -6,7 +6,7 @@ import ( "sync" "time" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" peer "github.com/libp2p/go-libp2p-core/peer" ) diff --git a/monitor/metrics/checker_test.go b/monitor/metrics/checker_test.go index 63b1b5b2..448a3179 100644 --- a/monitor/metrics/checker_test.go +++ b/monitor/metrics/checker_test.go @@ -5,8 +5,8 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" peer "github.com/libp2p/go-libp2p-core/peer" ) diff --git a/monitor/metrics/store.go b/monitor/metrics/store.go index b156833a..89e9698c 100644 --- a/monitor/metrics/store.go +++ b/monitor/metrics/store.go @@ -4,7 +4,7 @@ import ( "sort" "sync" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" peer "github.com/libp2p/go-libp2p-core/peer" ) diff --git a/monitor/metrics/store_test.go b/monitor/metrics/store_test.go index 33cb478d..2813311c 100644 --- a/monitor/metrics/store_test.go +++ b/monitor/metrics/store_test.go @@ -4,8 +4,8 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" ) func TestStoreLatest(t *testing.T) { diff --git a/monitor/metrics/util.go b/monitor/metrics/util.go index 4e2232db..bf7003dd 100644 --- a/monitor/metrics/util.go +++ b/monitor/metrics/util.go @@ -1,7 +1,7 @@ package metrics import ( - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" peer "github.com/libp2p/go-libp2p-core/peer" ) diff --git a/monitor/metrics/window.go b/monitor/metrics/window.go index 0a4fbace..1166c87c 100644 --- a/monitor/metrics/window.go +++ b/monitor/metrics/window.go @@ -9,7 +9,7 @@ import ( "sync" "time" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" ) // DefaultWindowCap sets the amount of metrics to store per peer. diff --git a/monitor/metrics/window_test.go b/monitor/metrics/window_test.go index 73d27a0a..dcc99e8a 100644 --- a/monitor/metrics/window_test.go +++ b/monitor/metrics/window_test.go @@ -5,7 +5,7 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" ) func makeMetric(value string) api.Metric { diff --git a/monitor/pubsubmon/config.go b/monitor/pubsubmon/config.go index afb2f65f..c6dbdedc 100644 --- a/monitor/pubsubmon/config.go +++ b/monitor/pubsubmon/config.go @@ -5,7 +5,7 @@ import ( "errors" "time" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" "github.com/kelseyhightower/envconfig" ) diff --git a/monitor/pubsubmon/pubsubmon.go b/monitor/pubsubmon/pubsubmon.go index dee79073..c2401eeb 100644 --- a/monitor/pubsubmon/pubsubmon.go +++ b/monitor/pubsubmon/pubsubmon.go @@ -9,8 +9,8 @@ import ( "sync" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/monitor/metrics" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/monitor/metrics" logging "github.com/ipfs/go-log/v2" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/monitor/pubsubmon/pubsubmon_test.go b/monitor/pubsubmon/pubsubmon_test.go index d1444a63..3e78522f 100644 --- a/monitor/pubsubmon/pubsubmon_test.go +++ b/monitor/pubsubmon/pubsubmon_test.go @@ -9,8 +9,8 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" libp2p "github.com/libp2p/go-libp2p" host "github.com/libp2p/go-libp2p-core/host" diff --git a/observations/config.go b/observations/config.go index 3dbef357..66086ef3 100644 --- a/observations/config.go +++ b/observations/config.go @@ -10,7 +10,7 @@ import ( ma "github.com/multiformats/go-multiaddr" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" ) const metricsConfigKey = "metrics" diff --git a/observations/metrics.go b/observations/metrics.go index 00d45b1c..48d7dd0f 100644 --- a/observations/metrics.go +++ b/observations/metrics.go @@ -47,7 +47,7 @@ var ( BlocksAddedSize = stats.Int64("blocks/added_size", "Total size of blocks added in bytes", stats.UnitDimensionless) BlocksAdded = stats.Int64("blocks/added", "Total number of blocks added", stats.UnitDimensionless) - BlocksAddedError = stats.Int64("blocks/put_error", "Total number of block/put errors", stats.UnitDimensionless) + BlocksAddedError = stats.Int64("blocks/put_errors", "Total number of block/put errors", stats.UnitDimensionless) ) // views, which is just the aggregation of the metrics @@ -110,7 +110,7 @@ var ( } BlocksAddedErrorView = &view.View{ - Measure: PinsPinAddError, + Measure: BlocksAddedError, Aggregation: view.Sum(), } diff --git a/peer_manager_test.go b/peer_manager_test.go index c12a1da8..f72195d0 100644 --- a/peer_manager_test.go +++ b/peer_manager_test.go @@ -8,9 +8,9 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/config" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/test" host "github.com/libp2p/go-libp2p-core/host" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/pintracker/optracker/operation.go b/pintracker/optracker/operation.go index 940bc7a0..42a9b291 100644 --- a/pintracker/optracker/operation.go +++ b/pintracker/optracker/operation.go @@ -7,7 +7,7 @@ import ( "sync" "time" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" "go.opencensus.io/trace" ) diff --git a/pintracker/optracker/operation_test.go b/pintracker/optracker/operation_test.go index 7c9bd80d..e48329d4 100644 --- a/pintracker/optracker/operation_test.go +++ b/pintracker/optracker/operation_test.go @@ -6,8 +6,8 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" ) func TestOperation(t *testing.T) { diff --git a/pintracker/optracker/operationtracker.go b/pintracker/optracker/operationtracker.go index 86a59e38..7b4348ec 100644 --- a/pintracker/optracker/operationtracker.go +++ b/pintracker/optracker/operationtracker.go @@ -13,8 +13,8 @@ import ( "sync/atomic" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/observations" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/observations" logging "github.com/ipfs/go-log/v2" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/pintracker/optracker/operationtracker_test.go b/pintracker/optracker/operationtracker_test.go index 9f23841e..d7b2e5b9 100644 --- a/pintracker/optracker/operationtracker_test.go +++ b/pintracker/optracker/operationtracker_test.go @@ -5,8 +5,8 @@ import ( "errors" "testing" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/test" ) func testOperationTracker(t *testing.T) *OperationTracker { diff --git a/pintracker/pintracker_test.go b/pintracker/pintracker_test.go index 11329024..0607a204 100644 --- a/pintracker/pintracker_test.go +++ b/pintracker/pintracker_test.go @@ -11,13 +11,13 @@ import ( "testing" "time" - ipfscluster "github.com/ipfs/ipfs-cluster" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/datastore/inmem" - "github.com/ipfs/ipfs-cluster/pintracker/stateless" - "github.com/ipfs/ipfs-cluster/state" - "github.com/ipfs/ipfs-cluster/state/dsstate" - "github.com/ipfs/ipfs-cluster/test" + ipfscluster "github.com/ipfs-cluster/ipfs-cluster" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/datastore/inmem" + "github.com/ipfs-cluster/ipfs-cluster/pintracker/stateless" + "github.com/ipfs-cluster/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/state/dsstate" + "github.com/ipfs-cluster/ipfs-cluster/test" peer "github.com/libp2p/go-libp2p-core/peer" ) diff --git a/pintracker/stateless/config.go b/pintracker/stateless/config.go index 4430a8d0..a4d80361 100644 --- a/pintracker/stateless/config.go +++ b/pintracker/stateless/config.go @@ -7,7 +7,7 @@ import ( "github.com/kelseyhightower/envconfig" - "github.com/ipfs/ipfs-cluster/config" + "github.com/ipfs-cluster/ipfs-cluster/config" ) const configKey = "stateless" diff --git a/pintracker/stateless/stateless.go b/pintracker/stateless/stateless.go index fcd87cdf..aa6f7902 100644 --- a/pintracker/stateless/stateless.go +++ b/pintracker/stateless/stateless.go @@ -10,9 +10,9 @@ import ( "sync" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/pintracker/optracker" - "github.com/ipfs/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/pintracker/optracker" + "github.com/ipfs-cluster/ipfs-cluster/state" logging "github.com/ipfs/go-log/v2" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/pintracker/stateless/stateless_test.go b/pintracker/stateless/stateless_test.go index f1dfb8dd..9c1fa70f 100644 --- a/pintracker/stateless/stateless_test.go +++ b/pintracker/stateless/stateless_test.go @@ -6,11 +6,11 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/datastore/inmem" - "github.com/ipfs/ipfs-cluster/state" - "github.com/ipfs/ipfs-cluster/state/dsstate" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/datastore/inmem" + "github.com/ipfs-cluster/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/state/dsstate" + "github.com/ipfs-cluster/ipfs-cluster/test" peer "github.com/libp2p/go-libp2p-core/peer" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/pstoremgr/pstoremgr_test.go b/pstoremgr/pstoremgr_test.go index 2108f193..cdb81026 100644 --- a/pstoremgr/pstoremgr_test.go +++ b/pstoremgr/pstoremgr_test.go @@ -6,7 +6,7 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/test" + "github.com/ipfs-cluster/ipfs-cluster/test" libp2p "github.com/libp2p/go-libp2p" peer "github.com/libp2p/go-libp2p-core/peer" diff --git a/rpc_api.go b/rpc_api.go index 62307dcc..bf66809b 100644 --- a/rpc_api.go +++ b/rpc_api.go @@ -4,9 +4,9 @@ import ( "context" "errors" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/state" - "github.com/ipfs/ipfs-cluster/version" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/version" peer "github.com/libp2p/go-libp2p-core/peer" rpc "github.com/libp2p/go-libp2p-gorpc" diff --git a/rpcutil/policygen/policygen.go b/rpcutil/policygen/policygen.go index 8c4e606a..6f0944d2 100644 --- a/rpcutil/policygen/policygen.go +++ b/rpcutil/policygen/policygen.go @@ -7,7 +7,7 @@ import ( "reflect" "strings" - cluster "github.com/ipfs/ipfs-cluster" + cluster "github.com/ipfs-cluster/ipfs-cluster" ) func rpcTypeStr(t cluster.RPCEndpointType) string { diff --git a/rpcutil/rpcutil.go b/rpcutil/rpcutil.go index 64198b0e..dababc18 100644 --- a/rpcutil/rpcutil.go +++ b/rpcutil/rpcutil.go @@ -8,7 +8,7 @@ import ( "fmt" "time" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" ) // CtxsWithTimeout returns n contexts, derived from the given parent diff --git a/state/dsstate/datastore.go b/state/dsstate/datastore.go index 7cc50293..aab985e3 100644 --- a/state/dsstate/datastore.go +++ b/state/dsstate/datastore.go @@ -8,9 +8,9 @@ import ( "io" "sync/atomic" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/observations" - "github.com/ipfs/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/observations" + "github.com/ipfs-cluster/ipfs-cluster/state" ds "github.com/ipfs/go-datastore" query "github.com/ipfs/go-datastore/query" diff --git a/state/dsstate/datastore_test.go b/state/dsstate/datastore_test.go index 2dfbe549..463f91c3 100644 --- a/state/dsstate/datastore_test.go +++ b/state/dsstate/datastore_test.go @@ -6,8 +6,8 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/datastore/inmem" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/datastore/inmem" peer "github.com/libp2p/go-libp2p-core/peer" ) diff --git a/state/empty.go b/state/empty.go index f4b3ee7a..5af5d876 100644 --- a/state/empty.go +++ b/state/empty.go @@ -3,7 +3,7 @@ package state import ( "context" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" ) type empty struct{} diff --git a/state/interface.go b/state/interface.go index 6fc6b489..7cc4f05f 100644 --- a/state/interface.go +++ b/state/interface.go @@ -8,7 +8,7 @@ import ( "errors" "io" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" ) // ErrNotFound should be returned when a pin is not part of the state. diff --git a/test/cids.go b/test/cids.go index 95e96215..e860ea3a 100644 --- a/test/cids.go +++ b/test/cids.go @@ -1,7 +1,7 @@ package test import ( - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" peer "github.com/libp2p/go-libp2p-core/peer" ) diff --git a/test/ipfs_mock.go b/test/ipfs_mock.go index 775d9831..809a3c57 100644 --- a/test/ipfs_mock.go +++ b/test/ipfs_mock.go @@ -15,10 +15,10 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/datastore/inmem" - "github.com/ipfs/ipfs-cluster/state" - "github.com/ipfs/ipfs-cluster/state/dsstate" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/datastore/inmem" + "github.com/ipfs-cluster/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/state/dsstate" "github.com/multiformats/go-multihash" cid "github.com/ipfs/go-cid" diff --git a/test/rpc_api_mock.go b/test/rpc_api_mock.go index 027d9649..58722ca2 100644 --- a/test/rpc_api_mock.go +++ b/test/rpc_api_mock.go @@ -7,8 +7,8 @@ import ( "testing" "time" - "github.com/ipfs/ipfs-cluster/api" - "github.com/ipfs/ipfs-cluster/state" + "github.com/ipfs-cluster/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/state" gopath "github.com/ipfs/go-path" host "github.com/libp2p/go-libp2p-core/host" diff --git a/test/sharding.go b/test/sharding.go index 9082ef62..35ae8c7d 100644 --- a/test/sharding.go +++ b/test/sharding.go @@ -12,7 +12,7 @@ import ( files "github.com/ipfs/go-ipfs-files" format "github.com/ipfs/go-ipld-format" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" cid "github.com/ipfs/go-cid" ) diff --git a/test/test_test.go b/test/test_test.go index 4e610fe5..8df9ba3e 100644 --- a/test/test_test.go +++ b/test/test_test.go @@ -4,7 +4,7 @@ import ( "reflect" "testing" - ipfscluster "github.com/ipfs/ipfs-cluster" + ipfscluster "github.com/ipfs-cluster/ipfs-cluster" ) func TestIpfsMock(t *testing.T) { diff --git a/util.go b/util.go index fad96375..5374efcf 100644 --- a/util.go +++ b/util.go @@ -9,7 +9,7 @@ import ( blake2b "golang.org/x/crypto/blake2b" - "github.com/ipfs/ipfs-cluster/api" + "github.com/ipfs-cluster/ipfs-cluster/api" peer "github.com/libp2p/go-libp2p-core/peer" ma "github.com/multiformats/go-multiaddr" madns "github.com/multiformats/go-multiaddr-dns"