== Quality Assurance Process for Library Releases == Before releasing new versions of the Tango library, we should assure that the quality is as high as possible by using the following guidelines. === Between releases === New code additions should follow the [wiki:CodingConventions coding conventions] document to make sure that there will be less work to clean up code as a new release get closer. In addition, as much as possible of the code should be unit test covered, and contracts used where applicable. === Unit testing === Prior to release, all unit tests should be executed and verified to execute correctly. In particular, no regressions will be allowed. === Other testing === A suite of examples and tests should be built against a debug version of Tango, and then run to make sure that no contracts are broken under common usage. === Assigned tickets === A release can not be made before all tickets assigned to a milestone, are closed. Generally, defect tickets should not be moved to later milestones, whereas task or enhancement tickets should be moved if a beta implementation of the feature cannot be implemented and committed within a month before release.