Unverified Commit 40b1aa66 authored by David Kline's avatar David Kline Committed by GitHub
Browse files

Merge pull request #286 from davidkline-ms/ReleaseProcess

new release process documentation
parents 0c96e126 97600b7e
Loading
Loading
Loading
Loading
+8 −9
Original line number Diff line number Diff line
@@ -25,9 +25,9 @@ Note: If you wish to work on something that already exists on our backlog, you
1. Fork the repository. Click on the "Fork" button on the top right of the page and follow the flow.
2. If your work needs more time, the consider branching off of master else just code in your fork.
3. Ensure your changes check for the appropriate device families (ex: Windows Desktop and IoT only).
4. Implement one or more [tests](https://github.com/Microsoft/WindowsDevicePortalWrapper/blob/master/Testing.md) to ensure the change works on the target platform(s).
5. Make small and frequent commits that include [tests](https://github.com/Microsoft/WindowsDevicePortalWrapper/blob/master/Testing.md) against mock data or manual tests which can be run against real devices.
6. Make sure that all existing [tests](https://github.com/Microsoft/WindowsDevicePortalWrapper/blob/master/Testing.md) continue to pass.
4. Implement one or more [tests](Testing.md) to ensure the change works on the target platform(s).
5. Make small and frequent commits that include [tests](Testing.md) against mock data or manual tests which can be run against real devices.
6. Make sure that all existing [tests](Testing.md) continue to pass.

# Run StyleCop

@@ -59,7 +59,7 @@ You can update message of local commits you haven't pushed yet using git commit

# Pull request

Start a GitHub pull request to merge your topic branch into the [main repository's master branch](https://github.com/Microsoft/WindowsDevicePortalWrapper/tree/master). 
Start a GitHub pull request to merge your topic branch into the [main repository's **Development** branch](https://github.com/Microsoft/WindowsDevicePortalWrapper/tree/Development). 
(If you are a Microsoft employee and are not a member of the [Microsoft organization on GitHub](https://github.com/Microsoft) yet, please contact the DDE team via e-mail for instructions before starting your pull request. There's some process stuff you'll need to do ahead of time.)
If you haven't contributed to a Microsoft project before, you may be asked to sign a [contribution license agreement](https://cla.microsoft.com/). 
A comment in the PR will let you know if you do.
@@ -77,12 +77,11 @@ If the pull request review goes well, a project maintainer will merge your chang

When creating a new NuGet and GitHub release, the following steps should be taken:
1. Bump the version number as appropriate in master (after 1.0, WDP Wrapper will correctly use semver)
2. Merge from Master to Release, with a PR appropriately named ("v1.2.3 release")
3. Squash and merge commits, leaving major feature entries and fixes in the description. 
4. Compile release builds of the .NET and UWP libraries, sign them, and upload to NuGet 
2. Follow the steps documented in [Release Process](ReleaseProcess.md).
3. Compile release builds of the .NET and UWP libraries, sign them, and upload to NuGet 
  a. We now have a CI server for this that builds, signs, and packages the NuGet package [here](https://microsoft.visualstudio.com/DefaultCollection/OS/_build/index?path=%5C&definitionId=14239).  
5. Cut a new release on GitHub using the same version number ("v1.2.3") and attach the signed libraries to the release. 
6. Update code documentation. 
4. Cut a new release on GitHub using the same version number ("v1.2.3") and attach the signed libraries to the release. 
5. Update code documentation. 

# Updating code documentation

+19.6 KiB
Loading image diff...
+7 −3
Original line number Diff line number Diff line
@@ -3,17 +3,21 @@ A client library that wraps the [Windows Device Portal](https://msdn.microsoft.c

This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.

 [Get Started](https://github.com/Microsoft/WindowsDevicePortalWrapper/blob/master/GettingStarted.md) using the library.  
 [Get Started](GettingStarted.md) using the library.  

---
---

To start contributing, see [Contributing](https://github.com/Microsoft/WindowsDevicePortalWrapper/blob/master/CONTRIBUTING.md)
To start contributing, see [Contributing](CONTRIBUTING.md).

```
Note: The contribution guidelines were updated in January 2018. Pull requests that target the master branch will be asked to be retargeted to the Development branch prior to approval.
```

---
---

For source code documentation, see https://microsoft.github.io/WindowsDevicePortalWrapper/annotated.html
For source code documentation, see https://microsoft.github.io/WindowsDevicePortalWrapper/annotated.html.

---
---

ReleaseProcess.md

0 → 100644
+30 −0
Original line number Diff line number Diff line
# The Windows Device Portal Wrapper Release Process

The following description and diagram illustrate the process that the Windows Device Portal Wrapper repository undergoes to create a release.

![Release Process Flow](External/ReadMeImages/ReleaseProcess.png)

## Release Steps
1. Declare that a release is feature complete.

This will done by / in coordination with the Windows Device Portal Wrapper maintainers.

2. Create a stabilization branch (ex: Stabilization_v1.2.3) off of Development

Bug fixes get submitted to the stabilization branch while work on the next release continues in Development. Note: While not expected in every release, there _may_ be some cherry-picking of individual commits from Development.

The goal is to stabilize rapidly, over the course of approximately one week. If additional time is warrented for a release, we will extend the stabilization window.

3. When the release has stabilized, a pull request is issued from the stabilization branch to master and it is merged.

The pull request should be squashed as part of the merge, with relevant feature and fix comments retained.

During this time, the release is compiled, signed, packaged and submitted to NuGet.

4. The master branch is tagged with the release's version number.

5. A pull request is issued from the master branch into development and it is merged.

No squashing is necessary on this merge.

6. The stabilization branch is deleted.