Recent

Author Topic: Lazarus Bugfix Release 4.4  (Read 14251 times)

mattias

  • Administrator
  • Full Member
  • *
  • Posts: 206
    • http://www.lazarus.freepascal.org
Lazarus Bugfix Release 4.4
« on: November 10, 2025, 08:14:59 pm »
The Lazarus team is glad to announce Lazarus 4.4.

This is a bugfix release and was built with FPC 3.2.2.

Here is the list of changes for Lazarus and Free Pascal:
https://wiki.lazarus.freepascal.org/Lazarus_4.0_release_notes
https://wiki.lazarus.freepascal.org/User_Changes_3.2.2

Here is the list of fixes for Lazarus 4.x:
https://gitlab.com/freepascal.org/lazarus/lazarus/-/commits/fixes_4/

The release is available for download at:
https://download.lazarus-ide.org/

Choose your CPU, OS, distro and then the "Lazarus 4.4" directory.

Checksums for the SourceForge files:
https://www.lazarus-ide.org/index.php?page=checksums#4_4

Minimum requirements:

Windows:
  2k, 32 or 64bit, Qt, Qt5, Qt6 (64bit only)

FreeBSD/Linux:
  gtk 2.24 for gtk2, qt4.5 for qt, qt5.6 for qt5, Qt6.2 for qt6, 32 or 64bit.

Mac OS X:
  Cocoa (64bit) 10.12, Carbon (32bit) 10.5 to 10.14, Qt and Qt5 (32 or 64bit), Qt6 (64bit only).

The gitlab page:
https://gitlab.com/freepascal.org/lazarus/lazarus/-/tree/lazarus_4_4

Download mirrors:
https://sourceforge.net/projects/lazarus/files/
ftp://ftp.freepascal.org/pub/lazarus/releases/
« Last Edit: November 10, 2025, 08:18:54 pm by mattias »

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 11901
  • Debugger - SynEdit - and more
    • wiki
Re: Lazarus Bugfix Release 4.4
« Reply #1 on: November 10, 2025, 08:24:51 pm »

Espectr0

  • Full Member
  • ***
  • Posts: 234
Re: Lazarus Bugfix Release 4.4
« Reply #2 on: November 10, 2025, 08:56:20 pm »
Thanks!!

dbannon

  • Hero Member
  • *****
  • Posts: 3607
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Lazarus Bugfix Release 4.4
« Reply #3 on: November 11, 2025, 02:30:28 am »
Is my perception of time out of wack or is Lazarus 4.4 noticeably faster to build and subsequently compile ?

I either case, thanks folks !

Davo
Lazarus 3, Linux (and reluctantly Win10/11, OSX Monterey)
My Project - https://github.com/tomboy-notes/tomboy-ng and my github - https://github.com/davidbannon

BlueIcaro

  • Hero Member
  • *****
  • Posts: 827
    • Blog personal
Re: Lazarus Bugfix Release 4.4
« Reply #4 on: November 11, 2025, 10:52:47 am »
I was thinking when I meet Lazarus, was in release 0.9.x. I can't imagine the effort that made the Lazarus team, since this days.
Thank you very much!
/BlueIcaro

CM630

  • Hero Member
  • *****
  • Posts: 1550
  • Не съм сигурен, че те разбирам.
    • http://sourceforge.net/u/cm630/profile/
Re: Lazarus Bugfix Release 4.4
« Reply #5 on: November 11, 2025, 12:50:35 pm »
I installed the 32bit version of Lazarus 4.4.
An app started crashing in I way I have not seen it crash before.

The error is in LazTracer.pas, it complains about division by zero.
Code: Pascal  [Select][+][-]
  1. procedure RaiseGDBException(const Msg: string);
  2. begin
  3.   DebugLn(lrsERRORInCode, Msg);
  4.   // creates an exception, that gdb catches:
  5.   DebugLn(lrsCreatingGdbCatchableError);
  6.   DumpStack;
  7.   {$ifndef HASAMIGA} // On Amiga Division by 0 is not catchable, just crash
  8.   if (length(Msg) div (length(Msg) div 10000))=0 then ;
  9.   {$endif}
  10. end;  

I still have the 64 bit Lazarus 4.2 and I cannot make the app crash with it.

I have a TPairSplitter with two RichMemos on each side. When I move the slitter when updating the RichMemos the crash occurs.
I will write more when I have more info.

Edit: I have successfully crashed the app on the 4.2 when doing the same, but I got the error in control.inc, procedure TControl.EnableAutoSizing   .
(message is Tcontrol.EnableAutoSizing pssReceived:TPairSplitter: missing DisableAutosizing).

Edit2: I also got the division by zero in the 4.2, so it should not be something changed in 4.4.

But after division by zero the app cannot resume work, while after EnableAutoSizing   it keeps on working, I just click "Ok".
 
« Last Edit: November 11, 2025, 01:00:32 pm by CM630 »
Лазар 4,4 32 bit (sometimes 64 bit); FPC3,2,2

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 11901
  • Debugger - SynEdit - and more
    • wiki
Re: Lazarus Bugfix Release 4.4
« Reply #6 on: November 11, 2025, 12:58:34 pm »
The division by zero is simple a very old way to raise an exception.

GDB (when that was the only debugger we had) does not know Pascal exceptions, and initially it did not stop for them. So instead a div-zero was used.

But that aside, I don't know what then causes the splitter to trigger it

wp

  • Hero Member
  • *****
  • Posts: 13264
Re: Lazarus Bugfix Release 4.4
« Reply #7 on: November 11, 2025, 01:13:37 pm »
Does the crash also happen when you have a normal TSplitter and the two RichMemos on both sides of it, one left-aligned, the other one client-aligned? I am asking because TPairSplitter does not exist in delphi and thus may be used less than TSplitter and get less testing and less attention by the developers.

CM630

  • Hero Member
  • *****
  • Posts: 1550
  • Не съм сигурен, че те разбирам.
    • http://sourceforge.net/u/cm630/profile/
Re: Lazarus Bugfix Release 4.4
« Reply #8 on: November 11, 2025, 02:47:43 pm »
This is how I have arranged them (I think I have not used splitters before).
Maybe it would be better to create another thread, since I succeeded in reproducing it in Larus 4.2, too?
There, I could export some parts of the app, too.
Also, another thing happened - after moving the splitter continually, it stayed at (visibly) 50 % and then it could not be moved anymore.


This is the routine I use to add text in the Memos. I wonder if the SendMessage could be involved somehow.

Code: Pascal  [Select][+][-]
  1. procedure AppendMemo(RichMemo: TRichMemo; aText: String; Colour: TColor = clDefault);
  2. var
  3.   prms : TFontParams;
  4.   ScrollPos : integer = 0;
  5. begin
  6.   ScrollPos := RichMemo.VertScrollBar.ScrollPos;
  7.   prms := GetFontParams(RichMemo.Font);
  8.   if (Colour <> clDefault) then prms.Color := Colour;
  9.   RichMemo.Lines.BeginUpdate;
  10.   InsertFontText(RichMemo,aText, prms);
  11.   if (stSinglePanel = True) then exit;
  12.   if ((RichMemo = frmMain.memoSend) and (stAutoScrollSend = True))
  13.   or ((RichMemo = frmMain.memoReceivedText) and (stAutoScrollReceive = True))
  14.   or ((RichMemo = frmMain.memoReceivedHex) and (stAutoScrollReceive = True))
  15.     then
  16.     begin
  17.       {$ifdef windows}SendMessage(RichMemo.handle, WM_VSCROLL, SB_BOTTOM, 0);{$endif} //TODO: Add this behaviour in Linux
  18.     end
  19.   else
  20.     begin //Prevent scroll. NOTE: This method works only when the vertical scrollbar is enabled!
  21.       RichMemo.ScrollBy(0,MaxInt);
  22.       RichMemo.ScrollBy(0,-ScrollPos);
  23.     end;
  24.     RichMemo.Lines.EndUpdate;
  25. end;  
« Last Edit: November 11, 2025, 02:54:06 pm by CM630 »
Лазар 4,4 32 bit (sometimes 64 bit); FPC3,2,2

baldzhang

  • New Member
  • *
  • Posts: 47
Re: Lazarus Bugfix Release 4.4
« Reply #9 on: November 11, 2025, 04:02:56 pm »
And for anyone on Windows, who is interested in testing the upcoming FPC 3.2.4, there is also a snapshot of Lazarus 4.4 with FPC 3.2.4RC1
- 64 bit: https://sourceforge.net/projects/lazarus-snapshots/files/Window%2064/2025-11%20Lazarus%204.4%20with%20FPC%203.2.4-RC1%20%2856baf314b5eb%29
- 32 bit: https://sourceforge.net/projects/lazarus-snapshots/files/Window%2032/2025-11%20Lazarus%204.4%20with%20FPC%203.2.4-RC1%20%2856baf314b5eb%29/

I will
I'm build compiler by myself, so just use fpc 3.2.4rc1 tag or fixes_3_2? or any other branch/tag is better?

forgot to mention, 64-bit only for now. no 32-bit env...
« Last Edit: November 11, 2025, 04:16:21 pm by baldzhang »

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 11901
  • Debugger - SynEdit - and more
    • wiki
Re: Lazarus Bugfix Release 4.4
« Reply #10 on: November 11, 2025, 04:48:44 pm »
And for anyone on Windows, who is interested in testing the upcoming FPC 3.2.4, there is also a snapshot of Lazarus 4.4 with FPC 3.2.4RC1
- 64 bit: https://sourceforge.net/projects/lazarus-snapshots/files/Window%2064/2025-11%20Lazarus%204.4%20with%20FPC%203.2.4-RC1%20%2856baf314b5eb%29
- 32 bit: https://sourceforge.net/projects/lazarus-snapshots/files/Window%2032/2025-11%20Lazarus%204.4%20with%20FPC%203.2.4-RC1%20%2856baf314b5eb%29/

I will
I'm build compiler by myself, so just use fpc 3.2.4rc1 tag or fixes_3_2? or any other branch/tag is better?

If you build the compiler yourself, then you can use ether
- the normal Lazarus 4.4 installer
- the 4.4 + 3.2.4RC1 snapshot Git commit 56baf314b5eb

They contain identical Lazarus sources.
They only differ in the FPC version that is bundled into them, and that is used to build the IDE.

But both can be used with other FPC. You can go to "Tools" > "Options" and change the compiler to a different version (3.2.0 / 3.2.2 / 3.2.3 /3.2.4RC / 3.3.1).

The advantage of the provided snapshot is, that you don't need to build the 3.2.4RC yourself.


"fixes_3_2" aka 3.2.3 afaik has some newer fixes, that aren't in the 3.2.4RC. I don't know if some/any of those will be merged before the final 3.2.4 (that needs to be ask to the fpc team, in the fpc section of the forum / or the thread on the 324rc)

AlexTP

  • Hero Member
  • *****
  • Posts: 2648
    • UVviewsoft
Re: Lazarus Bugfix Release 4.4
« Reply #11 on: November 11, 2025, 07:21:33 pm »
Quote
>Does this question belong here or do I need to post it in a bug forum?

Pls ask this at the "Packages and Libraries" part of the forum.
I will help.
« Last Edit: November 11, 2025, 07:32:29 pm by AlexTP »

n7800

  • Hero Member
  • *****
  • Posts: 583
  • Lazarus IDE contributor
    • GitLab profile
Re: Lazarus Bugfix Release 4.4
« Reply #12 on: November 12, 2025, 12:34:13 am »
Maybe it would be better to create another thread, since I succeeded in reproducing it in Larus 4.2, too?

It seems that the moderators can move all comments into a separate thread themselves.

bobihot

  • New Member
  • *
  • Posts: 43
Re: Lazarus Bugfix Release 4.4
« Reply #13 on: November 12, 2025, 08:08:22 pm »
Thanks.
I again can`t to compile with some additional components. On Laz 4.20 From some time after apear I was can to install him?



Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 11901
  • Debugger - SynEdit - and more
    • wiki
Re: Lazarus Bugfix Release 4.4
« Reply #14 on: November 12, 2025, 08:28:30 pm »
Thanks.
I again can`t to compile with some additional components. On Laz 4.20 From some time after apear I was can to install him?

I don't know about the error message, the folder looks correct, so I wouldn't expect to need to "clean up ideintf" => but hard to say, without reproducing it (and I am not going to download it now).

I found a version of the package => https://github.com/fluisgirardi/pascalscada_v0/blob/master/pascalscada.lpk

If it is this, then in the required section, I do not see the "IdeIntf" package. It could be required indirectly, I tried to trace the nested requirements... I didn't see it, but could have missed it.

Have you tried adding it? As requirement for the package? (If it is indeed missing, then thats for the author to add)

 

TinyPortal © 2005-2018