Changes between Initial Version and Version 1 of BluePrint/Releases


Ignore:
Timestamp:
11/25/19 13:48:54 (5 years ago)
Author:
Dominic König
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • BluePrint/Releases

    v1 v1  
     1= !BluePrint: Releases =
     2[[TOC]]
     3
     4== Introduction ==
     5
     6Sahana Eden releases:
     7- ensure stability of core APIs, features and data models as basis for the implementation of custom solutions
     8- serve as reference points for user documentation
     9- serve as targets for issue resolution
     10- provide support tools for database migration
     11- provide migration pathways for backward-incompatible API changes
     12
     13== Stable-Repository ==
     14
     15Releases will be published in a dedicated "stable" repository on GitHub.
     16
     17== Release Numbering ==
     18
     19Release numbering will use a three-number schema like:
     20
     21{{{
     221.0.0 => Major.Minor.Update
     23}}}
     24
     25=== Update ===
     26
     27A change in the update number indicates a maintenance update of a release:
     28
     29- releases critical fixes and enhancements (e.g. security issues, stability/performance issues, bugs)
     30- can contain minor enhancements, or preview-versions of new features
     31- can contain visual/UX improvements, but do not generally change behavior
     32- can add new optional dependencies
     33- is always API compatible (or backwards-compatible)
     34- do not require configuration updates
     35- do not require a database migration (web2py automatic migration sufficient)
     36
     37=> simple pull+automigrate sufficient
     38=> upgrade can be fully automated/scripted
     39=> no changes in custom templates required
     40
     41=== Minor ===
     42
     43A change in the minor release number indicates a new release in a release series:
     44
     45- releases regular fixes and improvements, including new feature sets
     46- is always API compatible (or backwards-compatible)
     47- can add new mandatory dependencies
     48- can require configuration updates
     49- can require scripted database migration
     50
     51=> upgrade can additionally require a configuration update and/or scripted database migration
     52=> upgrade can be performed manually by sysadmins by following step-by-step instructions
     53=> upgrade of custom templates could in rare cases require intervention by template developer
     54
     55=== Major ===
     56
     57A change in the major release number indicates a new release series:
     58
     59- releases major framework changes
     60- can break API backwards-compatibility and require adaption of custom template code and/or concepts
     61- can change or add dependencies, both optional and mandatory
     62- can require configuration updates
     63- can require data migrations both scripted and manual
     64
     65=> upgrade will most likely require a manual database migration
     66=> upgrade of custom templates will require intervention by template developer and/or professional support
     67
     68== Requirements before Release ==
     69
     70=== All Releases ===
     71
     72- all critical issues, and issues targeting this release, are closed
     73- change log is complete
     74- all unit tests pass
     75- smoke tests pass for all standard templates for all demo accounts of the respective template (minimum admin@example.com and normaluser@example.com)
     76- template-specific selenium tests pass
     77- disputed trunk changes resolved
     78
     79=== Minor or Major Number Release ===
     80
     81- all API changes documented
     82- database migration scripts complete
     83- migration instructions complete
     84- documentation updates ready for roll-out
     85
     86== Requirements for Release ==
     87
     88- Tagged commit in stable-repository (after non-selective pull from trunk)
     89- Change log published on GitHub releases
     90- Deployment tools can roll out dependencies
     91- Announcement on mailing list
     92
     93----
     94BluePrint