-<h2>Create release branch from selected commit</h2>\r
-<p>When release stabilisation starts, branch all relevant repositories like this:</p>\r
-<pre><code>git clone ssh://<user>@gerrit.simantics.org:29418/simantics/platform.git\r
-cd platform\r
-git branch release/x.y.z[.w] <commit>\r
-git push origin release/x.y.z[.w]\r
-</code></pre>\r
-<p>When creating major/minor releases <code><commit></code> is usually a commit in the <code>master</code> branch.\r
-With service releases, branch from an existing <code>release/*</code> branch instead.</p>\r
-<p>Instead of doing this clone+branch+push sequence for every SDK repository separately,\r
-please use the included <code>release-helper.sh</code> shell script to perform this mechanical work. The script supports many useful basic git commands which all perform the requested operation on all the release train repositories. The operations can be seen from the help text printed by the script when given no arguments:</p>\r
-<pre><code>Usage: release-helper.sh <version> <branch-name> <user-name> clone|branch|checkout|fetch|list-tags|pull|push|push-tags|remove-tag|status|tag\r
-</code></pre>\r
-<p>Always begin by cloning all the repositories for working on</p>\r
-<pre><code>./release-helper.sh x.y.z release/x.y.z your-git-username clone\r
-</code></pre>\r
-<p>This will create a directory called <code>x.y.z</code> under the current working directory and clone all the repositories under it. The first <code><version></code> argument is only used for the base working directory <code>x.y.z</code>. The second <code><branch-name></code> argument tells what branch to specify to the action, i.e. <code>branch</code>, <code>checkout</code>, etc.</p>\r
-<p>Branching and pushing the branches to remote happens as follows:</p>\r
-<pre><code>./release-helper.sh x.y.z release/x.y.z your-git-username branch\r
-./release-helper.sh x.y.z release/x.y.z your-git-username checkout\r
-./release-helper.sh x.y.z release/x.y.z your-git-username push\r
-</code></pre>\r
-<p>If you're creating a service release <code>x.y.w</code> from <code>x.y.z</code> where <code>w > z</code>, do this:</p>\r
-<pre><code>./release-helper.sh x.y.w release/x.y.z your-git-username clone\r
-./release-helper.sh x.y.w release/x.y.z your-git-username checkout\r
-./release-helper.sh x.y.w release/x.y.w your-git-username branch\r
-./release-helper.sh x.y.w release/x.y.w your-git-username checkout\r
-# Perhaps make modifications to the branch here and commit to each project separately\r
-./release-helper.sh x.y.w release/x.y.w your-git-username push\r
-</code></pre>\r
-<h2>Prepare release branch for use</h2>\r
-<p>In release 1.31.0 Simantics started using the wonderful tool from Obeo (<a href="https://github.com/mbarbero/fr.obeo.releng.targetplatform">https://github.com/mbarbero/fr.obeo.releng.targetplatform</a>) to generate <code>.target</code> files from <code>.tpd</code> files which allow much simpler specification of the target contents and also composition of .tpd files via inclusion.</p>\r
-<p>In the following steps, it is recommended to ensure every <code>.target</code> file is up-to-date by regenerating them from <code>.tpd</code> files. While doing so, take care to use up-to-date online contents to perform the generation.</p>\r
-<h3>Prepare <code>.tpd</code> files in platform repository</h3>\r
-<ol start="0">\r
-<li>\r
-<p>Ensure you've ran</p>\r
-<pre><code>./release-helper.sh x.y.z release/x.y.z your-git-username checkout\r
-</code></pre>\r
-<p>to make sure you're working on the release branch before doing anything.</p>\r
-</li>\r
-<li>\r
-<p>Go into the cloned platform repository at <code>x.y.z/platform</code></p>\r
-</li>\r
-<li>\r
-<p>Edit all target platform files in <code>releng/org.simantics.sdk.build.targetdefinition/</code>, i.e.</p>\r
-<ul>\r
-<li><code>org.simantics.sdk.build.targetdefinition.tpd</code></li>\r
-<li><code>simantics.tpd</code></li>\r
-</ul>\r
-<p>Replace the following rows in both mentioned files:</p>\r
-<pre><code>location "http://www.simantics.org/download/master/external-components/maven" {\r
-location "http://www.simantics.org/download/master/external-components/manual" {\r
-include "http://www.simantics.org/download/master/org.simantics.sdk.build.targetdefinition.tpd"\r
-location "http://www.simantics.org/download/master/sdk" {\r
-</code></pre>\r
-<p>with</p>\r
-<pre><code>location "http://www.simantics.org/download/release/x.y.z[.w]/maven" {\r
-location "http://www.simantics.org/download/release/x.y.z[.w]/manual" {\r
-include "http://www.simantics.org/download/release/x.y.z[.w]/org.simantics.sdk.build.targetdefinition.tpd"\r
-location "http://www.simantics.org/download/release/x.y.z[.w]/sdk" {\r
-</code></pre>\r
-</li>\r
-<li>\r
-<p>Edit version number of <code>org.simantics.sdk</code> feature in <code>features/org.simantics.sdk.feature/feature.xml</code> to <code>x.y.z</code>.</p>\r
-<pre><code><feature\r
- id="org.simantics.sdk"\r
- label="Simantics SDK"\r
- version="x.y.z"\r
- provider-name="VTT Technical Research Centre of Finland">\r
-</code></pre>\r
-<p>If the release branch you're setting up is a hotfix-release <code>x.y.z.w</code>,\r
-don't include the <code>.w</code> part in this version.</p>\r
-<p>An example of these changes can be seen in\r
-<a href="https://gerrit.simantics.org/r/gitweb?p=simantics%2Fplatform.git;a=commit;h=5271b0faa98303225d00e6cd838d3fc52488545c">gitweb</a>\r
-or <a href="https://gerrit.simantics.org/r/#/c/1361/">review 1361</a>.</p>\r
-</li>\r
-<li>\r