Difference between revisions of "Lazarus 1.6 fixes branch"

From Lazarus wiki
(Submitted by developer / committer)
(Roadmap to 1.6)
Line 154: Line 154:
This is the start of the stabilization process before a new Lazarus release.
This is the start of the stabilization process before a new Lazarus release.
* Release of 1.6 RC 1
* Release of 1.6 RC 1 (Done 08 Dec 2015)
This will be the first Release Candidate. We would like to urge all users to test this version.
This will be the first Release Candidate. We would like to urge all users to test this version.

Revision as of 05:41, 2 January 2016

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

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

Release notes can be found here

Fixes for 1.6 RC2

Merge requests

Submitted by developer / committer

  • r51059,r51080 IDE: Save Application Bundle and resource XPManifest to default project configuration. Issue #22286. + fix LazBuild compilation.
  • r51084 IDE: Enable "Make Resource String" command also when cursor is behind an end-quote. Issue #28829.
  • r51086 TurboPower ipro: Fix non-breaking space character given by numerical value instead of " "; fixes Issue #28174.
  • r51087 IDE: Prevent crash when clicking button "Change Build Mode" and Cancel in dialog. BackupBuildModes is not called always. Issue #29292.
  • r51096 LHelp: Fix incorrect processing of internal links specified by absolute paths. Issue #29267
  • r51100 TurboPower ipro: Fix bgcolor attribute of tables, rows and cells
  • r51105 IDE: Remove explicit update of Messages window from TMainIDE.StartIDE. It deserves no special treatment layout-wise.
  • r51107 codetools: support helpers for array types (please wait until it is properly tested)
  • r51108 fpvectorial: Fix painting issue in smooth bezier paths if previous segment is a relative bezier path
  • r51109 fpvectorial: Fix incorrect exception that paths must begin with a MoveTo command.

Submitted by others

Merged revisions for 1.6 RC2

  • r50702 IDE: regenerated translations and updated Russian translation
  • r50704 LCL: CustomDrawn: fixed compilation (Issue #0029142).
  • r50742 Qt: pass mousemove event to the viewport of TQtWindowArea, stop mouse propagation to parent. Issue #29159
  • r50743 Qt: fixed regression from r50742. Issue #29159
  • r50750 Qt: fixed mousemove with mdi child forms. Issue #29159
  • r50752 Qt: fixed design form cursor change. related to Issue #29159
  • r50759 Qt: eat less cpu in ownerdata mode when imagelist is assigned without imageindexes per item. Issue #29179
  • r50761 Qt: optimized TQtTreeWidget when OwnerDraw=true and imagelist is assigned, but without imageindexes per item. Issue #29179
  • r50764 LCL: unified RST and RSJ file handling. This fixes false fuzzying multiline strings and adding empty ones to .po file when regenerating e.g. lazaruside.po from RSJ files, which are created by FPC 3.0.0 and up.
  • r50765 IDE: adapted localize scripts to work with RSJ files too
  • r50733 packagetabs: add "View project source" menu item
  • r50754 packagetabs: implement i18n, HU translation. Issue 29173. Patch by Peter Gabor
  • r50762 packagetabs: add "Copy File Path To Clipboard" menu command
  • r50781 PackageTabs: added Russian translation
  • r50772 LCL: ShellCtrls: less hints.
  • r50785 Qt: fixed wrong sizing of rows in TListView when OwnerDraw = true. Issue #29182.
  • r50795 Package editor: Improve popup menu behavior. Part of Issue #26188.
  • r50796 Package editor: Don't update the whole tree when moving a dependency up/down. Part of Issue #26188.
  • r50804 Package editor: Mark a package as modified after moving a dependency up/down. Part of Issue #26188.
  • r50753 TAChart: Localization (work in progress - please do not provide translations at this stage...)
  • r50756 TAChart: Combine all po files in a single file (TAChartStrConsts)
  • r50758 TAChart: Complete localization
  • r50760 TAChart: Swedish translation by "kapibara"
  • r50814 Finnish translation for TAChart by Seppo Suutarla.
  • r50853 TAChart: improved i18n (and cleaned up unused string), regenerated translations and added Russian translation
  • r50856 TAChart: Overload "RegisterSeriesClass", "RegisterChartToolClass", and "RegisterAxisTransformClass" with old versions accepting a string as parameter
  • r50768 fpvectorial: Fix text positioning issue when reading svg files.
  • r50807 fpvectorial: Fix calculation of bounding rectangle of all entities on a page
  • r50808 fpvectorial: Fix memory leak of svg tokenizer. Add ReadDefsFromNode to TvSVGVectorialReader.ReadEntityFromNode. Prepare reading of line styles for svg.
  • r50809 fpvectorial: Fix memory leak of TvEntityWithSubEntities due to not releasing items in FElements list.
  • r50810 fpvectorial: Fix bounding box of circle. Fix page bounding box in case of several top-level entities.
  • r50818 fpvectorial: Add parameter to Render method for calculation of bounding box without drawing. Fix svgreader crashing due to incorrect decimal separator in "stroke-opacity".
  • r50819 fpvectorial: Fix runtime error with fpc trunk due to duplicate application of ExtractFileExt returning no extension any more.
  • r50875 fpvectorial: svg reader detects pen styles & patterns now. Fix rendering of lines with the specified pen styles & patterns.
  • r50815 Package editor: Duplicate the "Add" button's menu items in tree popup menu. Part of Issue #28097.
  • r50925, r50970, r50980 Translations: French translation updates by Gilles Vasseur
  • r50839 Packager: Update search paths after "Add Active File To Package". Issue #27720.
  • r50850 LazUtils: implement Utf8Delete() and Utf8Insert() for parameters of type Utf8String. (Only needed for these, since they use var parameters). (Reason for merging: this was a regression caused by the move from 2.6.4 to 3.0.0 compiler)
  • r50910 LazUtils: Second attempt to implement Utf8Delete() for parameters of type Utf8String.
  • r50870 LCL: toolbutton: fix down states. Issue #28286.
  • r50942 LCL: Adjust Width and Height when setting Contraints. Issue #28654.
  • r50906 IDE: Don't show Search Results window initially. Its position is still remembered.
  • r50909 IDE: Hide the Export / Import buttons in options General page for now. The set of options makes no sense.
  • r50905 fpvectorial: Add more named svg colors, speed up finding of named colors.
  • r50912 fpvectorial: Render horizontal and vertical gradients for TPath (straight edges, no "holes")
  • r50913 fpvectorial: Fix rendering for text with correct font name and font size.
  • r50933 fpvectorial: Fix svgreader crashing if stroke-dasharray is "none". Fix w3schools demo file "polyline2svg" to display correctly.
  • r50949 fpvectorial: Fix svg reader bugs related with horizontal and vertical LineTo commands
  • r50940 IdeIntf: Add checks to TPropertyEditorHook.GetComponentName and match the return type with Component.Name's type.
  • r50943 IDE: Restore Jump to Implementation menu item accidentally removed in r49226.
  • r50958 Install Package Dlg: Retain cursor position after moving packages between lists. Issue #26802.
  • r50963 fpdebug: fixed mem leaks, bug 29227 patch from Anton
  • r50982 Components: Hungarian translation update by Péter Gábor, bug 29218
  • r50995 IDE: show output of "lazarus --help" command in IDE interface language when it is set to automatic instead of showing it in English.
  • r50991 LCL: fixed infinite loop and crash with TScrollingWinControl.Issue #29194
  • r51001 synedit: fix TSynCustomHighlighter.GetIdentChars
  • r51003 Qt: keep track of scrolled offset when viewport is not visible.Issue #29239
  • r51009 TAChart: Check validity of base of logarithmic transform.Issue #29242
  • r51015 TAChart: updated Russian translation
  • r51013 H2Pas: fixed typos, bug 29244
  • r51014 H2Pas: added French translation by by Gilles Vasseur, bug 29244, regenerated translations and updated Russian translation
  • r51019 Qt: fixed segfault inside setPopupParent.related to Issue #29247
  • r51020 H2Pas: registered forgotten text conversion tool
  • r51026 LazUtils: fix compilation for WinCE. Issue #0029249.
  • r51019 Qt: fixed segfault inside setPopupParent.related to issue Issue #29247
  • r51022 lcl: gtk2: fix PopupMode/PopupParent for non-modal windows. Issue Issue #29247
  • r51023 lcl: qt: fix PopupMode/PopupParent for non-modal windows. Issue Issue #29247.
  • r51024 components: PO highlighter regression fix from r51001, issue Issue #29235
  • r51032 lcl: rewrite PopupMode/PopupParent - unify code for PopupMode/PopupParent in one function TCustomForm.GetRealPopupParent for all WS. - change TWSCustomFormClass.SetPopupParent to TWSCustomFormClass.SetRealPopupParent without PopupMode parameter. - Fix TPopupMode documentation. Issue Issue #29247
  • r51036 lcl: qt: revert wrong change for modal windows from r51032
  • r51044 Qt: fixed Qt compilation after r51036
  • r51046 Qt: added pure X11 function for transient hint. Related to issue Issue #29253
  • r51047 Qt: use direct X11 call for transient hint since Qt's QtTool flag is buggy. issue Issue #29253
  • r51049 lcl: fix TCustomForm.SetPopupMode: remove PopupParent for both pmAuto and pmNone
  • r51050 ideintf, ide: change result type of TMainIDEBase.GetMainBar from TComponent to TForm. (needed for merging r51051) Issue #24711
  • r51051 ideintf: set PopupMode/PopupParent for collection editor and actions editor. Issue #24711
  • r51068 ide: fix Options changed through "Change Build Mode" CoolBar button isn't respected by the compiler. Issue #28059
  • r51004 fpvectorial: Correct calculation of ellipse center of elliptical arc path segment
  • r51021 fpvectorial: Fix path to avoid rendering of internal lines for bezier segments. Fix elliptic path segment with rotated axis.
  • r51058 fpvectorial: Reorganize TPath.Render. Support polygon even-odd and non-zero winding rules for brush fill.
  • r51060 fpvectorial: Fix svg reader memory leaks related to BrushDefs and tokenizer. Declare package as runtime package.
  • r51030 Qt: fixed memleak in TQtWidgetSet.DCSetPixel.
  • r51040 Qt: much faster DCSetPixel when painter is QImage or QPixmap. Issue #29256
  • r51031 TAChart: Fix TDataPointEditor to mark the property as modified after data entry (Issue #29236). Minor optical brush up of form.
  • r51037 ShellListView: allow for case-sensitive masks. Issue #0029255.
  • r51033, r51034, r51038, r51039, r51041 LazUtils: Prevent CopyDirTree copying to a subdirectory of source. Issue #28841.
  • r51073 Translations: French translation update by Gilles Vasseur, bug 29254
  • r51088 lcl: grids: don't apply editor value if ESC is pressed. Issue #29261
  • r51092 lcl: grids: fix Wrong Alignment in TCustomGrid for Editor. Issue #29243
  • r51094: lcl: win32: ComboBox ItemWidth support. Issue #29149
  • r51097 anchordocking: fix dock site main menu changes docked windows height. Issue #18538
  • r51098 lcl: splitter: make MoveSplitter virtual (needed for r51099)
  • r51099 anchordocking: fix height change when dock site width is changed for ScaleOnResize. Issue #29298

Fixes for 1.6 RC1 (merged)

  • r50543 translations: German: updates from Swen Heinig
  • r50545 LazControls: Select the first matching node in TreeFilterEdit. Issue #24795.
  • r50546 IDEIntf: regenerated translations and improved Russian translation
  • r50547 Favorites: regenerated translations and added Russian translation
  • r50548 IDE: regenerated translations and updated Russian translation
  • r50551 LCL: TWinControl.ScollBy: less overhead
  • r50553 LCL-Win: Revert from ScrollWindowEx back to ScrollWindow. Issue #26086.
  • r50554 Translations: Hungarian translation update by Péter Gábor, bug 29118
  • r50557 LCL: fixed regression in scrolling from r50523
  • r50558 LCL: use ScrollWindowEx instead of ScrollWindow. Issue #26086.
  • r50566 Grids: Do nut move to another cell when user presses Left/Right in editor. Issue #0029084.
  • r50567 LazUtils: Fix implicit codepage ceversion issue for FindFirstUtf8/FindNextUtf8 (Windows). Patch by Michl. Issue #0028406.
  • r50568 ValueListEditor: Revert r45782. It is not a proper fix, and the issue cannot be reproduced anymore. Issue #0026449.
  • r50569 LazUtils: fix issue with implicit codepage conversion in ParamStrUtf8. Issue #0028815.
  • r50582 LCL: use ScrollWindowEx directly instead of ScrollWindowPtr. Issue #29131.
  • r50583 Add missing code from commit r50582
  • r50620 Finnish translations.
  • r50648 TShellTreeView: Yet another attempt to fix SetPath (Issue #0026088).

Older versions

Roadmap to 1.6

The release process will consist of the following steps.

  • Creation of the SVN 1.6 fixes branch. (Done 30 Nov 2015)

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

  • Release of 1.6 RC 1 (Done 08 Dec 2015)

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 1.6 RC 2

The testing period is scheduled to last 2 weeks.

  • Release of 1.6 RC 3

The testing period is scheduled to last 2 weeks.

  • Release of Lazarus 1.6

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

Tagging release

  • Set version to 1.6 in fixes_1_6 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/version.inc 1.6RC1 for RC1, no spaces! (1.6.0 for final release)
    • lazarus/lcl/lclversion.pas for RC1, for RC2, ... for final
    • lclbase.lpk
    • lcl.lpk
    • lazarus/debian/changelog 1.6.0-1 for RC1, 1.6.0-2 for RC2, ... 1.6.0-4 for final
    • lazarus/lazarus.app/Contents/Info.plist "v1.6 RC1" or (v1.6.0 final release)
    • 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
    • run ./tools/updatemakefiles
  • Tag fixes_1_6 branch to tags/release_1_6_RC1 (or tags/lazarus_1_6 for final release)
svn copy svn+ssh://svn.freepascal.org/FPC/svn/lazarus/branches/fixes_1_6 svn+ssh://svn.freepascal.org/FPC/svn/lazarus/tags/lazarus_1_6_RC1 -m 'tagged 1.6RC1 as tags/lazarus_1_6_RC1'
  • Set version to next version in svn

How to merge

See Lazarus_1.0_fixes_branch#How_to_merge

Other branches