Embarcadero is pleased to announce the release of RAD Studio 11 Alexandria Release 2, also known as RAD Studio 11.2, along with Delphi 11.2 and C++Builder 11.2.
RAD Studio 11.2 includes support for the iOS Simulator platform on macOS ARM 64 for the Delphi language, migrates the Delphi Linux debugger to the LLDB technology, and adds some significant new features to the RAD Studio IDE, including Markdown support and a popular customer request to visually indicate inactive code in the code editor.
While we have added some new features, the core focus of this release has been on quality, in terms of usability, performance and stability, as requested by our customers. The quality focus encompasses all product areas, the IDE, the compilers and toolchains, the UX, RTL, database and Internet libraries and includes both the Delphi and the C++ sides of the product.
In this blog post, we want to highlight some of the main new features and enhancements in RAD 11.2, including the most relevant quality updates.
Table of Contents
Platform and Tooling Changes
Delphi iOS Simulator
RAD Studio 11.2 offers iOS Simulator support for the Delphi language, with the ability to generate iOS Simulator binaries for macOS devices running on ARM-64 (M1 or M2 CPUs). This enables developers to test their Delphi applications on different Apple devices and on multiple form factors using the iOS Simulator, without the need to buy the specific hardware.
Android API Level 32
In this release, the IDE lets you target Android API Level 32 (up from API level 30 in 11.1), which will be required by Google Play in November 2022. We have also updated our installer to offer the Eclipse Temurin JDK 11, required by the latest Android SDK tools.
LLDB for Delphi for Linux
Delphi’s Linux toolchain previously used GDB for debugging; in this release, we are switching to LLDB, which provides a strong quality improvement both in features and in Delphi language syntax support. We have also upgraded to version 12 of LLDB and adopted it for the iOS Simulator, along with existing use of LLDB for C++ Win64, and Delphi macOS, iOS, and Android 64 platforms.
In terms of the RAD Studio IDE, we have removed all remaining dependencies on the Internet Explorer ActiveX control. There are two main new features built for this reason: new Markdown and HTML previews, plus Help Insight based (once again) on XSLT and CSS.
IDE support for Markdown documents and a VCL-based HTML preview
You can open and edit Markdown (.md) files and see a rich text rendered view of it in the Preview tab. The Markdown rendering includes support for tables and other special tags.
Similarly, HTML files are rendered as formatted HTML within the IDE with a new native VCL-based viewer. Like Markdown, you cannot edit HTML in the formatted preview, but you can edit both HTML and Markdown in the code editor.
Furthermore, the Project Page Options dialog now allows you to specify a Markdown file in alternative to an HTML file as the “project page” or readme that automatically shows when you open a project in RAD Studio.
Restoring XSLT transforms for Help Insight
Help Insight now uses a VCL-based HTML display control and generates the HTML by processing the XMLDoc data returned by the compiler with an XSL transformation, applying CSS styling for display. As in 10.3 and earlier versions, the XSLT and CSS files are customizable. This offers more readable details, in terms of formatting, and the ability for a user to change the content and layout.
Additional Code Insight / LSP related extensions include color constants shown with a color preview in Code Completion and Tooltip Insight.
Inactive Code in the Code Editor
It is common to have code that is conditionally compiled, for specific platforms or other reasons. The Delphi code editor will now show code that is inactive – not compiled due to undefined macros – differently to code that is active and will be compiled. In case of complex IFDEFs, this feature allows you to immediately spot the active code for the current platform and build configuration.
Here is a different scenario, with grayed out disabled used units:
All code and markup (such as selections) in an inactive code region are drawn in subdued or semitransparent compared to normal code. Code and editor markup retain all syntax highlighting and other formatting in inactive regions, simply with the addition of the inactive rendering.
C++Builder Code Insight
RAD Studio 11.2 includes all of the enhancements already delivered in the special 11.1.5 C++ Code Insight update. Along with significant cquery improvements, the release offers the ability to better customize the LSP behavior under the Tools Options dialog, with the ability to restart the server when opening a new project, index only files in the editor or index all files in the project group.
Enhanced Editor Tabs
RAD Studio 11.2 adds some new features to editor tabs, including the ability to show in different colors the tab for files of different types (regular source code, files opened while debugging, configuration files, and so on). Custom colors can be turned off, such as for visual clarity reasons.
Additionally, the ‘X’ close button on tabs is now optional, and we have introduced a read-only status icon (a lock) shown when the file is read only and cannot be edited. All of these visual cues make file editing in the IDE a lot more productive.
GetIt Package Manager
GetIt now allows you to filter by language (Delphi or C++). The new filter allows you to list only Delphi packages or only C++Builder packages, and it’s active if you are using RAD Studio.
We introduced support for local GetIt packages (a feature that requires an active Update Subscription). A new button, visible at the bottom of the GetIt dialog sidebar, enables the installation of a Delphi package delivered as a local JSON configuration file. This feature allows a customer to download a package and install it in RAD Studio on a computer not connected with the internet for security or other reasons, but also to create custom company packages to streamline their installation on many computers.
Welcome Page Improvements
We have restored the “New in GetIt” section in the Welcome page and improved the behavior of the checkbox “Close Welcome screen when opening a new project”: the Welcome page is now restored when all projects are closed.
Additional IDE Features and Quality
- The Tools > Options > User Interface page offers the ability to change the IDE UI font and size, an accessibility setting which applies to the main window and key dialogs.
- The IDE allows you to use a custom VCL style for the IDE itself in the updated IDE Style (renamed from Themes Manager) page of the Tools > Options dialog
- The CPU view now syntax-highlights the assembly code onscreen.
- The recently opened list reflects opening projects, not closing them (so in the event of any IDE problem, it will still retain the latest opened list)
- Library source code files are now marked as read only, preventing accidental edits
- The File > New menu now lets you quickly add a data module
- We have further improved the use of the IDE via Remote Desktop
- We have changed the behavior of double-clicking an item in the Projects treeview: now double-clicking performs the most expected action, instead of always expanding the tree node
Library Features and Improvements
Delphi RTL library
The Delphi RTL library in RAD Studio 11.2 has the integrated ZLib updated to version 1.2.12, includes a new TProxySubrangeStream class for working on a portion of another stream, has a PCRE compiled with JIT enabled for faster regular expressions execution and adds a few RTTI-related improvements.
The VCL library in this release includes improvements in the use of Microsoft’s WebView 2 control in both TEdgeBrowser and TWebBrowser components, with better support for the UserDataFolder and the ExecutableFolder configurations. This change allows more flexibility in the deployment of applications that use the WebView 2 control, including secure enterprise scenarios. The library has improved quality for the CardPanel, NumberBox, RichEdit, ListView, DateTimePicker and BalloonHint components.
This release has extensive improvements for TPathData processing and rendering, both in terms of quality and performance, including quadratic Bézier curve commands and other transformations. It solves issues in the DynamicAppearance with the Listview control, TVideoCaptureDevice on Windows, the Metal driver, a few memory leaks, and adds support for iOS status bar with dark icons.
The FireDAC library has been enhanced to support the latest Microsoft ODBC Driver for SQL Server, adds support for MongoDB new transaction feature, includes a large number of improvements to the FDMonitor and the FDExplorer tools, offers text editor support for SQL syntax highlighting in the FireDAC SQL text property editor, and provides reFind files for the migration of dbGo (classic ADO) projects to FireDAC.
RAD Server has been enhanced with an auth token/session expiration option, removes an incorrect 2-users limitation in RAD Server Lite, adds IP Address and DateTime to logging and simplifies the creation of client applications with the EMSFireDACClient component.
The features and quality improvements mentioned above are only a fraction of the overall quality work in RAD Studio 11.2. In fact, some features were driven by quality work, such as introducing Markdown with the replacement HTML/Markdown VCL control, while removing the Internet Explorer ActiveX control from the IDE to improve quality.
RAD Studio 11 Alexandria Release 2 is a strongly quality-focused release. Overall, we have implemented over 30 feature requests from Quality Portal and fixed over 420 bugs reported by customers on that site, encompassing all areas of the product.
Ready to Go
Product trials for RAD Studio, Delphi and C++Builder 11 are now available and the updated product builds are live in the online store. Customers on Update Subscription can download and install RAD Studio 11 today using their existing license and will receive an email announcing the new release availability. Downloads are available for download in the new customers portal at https://my.embarcadero.com.
For more information, you can check the following links:
- The Embarcadero Web Site 11.2 page
- The press release
- The more detailed What’s New page in the DocWiki
- The list of publicly reported bugs fixed (also in DocWiki)
- The RAD Studio feature matrix PDF
We are very happy with the quality work our team did for RAD 11.2 and we are certain you’ll equally enjoy using this new version of RAD Studio, C++Builder, and Delphi.
Next, learn more about RAD Studio 11 and some of its great features and enhancements with a particular focus on the Integrated Development Environment (or IDE), that is, the RAD Studio application itself.