add first 4 steps of releasing a NewPipe version
This commit is contained in:
parent
398c072b47
commit
b0dc490911
Binary file not shown.
Binary file not shown.
|
@ -26,9 +26,9 @@ For development the __dev__ branch is used. Pushing to __dev__ directly however
|
|||
This ensures that also the dev version works as good a possible.
|
||||
So in order to change something on the app one may want to __fork__ the dev branch and develop the changes in his own branch (this is called feature branching).
|
||||
|
||||
![feature_branching](img/release_branch.svg)
|
||||
![feature_branching](img/feature_branch.svg)
|
||||
|
||||
### Merching features/bugfixes
|
||||
### Merging features/bugfixes
|
||||
|
||||
After being done with the feature one should open up a __Pull Reuqest__ to the dev branch here a maintainer can do __Code review__ and __Quality Assurance (QA)__.
|
||||
If you are a maintainer please take care about the code architecture so corrosion or code shifting can be prevented. Please also preface core quality over functionality.
|
||||
|
@ -36,10 +36,19 @@ So in short: cool function but bad code -> no merge. We should focus on leaving
|
|||
|
||||
![merge_feature_into_dev](img/merge_into_dev.svg)
|
||||
|
||||
At best you as a maintainer should build the app and put the signed apk into the description of that new Pullrequest. This way other people can test the feature/bugfix and therefore help with QA.
|
||||
At best you as a maintainer should build the app and put the signed apk into the description of that new pullrequest. This way other people can test the feature/bugfix and therefore help with QA.
|
||||
|
||||
After the maintainer merged the new feature into the dev branch he should add the title of the pullrequest or a summary of the changes into the [release note](#release-notes).
|
||||
|
||||
### Creating a new release
|
||||
|
||||
Once there are enough features together, and the maintainer feels like releasing he should create a new release. Here is a list of things he will want to do then.
|
||||
|
||||
1. Fork the __dev__ branch into a new __release_x.y.z__ branch.
|
||||
2. Increase the [version number](#versioning)
|
||||
3. Copy the [release note](#release-notes) from the github version draft into the corresponding fastlane file (see [release note](#release-notes)).
|
||||
4. Open up a pull request form the new __release_x.y.z__ branch into the __master__ branch.
|
||||
|
||||
### Releasing
|
||||
|
||||
## Hotfix releases
|
||||
|
@ -49,3 +58,35 @@ At best you as a maintainer should build the app and put the signed apk into the
|
|||
### Fix branch
|
||||
|
||||
### Releasing
|
||||
|
||||
## Versioning
|
||||
|
||||
Versioning NewPipe is simple.
|
||||
|
||||
- __Major__: The __major__ version number (the number before the first dot) was 0 for years. The reason for this changed over time. First I wanted this number to
|
||||
switch to 1 once NewPipe was feature complete. Now I rather think of increasing this number to 1 once we can ensure that NewPipe runs stable (part of which this documentation should help). After this (2 and beyond) well god knows what happens if we ever reach 1 ¯\\\_(ツ)\_/¯ .
|
||||
- __Minor__: The __minor__ version number (the number after the first dot) will be increased if there is a major feature added to the app.
|
||||
- __Small Minor__: The small minor (the number after the second dot) will be increased if there are just smaller bug fixes or features added to the app.
|
||||
|
||||
|
||||
#### Versioning the extractor
|
||||
|
||||
The extractor is always released together with the app, therefore the version number of the extractor is the same as the one of the app.
|
||||
|
||||
#### Version code
|
||||
In android an app can also have a [versionCode](https://developer.android.com/studio/publish/versioning). This code is a `long integer` and can be increased by any value to show a device that a new version is there.
|
||||
For NewPipe the version code will be increased by 10 regardless of the change of the major or minor version number. The version codes between the 10 steps
|
||||
are reserved for our internal fdroid build server.
|
||||
|
||||
## Release notes
|
||||
Release notes should give the user an idea of what was changed on the app. The release nodes for NewPipe are stored in the [github draft for a new release](https://github.com/TeamNewPipe/NewPipe/releases/tag/v0.14.0). When a maintainer wants to add change to the release note, but there is no draft for a new version he should create one.
|
||||
|
||||
Changes can be categorized into three types.
|
||||
|
||||
- __New__: New features that god added to the app.
|
||||
- __Improved__: Improvements to the app, or already existing features
|
||||
- __Fixes__: Bugfixes
|
||||
|
||||
When releasing a new version of NewPipe, before actually hitting release the maintainer should copy the release note from the draft and put it into a file called
|
||||
`<versionCode>.txt` (whereas `<versionCode>` needs to be the version code of the comming release). This file must be stored in the direcotry [`/fastlane/metadata/android/en-US/changelogs`](https://github.com/teamnewpipe/newpipe/tree/dev/fastlane/metadata/android/en-US/changelogs). This way fdroid will later be able to show the
|
||||
changes done on the app.
|
||||
|
|
|
@ -8,14 +8,14 @@
|
|||
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
|
||||
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
|
||||
width="210"
|
||||
height="310.22198"
|
||||
viewBox="385 95 111.125 157.21394"
|
||||
height="300"
|
||||
viewBox="385 95 104.17968 152.03365"
|
||||
version="1.1"
|
||||
id="svg31"
|
||||
sodipodi:docname="release_branch.svg"
|
||||
id="svg39"
|
||||
sodipodi:docname="feature_branch.svg"
|
||||
inkscape:version="0.92.3 (2405546, 2018-03-11)">
|
||||
<metadata
|
||||
id="metadata37">
|
||||
id="metadata45">
|
||||
<rdf:RDF>
|
||||
<cc:Work
|
||||
rdf:about="">
|
||||
|
@ -27,7 +27,7 @@
|
|||
</rdf:RDF>
|
||||
</metadata>
|
||||
<defs
|
||||
id="defs35" />
|
||||
id="defs43" />
|
||||
<sodipodi:namedview
|
||||
pagecolor="#ffffff"
|
||||
bordercolor="#666666"
|
||||
|
@ -39,19 +39,19 @@
|
|||
inkscape:pageshadow="2"
|
||||
inkscape:window-width="1366"
|
||||
inkscape:window-height="740"
|
||||
id="namedview33"
|
||||
id="namedview41"
|
||||
showgrid="false"
|
||||
units="px"
|
||||
inkscape:zoom="2.7171031"
|
||||
inkscape:cx="83.271021"
|
||||
inkscape:cy="318.35955"
|
||||
inkscape:zoom="0.48032051"
|
||||
inkscape:cx="151.1811"
|
||||
inkscape:cy="245.66929"
|
||||
inkscape:window-x="0"
|
||||
inkscape:window-y="0"
|
||||
inkscape:window-maximized="1"
|
||||
inkscape:current-layer="svg31" />
|
||||
inkscape:current-layer="svg39" />
|
||||
<g
|
||||
id="Hintergrund"
|
||||
transform="matrix(0.66806063,0,0,0.66806063,127.1286,26.441733)">
|
||||
transform="matrix(0.6187154,0,0,0.6187154,144.56047,34.721636)">
|
||||
<text
|
||||
font-size="12.8"
|
||||
style="font-style:normal;font-weight:normal;font-size:12.80000019px;font-family:sans-serif;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none"
|
||||
|
@ -97,13 +97,13 @@
|
|||
<text
|
||||
font-size="12.8"
|
||||
style="font-style:normal;font-weight:normal;font-size:12.80000019px;font-family:sans-serif;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="470"
|
||||
y="108.15"
|
||||
x="459.65701"
|
||||
y="107.209"
|
||||
id="text20">
|
||||
<tspan
|
||||
x="470"
|
||||
y="108.15"
|
||||
id="tspan18">release_xyz</tspan>
|
||||
x="459.65701"
|
||||
y="107.209"
|
||||
id="tspan18">feature_xyz</tspan>
|
||||
</text>
|
||||
<circle
|
||||
style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:2;stroke-opacity:1"
|
||||
|
@ -123,5 +123,27 @@
|
|||
points="406.246,206.816 411.045,216.914 416.244,207.016 "
|
||||
id="polyline26" />
|
||||
</g>
|
||||
<text
|
||||
font-size="12.8"
|
||||
style="font-style:normal;font-weight:normal;font-size:12.80000019px;font-family:sans-serif;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="481"
|
||||
y="102"
|
||||
id="text32">
|
||||
<tspan
|
||||
x="481"
|
||||
y="102"
|
||||
id="tspan30" />
|
||||
</text>
|
||||
<text
|
||||
font-size="12.7998"
|
||||
style="font-style:normal;font-weight:normal;font-size:12.79979992px;font-family:sans-serif;text-anchor:start;fill:#000000;fill-opacity:1;stroke:none"
|
||||
x="505"
|
||||
y="103"
|
||||
id="text36">
|
||||
<tspan
|
||||
x="505"
|
||||
y="103"
|
||||
id="tspan34" />
|
||||
</text>
|
||||
</g>
|
||||
</svg>
|
Before Width: | Height: | Size: 3.8 KiB After Width: | Height: | Size: 4.4 KiB |
Loading…
Reference in New Issue