ITK/Release Schedule: Difference between revisions

From KitwarePublic
< ITK
Jump to navigationJump to search
(Replaced content with "Plans for upcoming releases can be found in the [https://github.com/InsightSoftwareConsortium/ITK/milestones ITK GitHub milestones].")
 
(47 intermediate revisions by 5 users not shown)
Line 1: Line 1:
The next release is 4.1 scheduled for March 1st, 2012.
Plans for upcoming releases can be found in the [https://github.com/InsightSoftwareConsortium/ITK/milestones ITK GitHub milestones].
 
== Release Life Cycle ==
 
=== Last period for adding classes and features ===
 
* New classes will be selected from good reviews from the Insight Journal
* New features and new methods can be added during this period.
 
=== Feature Freeze ===
 
* Increase code coverage
** address any UNTESTED files
** address files with code coverage lower than 80%
* Address Run-time memory issues
** Purify reports
** Valgrind reports
 
=== RC process ===
 
* No new features should merged during the feature freeze, i.e. ''ENH:'' commits, although they can be preparred in Gerrit.
* Release candidates (RC's) will be tagged weekly.
* RC's will be tagged after dashboard examination and discussion at the Friday TCon.
* The repository will be hard frozen to only allow merging by gatekeepers on Wednesday evening before the dashboards start.  The freeze will be released after tagging.
* For the final RC, only gatekeeper merges will occur.
 
=== Posting Tarballs ===
 
* Tarballs are posted to SourceForge
* Tarballs are linked from the ITK Download
 
== Release 4.1 Schedule ==
 
{| border="1"
|- bgcolor="#abcdef"
! Release Number !! Start Date !! End Date
|-
| RC Cycles || February 1  2012 || February 24 2012
|-
| Testing tarballs || February 29 2012 || February 29 2012
|-
| Posting tarballs || March 1 2012 || March 1 2012
|}
 
== Release 4.2 Schedule ==
 
{| border="1"
|- bgcolor="#abcdef"
! Release Number !! Start Date !! End Date
|-
| RC Cycles || May 25  2012 || June 8 2012
|-
| Testing tarballs || June 11 2012 || June 11 2012
|-
| Posting tarballs || June 11 2012 || June 11 2012
|}
 
== Check-list for Moving Code from IJ to Gerrit and from Gerrit ==
 
=== For IJ Articles To Gerrit ===
 
* Responsible developer should add a review '''before''' moving into local copy of Gerrit. Please provide authors with feedback regarding changes that were made to conform to ITK style/documentation etc.
 
=== For Adding Images to Input or Baseline ===
 
* Images should be '''SMALL'''.
** The source tree is not an image database, but a source code repository.
** Adding an image larger than 50Kb should be justified by a discussion in the Developers list
* Regression images should not use Analyze format unless the test is for the AnalyzeImageIO and related classes.
* Images should use non-trivial Metadata.
** Origin should be different form zeros
** Spacing should be different from ones, and it should be anisotropic
** Direction should be different from Identity
 
=== For Moving Code From Review ===
* At least one independent (other than contributor) should sign off on the API
* Coverage should be as close to 100% as possible.
** and never lower than 90%.
** For example, itkTransformIOBase.cxx is only at 63% coverage. Should be easily fixed by adding a Print() to one of the tests.
 
=== For All ===
* Check all comments for proper English
* Should pass KWStyle. IJ articles should be checked with KWStyle before checking into repository.
* Should pass PrintSelf. IJ articles should pass PrintSelf check before checking into repository.
* ITK_EXPORT should appear in each class definition. This triggers the PrintSelf checker.
* Replace itkGetMacro with itkGetConstMacro.
* Header file should contain Insight Journal citation
** Using the "handle" link.
* Use vcl verions of all transcendental functions.
** For example, itkGaborKernelFunction used sin() and cos() rather than vcl_sin() and vcl_cos().
* Progress should be present for all filters. Use itk::SimplerFilterWatcher to exercise progress and PrintSelfs.
* When appropriate, class should handle image directions. Tests should use non-default values for origin, spacing and dimension.
** GaborImageSource did not provide methods to set/get directions.
* Regression tests names should when possible have the same name as the test.
* Exceptions should be descriptive and provide as much information as possible
* Member data should be private with access if required through Get methods.
 
== Release History ==
* [[ITK_Previous_Releases|ITK Release History]]

Latest revision as of 17:57, 18 December 2018

Plans for upcoming releases can be found in the ITK GitHub milestones.