Commit Graph

166 Commits

Author SHA1 Message Date
dependabot-preview[bot]
2b2626be0d Bump System.Reactive from 3.1.0 to 4.3.2 (#2055)
* drop mentions of net45 from core

* Bump System.Reactive from 3.1.0 to 4.3.2

Bumps [System.Reactive](https://github.com/dotnet/reactive) from 3.1.0 to 4.3.2.
- [Release notes](https://github.com/dotnet/reactive/releases)
- [Commits](https://github.com/dotnet/reactive/compare/v3.1.0...rxnet-v4.3.2)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>

* upgrade from net452 to net46 in test projects

* drop netstandard1.1 support

* correct this test reference

* add necessary dependency for test project

* add new dependency needed for integration tests

* upload net462 code coverage

* upgrade environment for validating linqpad examples

* bump linqpad to latest 5.x release

Co-authored-by: Brendan Forster <brendan@github.com>
2020-02-10 06:33:41 -04:00
Brendan Forster
03aa908935 switch to Microsoft.SourceLink.GitHub package to perform linking in build (#2074) 2020-01-28 09:07:20 -04:00
Brendan Forster
e065c86118 strip CoreOnly usages from codebase as they are no longer needed (#2072) 2020-01-28 08:46:10 -04:00
Brendan Forster
d8e6008b1a upgrade sourcelink tools (#2065) 2020-01-27 12:52:58 -04:00
Brendan Forster
8605b8cf76 add .NETFX reference assemblies so that builds can be created without needing Mono for non-Windows platforms (#2064) 2020-01-27 10:57:42 -04:00
Brendan Forster
28892df03d some cleanup of the project (#2063) 2020-01-23 14:51:00 -04:00
Brendan Forster
ae10ba3cab add netstandard2.0 output (#2006) 2019-09-20 11:07:20 -03:00
Brendan Forster
60e60ca384 generated a net46-compatible binary alongside net45 (#2001) 2019-09-17 09:04:02 -03:00
Brendan Forster
ca95d571ed add license metadata to package outputs (#1998) 2019-09-16 21:35:13 -03:00
dependabot-preview[bot]
d482ce90bf Bump SourceLink.Create.GitHub from 2.8.2 to 2.8.3 (#1992)
Bumps [SourceLink.Create.GitHub](https://github.com/ctaggart/SourceLink) from 2.8.2 to 2.8.3.
- [Release notes](https://github.com/ctaggart/SourceLink/releases)
- [Commits](https://github.com/ctaggart/SourceLink/compare/2.8.2...2.8.3)

Signed-off-by: dependabot-preview[bot] <support@dependabot.com>
2019-09-16 10:05:30 -03:00
Clemens Lieb
5e751a6c38 Enable building on linux without project file changes (#1930)
* Introduce 'NoFramework' switch

This enables building via cake on linux without requiring adjustments on
other platforms, fixes #1745

* Revert hardcoding NoFramework in build.sh

* Skip GitVersion query for NoFramework build

This implies that NoFramework is intended for local use only
Accordingly a warning message has been set up in the Lifetime of the Build

* Rename NoFramework switch to CoreOnly

* Skip tool installation and formatting step for CoreOnly builds

* Default CoreOnly to false on windows and true otherwise

* Add CoreOnly switch to build variable output

* Fix 'native' msbuild on windows for both platforms

'native' msbuild invocations do not automatically set CoreOnly according to the platform
they are running on. As such we set CoreOnly to False on Windows, unless CoreOnly has been
specified already.
2019-01-31 15:36:30 +10:00
Ryan Gribble
fb928f68d5 make sure we dont take a runtime dependency on sourcelink (#1822) 2018-06-20 23:01:13 +10:00
Itai Bar-Haim
5ffc96995f Adding initial support for GitHub Apps. (#1738)
* Added authentication using bearer token.

* Added Installation and AccessToken clients.

* Added new clients to Reactive project

* added support for DateTime serialized as FileTime

* added support for StatusEventPayload

* added support for StatusEventPayload

* Added test for StatusEventPayload and fixed serializer to return that event payload type.

* WIP - added ApplicationClient and related Api Urls.

* Continued implementing Installations support.

* Fixing build (WIP)

* fixed build

* added Account property to Installation. prefer nameof(x) over literal "x".

* fixed according to code review.

* fixed build.

* switched Installation ID from int to long.

* added Permissions and Events properties to Installation.

* added documentation to Application and Installation properties in IGitHubClient.

* wip - added tests to new clients

* wip - fix build

* wip - fixed build.

* added InstallationsClient tests.

* added integration test for InstallationsClient.

* changes requested in code review.

* add Get method for App

* Create GitHubApp response model instead of re-using existing Application response model

* add Get method to observable client

* fixed build (both locally and failed test).

* Fixed documentation and added some missing XML docs.

* added DebuggerDisplay to StatusEventPayload

* updated XML docs and added some missing bits. prefer nameof(x) over literal "x".

* Add xml comments to AccessToken response model and use DateTimeOffset rather than DateTime

* Tidy up XmlComments and make consistent across client and observable client and interfaces

* fixup unit tests to independently verify preview header

* Implement GetInstallation method

* revert commits unrelated to GitHubApps - these can be done on a separate PR if required

* this extra authenticator class doesnt appear to be used anywhere

* undo project file change as it doesnt appear to be necessary

* Revert "Merge remote-tracking branch 'remote/GitHubApps' into GitHubApps"

This reverts commit c53cc110b8d807f62fdfeaa7df19e1532d050007, reversing
changes made to 0c9e413d420a4725738644ea5b13af6ec102d456.

* Revert "Revert "Merge remote-tracking branch 'remote/GitHubApps' into GitHubApps""

This reverts commit 02d52b8adf814b6945c60cb59a907a8cd34b1ce7.

* add XmlDoc comments to response models and flesh out installation permissions

* name AcceptHeaders member consistently

* accidentally lost changes to Credentials.cs

* Enhance Intergation test framework to handle GitHubApp settings and discoer tests appropriately
Get code ready for GitHubJWT nuget package but for now just hardcode a JWT in ENV VAR
Add 1 integration test for each method and ensure they are working!

* fixed compiler warnings.

* Added support for Installation=>Id field that arrives in a Pull Request Event payload.

(See the last field in the sample JSON of https://developer.github.com/v3/activity/events/types/#pullrequestevent)

* Change integration test project to netcoreapp2.0 so we can use GitHubJwt nuget package in integration tests

* First cut at some GitHubApp doco

* update mkdocs config

* Moved the Installation property to ActivityPayload, so it's available in all payloads.

This feature is not undocumented, unfortunately, but valid:
https://platform.github.community/t/determining-which-installation-an-event-came-from/539/11

* Split Installation to Installation and InstallationId, and added a comfort method for gaining its AccessToken.

* fixed InstallationId CreateAccessToken to receive IGitHubAppsClient. added (and fixed) docs.

* reverted object-oriented style comfort method and it's docs.

* update all test projects to netcoreapp2.0

* tweak build configs to use 2.0.3 SDK

* also need to update cake frosting build to netcoreapp2.0

* tweak docs some more

* fix convention test failures

* test projects still had some old runtime parts in them!

* travis osx image needs to be at least 10.12 for .NET Core 2.0

* shell script might need the same argument tweak for cake

* more doc tweaks

* Make sure compiler warning output isnt somehow causing Linux and OSX builds to fail

* moar logging for linux/OSX builds

* stop sourcelink on linux/OSX builds to see if that is the problem

* set verbosity to detailed for the dotnet build step

* try new sourcelink and list out remotes

* is travis being weird with git clone?

* SourceLink may be defaulting to true on CI server so explicitly set it as false rather than omitting it

* detailed is a bit too verbose for travis, try normal

* turn sourcelink back on for Linux/OSX

* fix compiler warning

* Try SourceLink.Create.CommandLine instead of SourceLink.Create.GitHub

* CliToolReferences did not update to latest versions

* remove debug origin info

* turn off msbuild output

* go back to SourceLink.Create.GitHub!

* time diff between dev PC and API causes issues if specifying a full 600 second token

* handle extra date format that Installation end point now returns

* field needs to be protected in order to be deserialized

* provide even more buffer for client vs server clock drift

* Update to latest GitHubJwt reference

* go back to SDK 1 since SDK 2 is having sporadic travisCI faliures in TestSourceLink build step

* get appveyor working

* update sourcelink back to latest, and use SDK 1.04 (runtime 1.0.5)
2018-04-16 20:42:23 +10:00
Ryan Gribble
c223f5ae9a Tidy up compiler warnings (#1779)
Fix XmlDoc parameter warnings (and tidy up other build output/warnings)
2018-03-07 00:17:52 +10:00
Ryan Gribble
eb2b9ea4ab Support running in aws lambda by fixing netcoreapp1.1 vs netcoreapp1.0 confusion (#1713)
* force the implicit netstandard package version to 1.6.0 to avoid automated update to 1.6.1 which prevents strict netcoreapp1.0 support (required in aws lambda)

* tidy up project files
2017-11-15 20:16:02 +10:00
Mickaël Derriey
90a18deef4 Enable generation of XML doc files (#1674)
That post by Nate McMaster has saved my bacon a few times now: http://www.natemcmaster.com/blog/2017/01/19/project-json-to-csproj/#other-common-build-options
2017-09-11 14:27:27 +10:00
Ryan Gribble
366ac261bf Fix assembly versioning/properties and handle platform exception (#1660)
* Use assembly version instead of hard-coded ones

Builds happening on AppVeyor specify the assembly version with `dotnet build /p:Version=<gitversion>`

* Set default version for dev time

This is to avoid that the default 1.0.0 version be assigned to the assemblies

* Move various package/assembly properties from AssemblyInfo into csproj files so dotnet build can set them all

* Get rid of SolutionInfo and move assembly version function into Connection class

* Rework FormatUserAgent to use InformationalVersion and guard against exceptions determining platform OS/arch (fixes #1617)

* Update assembly descriptions

* Reword dotnetcore to .NET Core

* Attempted workaround for package version dependency issue by specifying version on dotnet restore
see https://github.com/NuGet/Home/issues/4337
2017-09-03 11:50:20 +10:00
Ryan Gribble
96df1a7d6c Add sourcelink support (#1574)
* add sourcelink support

* Update sourcelink (2.0.2 -> 2.1.0)

* Add parameter to enable source linking

* tidy up the arguments with an extension method allowing an argument to be conditionally appended

* Add an explicit "test sourcelink" build task and remove the MSBuild one, so we can get some build script output without needing the whole build to be in verbose logging

* run sourcelink test against the NuGet packages
2017-04-03 10:49:57 +10:00
Ryan Gribble
ac49d2ad09 Migrate dotnetcore to vs2017 tooling (#1567)
* convert to VS2017

* rework cake.frosting build to latest cake vs2017 "template" example

* fix clean task and version suffix

* add arg to DotNetCorePack so it uses the correct version

* fix appveyor

* is there an easier way to test appveyor?

* ok travis, let's do this

* after reading the travis repo, this seems to be the version we want for vs201/csproj tool support

* msbuild complaining about arguments - we can use defaults anyhow so remove $@ from build.sh script

* add workaround for msbuild/travis, as mentioned on aspnet Mvc repo

* cmon travis

* perhaps tee isnt needed afterall

* travis permission denied when trying to install tools in build script... i feel dirty but need to see if sudo will fix it!

* could it be folder permissions of /build ?

* Try 777 for NuGet.exe permissions rather than 644

* remove windows platform restriction on GitVersion call

* Add a wrapper script for GitVersion on non windows

* fix wrapper script name

* add debug

* let's see if we are running the script at all!

* run mono gitversion direclty from travis.yml, for science

* see if we can run bin/sh and prepend an argument to our shell script

* remove echos from wrapper script

* Ensure full git repo include more than 50 commits and all tags are fetched, as GitVersion was failing on TravisCI

* only build netstandard framework on non windows

* revert overriding the target framework when building the solution

* Unix being case-sensitive, adjust app.config file name in csproj files

* set FrameworkPathOverride to point to different folders on macOS and Linux

* Remove NuGet.exe from the repo.

On Windows, it will be installed by the Frosting bootstrapper script.
On Unix/macOS, cake has smarts to look for mono- and Linux-specific executables

* tidy up GitVersion logic into a GitVersionRunner class

* apply workaround for osx dotnet restore "too many open files" errors

* update test project references to latest official versions

* doesnt seem to be a reason for overriding the implicit reference

* remove extra whitespace and unused namespace
2017-03-30 15:37:49 +10:00
Mickaël Derriey
13d5dab516 Port to .NET Core (#1503)
Port to .NET Core
2017-01-21 14:42:02 +10:00
Martin Scholz
a57fb1278d [WIP] Add repository traffic preview (#1457)
* Add response models

* Supress message

* correct spelling Timestamp

* implement traffic client

* add reactive client

* [WIP] unit tests

* add argument check

* finish unit tests

* add integration tests

* Change repositoryId from int to long
Remove GetAll naming of endpoints and add to PaginationTest exclusions
Rename View and Clone classes to be more specific
Add handling of TimeStamp fields being UtcUnix time
Add integration tests for repositoryId methods
2016-09-29 01:16:58 +10:00
Ryan Gribble
ef0da2f84d Create RepositoryBranchesClient (#1437)
* Tidy up location of existing EditBranch tests

* Create RepositoryBranchesClient and move the GetBranch GetAllBranches and EditBranch methods to it, obsoleting the old ones

* Add tests for the new RepositoryBranchesClient (keeping old tests for RepositoriesClient around for now)

* Disable obsolete warning on reactive client temporarily

* Create observable repository branches client and move GetBranch, GetAllBranches, EditBranch methods to it, obsoleting the old ones

* Add tests for observable repository branches client, leave old tests in place for now

* Fix projects...

* Fix whitespace
2016-08-08 22:00:37 +10:00
Henrik Andersson
23d9310133 Implement Issue Timeline preview API (#1435)
* Implement Issue Timeline preview API

* Add DebuggerDisplay to response models

* Rename method

* Add Observable Issue Timeline client

* Add that missing property thing

* Add teh comments

* Added unit tests

* Fix method names

* Add missing event type enum and API preview accept header

* Add integration tests for async client

* Pass in API preview header

* Add observable integration tests

* Unbreak the broken tests...

* Remove unnecessary usings

* Add missing events

* Fix API URLs

* Add overloads for using repository Id instead of owner/repo and paging

* Add tests for repository id overloads

* Add paging tests

* I'm clearly a bit rusty about this test thing here...

* Missed a check for null argument

* Added missing XMLDocs
2016-08-08 07:51:07 +10:00
Martin Scholz
89500f4b8a Repository invitations changes (#1410)
* add invitations accept header

* create class RepositoryInvitation

* add repository invitations client

* add api urls for invitations

* [WIP]

* add methods to repository invitations client

* add invite method to repo collaborators client

need to add some new overload to post method in apiconnection

* some changes

* add observable client

* add dependings

* add missing observable client

* add missing xml params

* check client

* change repository invitation model

* [WIP] tests

* [WIP] tests; fix overloads for client

* change GetAllForCurrent; suppress message

* some more tests

* [WIP]

* [WIP]

* add collaborator request model

* change return types

change return types for invitation methods. add permission attribute for
repository collaborators invite method.

* add some more tests

* fix xml doc

* check for null arguments

* fix tests

* some fixes from @ryangribble

* add parameterless constructor for RepositoryInvitation

* change setter

* change constructor

* fix merge conflicts

* [WIP] RepositoryInvitationsClientTests

* fix api url xml

* change collaborator request constructor

* change unit tests for collaborator request

* change repocollaboratorsclient

change overloads for add in invite methods to set permissions

* [WIP] integration tests

* add methods for interface

* NotFoundExceptions

* add overload for invite method

* rename repo property

* gramar

* overloads for observable repo collaborators client

* change integration tests

* new integration tests

* add decline test

* add test for accept invitation
2016-07-23 18:50:22 +10:00
Ryan Gribble
9d8e8ae8af Remove obsolete items - SshKey
- SshKeysClient
- SshKey
- SshKeyInfo
- SshKeyUpdate
2016-07-16 22:46:42 +10:00
maddin2016
ff7bff0a9e Merge remote-tracking branch 'refs/remotes/octokit/master' into stand-alone-reaction-client
# Conflicts:
#	Octokit.Reactive/Octokit.Reactive-Mono.csproj
#	Octokit.Reactive/Octokit.Reactive-MonoAndroid.csproj
#	Octokit.Reactive/Octokit.Reactive-Monotouch.csproj
#	Octokit/Helpers/AcceptHeaders.cs
#	Octokit/Octokit.csproj
2016-06-09 07:39:52 +02:00
Henrik Andersson
3ad22b5d9d Add ObservableUserGpgKeysClient and fixes to satisfy convention tests 2016-06-08 22:55:41 +10:00
maddin2016
3a4031fb9b add PullRequestReviewCommentReactionClient 2016-06-01 11:25:24 +02:00
maddin2016
eddf6023ed add IssueCommentReactionsClient 2016-06-01 09:46:00 +02:00
maddin2016
c9fdb45114 set singular on reaction clients 2016-06-01 08:50:42 +02:00
maddin2016
18946fb03f add IssuesReactionsClient; some fixes 2016-05-31 14:34:24 +02:00
lrz-hal
f983bba1b7 add observable Reactions and CommitCommentReaction client
fix
2016-05-30 10:47:17 +02:00
lrz-hal
831ff1cf31 Add observable reactions client 2016-05-29 14:07:37 +02:00
Devesh Khandelwal
73d321da93 Refactor: Pull out Migrations client from Enterprise.
Following the API sidebar structure, the migrations client is pulled out
and put into another Migration client.
2016-05-20 19:10:22 +05:30
Devesh Khandelwal
8b0f5bff9c Implemented Reactive Clients. 2016-05-20 19:10:22 +05:30
Brendan Forster
aafdda2f00 Merge branch 'master' into api-paging-part-deux 2016-02-24 11:40:43 +11:00
Brendan Forster
b41c00c4c4 extracted pagination function to separate type 2016-02-14 18:14:01 +11:00
Ryan Gribble
6965ac44b2 Implement Reactive version 2016-02-12 09:37:32 +10:00
Ryan Gribble
a3b2a2fbda Implement Reactive Enterprise Search Indexing Client and unit/integration tests 2016-02-11 15:07:13 +10:00
Ryan Gribble
af169d6c55 Merge remote-tracking branch 'upstream/master' into enterprise-api 2016-02-02 21:58:04 +10:00
Jasmine
0066f60c80 Merging from master, resolved conflicts. 2016-02-01 16:46:56 -05:00
Ryan Gribble
01ef445a40 Add Reactive versions of organization API and unit/integration tests 2016-02-01 21:10:36 +10:00
Ryan Gribble
22fa5f50dd Add Reactive versions of license API and unit/integration tests 2016-02-01 21:10:34 +10:00
Jasmine
19f0bf389e Added Observable classes and got started on observable tests 2016-01-28 14:29:08 -05:00
Ryan Gribble
1a90c166dd Merge remote-tracking branch 'upstream/master' into enterprise-adminstats 2016-01-26 22:51:04 +10:00
Mordechai Zuber
3003fb3e60 Add IObservable + impl 2016-01-20 12:45:18 +02:00
Ryan Gribble
f196631b89 Add Enterprise and EnterpriseAdminStats to Reactive project and tests 2015-12-26 23:49:26 +10:00
Mordechai Zuber
10c3b2ad5f IRepositoriesClient.RepoCollaborators -> IRepositoriesClient.Collaborator 2015-12-23 18:29:18 +02:00
naveen
85e520d5d6 Fixes for mono
removed DocPlagiarizer

Fixed tests

removed unused variable

removed unused variable that was causing the build to fail

fixed the file name casing.

updated the nugget.exe to download System.Net.Http

PCL is required for mono

more fixes for travis
2015-12-11 20:36:47 -05:00
Brendan Forster
fbde7f1683 just suppressing some warnings, nbd 2015-11-03 09:32:02 -08:00