Lazarus 1.2 release plan
From Lazarus wiki
Jump to navigationJump to search
Release preparation
- Gather list of todos from developers
Add new LazTarget to the mantis for so we can postpone issue one release.
Bugs to be fixed
Things that need to be fixed before tagging:
- A list of bugs with [target 1.0], [target 0.99]
Creating branch for release
- Create fixes_1_2 branch (Mattias)
- Set version number 1.3 in trunk (Mattias)
- lazarus/ide/version.inc
- lazarus/lcl/lclversion.pas
- lazarus/lcl/lclbase.lpk
- lazarus/lcl/interfaces/lcl.lpk
- lazarus/debian/changelog
- lazarus/lazarus.app/Contents/Info.plist
- tools/install/linux/environmentoptions.xml same as version.inc
- tools/install/win/environmentoptions.xml same as version.inc
- tools/install/macos/environmentoptions.xml same as version.inc
- check if lpl files needs updating by running ./tools/lplupdate -c (Mattias)
- run ./tools/updatemakefiles (Mattias)
- open lazarus/lazarus.lpi in the IDE and change the version numbers in the project options dialog; this will change ide/lazarus.res too.
Create snapshots for new branch
These snapshots can be considered release candidates.
source (Vincent)win32 (Vincent)- win64 (Vincent)
linux i386 rpm (Vincent)- linux x86_64 rpm (Vincent)
- linux i386 deb (Vincent)
- linux x86_64 deb (Vincent)
- Mac OS X powerpc (Vincent)
Mac OS X i386(Vincent)- Add deb snaphots to Ubuntu testing repo (Vincent)
Ask for testing
- Informally announce (IRC, mailing list) a pending release (+/- week before actual release), so that people can test for regressions.
- Create Release Candidate
- RC1
- RC2
Merge revisions from trunk
Tagging release
- Set version to 1.2 in fixes_1_2 branch (Mattias)
- open lazarus/lazarus.lpi in the IDE and change the version numbers in the project options dialog 1.2.0.1 for RC1, 1.2.0.2 for RC2, 1.2.0.3 for final
- lazarus/ide/version.inc 1.2 RC2
- lazarus/lcl/lclversion.pas 1.2.0.1 for RC1, 1.2.0.2 for RC2, 1.2.0.3 for final
- lclbase.lpk
- lcl.lpk
- lazarus/debian/changelog 1.2.0-1 for RC1, 1.2.0-2 for RC2, 1.2.0-3 for final
- lazarus/lazarus.app/Contents/Info.plist v1.2 RC2
- tools/install/linux/environmentoptions.xml same as version.inc
- tools/install/win/environmentoptions.xml same as version.inc
- tools/install/macos/environmentoptions.xml same as version.inc
- check if lpl files needs updating by running ./tools/lplupdate -c (Mattias)
- run ./tools/updatemakefiles (Mattias)
- Tag fixes_1_2 branch to tags/release_1_0_RC2 (Mattias)
svn copy svn+ssh://svn.freepascal.org/FPC/svn/lazarus/branches/fixes_1_2 svn+ssh://svn.freepascal.org/FPC/svn/lazarus/tags/lazarus_1_2_RC2 -m 'tagged 1.2.0.2 as tags/lazarus_1_2_RC2'
- Set next version in trunk (Mattias)
Building release
- source (Vincent)
- html docs (Vincent)
- chm docs (Vincent)
- win32 (Martin)
- win32 for arm-wince (Vincent)
- win64 (Martin)
- linux source rpm (Mattias)
- linux i386 rpm (Mattias)
- crosswin32 rpm (Mattias)
- linux x86_64 rpm (Mattias)
- linux i386 deb (Mattias)
- crosswin32 deb (Mattias)
- linux x86_64 deb (Mattias)
- Mac OS X powerpc (Vincent)
- Mac OS X i386 (Mattias)
- Add debs to ubuntu repo (Vincent)
Tests
- Menu item exists
- Clear pcp directory and start IDE, a new project application with a form should be visible
- Double click on form - a FormCreate event should be created
- Check View / IDE internals / What needs building - no package should need building, only the project
- Restart the IDE - there should be no warning about upgrading
- Install the package cody, after restart the component palette should show the component TCodyTreeView
Announcements
- Wiki: downloading, installation, getting source hints (Mattias)
List of changes: Lazarus 1.2 release notes(Mattias)Mailing lists(Mattias)News item on www.lazarus.freepascal.org(Mattias)Sourceforge(Vincent)Freshmeat(Vincent)Change IRC topic(Vincent)New versions in Mantis(Vincent)
After release
- Make sure snapshots are created correctly for the new version (Vincent)
Further
- Relax (all)
- Plan next release