Lazarus 1.0 release notes

From Free Pascal wiki
Revision as of 07:29, 4 February 2011 by Paul Ishenin (talk | contribs) (add info from 0.9.32 notes)
Jump to navigationJump to search

Template:Lazarus 0.99.0 release notes

Lazarus 0.99.0 is not yet released. This page is under construction!

Statistics:

  1. commits: xxx
  2. log: svn log -r xxxx:xxxx
  3. resolved bug tracker issues: xxx

LCL Interfaces major changes

LCL Changes

  • The LCL is now a normal package. It is now automatically recompiled if needed. For example when switching the target platform and you have not yet compiled for this platform. This has no impact on existing projects.
  • The platform independent parts of the LCL are now in the package LCLBase. This has no impact on existing projects.
  • The linker options needed by the LCL are now only added to projects that use the package LCL. Formerly all projects got them. See here.
  • TCustomForm.Create raises an exception if form resource is not found.
  • TNotebook and TPage: The new implementations of these classes have been added.

IDE Changes

  • Packages compiled via Makefile created by the IDE are now recognized by the IDE and only recompiled if something changed.
  • New macros: PrimaryConfigPath, SecondaryConfigPath, FallbackOutputRoot. See here IDE Macros
  • The package editor was improved to better support big packages with hundreds of files: You can now sort, filter and show the directory structure of the package.

Codetools

  • Parsing, searching and code completion for class operators and advanced records.
  • Parsing objcclass external syntax.

Components

Changes affecting compatibility

TCustomForm.Create raises an exception if resource is not found

  • Reason:: Each form created by IDE should have a resource so if resource is not found it is something wrong with either a resource or unit which contains this form. Therefore application should inform the developer that form can't function correctly without the resource. This change is also delphi compatible and compatible with TFrame and TDataModule components.
  • Remedy: If you need resource less form you have 2 options: 1) Create a TForm class (not a descendant) 2) Contruct your form using CreateNew() constructor. It is also possible to block the new behavior by setting RequireDerivedFormResource to False.