Skip to content

Releases: mirage/ocaml-github

3.1.0

14 Feb 19:44

Choose a tag to compare

3.1.0 (2018-02-14)

Version 3 patch

01 Aug 10:35

Choose a tag to compare

3.0.1 (2017-08-01):

  • Update to work with latest cohttp (#205 from @rgrinberg)
  • Fix atdgen JSON codec generation bug in 3.0.0 (#205)
  • Remove deprecated Hook module (#206)

Port to Jbuilder and split up opam packages

03 Jul 22:20

Choose a tag to compare

Port to Jbuilder (#202 by @rgrinberg @dsheets @samoht). This
splits up the opam packages into three separate ones:

  • github: the github_s, github_core, github_j and github_t modules.
  • github-unix: the Github and Github_cookie_jar modules.
  • github-jsoo: the js_of_ocaml Github_js module.

Tools that depended on github-unix previously will now need to
adjust their opam files to depend on the github-[unix|jsoo]
packages, and should also to rename github.unix to github-unix
and github.js to github-jsoo. However, transitional packages
are available for the older findlib names, so you only need to
immediately rename your opam files for the moment.

  • Minimum supported OCaml version is now 4.03.0 or higher.

Improvements to timeline events and add repo hooks

03 Jul 15:52

Choose a tag to compare

  • Changes marked with ! are type changes
  • ! repo_issue_event has changed the actor type to a linked_user option
    since GitHub sometimes returns a null response.
  • Fix various test cases that were not compiling due to API changes.
  • Add Issue.timeline_events
  • Add Organization.Hook
  • Expose Hook as Repo.Hook and deprecate Hook
  • Add Repo.Hook.parse_event_metadata
  • Add an optional media_type argument to API.get and API.get_stream

Repo.get_ref, caching features, and exception handling

10 Dec 13:24

Choose a tag to compare

  • Add Repo.get_ref (#175 from @samoht)
  • Add Endpoint.Version.t
  • Add Stream.since
  • Add Stream.version
  • Add Monad.catch
  • Add Monad.fail

Add push_event_hook_head_commit field

04 Nov 11:26

Choose a tag to compare

The push_event_hook_head_commit field has been added to web hook delivered push events.

Fix Issue.events label field

02 Oct 17:32

Choose a tag to compare

repo_issue_event_label and repo_issues_event_label have changed type from label option to base_label option as the GitHub APIs for Issue Events and Issue Labels are not consistent with the inclusion of the url field.

Fix Issue.remove_label

26 Sep 18:09

Choose a tag to compare

Issue.remove_label now returns a label list Response.t Monad.t like the other issue label modification functions because GitHub does not treat this DELETE endpoint like others and return 204 No Content. The GitHub docs are wrong on this point (a support ticket has been filed as they have now moved their developer API docs into a closed source repo). Because any previous user of the API would have immediately encountered this exception, this is a patch release.

Work-around a GitHub web hook bug

23 Sep 14:00

Choose a tag to compare

The web_hook_config_content_type field is now optional because GitHub does not appear to byte-wise validate the field and some web hook users (e.g. CircleCI) set a content-type field rather than a content_type field. This is a type-breaking change but all users of the type were already at risk of exceptional failure and so this type change is a bug fix.

More APIs, Improved Robustness

21 Sep 13:55

Choose a tag to compare

2.0 includes Labels API bindings by @dave-tucker (#146), Collaborators API bindings, and Emojis API bindings.

Many variant types were changed to add support for edit and delete events and most variants now have an Unknown of (string * json option) fall-back constructor to future-proof the library against variant extensions by GitHub.

@yallop contributed Organization.user_orgs and fixed Event.for_repo_issues which was then renamed to Issue.events_for_repo.

Issue.update became more flexible with the introduction of the update_issue type which allows each field to be optional.

tls was made the HTTPS dependency instead of ssl and atdgen >= 1.10.0 is now required for its <json untyped> support which is required for the above Unknown fall-back constructors.

HTTP redirect support was added which enables API requests against renamed or moved repositories. Up to 64 redirects are tolerated with each redirect (and whether it was temporary or permanent) available in the Response.t returned from most request-response endpoints.

GitHub error reporting has been improved for errors with type custom.

The Issue comment API was completed, individual combined Statuses are now queryable, and Repo.create and Repo.delete are bound.

Stream.fold was added.