GMAT 2013a Release Process
This page is used to track the process and progress of the R2013a release.
Table of contents
Target Date: April 16, 2013
Tasks
All dates are referenced to 12:00 noon EDT.
For example, a deadline of March 15 should be interpreted as March 15, 12:00 noon EDT.
Early Tasks
These are long-lead early tasks that can be completed before the detailed release cycle.
Use "(/)
" for the checkmark ().
Task | Who | Status | Notes |
---|---|---|---|
Get updated legal statement/license | SPH | Needed by Code Freeze. | |
Update sample scripts | SPH |
| Needed by App Freeze.
|
Write draft Release Notes | JJKP | Needed by App Freeze. | |
Update standard descriptive text | SPH | Needed by App Freeze. Will be used in User Guide, websites, release announcement. Commet from SPH: See Welcome to GMAT in user guide | |
Update info on public-facing websites | JJKP | Needed by Release Day. See the list of sites. Update this list as well, if necessary. Updated major sites before announcement. Minor ones can be updated a bit later. | |
Update release announcement contacts | SPH | Needed by Release Day. Located here. | |
Put in order for additional icons | SPH | (if necessary) Needed by Visual Freeze. |
For QA Complete (March 20)
QA complete means that all known bugs are being tracked, all bug fixes are verified and documented, and the release process can begin.
Use "(/)
" for the checkmark ().
Task | Who | Status | Notes |
---|---|---|---|
Verify that all known bugs are checked into JIRA | (All) | ||
Complete all JIRA verifications | (All) | ||
Complete QA wrap-up tasks | DSC, SPH, JJKP, RQ |
| |
Address all JIRA tickets awaiting feedback | (All) |
For Visual Freeze (Mar 27)
Visual Freeze finalizes all graphical changes to the software, so that screenshots, documentation, and TestComplete can be updated.
Use "(/)
" for the checkmark ().
Task | Who | Status | Notes |
---|---|---|---|
Update links in GMAT.ini | JJKP |
Is this really a viz freeze issue? | |
Update link tests in TestComplete | SJH |
This was delayed because of some last-minute behavior changes, but nothing here was required for Visual Freeze this time. | |
Update About panel | LOJ | Not needed for R2013a | |
Update splash screen | TGG |
This was delayed until (TBD) to allow the team to vote on the final design at the 3/28 team meeting. | |
Update icons | SPH | If there are any updates, additions, deletions. | |
Update gmat_startup_file.txt | JJKP |
| |
Switch to release configuration in script test system | JJKP | Use new Ran public configuration manually on JJKP's machine on 2013-03-27 build. Decided to run manually on RCs only. For next time, need to figure out a way to assemble public release without manual intervention. | |
Complete visual updates | (All) | Fixed all visual issues known before Visual Freeze. |
For Code Freeze (April 5) (was April 3)
Code Freeze is a freeze on the software itself before final testing.
Use "(/)
" for the checkmark ().
Task | Who | Status | Notes |
---|---|---|---|
Update EOP files | WCS | Update eopc04_08.62-now and run smoke tests. | |
Update files w/ updated legal statement | LOJ | ||
Update license text | LOJ | Update application/License.txt file. | |
Final bug fixes | (All) |
For next release: Consider branching the repo here, instead of after release. We need to allow people to continue working on unrelated items while release work is ongoing.
For App Freeze (April 5) (was April 3)
App Freeze is a freeze on all application bundle files beyond data and code. This includes documentation, sample scripts, stuff in the extras
folder, etc.
Use "(/)
" for the checkmark ().
Task | Who | Status | Notes |
---|---|---|---|
Update README.txt | JJKP | Update with major release highlights. | |
Update extras folder | JJKP | Notepad++ syntax coloring file | |
Update PDF files in docs folder | SPH/DJC |
| |
Gather list of compatibility changes since last release | (Feature leads) |
For this release, put a generic blanket statement regarding the change from beta status to production status and point to wiki page. | |
Update Release Notes | JJKP | ||
Update screenshots in User Guide | (Feature leads) | ||
Test User Guide instructions & code | (Feature leads) |
| |
Update Windows installer package | JJKP |
Testing of Release Candidate 1 (April 5–12)
This will start with the 2013-04-05 daily build. Repeat this phase until tests check out. Steve will make the call.
Use "(/)
" for the checkmark ().
Task | Who | Status | Notes |
---|---|---|---|
Update README.txt | JJKP | (For RC2+) Update with any late-breaking notes. | |
Build Windows installer | JJKP | Version string: R2013a-rc# | |
Bundle Windows zip | JJKP | Version string: R2013a-rc# | |
Run TestComplete smoke tests | TGG | These are tests on the packaged versions of GMAT: the installer and the zip bundle. | |
Run TestComplete system test missions | JMB | These are tests on the packaged versions of GMAT: the installer and the zip bundle. | |
Run script test system | JJKP | Run the internal installer tests on T4 and the public installer tests on Joel's machine. Run .zip bundle tests afterwards on same build to compare. | |
Test all sample scripts | SPH |
| At a minimum these need to be run individually by hand. I ran them by adding the folder, and they run so fast I missed some pretty big problems. Ideally, these should all be in script regression tests. Many but not all already are regression tested. |
Run TestComplete full regression tests | TGG | (For final RC only) |
Notes
- While this cycle is ongoing is a good time to do wiki updates and cleanup.
Stage Release (April 15)
This is a soft release, putting all the files in place and updating information. Then on release day, we only need to send the announcements.
Use "(/)
" for the checkmark ().
Task | Who | Status | Notes |
---|---|---|---|
Bundle source code and upload to SourceForge | DJC |
| |
Bundle data and upload to SourceForge | DJC |
| |
Upload Windows installer to SourceForge | JJKP | Download, install, and run after uploading. | |
Upload Windows zip to SourceForge | JJKP | Download and run after uploading. | |
Post README.txt on SourceForge | JJKP | ||
Post internal & public release files to MESA network | JJKP | ||
Branch and tag repositories | DJC | At least tag the test system; consider branching also if the burden on the repo is low. | |
Make SourceForge repository backup | JJKP | Follow SourceForge's instructions. Perform the backup on the Linode server and download the resultant .zip file, since the local network blocks rsync. |
Release Day (April 16)
Use "(/)
" for the checkmark ().
Task | Who | Status | Notes |
---|---|---|---|
Make files visible on SourceForge | SPH | ||
Send out release announcement | SPH |
| |
Post release announcement on SourceForge | DJC | ||
Post release announcement on GMAT Blog | JJKP |
Post-Release
Use "(/)
" for the checkmark ().
Task | Who | Status | Notes |
---|---|---|---|
Party! | (All) |
| |
Print materials | JJKP |
| |
Conduct postmortem review | SPH | This includes gathering feedback, holding the postmortem meeting, and documenting the results. | |
Submit NTR for next release | SPH | ||
Spring cleaning | ? | General cleanup of infrastructure:
|
Notes for postmortem
Please add your notes to the Release R2013a Process Notes document.
Compatibility changes
This is a list of compatibility changes since R2012a that need to be captured in the release notes.
Spacecraft.CurrA1MJD parameter is deprecated
ImpulsiveBurn.V, ImpulsiveBurn.N, ImpulsiveBurn.B parameters are deprecated
non-Earth planet NutationUpdateInterval field is removed
restricted setting CoordinateSystem Epoch, Primary, Secondary, XAxis, YAxis, ZAxis fields
restricted setting CoordinateSystem Origin field
Running script test system
In the steps below, "#
" is the RC number and "<config>
" is "internal
" or "public
".
- Install the version being tested.
- Check "Enable MATLAB interface".
- Leave "Associate file types" unchecked.
- Update the test system repo.
- Run:
>> diary('..\log\R2013a-rc#-<config>.log')
- Run:
>> preparegmat('C:\Path\To\GMAT')
- Copy the appropriate template (
autorundef.R2013aInternal.template.m
orautorundef.R2013aPublic.template.m
) to a new name and fill in the values:RunDef.Build
: "R2013a-rc#-<config>
"RunDef.GmatExe
: path to installedGMAT.exe
RunDef.RegressionBuild
: last build date if testing RC1, otherwise, "R2013a-rc#-<config>
"
- Run:
>>gmattest <name of rundef.m>
- Run:
>>diary('off')
- Post results to network using
robocopy
:>robocopy "C:\path\to\output\R2013a-rc#" "\\mesa-file\595\GMAT\TestResults\win7\R2013a-rc#-<config>" /E /MT /LOG:robocopy.txt
Issues for RC3
- GMT-3794 (still open)
- GMT-3826
- Run graphics regression tests (still open)
- Run toolbar/menubar regression tests
Issues for RC2
- GMT-3745 - fix
- GMT-3794 - fix
- GMT-3795 - fix
- GMT-3797 - fix
- GMT-3817 - fix if time allows
- GMT-3816 - don't fix
- GMT-3803 - don't fix
- Update scripts for estimation functionality - fix
- What to do about MATLAB Interface in bundle? - update installer if time allows
- Proper covers on the PDF User Guide - fix
- Run graphics regression tests - fix