<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.slicer.org/w/index.php?action=history&amp;feed=atom&amp;title=Documentation%2F4.8%2FDevelopers%2FReleaseProcess</id>
	<title>Documentation/4.8/Developers/ReleaseProcess - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.slicer.org/w/index.php?action=history&amp;feed=atom&amp;title=Documentation%2F4.8%2FDevelopers%2FReleaseProcess"/>
	<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/4.8/Developers/ReleaseProcess&amp;action=history"/>
	<updated>2026-04-07T04:57:08Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.33.0</generator>
	<entry>
		<id>https://www.slicer.org/w/index.php?title=Documentation/4.8/Developers/ReleaseProcess&amp;diff=55703&amp;oldid=prev</id>
		<title>UpdateBot: Nightly -&gt; 4.8</title>
		<link rel="alternate" type="text/html" href="https://www.slicer.org/w/index.php?title=Documentation/4.8/Developers/ReleaseProcess&amp;diff=55703&amp;oldid=prev"/>
		<updated>2017-10-18T07:06:55Z</updated>

		<summary type="html">&lt;p&gt;Nightly -&amp;gt; 4.8&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;== Release planning ==&lt;br /&gt;
&lt;br /&gt;
Usually ~1 month before release.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
== Prerequisites ==&lt;br /&gt;
&amp;lt;small&amp;gt;&amp;lt;small&amp;gt;&lt;br /&gt;
{{documentation/banner&lt;br /&gt;
| text  = These updates should &amp;lt;b&amp;gt;NOT&amp;lt;/b&amp;gt; be needed anymore. See details below. }}&lt;br /&gt;
&amp;lt;/small&amp;gt;&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Following [http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&amp;amp;revision=22423 r22423], [http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&amp;amp;revision=22424 r22424] and [http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&amp;amp;revision=25430 r25430] documentation URLs should all reference the &amp;lt;code&amp;gt;Nightly&amp;lt;/code&amp;gt; namespace and are automatically updated at runtime.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;strike&amp;gt;Make sure to patch VS2008 using the script [https://gist.github.com/jcfr/3c7bef3f8b32f9f6ad4b fix-vc9-redist-manifests.ps1]&amp;lt;/strike&amp;gt;&lt;br /&gt;
&lt;br /&gt;
{{remark|green|VS2013 is now used}}&lt;br /&gt;
&lt;br /&gt;
* &amp;lt;strike&amp;gt;Update modules documentation link in help section (loadable, scripted and cli)&amp;lt;/strike&amp;gt;&lt;br /&gt;
** &amp;lt;strike&amp;gt;And some html links in Welcome module (Modules/Loadable/SlicerWelcome/Resources/HTML)&amp;lt;/strike&amp;gt; - Not needed since [http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&amp;amp;revision=25430 r25430]&lt;br /&gt;
** &amp;lt;strike&amp;gt;Update CLI XML description files&amp;lt;/strike&amp;gt;&lt;br /&gt;
&amp;lt;strike&amp;gt;&lt;br /&gt;
Commit message: &amp;lt;code&amp;gt;Update Documentation to X.Y&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
For example: [http://viewvc.slicer.org/viewvc.cgi/Slicer4?view=revision&amp;amp;revision=22407 r22407]&lt;br /&gt;
&amp;lt;/strike&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Release-candidate ==&lt;br /&gt;
&amp;lt;small&amp;gt;&amp;lt;small&amp;gt;&lt;br /&gt;
{{documentation/banner&lt;br /&gt;
| text  = This step is &amp;lt;b&amp;gt;NOT&amp;lt;/b&amp;gt; part of our current release process. }}&lt;br /&gt;
&amp;lt;/small&amp;gt;&amp;lt;/small&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Since there all development occurs on &amp;lt;code&amp;gt;master&amp;lt;/code&amp;gt;, each time version is updated, two commits will be required.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;code&amp;gt;&amp;lt;RC&amp;gt;&amp;lt;/code&amp;gt; corresponds to the release candidate number. It is greater or equal to one.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol start=&amp;quot;1&amp;quot; style=&amp;quot;list-style-type: decimal;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Update the Slicer version information for the release candidate:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;ol style=&amp;quot;list-style-type: lower-roman;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;In &amp;lt;code&amp;gt;CMakeLists.txt&amp;lt;/code&amp;gt;, uncomment and set:&amp;lt;/p&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;Slicer_VERSION_TWEAK&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;0&amp;lt;/code&amp;gt;&lt;br /&gt;
*&amp;lt;code&amp;gt;Slicer_VERSION_RC&amp;lt;/code&amp;gt; to &amp;lt;code&amp;gt;&amp;lt;RC&amp;gt;&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;p&amp;gt;...and if this is the first release candidate, update at least one these variables: &amp;lt;code&amp;gt;Slicer_VERSION_MAJOR&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Slicer_VERSION_MINOR&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Slicer_VERSION_PATCH&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Re-run CMake in order to update &amp;lt;code&amp;gt;Utilities/Scripts/SlicerWizard/__version__.py&amp;lt;/code&amp;gt;.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Commit the above changes using this message:&amp;lt;/p&amp;gt;&lt;br /&gt;
 ENH: Slicer X.Y.Z-rc&amp;lt;RC&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Generate packages based on REVISION associated with step 1.&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Update the Slicer version information for the development:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;ol style=&amp;quot;list-style-type: lower-roman;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;In &amp;lt;code&amp;gt;CMakeLists.txt&amp;lt;/code&amp;gt;, comment &amp;lt;code&amp;gt;Slicer_VERSION_TWEAK&amp;lt;/code&amp;gt; so that the next builds will contain the date associated with the last commit.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Re-run CMake in order to update &amp;lt;code&amp;gt;Utilities/Scripts/SlicerWizard/__version__.py&amp;lt;/code&amp;gt;.&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Commit the above changes using this message:&amp;lt;/p&amp;gt;&lt;br /&gt;
 ENH: Begin post-X.Y.Z-rc&amp;lt;RC&amp;gt; development&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Release ==&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
&amp;lt;small&amp;gt;&amp;lt;small&amp;gt;&lt;br /&gt;
{{documentation/banner&lt;br /&gt;
| text  = Start here. &lt;br /&gt;
| background-color = 8FBC8F }}&lt;br /&gt;
&amp;lt;/small&amp;gt;&amp;lt;/small&amp;gt;&lt;br /&gt;
--&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Since there all development occurs on &amp;lt;code&amp;gt;master&amp;lt;/code&amp;gt;, each time version is updated, two commits will be required.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol start=&amp;quot;1&amp;quot; style=&amp;quot;list-style-type: decimal;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Update the Slicer version information for the release:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;ol style=&amp;quot;list-style-type: lower-roman;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;In &amp;lt;code&amp;gt;CMakeLists.txt&amp;lt;/code&amp;gt;, update at least one these variables: &amp;lt;code&amp;gt;Slicer_VERSION_MAJOR&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Slicer_VERSION_MINOR&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;Slicer_VERSION_PATCH&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
  &amp;lt;p&amp;gt;Re-run CMake in order to update &amp;lt;code&amp;gt;Utilities/Scripts/SlicerWizard/__version__.py&amp;lt;/code&amp;gt;.&amp;lt;/p&amp;gt;&lt;br /&gt;
  &amp;lt;p&amp;gt;&amp;lt;small&amp;gt;{{note}}If not doing a clean build, make sure to explicitly specify the version re-configuring with &amp;lt;code&amp;gt;-DSlicer_VERSION_MAJOR:STRING=X -DSlicer_VERSION_MINOR:STRING=Y -DSlicer_VERSION_PATCH:STRING=Z .&amp;lt;/code&amp;gt;&amp;lt;/small&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Commit the above changes using this message like:&amp;lt;/p&amp;gt;&lt;br /&gt;
 ENH: Slicer X.Y.Z&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;Keep track of the &amp;lt;tt&amp;gt;SVN_REVISION&amp;lt;/tt&amp;gt; and &amp;lt;tt&amp;gt;SVN_BRANCH&amp;lt;/tt&amp;gt; for the next steps&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Update release scripts. See https://github.com/Slicer/DashboardScripts#rename-and-update-release-scripts&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;Generate packages running Slicer package scripts and Slicer extensions scripts on each platform. (These are the scripts updated in the previous step)&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Tag the repository:&amp;lt;/p&amp;gt;&lt;br /&gt;
SVN:&lt;br /&gt;
 svn copy -r&amp;lt;REVISION&amp;gt; http://svn.slicer.org/Slicer4/trunk  \&lt;br /&gt;
      http://svn.slicer.org/Slicer4/tags/Slicer-X-Y  \&lt;br /&gt;
     -m &amp;quot;ENH: Tag of X.Y.Z release based on r&amp;lt;REVISION&amp;gt;.&amp;quot;&lt;br /&gt;
&lt;br /&gt;
GIT:&lt;br /&gt;
 git tag -s -m &amp;quot;ENH: Slicer X.Y.Z&amp;quot; vX.Y.Z origin/master&lt;br /&gt;
 git push origin vX.Y.Z&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Update the Slicer version information for the development:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;ol style=&amp;quot;list-style-type: lower-roman;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;In &amp;lt;code&amp;gt;CMakeLists.txt&amp;lt;/code&amp;gt;,&amp;lt;/p&amp;gt;&lt;br /&gt;
* Update &amp;lt;code&amp;gt;Slicer_VERSION_MAJOR&amp;lt;/code&amp;gt; and/or &amp;lt;code&amp;gt;Slicer_VERSION_MINOR&amp;lt;/code&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&lt;br /&gt;
  &amp;lt;p&amp;gt;Re-run CMake in order to update &amp;lt;code&amp;gt;Utilities/Scripts/SlicerWizard/__version__.py&amp;lt;/code&amp;gt;.&amp;lt;/p&amp;gt;&lt;br /&gt;
  &amp;lt;p&amp;gt;&amp;lt;small&amp;gt;{{note}}If not doing a clean build, make sure to explicitly specify the version re-configuring with &amp;lt;code&amp;gt;-DSlicer_VERSION_MAJOR:STRING=X -DSlicer_VERSION_MINOR:STRING=Y -DSlicer_VERSION_PATCH:STRING=Z .&amp;lt;/code&amp;gt;&amp;lt;/small&amp;gt;&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Commit the above changes using this message like:&amp;lt;/p&amp;gt;&lt;br /&gt;
 ENH: Begin X.Y.Z development&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Post release ==&lt;br /&gt;
&lt;br /&gt;
=== Create a release branch ===&lt;br /&gt;
&lt;br /&gt;
 svn copy -r &amp;lt;REVISION&amp;gt; http://svn.slicer.org/Slicer4/trunk http://svn.slicer.org/Slicer4/branches/Slicer-X-Y \&lt;br /&gt;
  -m &amp;quot;ENH: Branching from trunk to Slicer-X-Y at r&amp;lt;REVISION&amp;gt;&amp;quot;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
  svn checkout http://svn.slicer.org/Slicer4/branches/Slicer-X-Y&lt;br /&gt;
&lt;br /&gt;
=== Generate ChangeLog ===&lt;br /&gt;
&lt;br /&gt;
* See [https://raw.github.com/cryos/avogadro/master/scripts/gitlog2changelog.py gitlog2changelog.py]. More details [http://blog.cryos.net/archives/202-Git-and-Automatic-ChangeLog-Generation.html here].&lt;br /&gt;
&lt;br /&gt;
* Update [[Release Details]] page using generated ChangeLog&lt;br /&gt;
&lt;br /&gt;
=== Update Mantis ===&lt;br /&gt;
&lt;br /&gt;
* &amp;quot;Release&amp;quot; current target&lt;br /&gt;
* Create new target&lt;br /&gt;
* Check the &amp;quot;fixed in&amp;quot; fields&lt;br /&gt;
&lt;br /&gt;
=== Midas ===&lt;br /&gt;
&lt;br /&gt;
==== Clean-up older nightly packages ====&lt;br /&gt;
&lt;br /&gt;
See https://gist.github.com/jcfr/ea9ef199bd5a3e071b8f &lt;br /&gt;
&lt;br /&gt;
==== Tag release packages ====&lt;br /&gt;
&lt;br /&gt;
* If needed, create a X.Y.Z folder in [http://slicer.kitware.com/midas3/folder/274 Slicer/Packages/Application/Release]&lt;br /&gt;
** Copy uploaded packages into the folder created above (Keep the default &amp;lt;b&amp;gt;Create a reference to the existing item&amp;lt;/b&amp;gt;)&lt;br /&gt;
** Identify the item_id associated with uploaded packages. For example: 11926, 11925, 11927, 11992&lt;br /&gt;
** From Kitware internal network, SSH connect to &amp;lt;code&amp;gt;jcfr@slicer.kitware.com&amp;lt;/code&amp;gt; (or &amp;lt;code&amp;gt;jcfr@192.168.120.210&amp;lt;/code&amp;gt;)&lt;br /&gt;
** Connect to mysql using &amp;lt;code&amp;gt;mysql -u midas -p&amp;lt;/code&amp;gt;&lt;br /&gt;
*** See file &amp;lt;code&amp;gt;/var/www/midas3/core/configs/database.local.ini&amp;lt;/code&amp;gt; for password&lt;br /&gt;
*** Choose midas database: &amp;lt;code&amp;gt;use midas&amp;lt;/code&amp;gt;&lt;br /&gt;
** List packages associated with identified items and check they are the appropriate ones:&lt;br /&gt;
*** &amp;lt;code&amp;gt;select *  from slicerpackages_package as p , item as i where i.item_id = p.item_id and p.item_id in (11926, 11925, 11927, 11992);&amp;lt;/code&amp;gt;&lt;br /&gt;
** Set release field&lt;br /&gt;
*** &amp;lt;code&amp;gt;update slicerpackages_package set `release`=&amp;quot;4.2.2-1&amp;quot; where item_id in (11926, 11925, 11927, 11992);&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==== Version NA-MIC data tree ====&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol start=&amp;quot;1&amp;quot; style=&amp;quot;list-style-type: decimal;&amp;quot;&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;[[Documentation/{{documentation/version}}/Developers/Tutorials/ObtainExtensionServerApiKey|Create an account on the extension server and obtain an API Key]]. You will then use your midas login and api key to substitute &amp;lt;code&amp;gt;&amp;lt;YOUR-MIDAS-LOGIN&amp;gt;&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;&amp;lt;YOUR-MIDAS-APIKEY&amp;gt;&amp;lt;/code&amp;gt; in the examples.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;If not already done, go to [http://slicer.kitware.com/midas3/community/23 NA-MIC community] and click on &amp;lt;code&amp;gt;Join community&amp;lt;/code&amp;gt;&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Send an email on the developer list asking to be added to the &amp;lt;code&amp;gt;DataManager&amp;lt;/code&amp;gt; group on NA-MIC community. That will grant you read/write permissions to the &amp;lt;code&amp;gt;Data&amp;lt;/code&amp;gt; folder and sub-folders.&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Install prerequisites&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ pip install pydas&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Identify &amp;lt;code&amp;gt;id&amp;lt;/code&amp;gt; of the &amp;lt;code&amp;gt;Data&amp;lt;/code&amp;gt; folder. For example [http://slicer.kitware.com/midas3/folder/301 301]&amp;lt;/p&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Simulate creation of &amp;lt;code&amp;gt;X.Y&amp;lt;/code&amp;gt; data folders based &amp;lt;code&amp;gt;Nightly&amp;lt;/code&amp;gt; ones&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ cd /path/to/Slicer/Base/Python/slicer/release&lt;br /&gt;
$ python midasdata.py --url=http://slicer.kitware.com/midas3 --data_id=301 \&lt;br /&gt;
  --email=&amp;lt;YOUR-MIDAS-LOGIN&amp;gt; --apikey=&amp;lt;YOUR-MIDAS-APIKEY&amp;gt; --source_version=Nightly --dest_version=X.Y --dry-run&lt;br /&gt;
Application ( folder_id: 302 )&lt;br /&gt;
'-Nightly ( folder_id: 831 )&lt;br /&gt;
'-'-Testing ( folder_id: 832 )&lt;br /&gt;
'-'-'-Baseline ( folder_id: 889 )&lt;br /&gt;
'-'-'-'-DiffusionTensorImagingTutorial.png ( item_id: 12067 )&lt;br /&gt;
'-'-'-'-NeurosurgicalPlanningTutorial.png ( item_id: 12066 )&lt;br /&gt;
'-'-'-'-SlicerTestingTest.png ( item_id: 17760 )&lt;br /&gt;
'-'-'-Input ( folder_id: 833 )&lt;br /&gt;
'-'-'-'-AtlasTests ( folder_id: 834 )&lt;br /&gt;
'-'-'-'-'-2012-10-26-BrainAtlas.mrb ( item_id: 10276 )&lt;br /&gt;
[...]&lt;br /&gt;
Module: VotingBinaryHoleFillingImageFilter ( folder_id: 1491 )&lt;br /&gt;
'-Nightly ( folder_id: 1491 )&lt;br /&gt;
'-'-Testing ( folder_id: 1492 )&lt;br /&gt;
'-'-'-Baseline ( folder_id: 1493 )&lt;br /&gt;
'-'-'-'-VotingBinaryHoleFillingImageFilterTest.nhdr ( item_id: 103418 )&lt;br /&gt;
'-'-'-'-VotingBinaryHoleFillingImageFilterTest.raw.gz ( item_id: 103419 )&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Create &amp;lt;code&amp;gt;X.Y&amp;lt;/code&amp;gt; data tree based &amp;lt;code&amp;gt;Nightly&amp;lt;/code&amp;gt; ones&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ python midasdata.py --url=http://slicer.kitware.com/midas3 --data_id=301 \&lt;br /&gt;
  --email=&amp;lt;YOUR-MIDAS-LOGIN&amp;gt; --apikey=&amp;lt;YOUR-MIDAS-APIKEY&amp;gt; --source_version=Nightly --dest_version=X.Y&lt;br /&gt;
&lt;br /&gt;
Versioning of the NA-MIC Data tree for release X.Y...&lt;br /&gt;
Versioning Modules...&lt;br /&gt;
[...]&lt;br /&gt;
Versioning Modules...[DONE]&lt;br /&gt;
Versioning Application...&lt;br /&gt;
Creating folder X.Y under Application directory&lt;br /&gt;
Duplicating subfolders from Nightly to X.Y...&lt;br /&gt;
Duplicating subfolders from Nightly to X.Y...[DONE]&lt;br /&gt;
Versioning Application...[DONE]&lt;br /&gt;
Versioning of the NA-MIC Data tree for release X.Y...[DONE]&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
=== Update Slicer wiki ===&lt;br /&gt;
&lt;br /&gt;
There are two steps involved:&lt;br /&gt;
* copy of the pages associated with the &amp;lt;code&amp;gt;Nightly&amp;lt;/code&amp;gt; namespace into the &amp;lt;code&amp;gt;X.Y&amp;lt;/code&amp;gt; namespace.&lt;br /&gt;
* update of permanent pages referencing the current Slicer version&lt;br /&gt;
&lt;br /&gt;
As of November 2016, the process is fully automated and can be done using [https://github.com/Slicer/Slicer/tree/master/Base/Python/slicer/release/wiki.py Base/Python/slicer/release/wiki.py] script.&lt;br /&gt;
&lt;br /&gt;
1) Install prerequisites:&lt;br /&gt;
&lt;br /&gt;
* Check with &amp;lt;email&amp;gt;jchris.fillionr@kitware.com&amp;lt;/email&amp;gt; to get the credential associated with &amp;lt;code&amp;gt;UpdateBot&amp;lt;/code&amp;gt; user.&lt;br /&gt;
* Install [https://pypi.python.org/pypi/mwdoc mwdoc]:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ pip install mwdoc&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
2) Query current version information:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ python Base/Python/slicer/release/wiki.py query&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
3) Copy and update pages &lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
$ python Base/Python/slicer/release/wiki.py update 4.6&lt;br /&gt;
$ python Base/Python/slicer/release/wiki.py copy 4.6&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Pages expected to be updated are the following:&lt;br /&gt;
&lt;br /&gt;
* [[Template:Documentation/prevversion]]&lt;br /&gt;
* [[Template:Documentation/nextversion]]&lt;br /&gt;
* [[Template:Documentation/currentversion]]&lt;br /&gt;
* [[Template:Documentation/versionlist]]&lt;br /&gt;
* [[Template:Documentation/acknowledgments-versionlist]]&lt;br /&gt;
* [[Documentation]]&lt;br /&gt;
* [[Documentation/Release/Acknowledgments]]&lt;br /&gt;
&lt;br /&gt;
Pages with #REDIRECT expected to be updated are the following: &lt;br /&gt;
&lt;br /&gt;
* [[FAQ]]&lt;br /&gt;
* [[Documentation/Release]]&lt;br /&gt;
* [[Documentation/Release/Announcements]]&lt;br /&gt;
* [[Documentation/Release/Report a problem]]&lt;br /&gt;
* [[Documentation/UserTraining]]&lt;br /&gt;
* [[Documentation/UserFeedback]]&lt;br /&gt;
* [[Documentation/Release/SlicerApplication/HardwareConfiguration]]&lt;br /&gt;
&lt;br /&gt;
=== CDash ===&lt;br /&gt;
&lt;br /&gt;
&amp;lt;ol start=&amp;quot;1&amp;quot; style=&amp;quot;list-style-type: decimal;&amp;quot;&amp;gt;&lt;br /&gt;
&amp;lt;li&amp;gt;&amp;lt;p&amp;gt;Create new CDash groups for extension submissions associated with &amp;lt;code&amp;gt;X.Y&amp;lt;/code&amp;gt; release:&amp;lt;/p&amp;gt;&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
Extensions-X.Y-Nightly&lt;br /&gt;
Extensions-X.Y-Continuous&lt;br /&gt;
&amp;lt;/pre&amp;gt;&amp;lt;/li&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/ol&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== ExtensionsIndex ==&lt;br /&gt;
&lt;br /&gt;
See https://github.com/Slicer/ExtensionsIndex&lt;br /&gt;
&lt;br /&gt;
1) Create branch X.Y based of master&lt;br /&gt;
&lt;br /&gt;
=== Update external website ===&lt;br /&gt;
&lt;br /&gt;
* http://en.wikipedia.org/wiki/3DSlicer&lt;br /&gt;
* http://www.nitrc.org/projects/slicer/&lt;br /&gt;
&lt;br /&gt;
=== Tag associated projects ===&lt;br /&gt;
* Slicer/SlicerExecutionModel&lt;br /&gt;
* Slicer/VTK&lt;br /&gt;
* Slicer/ITK&lt;br /&gt;
* commontk/CTK ?&lt;br /&gt;
* commontk/PythonQt ?&lt;br /&gt;
&lt;br /&gt;
=== Update User Survey ===&lt;br /&gt;
&lt;br /&gt;
Title of the survey should be updated.&lt;br /&gt;
See https://docs.google.com/forms/d/1rggxoTV5KL_vt3gX9BNNAcKH4pnL5lkMqPnklOThINg&lt;br /&gt;
&lt;br /&gt;
== Sign packages ==&lt;br /&gt;
&lt;br /&gt;
=== MacOSX ===&lt;br /&gt;
As discussed in issue [http://na-mic.org/Bug/view.php?id=3965 #3965], the code signing command is of the form:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
codesign --deep --force --sign &amp;quot;Developer ID Application: &amp;lt;Name-of-certificate-in-keychain&amp;gt;&amp;quot; ./Slicer.app&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
where the argument to &amp;lt;code&amp;gt;--sign&amp;lt;/code&amp;gt; is the name of the developer's certificate in Mac OS X Keychain.app .&lt;br /&gt;
&lt;br /&gt;
'''Note: The signing of MacOSX package is not yet implemented in our nightly and release build workflows.''' See [[Documentation/Nightly/Developers/Mac_OS_X_Code_Signing]] for more information.&lt;br /&gt;
&lt;br /&gt;
=== Windows ===&lt;br /&gt;
&lt;br /&gt;
TBD - See [http://na-mic.org/Bug/view.php?id=2697 #2697]&lt;br /&gt;
&lt;br /&gt;
Also see [[Documentation/Nightly/Developers/Windows_Code_Signing]] for more information.&lt;br /&gt;
&lt;br /&gt;
== Backport commit into release branch ==&lt;br /&gt;
&lt;br /&gt;
The following steps will lead to the creation of new git-svn clone having two branches:&lt;br /&gt;
* &amp;lt;code&amp;gt;git-svn&amp;lt;/code&amp;gt;&lt;br /&gt;
* &amp;lt;code&amp;gt;git-svn-XY&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Reference: http://www.dmo.ca/blog/20070608113513/&lt;br /&gt;
&lt;br /&gt;
=== Step 1: Checkout sources ===&lt;br /&gt;
&lt;br /&gt;
 git clone git://github.com/Slicer/Slicer.git Slicer-X.Y&lt;br /&gt;
 cd Slicer-X.Y&lt;br /&gt;
 git svn init http://svn.slicer.org/Slicer4/trunk&lt;br /&gt;
 git update-ref refs/remotes/git-svn refs/remotes/origin/master&lt;br /&gt;
 git checkout master&lt;br /&gt;
 git svn rebase&lt;br /&gt;
&lt;br /&gt;
=== Step 2: Add release branch remote ===&lt;br /&gt;
&lt;br /&gt;
Edit &amp;lt;code&amp;gt;.git/config&amp;lt;/code&amp;gt;, and in addition to the existing 'git-svn' remote, add the following one:&lt;br /&gt;
&lt;br /&gt;
 [svn-remote &amp;quot;svn-XY&amp;quot;]&lt;br /&gt;
    url = http://svn.slicer.org/Slicer4/branches/Slicer-X-Y&lt;br /&gt;
    fetch = :refs/remotes/git-svn-XY&lt;br /&gt;
&lt;br /&gt;
=== Step 3: Pull associated SVN branch ===&lt;br /&gt;
&lt;br /&gt;
 git svn fetch svn-XY&lt;br /&gt;
 git checkout -b master-XY git-svn-XY&lt;br /&gt;
&lt;br /&gt;
=== Step 4: Backport ===&lt;br /&gt;
&lt;br /&gt;
We can now cherry pick commit associated with master (trunk) into &amp;lt;code&amp;gt;master-XY&amp;lt;/code&amp;gt; (Slicer-X-Y)&lt;br /&gt;
&lt;br /&gt;
=== Step 5: Create a patch release ===&lt;br /&gt;
&lt;br /&gt;
{{wip}}&lt;br /&gt;
&lt;br /&gt;
&amp;lt;!--&lt;br /&gt;
Slicer trunk: Update Major/Minor/Patch version to match latest release&lt;br /&gt;
--&amp;gt;&lt;/div&gt;</summary>
		<author><name>UpdateBot</name></author>
		
	</entry>
</feed>