Lazarus 1.0 release plan

From Lazarus wiki
Jump to navigationJump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

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]
  • set LIBOVERLAY_SCROLLBAR=0 for gtk2 in startlazarus (Mattias)
  • add lhelp to rpm (Mattias)
  • fix lhelp error on close: EDOMError DOMDocument.CreateElement (Mattias)
  • bug [22579]
  • bug [22598]
  • bug [22591]
  • bug [22592]
  • bug [22608]
  • bug [22603]

Creating branch for release

  • Create fixes_1_0 branch (Vincent)
  • Set version number 1.1 in trunk (Vincent)
    • lazarus/ide/version.inc
    • lazarus/lcl/lclversion.pas
    • lazarus/lcl/lclbase.lpk
    • lazarus/packager/globallinks/lclbase*.lpl
    • lazarus/debian/changelog
    • lazarus/lazarus.app/Contents/Info.plist
    • check if lpl files needs updating by running ./tools/lplupdate -c (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

Merge revisions from trunk

Lazarus_1.0_fixes_branch


Tagging release

  • Set version to 1.0 in fixes_1_0 branch (Mattias)
    • lazarus/ide/version.inc 1.0 RC2, 1.0
    • lazarus/lcl/lclversion.pas 1.0.1.1 for RC1, 1.0.1.2 for RC2, 1.0.1.3 for final
    • lazarus/debian/changelog 1.0.1-1 for RC1, 1.0.1-2 for RC2, 1.0.1-3 for final
    • lazarus/lazarus.app/Contents/Info.plist v1.0 RC2
    • open lazarus/lazarus.lpi in the IDE and change the version numbers in the project options dialog 1.0.1.1 for RC1, 1.0.1.2 for RC2, 1.0.1.3 for final
    • 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)
  • Tag fixes_1_0 branch to tags/release_1_0_RC2 (Mattias)
svn copy svn+ssh://svn.freepascal.org/FPC/svn/lazarus/branches/fixes_1_0 svn+ssh://svn.freepascal.org/FPC/svn/lazarus/tags/lazarus_1_0_RC2
  • Set version to 1.1 in trunk (Vincent)

Building release

  • source (Vincent)
  • html docs (Vincent)
  • chm docs (Vincent)
  • win32 (Vincent)
  • win32 for arm-wince (Vincent)
  • win64 (Vincent)
  • linux source rpm (Joost)
  • linux i386 rpm (Joost)
    • crosswin32 rpm (Mattias)
  • linux x86_64 rpm (Joost)
  • linux i386 deb (Vincent)
    • crosswin32 deb (Mattias)
  • linux x86_64 deb (Vincent)
  • Mac OS X powerpc (Vincent)
  • Mac OS X i386 (Vincent)
  • 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.0 release notes (Mattias)
  • Mailing lists (Mattias)
  • News item on www.lazarus.freepascal.org (Vincent)
  • Sourceforge (Vincent)
  • Freshmeat (Vincent)
  • Change IRC topic (Marc)
  • New versions in Mantis (Vincent)

After release

  • Make sure snapshots are created correctly for the new version (Vincent)

Further

  • Relax (all)
  • Plan next release