Datakit Versions Save

Connect processes into powerful data pipelines with a simple git-like filesystem interface

v1.0.0

4 years ago

CHANGES:

  • format source code using ocamlformat 0.10 and the conventional profile (@avsm).
  • support uri>=3.0.0 (@avsm)

v0.12.4

5 years ago

CHANGES:

  • ci: fix io-page-unix usage in tests (@avsm)
  • ci: support Cstruct 4.0.0 interface with optional sexp (@avsm)

v0.12.3

5 years ago

CHANGES:

  • ci: Add missing dependency on Base64 and port to >=3.0.0 interface (#642 @avsm)
  • ci: Adapt to crunch.3.0.0 interface (#641 @hannesm)
  • ci: Use non-deprecated Yojson types in 1.7.0 and higher (#642 @avsm)

0.12.2

5 years ago

CHANGES:

  • Support the latest GitHub and Atd bindings (>=2.0.0) (@avsm)
  • Support the Uri 2.0.0+ API (@avsm)
  • Port build to Dune from Jbuilder (@avsm).
  • Remove use of deprecated Tyxml pcdata function in favour of txt (@avsm)
  • Add watermarking of versions in the build system (@avsm)
  • Remove topkg build targets in favour of using dune-release (@avsm)

0.12.1

6 years ago

0.12.1 (2018-01-23)

  • Upgrade to Tls >= 0.9.0 and Cohttp-lwt-unix >= 1.0.0 (#615, @jpdeplaix)

0.12.0

6 years ago

0.12.0 (2017-11-21)

  • all: update to latest version of alcotest, conduit, session, ocaml-github, ocaml-github-hooks and cohttp (#612, @samoht and @djs55)

  • github: make User.t abstract (#594, @samoht)

  • github: turn Webhook.events into a promise (#598, @samoht)

  • github: add a Comment module to model PR and issue comments (#595, @samoht)

  • github: change PR.owner to be of type User.t (#599, @samoht)

  • github-bridge: add the ability to sync PR's coments (#595, @samoht)

  • go-client: handle large values when reading / writing in 9db (#292, @simonferquel)

  • go-client: fix the handling of defaults over upgrade (#605, @djs55)

  • go-client: improve transaction API (#606, @djs55)

0.11.0

6 years ago

0.11.0 (2017-07-07)

The main change in this release is the addition of datakit-client-git which implements the DataKit API on top of a normal Git repository. This means that the deployment of DataKit tools is now much simpler as they do not need a running DataKit server anymore. The client and server packages have been renamed to make the use of 9p more explicit. Support for more transport is planned, including gRPC and Cap-n-proto.

Go bindings

  • Go: Separate user config from defaults in the database (#523, @djs55)
  • Go: add List to list files in snapshots (#578, @ebriney)

datakit-server, datakit-client

  • client/server: split the libraires between core API and 9p transport.

    There is now:

    • datakit-client: signature for client API + Path library
    • datakit-server: implementation of the VFS on top of Irmin
    • datakit-client-9p: implementation of the API using 9p as transport
    • datakit-server-9p: expose the Irmin VFS as the Datakit API; server-side implementation of the API using 9p as transport

    The tests are split as well, so all the client/server tests can be re-used with a different transport mechanism. (#551, @samoht)

  • client: add a top-level Datakit_client module namespace: Datakit_S.CLIENT becomes Datakit_client.S and Datakit_path becomes Datakit_client.Path (#558, @samoht)

  • client: remove rename API calls (#563, @samoht)

datakit-client-9p

datakit-client-9p is now the new name for the previously named datakit-client. That package contains the 9p client bindings to the DataKit API. More clients to come.

  • 9p client: DK.commit now fails if the commit does not exists (instead of failing later when the commit is used) (#565, @samoht)

datakit-client-git

  • git client: add client bindings using Git directly, without the need for a DataKit server (#559, @samoht)

datakit

  • datakit: move all modules under the Datakit namespace. Expose Datakit.Blob, Datakit.Branch, Datakit.Hash, Datakit.Metadata, Datakit.Path forming the base types for DataKit stores. Also expose Datakit.Make (and Datakit.Make_git) to build a DataKit store from an Irmin store (or from a Irmin_git store). Finally, rename the functor to expose a DataKit store into a virtual file-system into Datakit.VFS (#583, @samoht)
  • datakit: use irmin 1.2.0 and git 1.11.0 (#556, @samoht)
  • datakit: use mtime 1.0 (#560, @samoht)
  • datakit: stop using camlzip, switch to decompress (#570, @samoht)

datakit-github

  • github: expose PR's owner (#587, @samoht)

datakit-github-bridge

  • github bridge: look at the GH token in various places (#577, @samoht)

  • github bridge: add the ability to monitor default repositories using the CLI (#577, @samoht)

  • github bridge: allow to use git://<path> urls to "connect" to a local Git repo instead of a 9p DataKit server (#577, @samoht). For instance:

    $ datakit-bridge-github -r samoht/test -d git:///tmp/foo --resync 60
    

    will download all the issues and PR into a Git repository /tmp/foo and will keep it up-to-date when changes occur either on GitHub (with a full resync every 60s) or locally by commiting updates in the /tmp/foo Git repository.

datakit-ci

  • use redis 0.3.5 (#562, #567, @samoht)

0.10.1

7 years ago

0.10.1 (2017-05-09)

all

  • Update to support protocol-9p and protocol-9p-unix 0.11.0 (#547, #549 by @avsm, @samoht)
  • Update to support lwt 3.0.0 (#547, #549 by @avsm, @samoht)

0.10.0

7 years ago

0.10.0 (2017-04-28)

DataKit has a new home: the Moby Project!

all

  • Rename docker/datakit into moby/datakit (#528, @talex5)
  • The Docker images on Hub have moved to datakit: Use docker run datakit/db to run the database (see README.md)
  • Use jbuilder to build the project. Total project build time pass from ~1min to less than 10s and identifed a few issues with linking local/global names. For instance Datakit_conduit were depending on datakit-server and it was not clear which version it was linked with (#532, @samoht)

datakit-ci

  • ci: record history of builds (#489, @talex5)
  • ci: show queue lengths for resource pools in web UI (#500, @talex5)
  • ci: allow separating stdout and stderr in CI_process (#502, @talex5)
  • ci: remove the iframe with the logs (#501, @samoht)
  • ci: include test name in links from GitHub (#508, @talex5)
  • ci: fix escaping in Rebuild button link (#515, @talex5)
  • ci: turn off switch when build function returns (#518, @talex5)
  • ci: make required GitHub scopes configurable (#534, @talex5)
  • ci: when auto-cloning, accept the SSH key automatically (#536, @talex5)

datakit

  • datakit: Fix escaping in git push (#503, @talex5)
  • datakit: Batch up git pushes (#505, @talex5)
  • datakit: do not expose an HTTP server anymore (#524, @samoht)
  • datakit: update to irmin.1.1.0, cmdliner.1.0, hvsock.0.18 (#529, @samoht)

datakit-github

  • github: don't ignore errors from DataKit (#513, @talex5)
  • github: raise exceptions instead of logging errors (#526, @talex5)

datakit-bridge-github

  • bridge-github: read secrets from /run/secrets/github-jar (#519, @talex5)
  • bridge-github: remove the VFS and simplify server startup (#535, @samoht)

datakit-bridge-local-git

  • bridge-local-git: update to irmin 1.1.0 (#531, @samoht)

0.9.0

7 years ago

0.9.0 (2017-02-03)

datakit-local-git (new)

  • bridge-local-git: add local git bridge (#458, @talex5)

Normally, we use datakit-github to monitor the state of a remote repository on GitHub and use that as the input to the CI. When getting started with DataKitCI it is more convenient to be able to monitor a local Git repository.

datakit-bridge-github (new)

  • bridge-github: split the datakit-github package into 2: datakit-github (see next section) and datakit-bridge-github which match datakit-bridge-local-git (#480, @samoht)
  • bridge-github: do not commit empty changes (#397, @samoht)
  • bridge-github: use an unlimited number of fids and walk in parallel to speeds-up init time massively (#401, @samoht)
  • bridge-github: enable Prometheus monitoring (#452, @talex5)

datakit-github

  • github: standalone library which just defines Datakit_github, an abstract representation of the GitHub types and API (#480, @samoht)

datakit-ci

  • ci: split prometheus into its own opam package (#438, @talex5 and @avsm)
  • ci: add Redis-backed web sessions (#393, @talex5)
  • ci: don't copy command output to stdout (#394, @talex5)
  • ci: fetch each GitHub user's security information at login (#398, @talex5)
  • ci: refactor the API to use datakit-gitub to manipulate GitHub metadaa. This is a major breaking API change (#384, @samoht)
  • ci: report more metrics: number of tags, branches and open PRs (#408, @talex5)
  • ci: fix race if two people request a rebuild at once (#416, @talex5)
  • ci: fix fetching of tag objects (#417, @talex5)
  • ci: change the url scheme for PRs and references (#411, @samoht)
  • ci: improve form validation (#420, @talex5)
  • ci: migrate self-ci from docker-compose to docker-cloud (#421, @talex5)
  • ci: add support for getting X.509 certificates via certbot (#422, @talex5)
  • ci: add web UI for configuring GitHub authentication (#424, @talex5)
  • ci: allow non-TLS deployments (#425, @talex5)
  • ci: bound the size of Term.wait_for_all status messages (#428, @avsm)
  • ci: clone missing Git repositories automatically (#429, @talex5)
  • ci: expose more functions on Target.v (#430, @avsm)
  • ci: don't require a compare function for builders (#435, @talex5)
  • ci: separate rebuilding from cache lookups (#436, @talex5)
  • ci: cope with targets being deleted while we're updating their status (#443, @talex5)
  • ci: add live streaming of logs (#449, @talex5)
  • ci: allow reporting Prometheus metrics on a separate port (#452, @talex5)
  • ci: include the PR's title in the PR status page
  • ci: allow cancelling Docker builds (#462, @talex5)
  • ci: add Docker.run (#462, @talex5)
  • ci: evaluate terms in parallel (#464, @talex5)
  • ci: add ANSI escape sequence parser for coloured logs (#466, @talex5)

datakit-client

  • client: add client-side caching (#400, @samoht)
  • client: improve the memory representation of paths (#399, @samoht)
  • client: replace error strings with variants (#470, @talex5)