SDCC 3.7.0 Release Plan - roybaer/sdcc-wiki GitHub Wiki

Table of Contents

Release manager

?

Target platforms

There are no target platforms, no binaries will be built.

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, tlcs90, hc08, s08 and stm8.
  • Preliminary, in development: pic14 and pic16.
  • Unknown status: TININative, ds400.
  • No longer maintained: avr.

Deliverables

The final deliverables will be:

  • A source archive that can rebuild all binaries
  • A documentation archive

Acceptance criteria

  • Have an updated README
  • Shall compile without errors on at least GNU/Linux (amd64), GNU/Linux (x86), macOS (amd64) and Windows (x86).
  • Pass regression tests on all "Mature" targets (mcs51, ds390, z80, z180, r2k, r3ka, tlcs90, gbz80, hc08, s08 and stm8) on Linux, Windows, Mac OS X, NetBSD and Solaris.

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 2018-02-05
  2. Take feedback and wish list items DONE 2018-02-05
  3. Change the version number in .version, sdcc.spec, doc/INSTALL.txt and everywhere else it appears DONE 2018-02-07
  4. Announce a code freeze DONE 2018-02-07
    1. The release candidate RC1 svn tag will be created. NOTE: the tag should be created on a complete sdcc trunk: http://svn.code.sf.net/p/sdcc/code/trunk DONE 2018-02-11
    2. The release manager will make a release candidate RC1 DONE 2018-02-11
    3. RC1 deliverables will be released to the staging area so that people can test the installers. DONE 2018-02-11
    4. Update the NEWS section of sdcc-web/index.php: move previous release to Past News and add RC1 to News. DONE 2018-02-11
  5. The release svn tag will be created. NOTE: the tag should be created on a complete sdcc trunk: http://svn.code.sf.net/p/sdcc/code/trunk 2018-02-18
  6. The release manager will make the release deliverables. 2018-02-18
  7. Quick test of the installers 2018-02-18
  8. Deliverables will be blessed and released 2018-02-18
  9. Mark the new files as default download for their operating system. 2018-02-18
  10. Update the NEWS section of sdcc-web/index.php: move previous release to previous.php, move RC news to Past News and add new release to News. 2018-02-18
  11. The release will be announced on SourceForge News, [email protected] and [email protected] mailing lists 2018-02-18

Tasks

Random set of tasks that someone might want to do:

  • Update the web page before and after the release
  • Update the documentation
  • Announce the release elsewhere (e.g. hardware vendor forums)
⚠️ **GitHub.com Fallback** ⚠️