Author: | Dean Hall |
---|---|
Id: | HowToReleasePyMite.txt 355 2009-04-21 02:59:18Z dwhall256 |
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.
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 ticket that went into this release.
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/avr; avr-size main.elf
- Record the size of the AVR sample app in the ticket
Verify that a sample app runs on an AVR device; this can be done in one of the following ways:
- Download and run a known good app on an actual AVR device
- Build and run a known good app in Atmel's AvrStudio simulator
- Run a known good app on an AVR simulator
Verify that a sample app runs on an AT91SAM7 device; this can be done in one of the following ways:
Download and run a known good app on an actual AT91SAM7 device
cd src/platform/at91sam7s-ek; make
Connect the AT91SAM7S-EK to the computer via a USB cable
Apply a jumper to JP5 for 10 seconds to restore SAM-BA; remove the jumper
Disconnect, pause and reconnect the AT91SAM7S-EK's USB cable to reset the connection
Run sam7:
% sam7 found boot agent Chip Version: 0 Embedded Processor: ARM7TDMI NVRAM Region 1 Size: 64 K NVRAM Region 2 Size: 0 K SRAM Size: 16 K Series: AT91SAM7Sxx Page Size: 128 bytes Lock Regions: 16 sam7> unlock_regions unlocking region 0: done unlocking region 1: done sam7> flash sample.bin sam7> boot_from_flash sam7> <ctrl+c>Build and run a known good app in IAR's Embedded Workbench for Arm, Kickstart edition
Run a known good app on an ARM simulator
Check-in the branch and review
Mainline the branch
Tag the release in the repository and make the distribution file:
$ make dist PM_RELEASE=RRUpload the distribution file to the Python-on-a-chip downloads page.
Announce the release on:
- The Python-on-a-chip Project front page
- The Python-on-a-chip maillist
- comp.lang.python.announce