Lazarus 2.2 fixes branch

From Lazarus wiki
Revision as of 10:17, 9 July 2021 by JuhaManninen (talk | contribs) (Fixes for 2.2.0)

This page contains the revisions to be merged from trunk to the Lazarus 2.2 fixes branch.

These are only fixes made after the branch was created. For other fixes made since the previous release (2.0) see SVN and Lazarus 2.0 fixes branch

Release notes can be found here

Fixes for 2.2.0

Merge requests

Submitted by others / waiting for sign off by team member

Submitted by developer / committer and waiting for testing (do not commit yet)

Merge conflicts

Submitted by developer / committer, tested, waiting to be merged

  • r65383 LazUtils: Fix building when directory is a Windows mount point. Issue #39120.
  • r65388 IdeIntf: Allow multi-line property editors in Dialogs, TTaskDialog. Issue #39170.
  • r65392, 65424 Documentation updates.
  • r65395 TPageControl: QT5: Fixed PageControl.GetTabRect, see project Issue #39166
  • r65396 TPageControl: QT: Fixed PageControl.GetTabRect, see project Issue #39166

Merged revisions for 2.2.0RC2

Fixes for 2.2.0RC1 (merged)

  • r65243, 65249, 65254-65256, 65261-65271, 65274, 65278-65279, 65281, 65290, 65293, 65297, 65300, 65305, 65317, 65325, 65328, 65335, 65339, 65358, 65367 Documentation updates
  • r65248 Qt: removed unsupported QString_toHtmlEscaped. Issue #38982.
  • r65275 CodeTools: Allow a "var" section inside a record with {$modeswitch advancedrecords}. Issue #38957.
  • r65303 LCL: Revert revision 63847, fixing FormShow call at wrong time. Issue #38922
  • r65304 IDE: Remove EnvironmentOptions.DesignerPaintLazy to prevent paintings outside OnPaint resulting in painting artefacts. Fixes issue #23741 and #33781
  • r65306 IDE: regenerated translations
  • r65311,r65312,r65318 IDE: Implement multi-line selection in Messages window. Issue #35493
  • r65319 IDE: Update DefineTemplates (package graph) after adding a component, in case its package was not used earlier.
  • r65320 Fix spelling errors in grids.pas. Patch by Don Siders. Issue #0039093.
  • r65329 Converter: Replace Mask with Masks, not MaskEdit.
  • r65330 IDE: Generate Dwarf3 for Debug build mode and for debug profile for the IDE itself.
  • r65341 IdeIntf: Disable copy/paste of TMenuItem in Object Inspector tree because it does not work for some reason. Issue #19530.
  • r65342 IDE: Use Dwarf3 debug format for our projects. Needed when debugging with FPDebug.
  • r65348 SQLdb: added pqteventmonitor.pas unit to LPK, bug 39097
  • r65354 IdeIntf: Disable copy/paste of TAction in Object Inspector tree because it does not work for some reason. Issue #19530.
  • r65372 Translations: Brazilian Portuguese translation update by Marcelo B Paula, bug 39152
  • r65374 Fix spelling errors in lclproc.pas. Patch by Don Siders. Issue #0039161.
  • r65378 AnchorDocking DragNDrop of pages not working on GTK2. Issue #39166
  • r65412 win installer: EnvironmentOpt.xml: Fix gdb location for windows (new installation)
  • r65413 make component: compile freetype before lazcontrols
  • r65414 lcl: updated Makefile.compiled
  • r65415 lcl: updated Makefile.compiled
  • r65416 lcl: updated Makefile.compiled with freetype
  • r65417 lcl: fix makefile path for freetype
  • r65418 Installer, Win: fix cross build flags
  • r65419 Installer, Win: fix cross build, include package buildintf

Roadmap to 2.2

The release process will consist of the following steps.

  • Creation of the SVN 2.2 fixes branch. (Done 15 Jun 2021)

This is the start of the stabilization process before a new Lazarus release.

  • Release of 2.2.0 RC 1 (ToDo)

This will be the first Release Candidate. We would like to urge all users to test this version. The testing period is scheduled to last 2 weeks.

  • Release of 2.2.0 RC 2 (ToDo)

The testing period is scheduled to last 2 weeks.

  • Release of 2.2.0 RC 3 (ToDo)

The testing period is scheduled to last 2 weeks.

  • Release of Lazarus 2.2 (ToDo)

Users can download the new stable version.


  • 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
  • Run Unit-Tests from menu "Tools"--> "Example Projects". Choose project "runtestsgui.lpi" and run it. It will do about 390 unittests.

Tagging release

  • SVN merge requests of this page
  • Set version in fixes_2_2 branch
    • open lazarus/lazarus.lpi in the IDE and change the version numbers in the project options dialog for RC1, for RC2, for RC3, for final
    • lazarus/ide/ 2.2.0RC1 for RC1, no spaces! (2.2.0 for final release)
    • lazarus/components/lazutils/lazversion.pas for RC1, for RC2, ... for final
    • lclbase.lpk
    • lcl.lpk
    • lazarus/
      • CFBundleShortVersionString "2.2.0"
      • CFBundleVersion 1 for RC1, 2 for RC2, 3 for RC3, 4 for final release
    • tools/install/linux/environmentoptions.xml same as
    • tools/install/win/environmentoptions.xml same as
    • tools/install/macos/environmentoptions.xml same as
    • check lpl files by running "./tools/lplupdate -c" and do the svn mv commands
    • Update makefiles: Make sure Additions and Overrides are empty and run
FPCDIR=/path/to/fpc/src/trunk PATH=/path/trunk/fpc/utils/fpcm/bin/x86_64-linux/:$PATH ./tools/updatemakefiles
  • check that ide/lazarus.lpi and ide/lazarus.res have changed:
svn diff | grep Index:
  • svn commit
  • Tag fixes_2.2 branch to tags/release_2_2_0_RC1 (or tags/lazarus_2_2_0 for final release)
svn copy svn+ssh:// svn+ssh:// -m 'tagged 2.2.0RC1 as tags/lazarus_2_2_0_RC1'

Other branches