Skip to content

Releases: mirage/ocaml-github

CLI improvements, remove camlp4, more API coverage for status and contributions

26 Jul 17:09

Choose a tag to compare

  • Add new_status_context and status_context fields (#88)
  • Add setting the jar cookie by the GH_COOKIE env var (#100 by @rgrinberg)
  • Remove camlp4 as a build time dependency (#99, #104, #106 by @rgrinberg)
  • Add Windows tests via Appveyor (#98)
  • Add jar 'local' subcommand for printing local cookies (#111 by @rgrinberg)
  • Add Repo.contributor_stats for contributor statistics (#114 by @sevenEng)
  • Add stats_contributor type (#114 by @sevenEng)
  • Add stats_contributors type (#114 by @sevenEng)
  • Add contribution_week type
  • Fix Repo.get_tags_and_times exception when repository has no tags (#113)
  • Change Github_core.Make to accept an Env module making the library
    Mirage compatible by moving a Unix.getenv invocation into a parameter (#93)
  • Add contributor and contributors types (#112)
  • Add Repo.contributors to list contributors to a repository (#112)
  • Register automatically a Message exception printer (#116)
  • Fix git jar help strings to match the command reality.
  • Improve git jar create --help manual page.
  • Add git-gist create [--public] --descr <descr> <file1> <fileN> to
    upload new gists.

Stable LTS API

01 Jun 20:44

Choose a tag to compare

1.0.0 included many breaking changes and major new features. For a full list of changes, see the file CHANGES in the repository or distribution.

atdgen >=1.5.0 and yojson >=1.2.0 are now required for their tag_field support. cohttp >=0.17.0 is now required for its Link header support.

Many functions now return an 'a Response.t Monad.t instead of an 'a Monad.t. This is a future-proofing mechanism to enable progressive disclosure of API call metadata such as headers, redirects, endpoint polling, and so on.

Many functions now return a 'a Stream.t which lazily encapsulates a series of API requests when collections may be too large to fit into a single response (#46).

Two-factor authentication is now supported.

Monad.map, Monad.(>|=), and Monad.embed : 'a Lwt.t -> 'a Monad.t were added. Monad.(>>~) was added to bind and project an 'a Response.t Monad.t value.

git-jar save was removed after the Authorizations API response changes of 2015-04-20. git-jar make now requires a cookie name and defaults to that for the token note. git-jar revoke now accepts either a cookie name or a token ID. A git-jar token file permissions security vulnerability was fixed.

A Github.Message exception was added and is now raised when GitHub returns an API error. API.string_of_message was added for human consumption of those structured errors.

A number of rate limit query (Rate_limit) and caching (API.get_rate*) features were added.

The Search module was added in order to access GitHub's repository search API. The git-search jar command was added to expose this to users.

The Event module was added which gives users easy access to a variety of event sources. A new jar command, git-list-events, has been added to print events for a repo. A new test binary, parse_events, has been added which downloads and attempts to parse archived event data.

Several bugs with issue listing (#49, #53) were fixed and a new jar command, git-list-issues, was introduced.

A command line tool for gist manipulation was added.

Add bindings for organisation teams and repositories

19 Dec 00:17

Choose a tag to compare

  • Add bindings for organisation teams and repositories (#45).
  • Use Bytes instead of String for future safe-string support.
  • Use the Cohttp 0.14.0 API in the test cases and make them optional
    (activate with --enable-tests during configure).
  • Add a --json option to git-list-releases so that it can emit
    the release information in JSON rather than Markdown.

Add repository branch query functions

28 Nov 11:07

Choose a tag to compare

  • Add repo_branches and branches query functions (#44 from Jeff Hammerbacher).
  • Improve opam 1.2 metadata.

Improved log error messages

09 Nov 22:12

Choose a tag to compare

  • Better log error messages (#39).
  • Tweak Makefile to build JavaScript version by default if js_of_ocaml is installed.

Fix support for draft Releases

03 Nov 14:58

Choose a tag to compare

Mark published_at and created_at fields in Releases to be optional, as they may not be set in the case of draft tags.

Add Gist bindings and JavaScript compilation support

02 Nov 23:27

Choose a tag to compare

  • Add Jar_cli module for use by applications that use the Git Jar (#34).
  • Add bindings to the Gist APIs for storing text fragments (#36).
  • Add a JavaScript port, using Cohttp and js_of_ocaml (#36).
  • Build ocamldoc HTML documentation by default.

Add git-create-release

10 Aug 17:07

Choose a tag to compare

  • Fix pull_action_type synchronize tag typo (#33 from Philipp Gesang).
  • Add a git create-release to create a GitHub release, including binary assets
    (#32 from Markus Mottl).

Fix optional schema field parsing

08 May 09:18

Choose a tag to compare

  • The master_branch field in the repo is actually optional, to fix the schema to reflect this.

Add `git-list-releases` binary

26 Apr 09:02

Choose a tag to compare

This sorts and displays a list of repository releases in chronological order.