Recent

Author Topic: Lazarus Release 2.2.0  (Read 78250 times)

mattias

  • Administrator
  • Full Member
  • *
  • Posts: 196
    • http://www.lazarus.freepascal.org
Lazarus Release 2.2.0
« on: January 05, 2022, 11:57:19 pm »
The Lazarus team is glad to announce the release of Lazarus 2.2.

This release was built with FPC 3.2.2.

Here is the list of changes for Lazarus and Free Pascal:
http://wiki.lazarus.freepascal.org/Lazarus_2.2.0_release_notes
http://wiki.lazarus.freepascal.org/User_Changes_3.2.2

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

The release is available for download on SourceForge:
http://sourceforge.net/projects/lazarus/files/

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

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

Minimum requirements:

Windows:
   2k, XP, Vista, 7, 8, 8.1 and 10, 32 or 64bit.

FreeBSD/Linux:
   gtk 2.8 for gtk2, qt4.5 for qt, qt5.6 for qt5, 32 or 64bit.

Mac OS X:
   Cocoa (64bit) 10.12 to 11.4, Carbon (32bit) 10.5 to 10.14, qt and
   qt5 (32 or 64bit).

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

For people who are blocked by SF, the Lazarus releases from SourceForge are mirrored at:ftp://ftp.freepascal.org/pub/lazarus/releases/

dbannon

  • Hero Member
  • *****
  • Posts: 3156
    • tomboy-ng, a rewrite of the classic Tomboy
Re: Lazarus Release 2.2.0
« Reply #1 on: January 06, 2022, 12:04:05 am »
Wow, can I be the first to thank and congratulate the team for this great work ?

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

piola

  • Full Member
  • ***
  • Posts: 147
  • Lazarus 2.2, 64bit on Windows 8.1 x64
Re: Lazarus Release 2.2.0
« Reply #2 on: January 06, 2022, 12:18:50 am »
Long awaited, thank you very much! Will try immediately.

Please keep up the great work.

Martin_fr

  • Administrator
  • Hero Member
  • *
  • Posts: 10552
  • Debugger - SynEdit - and more
    • wiki
Re: Lazarus Release 2.2.0
« Reply #3 on: January 06, 2022, 12:19:51 am »
As a side note:

For x86_64,both FPC 3.2.0 and FPC 3.2.2 have a bug in the optimizer.

From current observation this issue is extremely rarely triggered. However, if the IDE for x86_64 is compiled with O2 or higher, then at least FpDebug will be broken (The affected code is a generic in LazUtils: TLazThreadedQueue or TLazFifoQueue).
Other parts of the IDE have not yet been observed, however even if the bug is in effect, the broken code needs to be executed with very specific arguments. Therefore, actual faulty behaviour could occur rather seldom. Yet, as any bug, it can strike at any time.

Compiling with -O1 is save
Compiling with -O2 -OoNoPeepHole  should also be save..

It is recommended for x86_64 users, to build your IDE with -O1 only.

This issue also affects 2.0.x (or potentially other code) if build with 3.2.0 or 3.2.2.
Since the triggers for this issue (complier going wrong, and resulting broken code actually failing) are extremely complex, not every IDE build (with 3.2.0/2 and -O2 up) will immediately show symptoms. It is possible that an affected build runs without issues, or fails once every few month only.

As for your own projects, you need to come to your own decision.  I have not seen any reports of this issue (other for the IDE), and 3.2.0 has been out for a good time.
Yet, no guarantees.

The issue is fixed in 3.2.3, so with the upcoming 3.2.4 this problem will be gone.
https://gitlab.com/freepascal.org/fpc/source/-/commit/e9d318e7e2f772bf455a92461cd5c229e69858d8

32 bit users should not be affected by this.
Non intel platforms should also not be affected.
« Last Edit: January 06, 2022, 12:31:39 am by Martin_fr »

dseligo

  • Hero Member
  • *****
  • Posts: 1406
Re: Lazarus Release 2.2.0
« Reply #4 on: January 06, 2022, 02:39:06 am »
Nice, thanks  :)

VTwin

  • Hero Member
  • *****
  • Posts: 1224
  • Former Turbo Pascal 3 user
Re: Lazarus Release 2.2.0
« Reply #5 on: January 06, 2022, 03:04:40 am »
Excellent! Many thanks to the devs. I am excited to install it.
“Talk is cheap. Show me the code.” -Linus Torvalds

Free Pascal Compiler 3.2.2
macOS 14.5: Lazarus 3.4 (64 bit Cocoa M1)
Ubuntu 18.04.3: Lazarus 3.4 (64 bit on VBox)
Windows 7 Pro SP1: Lazarus 3.4 (64 bit on VBox)

loaded

  • Hero Member
  • *****
  • Posts: 853
Re: Lazarus Release 2.2.0
« Reply #6 on: January 06, 2022, 06:04:14 am »
Respect for the effort, thank you very much .
Check out  loaded on Strava
https://www.strava.com/athletes/109391137

12398890

  • Newbie
  • Posts: 3
Re: Lazarus Release 2.2.0
« Reply #7 on: January 06, 2022, 06:57:54 am »
Thank you very much! Please keep up the great work!

bigfoot75

  • Newbie
  • Posts: 2
Re: Lazarus Release 2.2.0
« Reply #8 on: January 06, 2022, 08:16:17 am »
Does anyone use RichMemopack?
I got an error message

class function TRichEditManager.LoadRichText(RichEditWnd: Handle; ASrc: TStream): Boolean;
var
  cbs : TEditStream_;
begin
  cbs.dwCookie := PDWORD(ASrc);
  cbs.dwError := 0;
  cbs.pfnCallback := @RTFLoadCallback;
  SendMessage(RichEditWnd, EM_STREAMIN, SF_RTF, LPARAM(@cbs) );
  Result := cbs.dwError = 0;
end;   


win32richmemoproc.pas(730,22) Error: Incompatible types: got "<address of function(PDWord;PByte;LongInt;var LongInt):DWord;StdCall>" expected "<procedure variable type of function(LongWord;PByte;LongInt;var LongInt):DWord;StdCall>"

dsiders

  • Hero Member
  • *****
  • Posts: 1282
Re: Lazarus Release 2.2.0
« Reply #9 on: January 06, 2022, 08:35:48 am »
Does anyone use RichMemopack?
I got an error message

class function TRichEditManager.LoadRichText(RichEditWnd: Handle; ASrc: TStream): Boolean;
var
  cbs : TEditStream_;
begin
  cbs.dwCookie := PDWORD(ASrc);
  cbs.dwError := 0;
  cbs.pfnCallback := @RTFLoadCallback;
  SendMessage(RichEditWnd, EM_STREAMIN, SF_RTF, LPARAM(@cbs) );
  Result := cbs.dwError = 0;
end;   


win32richmemoproc.pas(730,22) Error: Incompatible types: got "<address of function(PDWord;PByte;LongInt;var LongInt):DWord;StdCall>" expected "<procedure variable type of function(LongWord;PByte;LongInt;var LongInt):DWord;StdCall>"

RichMemo has a github repository with issue tracking: https://github.com/skalogryz/richmemo/.
Probably best to report the issue there. Or, start a separate thread.
Preview the next Lazarus documentation release at: https://dsiders.gitlab.io/lazdocsnext

bigfoot75

  • Newbie
  • Posts: 2
Re: Lazarus Release 2.2.0
« Reply #10 on: January 06, 2022, 09:08:54 am »
Does anyone use RichMemopack?
I got an error message

class function TRichEditManager.LoadRichText(RichEditWnd: Handle; ASrc: TStream): Boolean;
var
  cbs : TEditStream_;
begin
  cbs.dwCookie := PDWORD(ASrc);
  cbs.dwError := 0;
  cbs.pfnCallback := @RTFLoadCallback;
  SendMessage(RichEditWnd, EM_STREAMIN, SF_RTF, LPARAM(@cbs) );
  Result := cbs.dwError = 0;
end;   


win32richmemoproc.pas(730,22) Error: Incompatible types: got "<address of function(PDWord;PByte;LongInt;var LongInt):DWord;StdCall>" expected "<procedure variable type of function(LongWord;PByte;LongInt;var LongInt):DWord;StdCall>"

RichMemo has a github repository with issue tracking: https://github.com/skalogryz/richmemo/.
Probably best to report the issue there. Or, start a separate thread.

I got the latest version from github,and complied it successful,thanks!

440bx

  • Hero Member
  • *****
  • Posts: 4731
Re: Lazarus Release 2.2.0
« Reply #11 on: January 06, 2022, 09:16:29 am »
Another thank you! to the developers for a great IDE :)
(FPC v3.0.4 and Lazarus 1.8.2) or (FPC v3.2.2 and Lazarus v3.2) on Windows 7 SP1 64bit.

Roelof

  • Newbie
  • Posts: 5
Re: Lazarus Release 2.2.0
« Reply #12 on: January 06, 2022, 10:58:03 am »
Wonderful! Thanks to all that put their effort in.

Al-Eid

  • Jr. Member
  • **
  • Posts: 77
Re: Lazarus Release 2.2.0
« Reply #13 on: January 06, 2022, 11:45:51 am »
thank you all

jwdietrich

  • Hero Member
  • *****
  • Posts: 1236
    • formatio reticularis
Re: Lazarus Release 2.2.0
« Reply #14 on: January 06, 2022, 01:10:02 pm »
When compiling one of my apps and also on recompiling the IDE it stops with the error message "idewindowintf.pas(26,3) Fatal: Cannot find IDEOptionsIntf used by IDEWindowIntf, incompatible ppu=/Applications/Lazarus/components/buildintf/units/x86_64-darwin/ideoptionsintf.ppu, multiple packages: BuildIntf, IDEIntf".

Is there a workaround available?
function GetRandomNumber: integer; // xkcd.com
begin
  GetRandomNumber := 4; // chosen by fair dice roll. Guaranteed to be random.
end;

http://www.formatio-reticularis.de

Lazarus 3.4.0 | FPC 3.2.2 | PPC, Intel, ARM | macOS, Windows, Linux

 

TinyPortal © 2005-2018