Difference between revisions of "SDCC 3.3.0 Release Plan"

From SDCC wiki
Jump to: navigation, search
(Release manager)
(Schedule)
Line 38: Line 38:
  
 
The schedule and approximate timings are:
 
The schedule and approximate timings are:
#Announce intention to do a release
+
#Announce intention to do a release '''(DONE)'''
#Take feedback and wish list items
+
#Take feedback and wish list items '''(DONE)'''
#Change the version number in .version, sdcc.spec, doc/sdccman.lyx, doc/INSTALL.txt and everywhere else it appears
+
#Change the version number in .version, sdcc.spec, doc/sdccman.lyx, doc/INSTALL.txt and everywhere else it appears '''(DONE 2013-05-04)'''
 
#Announce a code freeze
 
#Announce a code freeze
 
##The release candidate RC1 svn tag will be created. ''NOTE: the tag should be created on a complete sdcc trunk: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk''
 
##The release candidate RC1 svn tag will be created. ''NOTE: the tag should be created on a complete sdcc trunk: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk''

Revision as of 12:34, 4 May 2013

Contents

Release manager

Maarten Brock

Target platforms

SDCC binaries will be built for the following platforms, called also "official SDCC platforms":

  • Microsoft Windows 2000 and above (win32) 32bit x86
It is was reported that SDCC Hangs on Win98 SE, but I [borutr] couldn't reproduce it.
This means that SDCC runs on Windows 95/98/ME platforms too, but they are not officially supported.
  • glibc based Linux (linux) 32bit x86
  • Mac OS X (darwin) 32bit ppc and i386 universal binaries

gcc and command line tools will be used to build ports on all platforms. Windows port will be cross-compiled on Linux host.

Processor targets

Some targets are not ready or are no longer maintained. Any mature targets must be included and must pass the regression tests. Any others may be disabled in the binary to meet the acceptance criteria.

  • Mature, on-going maintenance: mcs51, ds390, z80, z180, r2k, r3ka, gbz80, hc08 and s08.
  • Preliminary, in development: pic14, pic16
  • Unknown status: TININative, ds400
  • No longer maintained: avr, xa51

Deliverables

The final deliverables will be:

  • A source archive that can rebuild all binaries
  • A documentation archive
  • An executable, NSIS based installer for Windows
  • A tarball that installs in /usr/local for Linux
  • A tarball that installs in /Developer/SDCC for Mac OS X

Acceptance criteria

The release needs to at minimum:

  • Have an updated README
  • Compile without warnings or errors on all platforms
  • Pass regression tests on all "Mature" targets: mcs51, ds390, z80, z180, r2k, r3ka, gbz80, hc08 and s08 on Linux, Windows and Mac OS X

Schedule

This schedule has no dates attached due to the volunteer nature of the project, however the release manager will try to keep things moving.

The schedule and approximate timings are:

  1. Announce intention to do a release (DONE)
  2. Take feedback and wish list items (DONE)
  3. Change the version number in .version, sdcc.spec, doc/sdccman.lyx, doc/INSTALL.txt and everywhere else it appears (DONE 2013-05-04)
  4. Announce a code freeze
    1. The release candidate RC1 svn tag will be created. NOTE: the tag should be created on a complete sdcc trunk: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk
    2. The release manager will make a release candidate RC1
    3. RC1 deliverables will be released to the staging area so that people can test the installers.
    4. Bugs (packaging, documentation, ...) found in RC1 will be fixed
    5. The release candidate RC2 svn tag will be created. NOTE: the tag should be created on a complete sdcc trunk: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk
    6. The release manager will make a release candidate RC2
    7. RC2 deliverables will be released to the staging area so that people can test the installers.
    8. Bugs (packaging, documentation, ...) found in RC2 will be fixed
  5. The release svn tag will be created. NOTE: the tag should be created on a complete sdcc trunk: https://sdcc.svn.sourceforge.net/svnroot/sdcc/trunk
  6. The release manager will make the release deliverables
  7. Quick test of the installers
  8. Deliverables will be blessed and released'
  9. The release will be announced on SourceForge News, sdcc-devel and sdcc-user mailing lists

Tasks

Random set of tasks that someone might want to do:

  • Update the web page before and after the release
  • Update the documentation
Personal tools
Namespaces

Variants
Actions
Navigation
Toolbox