Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
4.4.1 (2022-01-26)
Fix older versions of github can be co-installed with github-data (@dra27 #261)
Fix github transitively depends on jsoo (@tmcgilchrist #262)
4.4.0 (2021-06-21)
Fixes to odoc warnings and cohttp dependencies (@Aaylor #244)
Support cohttp 4.0. (@tmcgilchrist #257)
Support for 4.12 and fixing recent compiler warnings (@tmcgilchrist #246 #252 and @emillon #250 #247 #251)
Add a new package github-data which contains just the serialisation logic without a dependency on the web stack (#248 @emillon)
Add Github checks API support (#249 @tmcgilchrist)
Label field missing in branch refs for ghost (@dra27 and @tmcgilchrist #256)
Get all commits for user/repo (@Stevendeo #245)
4.3.2 (2020-09-21)
Fix authentication on POST/PATCH/PUT requests. (#242 @Aaylor)
Add support for statistics endpoint. (#240 @tmcgilchrist)
Add support for listing organization's repository. (#239 @tmcgilchrist)
Remove the dependency lambda-term, which was only used to read password, for the package github-unix. (#238 @emillon)
Add the field committer in the datatype git_commit. (#235 @Aaylor)
4.3.1 (2020-08-18)
Fix a bug introduced by #228, by adding a default value when user_type is not defined (#232 @Aaylor)
Do not print errors on stderr. (#234 @emillon)
4.3.0 (2020-07-20)
Remove deprecated authentication method as GitHub has removed support for it (#230 @Aaylor)
Reintroduce user_type to distinguish organisations and users (#228 @Aaylor)
4.2.0 (2019-06-17)
Add repository permissions support (#226 @Aaylor)
Regenerate opam files automatically via dune-project (#227 @avsm)
4.1.0 (2019-06-03)
Add the interface for /user/orgs (#222 @Aaylor)
Switch to dune-release instead of topkg (#224 @avsm)
Do not use deprecated Yojson.Safe.json (#224 @avsm)
Support lambda-term/zed 2.0.0 interfaces (#224 @avsm)
Use wrapped js_of_ocaml 3.4.0 interfaces (@avsm)
4.0.0 (2018-12-11)
Port to latest Atd 2.0.0 interfaces (#218 by @mjambon and @avsm)
Port build system to Dune (@avsm)
Properly expose the GitHub JavaScript library and fix dependencies (#216 by @samoht)
Add pull.merge_commit_sha (#217 from @AltGr)
Convert local opam files to the 2.0 format. (@avsm)
3.1.0 (2018-02-14)
Make contributor stats author field nullable (#211, @rvantonder)
Support OCaml 4.06 by enabling -safe-string compatibility (#212, @jpdeplaix)
Add support for repository issue search (#196, @avsm and @samoht)
TLS isn't a hard dependency of githug (#208, @rgrinberg)
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)
3.0.0 (2017-07-03):
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.
2.3.0 (2017-04-13):
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
2.2.0 (2016-12-10):
Add Repo.get_ref (#175 from @samoht)
Add Endpoint.Version.t
Add Stream.since
Add Stream.version
Add Monad.catch
Add Monad.fail
2.1.0 (2016-11-03):
Changes marked with ! are type changes
! push_event_hook_head_commit field added
2.0.3 (2016-09-30):
Changes marked with ! are type changes
! 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
base_label type added (label without the url field)
2.0.2 (2016-09-26):
Changes marked with ! are type changes
! 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.
2.0.1 (2016-09-23):
Changes marked with ! are type changes
! 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.
2.0.0 (2016-09-21):
Changes marked with ! are type changes
! Fix Event.for_repo_issues and rename to Issue.events_for_repo (#107 from @yallop)
update_issue type added
! Change Issue.update to accept update_issue rather than new_issue This allows users to change issue state (open/close).
! event_type now has Repository constructor
! event_type now has All constructor
! event_type now has Unknown fall-back constructor
! event_constr now has Repository constructor
! scope variant now has Unknown fall-back constructor
! issue_sort variant now has Unknown fall-back constructor
! team_permission variant now has Unknown fall-back constructor
! wiki_page_action variant now has Unknown fall-back constructor
! issue_comment_action variant now has Edited constructor
! issue_comment_action variant now has Deleted constructor
! issue_comment_action variant now has Unknown fall-back constructor
! issues_action variant now has Edited constructor
! issues_action variant now has Unknown fall-back constructor
! member_action variant now has Unknown fall-back constructor
! page_build_status variant now has Unknown fall-back constructor
! pull_request_action variant now has Edited constructor
! pull_request_action variant now has Unknown fall-back constructor
! pull_request_review_comment_action variant now has Edited constructor
! pull_request_review_comment_action variant now has Deleted constructor
! pull_request_review_comment_action variant now has Unknown fall-back constructor
! release_action variant now has Unknown fall-back constructor
! watch_action variant now has Unknown fall-back constructor
! status_state variant now has Unknown fall-back constructor
! update_pull_base field added (PR target branch is now updatable)
! URI.repo_issues was removed
! URI.repo_issue was removed
! URI.repo_pulls was removed
! URI.repo_milestones was removed
! URI.repo_contributors_stats was removed
! URI.issue_comments was removed
! URI.issue_comment was removed
! URI.milestone was removed
! Issue.comments signature changed
Add Labels API support (#146 from @dave-tucker)
Add Collaborators API support
Add Emojis API support
Make tls the default recommended dependency instead of OpenSSL
Require atdgen >= 1.10.0 for support
Add HTTP redirect support (Response.redirect(s) and Response.final_resource)
Improve GitHub error reporting (#151)
Add Organization.user_orgs (#130 from @yallop)
Add Hook.parse_event
Add event_hook_constr type for the web hook event variants
Add Repo.create
Add Repo.delete
Add Stream.fold
Add Issue.get
Add Status.get
Add Issue.comments_for_repo
Add Issue.get_comment
Add Issue.update_comment
Add Issue.delete_comment
Add repository_event
Add type Filter.issue_comment_sort
Add Issue.events
push_event_before field added
1.1.0 (2016-06-20):
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.
1.0.0 (2015-06-01):
Changes marked with ! are type changes (not including field additions)
! Monad.bind now accepts a function first and then a Monad.t
! API.{get,post,delete,patch,put} now take optional fail_handlers
! API.{get,post,delete,patch,put} now take optional rate classification
! API.{get,post,delete,patch,put} now return 'a Response.t Monad.t
! URI.authorize now requires ~state argument to protect against CSRF.
! URI.repo_issue ~issue_number argument was renamed to ~num
! URI.issue_comments ~issue_number argument was renamed to ~num
! URI.issue_comment ~commit_id argument was renamed to ~num
! Scope.scope_of_string was renamed Scope.of_string
! Scope.string_of_scope was renamed Scope.to_string
! Scope.scopes_of_string was renamed Scope.list_of_string
! Scope.list_of_string returns a scope list option for unparseable scopes
! Scope.string_of_scopes was renamed Scope.list_to_string
Add API.set_token to bind an access token for subsequent requests.
Declare ocaml-re dependency.
Add anonymous bind operator (>>) to Github.Monad.
Add Github.Token.delete for revoking GitHub authorization tokens.
Add Github_cookie_jar.delete for deleting local token cookies.
Add revoke command to git-jar.
Support GitHub cookie jar names with slashes in.
Change the signature of Github_cookie_jar.init from ... -> unit to ... -> unit Lwt.t.
0.4.3 (2013-01-14):
Add filters and sort order parameters for Issues and Milestones for a repository.
0.4.2 (2012-12-29):
Add a redirect_uri option to URI.authorize, to permit the redirection URL to be parameterizable.
Add User.current_info and User.info to retrieve information about the logged in user, or a public one.
Add Issues.edit to patch an existing issue.
Correct the type of Issues.milestone to be an integer.
Issues.labels is now a string list, instead of a string list option (with the empty list denoting None).
0.4.1 (2012-12-27):
Add Github.Issues.comments to retrieve issue comments, and an issue_comment type in the ATD specification for the returned value.
Add Github.Issues.create_comment to add a new issue comment.
Expose the milestone field for an issue.
Create a default lib_test/config.ml if one doesnt exist (from the template in lib_test/config.ml.in.
0.4.0 (2012-12-25):
Add a git-jar command which provides a convenient command-line interface to list, create and save tokens.
Add a github.unix subpackage which provides a Github_cookie_jar module which saves tokens in ~/.github for other applications to query if they use the Github API.
Complete the auth API, and rename functions slightly for consistency. We now have Token.get_all and Token.get to retrieve auth information, and Token.create for constructing them. The API also includes support for adding notes and URLs, which are stored on the Github side.
0.3.3 (2012-12-18):
Add Repo.info to retrieve repository metadata.
0.3.2 (2012-12-14):
Add ATD descriptions for commits, tags, author info, and repo tags.
Add API calls to retrieve tags, dates and refs.
0.3.1 (2012-10-14):
Support PREFIX during build for installation prefix.
Adapt to uri-1.3.3 interface (which now supports multi-value queries, as per the RFC).