Skip to content

Commit 110c627

Browse files
lzybkrmirichmo
authored andcommitted
Doc updates, remove PR template, update issue labels (PowerShell#1776)
* Remove PR template, update guidelines for PR * Update testing-guidelines.md * Add clarification on when to use runtime/compiletime checks * Update issue label descriptions
1 parent ef5bf5c commit 110c627

5 files changed

Lines changed: 72 additions & 26 deletions

File tree

.github/CONTRIBUTING.md

Lines changed: 17 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ Contributing to Issues
3434
* If you can't find your issue already,
3535
[open a new issue](https://github.com/PowerShell/PowerShell/issues/new),
3636
making sure to follow the directions as best you can.
37-
* If the issue is marked as [`help wanted`][help-wanted-issue],
37+
* If the issue is marked as [`0 - Backlog`][help-wanted-issue],
3838
the PowerShell maintainers are looking for help with the issue.
3939

4040
Contributing to Documentation
@@ -80,6 +80,16 @@ Additional references:
8080

8181
### Lifecycle of a pull request
8282

83+
#### Before submitting
84+
85+
* To avoid merge conflicts, make sure your branch is rebased on the `master` branch of this repository.
86+
* Many code changes will require new tests,
87+
so make sure you've added a new test if existing tests do not effectively test the code changed.
88+
* Clean up your commit history.
89+
Each commit should be a **single complete** change.
90+
This discipline is important when reviewing the changes as well as when using `git bisect` and `git revert`.
91+
92+
8393
#### Pull request submission
8494

8595
**Always create a pull request to the `master` branch of this repository**.
@@ -94,13 +104,14 @@ See [Contributing to documentation related to PowerShell](#contributing-to-docum
94104
A better example is: "Add Ensure parameter to New-Item cmdlet", with "Fixes #5" in the PR's body.
95105

96106
* When you create a pull request,
97-
fill out the pull request template,
98-
including a summary of what's included in your changes.
99-
If the changes are related to an existing GitHub issue,
107+
including a summary of what's included in your changes and
108+
if the changes are related to an existing GitHub issue,
100109
please reference the issue in pull request description (e.g. ```Closes #11```).
101110
See [this][closing-via-message] for more details.
102111

103-
* Include an update to the [changelog](../CHANGELOG.MD) in your pull request.
112+
* If the change warrants a note in the [changelog](../CHANGELOG.MD)
113+
either update the changelog in your pull request or
114+
add a comment in the PR description saying that the change may warrant a note in the changelog.
104115
New changes always go into the **Unreleased** section.
105116
Keeping the changelog up-to-date simplifies the release process for maintainers.
106117
An example:
@@ -260,5 +271,5 @@ Once you sign a CLA, all your existing and future pull requests will be labeled
260271
[good-git-resources]: https://help.github.com/articles/good-resources-for-learning-git-and-github/
261272
[contribute-issues]: #contributing-to-issues
262273
[open-issue]: https://github.com/PowerShell/PowerShell/issues
263-
[help-wanted-issue]: https://github.com/PowerShell/PowerShell/issues?q=is%3Aopen+is%3Aissue+label%3A%22help+wanted%22
274+
[help-wanted-issue]: https://github.com/PowerShell/PowerShell/issues?q=is%3Aopen+is%3Aissue+label%3A%220%20-%20Backlog%22
264275
[semantic linefeeds]: http://rhodesmill.org/brandon/2012/one-sentence-per-line/

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

docs/dev-process/coding-guidelines.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,4 +78,7 @@ When absolutely necessary, avoid duplicating more code than necessary,
7878
and instead prefer introducing helper functions to minimize the platform differences.
7979

8080
When adding platform dependent code, prefer preprocessor directives
81-
over runtime checks.
81+
over runtime checks.
82+
83+
We produce a single binary for all UNIX variants,
84+
so runtime checks are currently necessary for some platform differences, e.g. OS X and Linux.
Lines changed: 49 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,54 @@
11
# Issue Management
22

33
## Long-living issue labels
4+
=======
5+
## Issue and PR Labels
6+
7+
Issues are opened for many different reasons.
8+
We use the following labels for issue classifications:
9+
10+
* `Issue-Bug`: the issue is reporting a bug
11+
* `Issue-Discussion`: the issue may not have a clear classification yet.
12+
The issue may generate a [RFC][ln-rfc] or maybe be reclassified as a bug or enhancement.
13+
* `Issue-Enhancment`: the issue is more of a feature request than a bug.
14+
* `Issue-Meta`: an issue used to track multiple issues
15+
* `Issue-Question`: ideally support can be provided via other mechanisms,
16+
but sometimes folks to open an issue to get a question answered and we will use this label for such issues.
17+
18+
[ln-rfc]: https://github.com/PowerShell/PowerShell-RFC
19+
20+
When an issue is resolved, the following labels are used to describe the resolution:
21+
22+
* `Resolution-Answered`: the issue was a `Issue-Question` and was answered.
23+
* `Resolution-By Design`: the issue is not considered a bug, the behavior is working as designed
24+
* `Resolution-Duplicate`: the issue is a duplicate - there must be a comment linking to another issue
25+
* `Resolution-Fixed`: the issue is has been fixed and should be referenced from a PR
26+
* `Resolution-Won't Fix`: the issue may be considered a bug or enhancement but won't be fixed.
27+
If there is an inadequate explanation as to why the issue was closed,
28+
anyone should feel free to reopen the issue.
429

530
### Feature areas
631

7-
These labels describe what feature area of PowerShell that an issue addresses.
32+
These labels describe what feature area of PowerShell that an issue affects.
833

934
* `Area-Build`: build issues
1035
* `Area-Cmdlets`: cmdlets in any module
1136
* `Area-Console`: the console experience
1237
* `Area-Debugging`: debugging PowerShell script
38+
* `Area-Demo`: a demo or sample
1339
* `Area-Documentation`: PowerShell *repo* documentation issues, general PowerShell doc issues go [here](https://github.com/PowerShell/PowerShell-Docs/issues)
1440
* `Area-Engine`: core PowerShell engine, interpreter, runtime
41+
* `Area-HelpSystem`: anything related to the help infrastructure and formatting of help
1542
* `Area-Intellisense`: tab completion
1643
* `Area-Language`: parser, language semantics
1744
* `Area-OMI`: omi
1845
* `Area-PackageManagement`: PackageManagement related issues
1946
* `Area-Performance`: a performance issue
2047
* `Area-Portability`: anything affecting script portability
21-
* `Area-PSReadline`: PSReadLine
22-
* `Area-SideBySide`: Side by side support
23-
* `Area-Test`: tests or test infrastructure
48+
* `Area-PowerShellGet`: PowerShellGet related issues
49+
* `Area-PSReadline`: PSReadLine related issues
50+
* `Area-SideBySide`: side by side support
51+
* `Area-Test`:issues in a test or in test infrastructure
2452

2553
### Operating systems
2654

@@ -33,14 +61,25 @@ These are for issues that are specific to certain operating systems:
3361

3462
Issues can be in one of the following states:
3563
* `0 - Backlog` : We've acknowledged the issue but have no immediate plans to address it.
64+
If you're looking for a way to contribute, these issues can be a good place to start.
3665
* `1 - Planning` : The issue requires some design or discussion before coding can begin.
3766
* `2 - Ready` : Any design or discussion is essentially done, coding has not yet begun though.
3867
* `3 - Working` : The assignee(s) are actively working on the issue.
3968
* `4 - In Review` : The issue is being reviewed.
40-
The assignee(s) are responsible for signing off before the PR will be merged.
69+
The assignee(s) are responsible for signing off before the PR will be merged.
70+
71+
The following labels are used on PRs:
72+
73+
* `Review - Needed` : The PR is being reviewed. Please see [Pull Request - Code Review](../../.github/CONTRIBUTING.md#pull-request-code-review)
74+
* `Review - Waiting on Author` : The PR was reviewed by the team and requires changes or comments from the author before being accepted.
75+
76+
### Random labels
4177

42-
* `help wanted` : We are looking for someone to work on this issue.
43-
* `need review` : This pull request is being reviewed. Please see [Pull Request - Code Review](../../.github/CONTRIBUTING.md#pull-request-code-review)
44-
* `waiting for author`: The issue or pull request needs
45-
* `add to changelog`: The PR requires an addition to the changelog.
46-
Should be removed when it has been added.
78+
* `Blocked`: an issue cannot be addressed due to external factors,
79+
but should not be closed because those external factors are temporary.
80+
* `BVT/DRT`: an issue affecting or exposed by tests that have not been open sourced.
81+
* `Porting`: an issue that affects a feature not yet ported to other platforms.
82+
* `Usability`: this label is used to help us filter issues that might be higher priority
83+
because they more directly affect the usability of a particular feature or area.
84+
* `Changelog Needed`: The PR requires an addition to the changelog,
85+
and should be removed when it has been added.

docs/testing-guidelines/testing-guidelines.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
11

22
# Testing Guidelines
33

4-
Testing is a critical part of the PowerShell project.
4+
Testing is a critical and required part of the PowerShell project.
55

6-
The PowerShell team created nearly 100,000 tests over the last 12 years which we run as part of the release process for Windows PowerShell.
6+
The Microsoft PowerShell team created nearly 100,000 tests over the last 12 years which we run as part of the release process for Windows PowerShell.
77
Having all of those tests available for the initial release of PowerShell was not feasible, and we have targeted those tests which
88
we believe will provide us the ability to catch regressions in the areas which have had the largest changes for PowerShell.
99
It is our intent to continue to release more and more of our tests until we have the coverage we need.

0 commit comments

Comments
 (0)