Lazarus 2.0 fixes branch
This page contains the revisions to be merged from trunk to the Lazarus 2.0 fixes branch.
These are only fixes made after the branch was created. For other fixes made since the previous release (1.8) see SVN and Lazarus 1.8 fixes branch
Release notes can be found here
- 1 Fixes for 2.0.0RC3
- 2 Fixes for 2.0.0RC2 (merged)
- 3 Roadmap to 2.0.0
- 4 How to merge
- 5 Other branches
Fixes for 2.0.0RC3
Submitted by developer / committer and waiting for testing (do not commit yet)
Submitted by developer / committer, tested, waiting to be merged
- r59374 IDE: Update unit path for all build modes also when creating a new unit. Issue #34413
- r59378 IDE: Add high-dpi icons for images and images/codeexplorer (provided by Roland Hahn)
- r59376 debugger: fix pseudo terminal, only memo needs monospace. Issue #0034192
Merged revisions for 2.0.0RC3
Fixes for 2.0.0RC2 (merged)
- r59016 LCL-GTK2: Do not truncate Groupbox caption. Issue #32621
- r59018 LCL-GTK2: Fix TStaticText Width with Autosize. Issue #21877
- r59030 TValueListEditor: fix DeleteRow Issue #0034208.
- r59031 TFindDialog: fix setting Top/Left. Issue #0033528.
- r59032 TCommondialog: do not publish Widht/Height properties. Issue #0033480. Patch by AlexeyT.
- r59048 TFindDialog: slight improvement on r59031.
- r59049 TFindDialog: use Position := poMainFormCenter in CalcPosition instead of trying to calculate that by ourselves. Patch by Serge Anvarov.
- r59050 TFindDialog: save FFindForm position upon close.
- r59064 Opkman: Bug fix: remove package compiling restriction.
- r59066 IDE: clean up
- r59077 IDE: fixed abstract method
- r59079 IDE: less hints
- r59041 IDE: Use safe typecast for TProjectCompilationToolOptions when building project.
- r59042 Revert r59006 "IdeIntf: Add API for ExecuteCommand in CompOptsIntf." Must be done better.
- r59043 IdeIntf: A new interface class TLazCompilationToolOptions with a Command and CompileReasons. Issue #34283.
- r59044 IdeIntf: Improve the CompilationTool stuff. Remove and clean code. Issue #34283.
- r59046 LCL-GTK2: Do not truncate Groupbox caption (fix for previous). Issue #32621.
- r59047 LCL-GTK2: Fix TListView column widths. Issue #34044.
- r59081 IDE: Add package name to hints for component palette icons.
- r59083 TFindDialog/TReplaceDialog: show dialog poScreenCenter in IDE; fix erratic behaviour of TReplaceDialog in IDE (wrong parent). Issue #34297.
- r59085 LCL: Improved layout of TFindDialog and TReplaceDialog, fix TabOrder.
- r59094 LCL: Fix TCustomListbox not releasing Canvas handle in DestroyWnd Issue #34249.
- r59095 Translations: Turkish translation update by Hakan KIZILHAN, Issue #34296
- r59096 Translations: Spanish translation update by Alonso Cárdenas Márquez, Issue #34304
- r59110 Opkman: Fix memory leak.
- r59141 lazutils: removed duplicate code, Issue #34320
- r59089 IDE: Bug fix: Deleting newly added CoolBar leads to error. Issue #34302.
- r59091 IDE: Check package name validity correctly.
- r59147 IDE: Improve logic for updating Application.Title statement. Now it gets removed, too. Issue #34318.
- r59156 IDE: Add new Application.Title and .Scale statements after Application.Create line. Issue #34318.
- r59170 IDE: Support 3 icons with different resolutions in "New Component" dialog. Improve the GUI.
- r59172 IDE: cleaned up unused resource string
- r59173 IDE: regenerated translations and updated Russian translation
- r59176 IDE: In "New Component" dialog resize the buttons based on icon image size. Improve initial dir for selecting icon.
- r59092 MainInspector: Fix a typo.
- r59111 LCL-GTK2: Prevent flickering in TOpenGLControl. Turn DoubleBuffered off. Issue #33864
- r59190 LCL-GTK3: Add typecasts for Color types. The code may still be wrong but can be tested with Range checks on.
- r59191 LCL-GTK3: Fix menu radio group. Issue #34350.
- r59118 Docs: Fix short description for function StringToColor.
- r59125 LazUtf8: leftpad escaped characters in Utf8EscapeControlChars if EscapeMode = emPascal. Prevents ambiguity when reading the result.
- r59169 LazUtils: Move ExtractFileNameWithoutExt to LazFileUtils. Rhymes with ExtractFileNameOnly.
- r59175 Delete old deprecated methods.
- r59177 LazUtils: Move more functions from FileUtils to LazFileUtilities, deprecate the old ones.
- r59149 LCL: Add support for custom font of TSpeedButton (see https://forum.lazarus.freepascal.org/index.php/topic,42635.msg297800.html#msg297800, patch by Ondrej)
- r59167 LCL: Fix incorrect checked state after deleting an item of a TCheckGroup. Issue #34327.
- r59168 Split command line parameters also when "Run without Debugging".
- r59197 TAChart: deprecate all reticule-related methods and properties (was incomplete). Less hints and warnings.
- r59208 debuggerintf: less hints
- r59210 fpdebug: less hints
- r59212 ideintf: less hints
- r59214 lazdebuggers: less hints
- r59216 lazutils: less hints
- r59218 turbopower_ipro: less hints
- r59220 lcl: gtk2: less hints
- r59222 Translations: Ukrainian translation update by Olexandr Pylypchuk, bug 34367
- r59223 Translations: Brazilian Portuguese translation update by Marcelo B Paula, bug 34368
- r59225 LazControls: Improve and optimize the filter controls. Issue #34057
- r59226 LazControls: Call DoFilterItem instead of DoDefaultFilterItem in TTreeFilterBranch.SortAndFilter.
- r59227 IdeIntf: Delete old deprecated methods and properties.
- r59268 IdeIntf: Improve timestamp updates of TLazCompilationToolOptions + inherited classes. Issue #34283
- r59228 AnchorDocking: Prevent crash on drag-and-dock tab page. Issue #34371
- r59229 LazReport: Delete old deprecated UTF8 functions.
- r59230 TAChart: Remove old deprecated code.
- r59239 TAChart: Check and fix all demos and tutorial projects (mostly layout issues)
- r59241 TAChart: Fix TChartImageList demo.
- r59243 TAChart: Extend dragdrop demo to show horizontal dragging of bars.
- r59240 Packager: Allow overwriting existing unit files in New Component dialog. Error was shown AFTER a file was overwritten. Issue #26928
- r59244 IDE: Always create project's main icon file when saving it. Keeps its size down. Issue #27287
- r59245 IDE: Add initial directory for loading project icon in App options. Use IconImage.Picture.Icon everywhere.
- r59246 IDE: Remove resource generation from DoBuildProject. They have been generated earlier. Issue #15915
- r59248 IDE: Support running external tool with parsers, needed when used through IDE interface.
- r59263 IDE: Reduce DebugLn() calls in Publish Module code. It seems to work.
- r59266 IDE: New High-DPI images in folders images/items and images/packages. Kindly provided by Roland Hahn.
- r59267 IDE: Use scaled images in trees of "Install/Uninstall packages" form.
- r59272 IDE: Center icon and text vertically for each item in ViewUnit dialog. Issue #34402
- r59254 LCL-Gtk2: Don't mix resizing a column with drag-and-drop. Issue #34393
- r59262 LCL-GTK3: Fix TRadioGroup. It did not work at all. Issue #34396
- r59270 LCL: Fix TBitBtn ignoring the Margin property on Windows. Issue #34379
- r59259 TurboPower_iPro: Implement css function rgb().
- r59271 TurboPower_iPro: Implement css function hsl().
- r59275 Translations: Hungarian translation update by Péter Gábor, bug 34397
- r59276 Translations: French translation update by Gilles Vasseur, bug 34403
- r59287 LCL: Avoid SegFault of freshly created TCustomListview with owner-data (issue #34407, patch by Charles Grunwald).
- r59289 chmhelp: Fix memory leak in TLHelpConnector (see forum https://forum.lazarus.freepascal.org/index.php/topic,42832.msg299208.html).
- r59290 ideintf: Add high-DPI icons (provided by Roland Hahn)
- r59291 IDE: Add missing high-dpi icons to folder images/menu (kindly provided by Roland Hahn)
- r59292 IDE: Minor revisions of existing high-DPI icons (by Roland Hahn)
- r59295 IDE: Add new (debugger) and revised High-DPI icons by Roland Hahn
- r59296 IDE: Add forgotten icons from previous commits
- r59301 IDE: Better alignment of Run icon to dropdown btn on toolbar (by Roland Hahn)
- r59302 IDE: New High-DPI icons for Delphi-to-Lazarus conversion (by Roland Hahn).
- r59297 SynEdit: Pas HL, fix folding/markup for code containing "case", if "case" is not enabled for fold/markup. Part 1 of Issue #0034410
- r59298 SynEdit: Pas HL, fix markup if "procedure" is outlined, but top level "begin" is not. Part 2 of Issue #0034410
- r59299 SynEdit: Pas HL, fixes for outline, if only some elements are outlined
- r59300 SynEdit: Pas HL, fixes for fold, detecting "else" in "case", when previous if is nested in other commands
- r59253,59285,59286,59293: Qt, Qt5: fixed OpenGL issues. Issue #32498 and Issue #34401
- r59288 Qt5: must return to lcl event loop for X11 targets. Issue #34369
- r59307 IDE: Add mssing High-DPI icons to images/actions (by Roland Hahn)
- r59308 IDE: Replace icon "actions/preferences" (by Roland Hahn)
- r59309 Translations: Brazilian Portuguese translation update by Marcelo B Paula, bug 34426
- r59310 Translations: French translation update by Gilles Vasseur, bug 34428
- r59314 IDE/LCL: Modify some high-DPI icons for more consistent style (Roland Hahn)
- r59319 IDE: Add high-DPI images for propertygrid and widgetset issues (by Roland Hahn).
- r59321 IDE: Improve visibility of high-dpi issue_carbon icons on dark background (by Roland Hahn).
- r59322 IDE/Restriction Browser: Fix visibility of icon on customdrawn button.
- r59323 IDE/ObjectInspector: Fix size of widgetset icons on high-dpi screens.
- r59328 IDE: Add high-dpi icons to images/lazdoc (by Roland Hahn)
- r59318 lhelp: some formatting changes
- r59320 TAChart: Fix numlib issue of returning 0 for exp() function (https://forum.lazarus.freepascal.org/index.php/topic,42913.msg299793)
- r59324 Finnish translation.
- r59342 IDE: regenerated/fixed Finnish translation
- r59325 LCL-GTK2: Fix icon scaling in menuitems.
- r59327 LCL: Do not store anchoring properties of TLabeledEdit.editLabel. It is controlled by property LabelPosition. Issue #34431
- r59332 TFloatSpinEditEx: fix setting DecimalPlaces Issue #0034370
- r59334,r59335,r59336 LCL-WinCE: Fix maximize, minimize and help buttons showing in window title bar
- r59337 LCL-WinCE: Fix form centering for Position=poScreenCenter, poDesktopCenter
- r59339,r59341 LCL-GTK3: Fix Splitter and its related code. Issue #34106
- r59340 IDE: Don't let FindReplace dialog outside the monitor area. Issue #34436
- r59350 Debugger: Fix DebugInspector stopped working after window was open with empty input. Issue #0034452
- r59351 Debugger (gdb): Fix Debug-Inspector for dwarf3. Match fieldnames case insensitive. Depending on gdb, try to find the MixedCase version of any name. Issue #0034453
- r59352 lazutils: fixed ExpandFileNameUTF8 for \\?\
- r59353 debian: renamed debian package name from fpc to fpc-laz to avoid nameclash with ubuntu repos
- r59357 IDE: Add unit/include file's path correctly to search path of a single build mode, too. Issue #34462
- r59359 IDE: Show only the supported .ico format when opening project icon. Issue #34464
Roadmap to 2.0.0
The release process will consist of the following steps.
- Creation of the SVN 2.0 fixes branch. (Done 15 Sep 2018)
This is the start of the stabilization process before a new Lazarus release.
- Release of 2.0.0 RC 1 (Done 16 Sep 2018)
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.0.0 RC 2 (Done 29 Oct 2018)
The testing period is scheduled to last 2 weeks.
- Release of 2.0.0 RC 3 (ToDo)
The testing period is scheduled to last 2 weeks.
- Release of Lazarus 2.0 (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.
- SVN merge requests of this page
- Set version in fixes_2_0 branch
- open lazarus/lazarus.lpi in the IDE and change the version numbers in the project options dialog 184.108.40.206 for RC1, 220.127.116.11 for RC2, 18.104.22.168 for RC3, 22.214.171.124 for final
- lazarus/ide/version.inc 2.0.0RC1 for RC1, no spaces! (2.0.0 for final release)
- lazarus/components/lazutils/lazversion.pas 126.96.36.199 for RC1, 188.8.131.52 for RC2, ... 184.108.40.206 for final
- lazarus/debian/changelog 2.0.0-1 for RC1, 2.0.0-2 for RC2, ... 2.0.0-4 for final
- CFBundleShortVersionString "2.0.0"
- CFBundleVersion 1 for RC1, 2 for RC2, 3 for RC3, 4 for 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 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
- svn commit
- Tag fixes_2.0 branch to tags/release_2_0_0_RC1 (or tags/lazarus_2_0_0 for final release)
svn copy svn+ssh://svn.freepascal.org/FPC/svn/lazarus/branches/fixes_2_0 svn+ssh://svn.freepascal.org/FPC/svn/lazarus/tags/lazarus_2_0_0_RC1 -m 'tagged 2.0.0RC1 as tags/lazarus_2_0_0_RC1'
- Set version to next version in svn
- Create new section on this page and move waiting merge requests to the new section