Repository service:
ListLanguages : Allows a user to list the languages for a repository
Activity service:
ListStarred : Allows a user to list the starred repositories for a user
This provides the structs needed to unmarshal the "old-style" post
receive hooks that are sent for push events. Because the formats
differ in sometimes subtle ways from the rest of the API, some types are
duplicated. I suspect we may also need to duplicate the Repository
type at some point, since there are some differences there as well. For
now this is just using the normal Repository type.
Thanks to both @wlynch92 and @imjasonh who kept pushing on this and
provided the original patches that this is based on.
Added a timestamp struct to handle different incoming time formats from
GitHub. Only modified the repo struct to reflect this new time struct
for now since it is currently the only location I am currently aware of
where this is an issue.
Issue: #1
The main purpose of adding this (aside from simply implementing the full
GitHub API) is to establish the basic Commit type, so that we can build
around it for things like Events (see #4) and WebHooks (see #20).
- complete the rename from TreesService to GitService. For example,
renaming Get to GetTree, and Create to CreateTree.
- rename GitTree to TreeEntry. I really have no idea why GitHub chose
to use the field name "tree" for this, since these aren't necessarily
trees in the git sense. Looking at it more closely, these are really
just the entries within a tree, hence the rename.
- simplify several tests and shuffle some things for consistency with
the rest of the library
Because the reset date is expressed as a Unix timestamp (rather than an
ISO 8601 timstamp), we can't directly unmarshal the JSON response.
Instead we have to do a little weird indirection to unmarshal it as an
int first, and then convert it into a proper Time object.
Since the library has received external contributions, Google is no
longer the sole copyright holder. Update the boilerplate at the top of
each file to reflect that, and add AUTHORS and CONTRIBUTORS files to
track this information.
This includes most API methods on pull requests (with the exception of
listing commits and the merge functions), as well as all of the methods
for pull request comments. (Fixes#13)
This also fixes a few oversights in the issues API.
This adds basic methods for working with issues, assignees, and issue
comments. Issue events, labels, and milestones are not included in this
commit. (Fixes#7)
Also properly return a 204 response on methods that don't include a
response body. This has no actual effect on current tests, but more
accurately reflects what the GitHub API really returns and might make a
difference in the future.
if we have an error reading the body of an API error response, still
return an ErrorResposne with the original response struct. Simply
returning a string stating that we couldn't read the response body
doesn't give the caller anything actionable to work with or attempt to
process.