How to Release PyMite

Author: Dean Hall
Id:HowToReleasePyMite.txt 645 2010-10-18 12:27:57Z dwhall256

Purpose

This document describes how to make a package release of the PyMite project. In doing so, it is intended strictly for the PyMite release manager.

Overview

Creating a release of PyMite involves updating information in a number of places and performing some housekeeping actions, but it is a fairly straightforward process that can be accomplished by performing the following list of actions in the prescribed order:

  • Create a ticket in the issue tracking system

    • Give the ticket a title like "Create release 03"
    • Assign the ticket to the proper milestone
    • Accept the ticket
  • Create a branch for the issue (there will be changes to files)

  • Edit the README file:

    • Update the ":Release:" number near the top of the file
    • Add thanks to anyone who gave helpful feedback
    • In the "Release Notes" section, create a new entry for the release
    • Add a line item into the entry for each significant new feature or fix
  • Edit src/vm/pm.h, update the value for the definition, PM_RELEASE

  • Run GNU indent on src/vm using the command make indent

  • Perform all the standard builds to see that they complete without error

    • make html
    • make TAGS
    • make check
    • make ipm
    • map(range, range(5))
    • Ctrl+D
    • make PLATFORM=at91sam7s-ek
    • make PLATFORM=avr
    • cd src/platform/at91sam7s-ek; arm-elf-size main.elf
    • cd ../avr; avr-size main.elf
  • Record the sizes of main.elf for at91sam7s-ek and avr in the ticket

  • Verify that a sample app runs on as many platforms as available

  • Check-in the branch and review

  • Mainline the branch

  • Tag the release in the repository and make the distribution file:

    $ make dist PM_RELEASE=RR
    
  • Upload the distribution file to the Python-on-a-chip downloads page

  • Announce the release on: