Skip to content

Commit eb33688

Browse files
committed
Module restructure to v0.2.0
+ Significant restructing and refactoring of entire module to make future expansion easier. + Significant documentation updates ([CHANGELOG](./CHANGELOG.md), [CONTRIBUTING.md](./CONTRIBUTING.md), [GOVERNANCE.md](./GOVERNANCE.md), [README.md](./README.md), [USAGE.md](./USAGE.md)) + Added `Set-GitHubAuthentication` (and related methods) for securely caching the Access Token + Added `Set-GitHubConfiguration` (and related methods) to enable short and long-term configuration of the module. + Added ability to asynchronously see status update of REST requests. + Added logging and telemetry to the module (each can be disabled if desired). + Tests now auto-configure themselves across whatever account information is supplied in [Tests/Config/Settings.ps1](./Tests/Config/Settings.ps1) + Added support for a number of additional GitHub API's: + All [Miscellaneous API's](https://developer.github.com/v3/misc/) + Ability to fully query, update, remove, lock, and unlock Issues. + Enhanced pull request querying support + Ability tofully query, create, and remove Repositories, as well as transfer ownership, get tags, get/set topic and current used programming languages. + Enhanced user query support as well as being able update information for the current user. * Made parameter ordering consistent across all functions (OwnerName is now first, then RepositoryName) * Normalized all parameters to use SentenceCase * All functions that can take a Uri or OwnerName/RepositoryName now support both options. * Made all parameter names consistent across functions: * `GitHubAccessToken` -> `AccessToken` * `RepositoryUrl` -> `Uri` * `Organization` -> `OrganizationName` * `Repository` -> `RepositoryName` * `Owner` -> `OwnerName` * Normalized usage of Verbose, Info and Error streams - `New-GitHubLabels` was renamed to `Set-GitHubLabel` and can now optionally take in the labels to apply to the Repository. - `Get-GitHubIssueForRepository` has been removed and replaced with `Get-GitHubIssue`. The key difference between these two is that it no longer accepts multiple repositories as single input, and filtering on creation/closed date can be done after the fact piping the results into `Where-Object` now that the returned objects from `Get-GitHubIssue` have actual `[DateTime]` values for the date properties. For an updated example of doing this, refer to [example usage](USAGE.md#querying-issues). - `Get-GitHubWeeklyIssueForRepository` has been removed and functionally replaced by `Group-GitHubIssue`. For an updated example of using it, refer to [example usage](USAGE.md#querying-issues) - `Get-GitHubTopIssueRepository` has been removed. We have [updated examples](USAGE.md#querying-issues) for how to accomplish the same scenario. - `Get-GitHubPullRequestForRepository` has been removed and replaced with `Get-GitHubPullRequest`. The key difference between these two is that it no longer accepts multiple repositories as single input, and filtering on creation/merged date can be done after the fact piping the results into `Where-Object` now that the returned objects from `Get-GitHubPullRequest` have actual `[DateTime]` values for the date properties. For an updated example of doing this, refer to [example usage](USAGE.md#querying-pull-requests). - `Get-GitHubWeeklyPullRequestForRepository` has been removed and functionally replaced by `Group-GitHubPullRequest`. For an updated example of using it, refer to [example usage](USAGE.md#querying-pull-requests) - `Get-GitHubTopPullRequestRepository` has been removed. We have [updated examples](USAGE.md#querying-pull-requests) for how to accomplish the same scenario. - `Get-GitHubRepositoryNameFromUrl` and `GitHubRepositoryOwnerFromUrl` have been removed and functionally replaced by `Split-GitHubUri` - `Get-GitHubRepositoryUniqueContributor` has been removed. We have an [updated example](USAGE.md#querying-contributors) for how to accomplish the same scenario. - `GitHubOrganizationRepository` has been removed. You can now retrieve repositories for an organization via `Get-GitHubRepository -OrganizationName <name>`. - `Get-GitHubAuthenticatedUser` has been replaced with `Get-GitHubUser -Current`. Fixes Issue #34: Warning output on import is being written out twice Fixes Issue #33: TLS error in Get-GitHubIssueForRepository : Failed to execute query with exception Fixes Issue #26: Token in template file Fixes Issue #24: Add a command for configuration
1 parent 4eafd54 commit eb33688

30 files changed

+9645
-2038
lines changed

.gitignore

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
ApiTokens.psm1
1+
Tests/Config/Settings.ps1

ApiTokensTemplate.psm1

-1
This file was deleted.

CHANGELOG.md

+77
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,77 @@
1+
# PowerShellForGitHub PowerShell Module
2+
## Changelog
3+
4+
## [0.0.2](https://github.com/PowerShell/PowerShellForGitHub/tree/0.2.0) - (2018/11/08)
5+
### Features:
6+
+ Significant restructing and refactoring of entire module to make future expansion easier.
7+
+ Significant documentation updates ([CHANGELOG](./CHANGELOG.md), [CONTRIBUTING.md](./CONTRIBUTING.md),
8+
[GOVERNANCE.md](./GOVERNANCE.md), [README.md](./README.md), [USAGE.md](./USAGE.md))
9+
+ Added `Set-GitHubAuthentication` (and related methods) for securely caching the Access Token
10+
+ Added `Set-GitHubConfiguration` (and related methods) to enable short and long-term configuration
11+
of the module.
12+
+ Added ability to asynchronously see status update of REST requests.
13+
+ Added logging and telemetry to the module (each can be disabled if desired).
14+
+ Tests now auto-configure themselves across whatever account information is supplied in
15+
[Tests/Config/Settings.ps1](./Tests/Config/Settings.ps1)
16+
+ Added support for a number of additional GitHub API's:
17+
+ All [Miscellaneous API's](https://developer.github.com/v3/misc/)
18+
+ Ability to fully query, update, remove, lock, and unlock Issues.
19+
+ Enhanced pull request querying support
20+
+ Ability tofully query, create, and remove Repositories, as well as transfer ownership,
21+
get tags, get/set topic and current used programming languages.
22+
+ Enhanced user query support as well as being able update information for the current user.
23+
24+
### Fixes:
25+
* Made parameter ordering consistent across all functions (OwnerName is now first, then RepositoryName)
26+
* Normalized all parameters to use SentenceCase
27+
* All functions that can take a Uri or OwnerName/RepositoryName now support both options.
28+
* Made all parameter names consistent across functions:
29+
* `GitHubAccessToken` -> `AccessToken`
30+
* `RepositoryUrl` -> `Uri`
31+
* `Organization` -> `OrganizationName`
32+
* `Repository` -> `RepositoryName`
33+
* `Owner` -> `OwnerName`
34+
* Normalized usage of Verbose, Info and Error streams
35+
36+
### Functionality Modified from 0.1.0:
37+
- `New-GitHubLabels` was renamed to `Set-GitHubLabel` and can now optionally take in the labels
38+
to apply to the Repository.
39+
- `Get-GitHubIssueForRepository` has been removed and replaced with `Get-GitHubIssue`.
40+
The key difference between these two is that it no longer accepts multiple repositories as single
41+
input, and filtering on creation/closed date can be done after the fact piping the results into
42+
`Where-Object` now that the returned objects from `Get-GitHubIssue` have actual `[DateTime]` values
43+
for the date properties. For an updated example of doing this, refer to [example usage](USAGE.md#querying-issues).
44+
- `Get-GitHubWeeklyIssueForRepository` has been removed and functionally replaced by `Group-GitHubIssue`.
45+
For an updated example of using it, refer to [example usage](USAGE.md#querying-issues)
46+
- `Get-GitHubTopIssueRepository` has been removed. We have [updated examples](USAGE.md#querying-issues)
47+
for how to accomplish the same scenario.
48+
- `Get-GitHubPullRequestForRepository` has been removed and replaced with `Get-GitHubPullRequest`.
49+
The key difference between these two is that it no longer accepts multiple repositories as single
50+
input, and filtering on creation/merged date can be done after the fact piping the results into
51+
`Where-Object` now that the returned objects from `Get-GitHubPullRequest` have actual `[DateTime]` values
52+
for the date properties. For an updated example of doing this, refer to [example usage](USAGE.md#querying-pull-requests).
53+
- `Get-GitHubWeeklyPullRequestForRepository` has been removed and functionally replaced by `Group-GitHubPullRequest`.
54+
For an updated example of using it, refer to [example usage](USAGE.md#querying-pull-requests)
55+
- `Get-GitHubTopPullRequestRepository` has been removed. We have [updated examples](USAGE.md#querying-pull-requests)
56+
for how to accomplish the same scenario.
57+
- `Get-GitHubRepositoryNameFromUrl` and `GitHubRepositoryOwnerFromUrl` have been removed and
58+
functionally replaced by `Split-GitHubUri`
59+
- `Get-GitHubRepositoryUniqueContributor` has been removed. We have an
60+
[updated example](USAGE.md#querying-contributors) for how to accomplish the same scenario.
61+
- `GitHubOrganizationRepository` has been removed. You can now retrieve repositories for an
62+
organization via `Get-GitHubRepository -OrganizationName <name>`.
63+
- `Get-GitHubAuthenticatedUser` has been replaced with `Get-GitHubUser -Current`.
64+
65+
More Info: [[pr]](https://github.com/PowerShell/PowerShellForGitHub/pull/TODO) | [[cl]](https://github.com/PowerShell/PowerHellForGitHub/commit/TODO)
66+
67+
Author: [**@HowardWolosky**](https://github.com/HowardWolosky)
68+
69+
------
70+
71+
## [0.1.0](https://github.com/PowerShell/PowerShellForGitHub/tree/0.1.0) - (2016/11/29)
72+
### Features:
73+
+ Initial public release
74+
75+
More Info: [[cl]](https://github.com/PowerShell/PowerShellForGitHub/commit/6a3b400019d6a97ccc2f08a951fd4b2d09282eb5)
76+
77+
Author: [**@KarolKaczmarek**](https://github.com/KarolKaczmarek)

CODE_OF_CONDUCT.md

+8
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
# PowerShellForGitHub PowerShell Module
2+
3+
## Code of Conduct
4+
5+
This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).
6+
For more information see the [Code of conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/)
7+
or contact [[email protected]](mailto:[email protected]) with any additional questions
8+
or comments.

0 commit comments

Comments
 (0)