AIThis post was created with the assistance of artificial intelligence (AI).

TL;DR

Buying for a business?Offer from Amazon

Get business pricing on monitors, keyboards and dev gear

  • Business-only prices and quantity discounts
  • Tax-exempt purchasing
  • Multiple users, one account, clear invoices
As an affiliate, we earn on qualifying purchases.

A release announced on GetLazarus.org adds dynamic package support to the Free Pascal Compiler and Lazarus IDE. Packages can provide installable IDE extensions and runtime plugins, but the report does not identify a version number, release date, or official project-wide adoption status.

Free Pascal and the Lazarus IDE now have a release offering dynamic package support, according to an announcement on GetLazarus.org. The feature is intended to let developers install components and IDE extensions without rebuilding the whole IDE, and to use packages as runtime plugins in their own programs.

The announcement describes packages as standard shared-library files for Linux, Windows, and macOS, with compiler-generated metadata that allows their contents to be inspected. The developer says changes were made to the compiler, runtime library, and Lazarus IDE to support the feature. The release is offered for download through the announcement website, though the post does not name a version or provide a date.

For application developers, packages can be loaded, searched, enumerated, and unloaded at runtime, according to the report. The runtime adds mechanisms intended to manage thread variables and dynamic types—including strings and dynamic arrays—across package boundaries. A new RTL unit, DynPkgTypes.pas, provides functions for reading package information and using RTTI to inspect types.

The Lazarus changes focus on package workflows. The IDE can detect edits to registered package source and rebuild the package before starting; a separate progress window reports longer operations. The announcement also describes a persistent Packages window, support for adding or removing multiple packages, and package options that restrict availability to a particular platform or widgetset. It says compiling an installed package can update associated controls, components, or extensions without rebuilding the entire IDE.

At a glance
announcementWhen: Release announced on GetLazarus.org; th…
The developmentA developer announced the first release of dynamic package support for Free Pascal and Lazarus, including compiler, runtime, and IDE changes.

Plugins Without Rebuilding Lazarus

Dynamic packages offer Free Pascal developers a way to separate parts of an application or IDE extension into libraries that can be changed independently. For Lazarus users, the claimed benefit is a shorter cycle when developing and testing components: package changes can be applied without rebuilding the complete IDE. For application teams, packages could support a plugin architecture in which selected functionality is distributed separately from the main executable.

The announcement also says developers can still bundle an application into one executable, or divide it into packages that can be replaced while the program is running. This gives developers a deployment choice rather than requiring all software to use dynamic packages. The practical value will depend on compatibility, packaging practices, and how the feature performs in real projects; the source provides no independent tests or performance measurements.

Amazon

Pascal dynamic package development tools

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Compiler, Runtime and IDE Changes

The announcement presents this as the first release of full dynamic package support for the Free Pascal Compiler and Lazarus. That wording is the developer’s description, not an independently verified assessment of the feature’s completeness or official status within the projects. The report says the implementation required changes across the compiler, runtime library, and IDE rather than a change limited to how shared libraries are built.

The metadata is a key distinction from ordinary shared libraries, according to the announcement: it maps package contents and supports runtime inspection. That has a deployment trade-off. Dynamic packages are described as larger than ordinary shared libraries, and stripping them removes metadata needed for dynamic-package operation. The announcement does not quantify the size increase.

There are also naming constraints. A unit inside a package cannot share the package’s name, so the IDE’s generated source listing appends “Package” to that name. Unit names must also be unique across packages; a conflict means developers must choose one package or rename a unit. These restrictions affect how projects and third-party components can be combined.

““Dynamic packages allow users to create and install components, controls, and Lazarus extensions in seconds without rebuilding the entire IDE.””

— The developer behind the GetLazarus.org announcement

Amazon

Lazarus IDE plugin development kit

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Release Status and Compatibility Details

The source does not specify a release number, publication date, or supported minimum versions of Free Pascal and Lazarus. It also does not clarify whether this implementation has been adopted or endorsed by the projects’ maintainers, or whether it is a separate distribution available from GetLazarus.org. Readers should not assume that the feature is included in every existing compiler or IDE installation.

The announcement gives no benchmark results, package-size figures, detailed compatibility matrix, or independent review of the runtime behavior. Although it identifies Linux, Windows, and macOS as supported library platforms, the extent of testing on each is not stated. The source describes mechanisms for handling types and thread variables across package boundaries but does not provide enough detail to assess limitations or failure cases. Those points remain open pending documentation, testing, and user experience.

Amazon

shared library files for Windows Mac Linux

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Testing and Adoption in Projects

Developers interested in the feature can obtain the release from the GetLazarus.org announcement page and review its accompanying documentation and examples. Before relying on dynamic packages in a production application, teams will need to test their target operating systems, package loading and unloading, and interactions between shared types and runtime state.

The next indicators of broader uptake will be clearer release and compatibility information, feedback from Lazarus and Free Pascal users, and any response from the projects’ maintainers. The source does not state a roadmap, a planned upstream merge, or a date for a subsequent release, so future development and official distribution remain unconfirmed.

Amazon

Pascal runtime plugin libraries

As an affiliate, we earn on qualifying purchases.

As an affiliate, we earn on qualifying purchases.

Key Questions

What does dynamic package support add?

It allows packages to be used for Lazarus components and extensions and as libraries that applications can load at runtime. The announcement says the compiler, runtime library, and IDE were changed to support this.

Does using packages mean an application must have multiple files?

No. The announcement says developers can still bundle an application into a single executable, or split it into dynamic packages. The deployment choice is left to the developer.

Which platforms are named as supported?

The report describes dynamic packages as shared-library files for Linux, Windows, and macOS. It does not provide a detailed platform or version compatibility matrix.

What restrictions should developers know about?

A unit cannot have the same name as its package, and unit names must be unique across packages. The announcement also warns that stripping a package removes metadata required for dynamic-package functionality.

Is this feature confirmed as part of an official Free Pascal release?

The source confirms that a developer announced a downloadable implementation on GetLazarus.org. It does not establish whether the work has been adopted into an official project release or specify a version number.

Source: hn

HALLOWEEN

Halloween Picks

As an affiliate, we earn on qualifying purchases.

You May Also Like

Your AI Agent Writes Flawless Code. Can It Run a Company on Fire?

Four frontier AIs ran the same company through its worst week. All passed the manipulation tests — only two closed the deal. Benchmarks missed the gap.

Before an AI Touches Your Workflow, Put It Through a Bad Week

Firmulate’s AI company wargame tests whether models can act on what they know. See how a read-only pilot can expose weak points before agents reach live systems.

A Guide To AI Mathematics, Quantum Computing And Cryptography

A reported release of 722 AI-generated mathematical manuscripts has renewed questions about cryptographic assumptions, alongside the quantum threat.

The Tilde In Your PATH May Not Be Your HOME

A shell sandbox warning highlighted that quoted ~/.local/bin in PATH can stay a literal tilde. Use $HOME and check your PATH entries.