Releases: octokit/octokit.net
v0.20 - Probably Australian
Features
The big focus for this release is pagination support. This lets the caller
control how much data to retrieve for GetAll*
endpoints throughout Octokit.
This was a team effort to apply this across the entire codebase, with
contributions from @dampir, @devkhan, @prayankmathur, @samthedev and @shiftkey.
For more information about how to use pagination in your projects refer to the
documentation: http://octokitnet.readthedocs.io/en/latest/extensibility/#pagination
- Add Migrations preview API - #1141 via @devkhan
- Add Issue Lock/Unlock functionality - #1185 via @prayankmathur
- Added Commit Reference SHA-1 API - #1195 via @ryangribble
- Add additional parameters to
SearchIssuesRequest
- #1228 via @ryangribble - Add
Importer
property to Meta endpoint - #1235 via @ryangribble - Raise HTTP 451 exception when repository has DMCA notice - #1239 via @devkhan
- Add Merge and Squash preview API - #1245 via @Sarmad93
- Add additional methods to
IEventsClient
- #1288 via @drasticactions - Add Organization Permissions preview API - #1342 via @ryangribble
- Add GPG Keys preview API - #1343 via @alfhenrik
Fixes
- Renamed
IUserKeysClient.GetAll()
toIUserKeysClient.GetAllForCurrent()
- #1139 via @M-Zuber - Add
ItemStateFilter
enum to differentiate between search and list endpoints - #1140 via @prayankmathur RepositoriesClient.GetAllPublic()
fails for Enterprise instanes due to URI structure - #1204 via @ryangribbleConfigureAwait(false)
usages added, eliminating deadlocks - #1248 via @shiftkey- Renamed
CompareResult.MergedBaseCommit
to fix serialization issue - #1265 via @kivancmuslu - Activity Feed now returns issues and repository events - #1288 via @drasticactions
- Add
Repository
property toIssue
response - #1292 via @M-Zuber SearchCodeRequest
now supports searching without specifying a term - #1338 via @dsplaisted- Add required Permission parameter to team management APIs - #1347 via @ryangribble
- Add
ClosedBy
property toIssue
- #1353 via @maddin2016
Other
- Deleting now-obsolete code - #1224 via @M-Zuber
- Centralize and cleanup the
Uri
s created in Octokit - #1287, #1290 via @dampir - Updated documentation links - #1289 via @radu-matei, #1250 via @samthedev
Breaking Changes
IUserKeysClient.GetAll()
was named incorrectly when it was originally implemented
and only works for the current user's keys. Update all usages toGetAllForCurrent()
.CompareResult.MergedBaseCommit
was never deserialized correctly, and has
been marked as obsolete. You should useCompareResult.MergeBaseCommit
instead (note the lack of ad
).IEventsClient.GetAllForRepository
was incorrectly retrieving issue
events before this release. Use the newIEventsClient.GetAllIssuesForRepository
method if you still require issues, or continue to useIEventsClient.GetAllForRepository
if you require all repository events.IUsersClient
has a property namedKeys
which has been renamed in the
GitHub API documentation - Octokit has added the nameGitSshKey
to
reflect this change, andKeys
will be removed in a later release.ItemStateFilter
has been introduced to separate it from the search APIs, which still useItemState
. This affectsIssueRequest.State
,PullRequestRequest.State
andMilestoneRequest.State
. You'll need to rename any enum usages fromItemState
toItemStateFilter
.
v0.19 - Identifying Types
Features
- Add
GetLatest
endpoint for Releases API - #975 via @chenjiaming93 - Add Enterprise License and Organization APIs - #1073 via @ryangribble
- Add Locked property to
PullRequest
- #1089 via @M-Zuber - Add Enterprise Search Indexing API - #1095 via @ryangribble
- Add support for
Visibility
andAffiliation
to repository search - #1096, #1132 via @Sarmad93, @AlexP11223 - Add Enterprise LDAP API - #1099 via @ryangribble
- Add
CreateBranch
extension methods to IReferencesClient - #1103 via @M-Zuber - Additional Enterprise methods on User Administration Client - #1108 via @ryangribble
- Complete
UserKeysClient
API - #1112 via @ryangribble RepositoryContentsClient
create, update and delete actions now specify branch - #1093 via @M-Zuber
Fixes
StatisticsClient
should not clobber /api/v3/ in path - #1085 via @shiftkey- Fix JSON deserialization of string containing hyphens to List property - #1094 via @ryangribble
- Incorrect reference passed to
RepositoryContentsClient.GetArchive
- #1113 via @michael-kokorin
Other
- Add failing integration test for Issue Search API - #1083 via @hahmed
- Add integration tests for
IReleasesClient.GetLatest
- #1090 via @M-Zuber - Remove extraneous Bcl .targets reference - #1100 via @shana
- Add proper syntax highlighting to exploring-pull-requests.md - #1117 via @tiesmaster
- Fix issue with optional parameters in .\script\configure-integration-tests - #1118 via @Anubhav10
- Update Issue creation sample code - #1131 via @AlexP11223
IJsonSerializer
not used insideConnection
- #1133 via @devkhan
Breaking Changes
ISshKeysClient
has a number of methods which at the time should have been
implemented in IUserKeysClient
- these methods are marked as obsolete and will
be removed in a future release:
ISshKeysClient.Get(int id)
ISshKeysClient.GetAll(string user)
ISshKeysClient.GetAllForCurrent()
ISshKeysClient.Create(SshKeyUpdate key)
ISshKeysClient.Update(int id, SshKeyUpdate key)
ISshKeysClient.Delete(int id)
v0.18 - Bringing The Thunder
- New: support for User Administration API (GitHub Enterprise) - #1068 via @paladique
- New: support for Admin Stats API (GitHub Enterprise) - - #1049 via @ryangribble
- New: support for Repository Pages API - #1061 via @M-Zuber
- New: get stargazer creation timestamps - #1060 via @daveaglick
- New: support for Protected Branches API - #996 via @ryangribble
- New: support for creating Personal Access Tokens - #990 via @alfhenrik
- Fixed:
Milestone
property added toPullRequest
response - #1075 via @Eilon - Fixed: Add member role filter to
OrganizationMembersClient.GetAll()
- #1072 via @ryangribble - Fixed:
Repository.Content.GetAllContents
now support the root of the repository - #1064 via @naveensrinivasan, @shiftkey - Fixed: added
Id
andLocked
toIssue
, addedCommitUrl
toIssueEvent
- #1039 via @gabrielweyer - Fixed: additional fields on
Release
andReleaseAsset
- #1009 via @gabrielweyer - Fixed:
ApiException
now includes JSON payload when.ToString()
- #974 via @asizikov
Breaking Changes:
As part of reaching 1.0 we went through to audit the current implementation
and identify areas that didn't align with our conventions. For this release,
we're marking the endpoints as [Obsolete]
and indicating the new location.
These will be cleaned up in the next release:
IGitHubClient.Notifications
->IGitHubClient.Activity.Notifications
- #1019 via @M-ZuberIGitHubClient.Repository.CommitStatus
->IGitHubClient.Repository.Status
- #1043 via @RobPethickIGitHubClient.Repository.Commits
->IGitHubClient.Repository.Commit
- #1057 via @M-ZuberIGitHubClient.Repository.RepoCollaborators
->IGitHubClient.Repository.Collaborator
- #1040 via @M-ZuberIGitHubClient.Repository.RepositoryComments
->IGitHubClient.Repository.Comment
- #1044 via @M-ZuberIGitHubClient.Release
->IGitHubClient.Repository.Release
- #1058 via @RobPethickIGitHubClient.GitDatabase
->IGitHubClient.Git
- #1048 via @RobPethick
Other breaking changes:
- a public
ApiExtensions.Get<T>
extension method was causing a bunch of
tests to be written in a confusing way. This has been ported to an interface
method onIApiConnection
but hopefully you're not referencing this method
externally - see #1063 for more information. IRepositoryContentsClient.GetArchiveLink
is no longer correct, as the HTTP
behaviour in Octokit was updated to follow redirects received from the server.
See #986 for the last bits of cleanup.IRepositoryContentsClient.GetAllContents(string owner, string name, string path, string reference)
has been renamed toGetAllContentsByRef(string owner, string name, string path, string reference)
to prevent overlap with methods onIRepositoryContentsClient
which do not
specify a path - and thus look at the root of the repository.IssueEventPayload
has two fields which are never populated from the API -
Assignee
andLabel
- these are now removed. You should use
Issue.Assignee
andIssue.Labels
instead. See #1039 for more details.PullRequest.MergeCommitSha
is marked as obsolete by the GitHub API - we
are cleaning up the behaviour for determining whether a PR has been
merged in #997 - see the PR for more information.IAuthorizationsClient.RevokeAllApplicationAuthentications
is no longer
available through the GitHub API - this will be removed in the next
release.
Shout outs
A lot of extra work went into this release, and I wanted to thank those people
who helped out - without their efforts we wouldn't be at this point:
- @naveensrinivasan - for helping set up our Travis CI builds to test this on
Mono - see #995 for the details - @hahmed - for contributing a bunch of documentation around the Octokit search
APIs - see #955, #954 and #951 - @JakesCode - for clarifying some documentation after he reported an issue - #1054
- @ryangribble - for helping get our GitHub Enterprise testing off the ground - #987
- @naveensrinivasan - for catching and addressing an issue with our LINQPad snippets - #987
Octokit.net v0.17
- New:
NewRepositoryWebHook
helper class useful for creating web hooks - #917 via @alfhenrik - New: Overloads to the
GetArchive
method ofRepositoryContentsClient
that accept a timeout - #918 via @WillsB - Improved: Added
EventsUrl
toIssue
- #901 via @alfhenrik - Improved: Added
Committer
andAuthor
to theGitHubCommit
object - #903 via @WillsB - Improved: Made
EncodedContent
property ofRepositoryContent
public - #861 via @naveensrinivasan - Improved: Added ability to create deploy keys that are read only and can only be used to read repository contents and not write to them - #915 via @haacked
- Improved: Added
Content
property toNewTreeItem
to allow specifying content for a tree - #915 via @haacked - Improved: Added
Description
property toNewTeam
to allow specifying a description for a team - #915 via @haacked - Improved: Added
Description
property toOrganizationUpdate
to allow specifying a description for an organization - #915 via @haacked - Improved: Added
Before
property toNotificationsRequest
to find notifications updated before a specific time - #915 via @haacked - Improved: Renamed
SignatureResponse
toCommitter
and replacedCommitEntity
withCommitter
- #916 via @haacked - Improved: Added URLs with more information to the
PrivateRepositoryQuotaExceededException
- #929 via @elbaloo - Improved: The
Merge
method ofPullRequestsClient
now throws more specific exceptions when pull request is not mergeable - #976 via @elbaloo and @shiftkey - Fixed: Bug that prevented specifying a commit message for pull request merges - #915 via @haacked
- Fixed: Added
System
to required framework assemblies for thenet45
NuGet package - #919 via @adamralph - Fixed: Change the
HasIssues
property ofNewRepository
to be a nullable boolean because it's optional - #942 via @alfhenrik - Fixed: Bug that caused downloading release assets to fail because it didn't handle the
application/octet-stream
content type properly - #943 via @naveensrinivasan - Fixed: JSON serialization bug with unicode characters - via ##972 @naveensrinivasan
Breaking Changes:
NewDeployment
constructor requires a ref as this is required for the API. It no longer has a default constructor.NewDeploymentStatus
constructor requires aDeploymentState
as this is required for the API. It no longer has a default constructor.- The
Name
property ofNewTeam
is now read only. It is specified via the constructor. - Renamed
SignatureResponse
toCommitter
and removesCommitEntity
, replacing it withCommitter
. - Changed the type of
HasIssues
property ofNewRepository
to be nullable.
v0.16 - ironic ties
- New: Implemented
GetMetadata
method ofIMiscellaneousClient
to retrieve information from the Meta endpoint -#892 via @haacked - Improved: Add missing
ClosedAt
property toMilestone
response - #890 via @geek0r - Fixed:
NullReferenceException
when retrieving contributors for an empty repository - #897 via @adamralph - Fixed: Bug that prevented release uploads and will unblock the entire F# ecosystem - #895 via @naveensrinivasan
v0.15 - Bearded Hijinks
- New:
IRepositoryContentsClient.GetAllContents
now has an overload to support specifying a reference - #730 via @goalie7960 - New: Support for retrieving rate limit information from
IMiscellaneousClient
- #848 via @Red-Folder - New: Use
GitHubClient.GetLastApiInfo()
to get API information for previous request - #855 via @Red-Folder, @khellang - New:
PreviousFileName
returned to show renamed files in commit - #871 via @CorinaCiocanea - Improved:
CommentUrl
returned onIssue
response - #884 via @naveensrinivasan - Improved: Issue and Code Search now accepts multiple repositories - #835 via @shiftkey
- Improved: Search now accepts a range of dates - #857 via @ChrisMissal
- Improved: Documentation on
Issue
response - #876 via @Eilon - Improved: Code Search now accepts
FileName
parameter - #864 via @fffej - Fixed:
GetQueuedContent
should return empty response for204 No Content
, instead of throwing - #862 via @haacked - Fixed:
TeamClient.AddMembership
sends correct parameter to server - #856 via @davidalpert - Obsolete:
Authorization
endpoint which does not require fingerprint - #878 via @niik
Breaking Changes:
- #835 has changed the
Repos
property forSearchIssuesRequest
andSearchCodeRequest
are now of typeRepositoryCollection
so that multiple repositories can be searched. - The workarounds removed in #878 were added initially to support transitioning, but now
we enforce the use of a fingerprint. See https://developer.github.com/v3/oauth_authorizations/
for more details.
v0.14 - Jet Lag
- New: Repository redirects are supported natively - #808 via @darrelmiller, @shiftkey
- Fixed: Support for searching repositories without a search term - #828 via @alexandrugyori
v0.13 - Doof Wagon
- Fixed: Added some missing Organization Teams methods - #795 via @phantomtypist, @shiftkey
v0.12 - The Webzone™
- New: Added support for repository hooks and forks - #776 via @kristianhald, @johnduhart and @AndyCross
- Fixed: Merging a PR should permit specifying a SHA - #805 via @alfhenrik
v0.11 - Sled Dogs
New in 0.11.0 (released 2015/05/10)
- New: Added overload to
IRepositoryClient.GetAllPublic
specifying asince
parameter - #774 via @alfhenrik - New: Added
IGistsClient.GetAllCommits
andIGistsClient.GetAllForks
implementations - #542 via @haagenson, #794 via @shiftkey - New: Added
IRepositoryContentsClient.GetArchiveLink
for getting archived code - #765 via @alfhenrik - Fixed:
PullRequestFile
properties were not serialized correctly - #789 via @thedillonb - Fixed: Allow to download zip-attachments - #792 via @csware