Skip to content

Latest commit

 

History

History
96 lines (54 loc) · 5.15 KB

CHANGELOG.md

File metadata and controls

96 lines (54 loc) · 5.15 KB

v0.2.2 (2021-05-04)

This patch release fixes some issues in dsync. Network errors are now retried, and blocks are pushed as large archive streams. Performance will improve and transfers will fail less often.

Bug Fixes

  • dsync: PROTOCOL_ERROR responses retry instead of failing (e26737d)
  • http: always set request Accept & Content-Type res headers (dc859f1)

Performance Improvements

  • CARStream: push blocks in one large CAR archive stream (207f481)
  • dsync: pull uses a stream interface over HTTP (1704518)

v0.2.1 (2020-06-29)

Bug Fixes

  • dsync: Don't call the finalize hook more than once (e0b01c8)
  • dsync pull: send metadata when doing dync getDagInfo (f42b963)

v0.2.0 (2019-09-04)

Overhauled Dsync with new API, P2P support, Push & Pull hooks

We've completely reworked dsync to make the API easier to work with, and add support for p2p as a dsync transport!

This new API includes configurable hooks integrated into the lifecycle of push & pulls. Check out ExampleNew in dag/dsync/dsync_test.go for an annotated overview.

We're using this new dsync work as the basis for "remotes" in qri, which makes for a nice production-grade example.

Bug Fixes

  • dsync: set RequireAllBlocks properly from config, add logging (eb315be)
  • dsync meta: fix url encoding of meta (7fe112d)
  • vet: fix go vet errors (7835ec5)
  • NewLocalNodeGetter lets us fetch blocks from local repo only (8a6c24c)

Code Refactoring

  • dsync: overhaul dsync API around push/pull & transfer (c3af21d)

Features

  • dsync: add pinning on push completion (7928c15)
  • dsync: associate key-value metadata with a push (184c152)
  • dsync: initial dsync over a libp2p connection (c45ec51)
  • dsync plugin: initial support for dsync as a plugin (ba579df)
  • dsync remove: added hooks, remove, and meta params to dsync (7d1e921)
  • p2p: initial support for dsync pushing over libp2p (5c0afa9)

BREAKING CHANGES

  • dsync: api is completely overhauled dependants will need to refactor

(2019-06-03)

This is the first proper release of dag. In preparation for go 1.13, in which go.mod files and go modules are the primary way to handle go dependencies, we are going to do an official release of all our modules. This will be version v0.1.0 of dag.

Bug Fixes

  • dag: Constructor for dag.NodeGetter from a Core API (ab5ed7d)
  • dag Fetch: return early if zero blocks are required for fetch (ef7c42b)
  • dsync: fixes for parallelism in dsync (c748540)
  • Fetch Do: fetch all the blocks in the manifest, do not diff (8775080)
  • InfoStore caching: cache dag.Info when a Receivers receiver completes (8a5c962)
  • subDAGGenerator: fix bug that returned empty Info when index was a leaf node (a1f31b0)

Features

  • dag, dsync: initial implementations (7bc921c)
  • dag.Info: add method AddLabel to add a label to a dag (e24a51c)
  • dsync http: support fetching over HTTP (6c715a6)
  • fetch: fetch DAG from a remote (24c95f7)
  • InfoStore: intial InfoStore implementation (5a4ce3e)
  • ipfs_core_http: implement skeletion for doing bsync over IPFS HTTP API (292e80c)
  • Manifest: add IDIndex that takes an id and returns the node index (b116b61)
  • SubDAG: given a manifest and an id, get the manifest of the DAG with root id (29e6b5b)