RAD Studio Changelog

What's new in RAD Studio 12.0

Mar 8, 2024
  • Target The Latest Platform Versions!:
  • RAD Studio 12 offers official support for iOS 17 (for Delphi only), Android 14, and macOS Sonoma. RAD Studio 12 also supports Ubuntu 22 LTS and Windows Server 2022.
  • Visual Assist Integration for C++Builder IDE:
  • Visual Assist integration provides best-in-class code completion, code navigation and rename refactoring for C++ code; an amazing productivity boost
  • Multiline String Literals for Delphi Source Code:
  • Multiline string literals enable easier embedding of SQL, HTML, JSON, XML multi-line text within an application source code
  • SKIA Support for UI Design in FireMonkey:
  • New foundation improves performance and quality in rendering graphics and UI controls across all target platforms
  • Improved Mobile Design with FireMonkey Enhancements:
  • Improvements to Android platform support, split-screen iOS and Android panes, full-set icon and splash screen wizard, support for Android API level 33
  • Modernized VCL with Reworked MDI and Tabbed UI for VCL:
  • Improved application modernization with support for HighDPI and new VCL designers originating from Konopka Signature VCL Controls
  • More Windows APIs Ready to Use in Object Pascal:
  • Comprehensive set of all Windows API headers converted to Object Pascal, to make it easier for Delphi developers to call any Windows platform API
  • Modernized C++ Compilers and Toolchain:
  • Preview of the new Clang-based C++ compiler for Win64, supporting the latest C++ standards, integrating better with external libraries and C++ code
  • New JSON Wizard for Delphi:
  • Query-by-Example available in FireDAC. JSON data mapping wizard to generate classes matching JSON data structure, map data to objects like XML and stream out to new file
  • Improved Application Security Through SQL Restrictions
  • Deeper application security through restrictions on SQL commands, blocks on multiple commands and SQL changes
  • Support for Smart IDs in RAD Server:
  • More powerful and flexible hosted REST APIs with new smart IDs (Sqids). Better performance, data paging improvements, better session authentication.

New in RAD Studio 11.3 (Feb 27, 2023)

  • Target The Latest Platform Versions!
  • RAD Studio 11.3 offers official support for iOS 16 (for Delphi only), Android 13, and macOS Ventura, all released after RAD Studio 11.2. RAD Studio 11.3 also supports Ubuntu 22 LTS and Windows Server 2022.
  • Use Biometric Authentication!
  • RAD Studio 11.3 offers a new Mobile Biometric Authentication component for FireMonkey mobile applications
  • Deploy Embedded InterBase Dev Edition!
  • RAD Studio 11.3 ships with the recently released InterBase 2020 Update 4 Developer edition and IBLite/ToGo edition
  • Debug with LLDB-Based Debuggers!
  • 11.3 introduces a new LLDB-based debugger for macOS Intel and 32-bit Android. With 11.3 all non-Windows platform debuggers across Delphi and C++ have moved to LLDB architecture.
  • Code Faster With Improved CodeInsight and Delphi LSP!
  • The IDE code editor now has the ability to highlight matching words. Delphi Code Insight through DelphiLSP sees very significant quality improvements, to further improve Code Insight features and make them faster and more reliable, including with large applications. These improvements include code completion, Help Insight, and navigation, with a strong focus on overall reliability, as well as providing completion or navigation results in areas where they were not previously provided.
  • Build Better Apps With FireMonkey Enhancements
  • On iOS improved scrolling for TDateEdit, TTimeEdit, and TComboBox. On Android, DocumentFile Provider support. Graphics improvements in the TBitmap and TCanvas classes and controls, including Multiview (with platform control type), SpeedButton, Label's FocusControl, TTreeViewItem's IsChecked, TEdit when used inside a TVertScrollBar. Improved Tab key cycling across user interface controls, and ClipChildren now takes XRadius and YRadius into consideration.

New in RAD Studio 11.1.5 (Jul 14, 2022)

  • The 11.1.5 C++Builder Code Insight Update is a quality release for C++Builder and RAD Studio customers using C++, focusing on improving code completion and related features for C++. Being tightly focused on C++, it has no benefit for Delphi customers and we do not recommend Delphi customers to install it. 11.1.5 is a full installation, and includes all hotfixes issued for 11.1.
  • 11.1.5 contains a number of improvements and quality fixes for C++ developers using C++Builder and RAD Studio 11.1, including performance improvements, display of code completion results, improved navigation, as well as a variety of quality fixes including resolving an issue for users of the classic compiler, issues saving all files in a project, and more.
  • Improved IDE And User Experience!:
  • The RAD Studio IDE is the primary focus of the 11.1 release, with the goal of further improving features introduced in recent versions. 11.1 combines the high-DPI support with improvements to remote desktop access for closer and more effective team collaboration.
  • The high-DPI designers for VCL and FireMonkey and the styled VCL form designer have undergone improvements. The new Welcome Page now offers background images, and supports custom frames with a new Open Tools API.
  • The GetIt Library Manager is enhanced with cached images and a reworked UI implementation. The Messages view can now better highlight errors with customized colors. The new Items dialog shows the available platforms for each item, and the Compile dialog shows the platform and build configuration used by the current compilation.
  • Improved Code Insight!:
  • Code Insight for both languages, Delphi and C++, are now improved. The C++ implementation, based on the Language Server Protocol architecture and cquery, has improved significantly in terms of quality and performance. The Delphi LSP engine is also greatly improved with most projects loading and updating error insight between 5 times and 30 times faster. Type parameters are now visible when completing a class declaration, including T in a generic declaration, and showing set types.
  • More Powerful Compilers And Debuggers!:
  • Improved stability and performance of Delphi and C++ compilers for various platforms. The Delphi macOS 64-bit ARM and Android 64-bit debuggers are now based on the LLDB debugger architecture, which was already in use for the Delphi iOS 64-bit debugger. As a result, Delphi debuggers are unified on this technology for most of the supported platforms, as a way to deliver increasingly better quality over time. Moreover, there are quality improvements to the C++ STL and RTL, including better Delphi RTL integration, like improving dynamic arrays with STL iterators.
  • Richer RTL, UI and Database Libraries!:
  • Optimizations and quality improvements to the core Delphi RTL in the 11.1 Release. There is also a new TURLStream class, a TStream descendant with support for async operations. Support for Windows 11 and Server 2022 in the TOSVersion data structure.
  • VCL enhancements to TTreeView, TRichEdit, TEdgeBrowser, TLabelledEdit and TNumberBox, flickering and DoubleBuffering, VCL high-DPI and scaling. New Demo through GetIt showing the use of WinUI 3 library in Delphi.
  • FireMonkey quality improvements to TListView, improved Android SDK integration, TWebBrowser, Windows high-DPI-related issues, and performance. FireDAC adds Structure View integration and offers support for MariaDB 10.6, SQLite Encrypted Edition (SEE), and Firebird 4 new data types. RAD Studio 11.1 also improves DataSnap quality and the ability to deploy a WebBroker application on Android. RAD Server adds SysAdmin endpoints including logs handling, backups management, and database validations, plus integrated deployment for RSLite.
  • Integration And New Platform Targeting!:
  • Since the 11 Alexandria release, Enterprise and Architects customers get a preview of the new AWS SDK for Delphi (licensed from Appercept), and new releases are expected. Embarcadero customers also have access to free Delphi UI libraries to Python developers, and can also use Python libraries in RAD Studio applications. RAD Studio 11.1 delivers official support to operating systems released after 11.0 shipped: Windows 11, macOS 12 Monterey, iOS 15, and Android 12!
  • Quality Improvements And Bug Fixes!:
  • The RAD Studio 11.1 Alexandria release is highly quality-focused, including a concentration on customer-reported issues and support escalations. This release provides fixes for 632 bugs reported on the Quality Portal site and delivers 30 feature requests from customers.

New in RAD Studio 10.4.2 (Feb 25, 2021)

  • Now in Tokyo Release 3 (10.2.3), mobile device support is included in all Pro Editions of RAD Studio, C++ Builder, and Delphi! Cross-platform application development has never been easier or more accessible than now.
  • RAD Studio 10.2.3 provides new C++ capabilities, expands RAD Server support for ExtJS, enhances HighDPI support for VCL, makes quality improvements in FireMonkey(FMX), and more!
  • Dark and Light Themes: Whether you like to code at night or during the brightest times of days, RAD Studio's Light and Dark themes have you covered. Dark themes have been reported to reduce eye strain in low light environments, allowing you to work more productively at night. It's easy to toggle between dark and light themes via a toolbar menu.
  • Improved Installer: The improved installer UI and license manager UI help you identify the options you need and skip what you don't.
  • Customizable UI: The IDE's layouts are now even more customizable, with a new layout option for startup and when no files are open.
  • New Component Icons: Find the components you need at a glance with modernized icons, designed to be clear and recognizable.
  • Create Amazing Cross-Platform Applications:
  • 80% of Internet users own a smartphone and access applications and data from both their mobile device and their laptop/desktop, so developing cross-platform applications is more important than ever. Mobile support is now included in all Pro, Enterprise, and Architect editions of RAD Studio, C++ Builder, and Delphi.
  • FireMonkey (FMX) enables modern cross-platform user interfaces, and now it's even better with these improvements:
  • Quick Edit feature allows you to easily edit a control by changing its name, caption, alignment and layout options.
  • Labels font rendering (when in scrolling containers) an all platforms
  • Updated Android Admob mobile support to SDK version 7
  • Improvements to the DateEdit control, the TrackBar control on Windows, the SpinBox's OnChange event, Viewport3D control rendering on Android and Treeview items display
  • Improved Exception handling on macOS High Sierra 10.13.2
  • New FMX UI Templates for macOS and Android to make your apps look amazing! These UI screens cover the key UI paradigms that mobile application developers need in today's applications. The GUI templates are available for download in GetIt and include multiple UI designs for login screens, sign-up screens, profile screens, settings screens and more.
  • What's New in C++:
  • Rename Refactoring. C++ Rename Refactoring in 10.2 Tokyo Release 3 allows you to right-click an identifier in your code, and quickly rename it throughout your project to improve code readability, reduce errors when renaming, and decrease effort to maintain the project.
  • 10.2.3 contains the core of a new C++ IDE tooling capability that stores an AST for your project - symbols, code structure, and more, and this is used for Find References and Rename Refactoring.
  • CMake Commandline Support. In 10.2.3, we provide support for building CMake projects on the command line using our compilers. We also specifically support using Ninja with CMake, allowing for very fast parallel builds. This will allow you to easily build third-party libraries without converting them to a C++Builder project. You can also use Ninja for improved build times. CMake supports our Clang-enhanced compilers, and for Win32 uses the new Clang-enhanced driver, bcc32x. CMake command line support is provided for Windows, Android and iOS.
  • New bcc32x Compiler Frontend. The existing Win32 Clang-enhanced compiler, bcc32c, which remains in C++Builder, shares a common command line interface with the classic bcc32 compiler. This is a great upgrade path, but meant that all of the Clang-enhanced compilers shared a common command-line interface except for Win32 (bcc32c). The new bcc32x is exactly the same as bcc32c, except that it shares a common command line interface with bcc64, bccios32, bccios64, and bccaarm, adding full consistency across our current-gen compilers.
  • VCL Enhancements:
  • RAD Studio 10.2.3 enhances support for HighDPI, improves rendering for certain controls and adds improvements to VCL Styles:
  • Enhanced HighDPI Support
  • Improved VCL styles for ComboBox scrollbars, Popup menu items, controls on a DBCtrlGrid, StatusBar grip, tab sheet images, date-time picker control and accelerator keys in menus
  • Improved control rendering for MonthCalendar, GridPanel scaling and DBGrid scaling
  • Deploy Services Based Applications with RAD Server:
  • RAD Studio 10.2 added multi-tenancy support
  • A single RAD Server instance with a single RAD Server database connection can now support multiple isolated tenants
  • Each tenant has a unique set of RAD Server resources including Users, Groups, Installations, Edge Modules, and other data
  • Tenant Administration: Create new tenants, edit existing ones, add, edit or delete tenants
  • NEW in 10.2.2! Enterprise and Architect editions now include a single server/single site deployment license for RAD Server ($5000 value)
  • NEW in 10.2.3! Expanded RAD Server support for Ext JS client. It's now easier to configure your system for testing a local deployment of a solution with an HTML and JavaScript frontend (including, of course, an Ext JS solution) and a web service powered by RAD Server REST support.
  • Delphi Linux Compiler:
  • Starting in RAD Studio 10.2, the Delphi IDE includes its first LLVM based Linux compiler for enterprise development, enabling Delphi developers to target 64-bit Intel Linux servers and devices. The Linux compiler is certified for Ubuntu Server (LTS 16.04) and RedHat Enterprise (V7) and is built on top of the LLVM engine. ARC is enabled for effective memory management, while to ensure compatibility with code written for Windows Server, one based strings are used by default.
  • The new Linux compiler includes:
  • Full File System support
  • Threads and Parallel Programming Library
  • FireDAC database access support (for most Linux compatible databases).
  • WebBroker, EMS (RAD Server), and DataSnap
  • DUnitX
  • New and improved database capabilities:
  • InterBase 2017/ IBToGo 2017 in RAD Studio. InterBase 2017 Developer edition replaces InterBase XE7, which was installed until version 10.2.2. Since we're now including InterBase 2017 as part of the main install, we have disabled the separate download from GetIt available in previous 10.2 versions. The InterBase 2017 Developer license was already included in 10.2.
  • DataSnap improvements. Improvements include TDSServer OnError triggering, DSClient connection on C++, Apache Datasnap server methods with JSON parameters and removal of memory leaks in TCP configuration.
  • RAD Server has improvements in CORS support and Linux / Apache stability
  • FireDAC fixes to TFDQuery.OpenOrExecute, PostgreSQL DirectExecute, BatchMove support for CVS files on mobile, TFDDataSet.PSUpdateRecord and other FDBatchMove improvements

New in RAD Studio 10.2 Toky 25.0.26309.314 (Aug 9, 2017)

  • FireMonkey:
  • New System Status Bar Options on iOS
  • Two new properties have been added to TForm for changing the behavior of the system status bar on iOS: SystemStatusBar.BackgroundColor and SystemStatusBar.Visibility.
  • Enhancements to TMultiView:
  • Turn off user interaction with TMultiView using the Enabled property.
  • New options to manage border appearance in TMultiView.
  • Bottom and top alignments for the docked panel mode in TMultiView.
  • Multi-Threading Support for TBitmap, TCanvas and TContext3D:
  • TBitmap: Complete multi-threading support. Can be created, destroyed, and modified in any thread without synchronizations.
  • TCanvas: Supports being used from multiple threads at once, but is internally serialized.
  • TContext3D: Supports being used from multiple threads at once, but is internally serialized
  • Other FireMonkey Changes:
  • Added support for ICaption to the following text controls: TText, TStyleTextObject, TActiveStyleTextObject, TTabStyleTextObject and TButtonStyleTextObject.
  • FMX improvements to TWebBrowser for Windows.
  • Additional CharCase property in TEdit.
  • Re-exposed TStringGrid events:
  • OnCellClick
  • OnCellDoubleClick
  • OnDragDrop
  • OnDragEnter
  • OnDragLeave
  • OnDragOver
  • OnResized
  • Added TagObject and TagString properties to TListViewItem.
  • Unification of Delphi and Java threads on Android: CallInUIThread has been deprecated. All code is now running in the Java UI Thread, removing the need for thread synchronization.
  • The ProcessMessages method used to call the CheckSynchronize method, which called callbacks from the Java Native thread. There used to be two threads: the Delphi UI thread and the Java Native thread. After the refactoring work in 10.2, there is only one thread: the Java Native thread, which receives all notifications from Android and forwards them to the Delphi event handlers. While it is blocked via the while cycle, no event handler can be executed, preventing an exit from the cycle. Callbacks and events in general are called if there is no code holding the app main thread.
  • Improvements to FMX.Platform.Android.pas by enhancing FMX.Platform.Device.Android.pas, FMX.Platform.Logger.Android.pas, FMX.Platform.Metrics.Android.pas, FMX.Platform.SaveState.Android.pas, FMX.Platform.Screen.Android.pas, and FMX.Platform.Timer.Android.pas.
  • The Release method of TForm has been deprecated.
  • Changes to ShowModal on Android.
  • New FireMonkey Styles:
  • New FireMonkey styles have been added for macOS and Android. Access the FireMonkey styles at:
  • C:UsersPublicDocumentsEmbarcaderoStudio19.0StylesMacOSmacOSgraphite.fsf
  • C:UsersPublicDocumentsEmbarcaderoStudio19.0StylesAndroidAndroidWearDarkBlue.fsf
  • FireDAC and Database:
  • Improvements for Firebird:
  • New Direct property to add support for the Direct I/O backup feature.
  • Improvements for MySQL:
  • Support for MySQL v 5.7.
  • Support for MariaDB v 5.5 or later. Use FireDAC's MySQL node to connect to MariaDB.
  • Compatibilty with the recent MySQL versions 5.6.x and 5.7.x.
  • MySQL Prepared Statements API: now both old API (MySQL text protocol) and PS API (MySQL prepared statements protocol) are supported.
  • You can select a desirable API using the TFDResourceOptions.DirectExecute property.
  • Depending on the API in use, the TFDCommand.CommandIntf.CliObj property returns a TMySQLStatement or TMySQLResult object.
  • Support for internal BLOB streaming (in the smOpenWrite mode only).
  • Improvements for a synchronization of a connection transaction state and the TFDConnection.InTransaction property. This property allows you to determine whether a connection transaction is currently in progress.
  • Other FireDAC Changes:
  • The TFDDataMove component has been removed from this release and is no longer available in Tool Palette. Use the TFDBatchMove component instead.
  • Note: If you need TFDDataMove for your legacy projects, use the FireDAC.Comp.DataMove.pas unit available at:
  • Start | Programs | Embarcadero RAD Studio 10.2 Tokyo | Samples, and then navigate to:
  • Object PascalComp LayerTFDBatchMoveDataMove_Deprecated
  • TFDBatchMove has been optimized. As a side effect, the DestValue and SourceValue properties of TFDBatchMoveMappingItem are no longer available.
  • TFDMSAccessService now supports Microsoft Access 2007 or higher.
  • Enhancements to the TFDMemTable component to edit the TFDMemTable dataset at design time. Now the TFDMemTable context menu provides the Edit DataSet... item that allows you to edit the component data and save them to the form. The data are available at run time.
  • Note: Before using Edit DataSet..., you should specify the field definitions for a dataset fields TFDMemTable.FieldDefs or create persistent fields.
  • Database improvements:
  • VCL TDBImage direct support for JPEG and PNG graphic formats.
  • Support for display options for BlobFields.
  • Direct GUID access for TField classes.
  • RTL:
  • HTTP Client:
  • HTTP Client Library provides support for 64-bit Linux.
  • Improved async support in HTTP client:
  • RTL support for 64-bit Linux
  • RAD Studio 10.2 Tokyo provides Linux file system support using standard system functions, streams, and the IOUtils unit. It also provides Standard RTL Path Functions support for 64-bit Linux.
  • App Tethering Improvements
  • App tethering gains the following features:
  • New SynchronizeEvents property for TTetheringManager and TTetheringProfile to control the event synchronization with the main thread. Therefore, Managers and Profiles can now control whether their event handlers are executed on the main thread or not.
  • Improved support for Log filtering: added more logging messages.
  • New and Improved Hash Functions:
  • The following methods from the System.Hash unit now accept either a stream or a string as the input parameter:
  • THashMD5.GetHashString
  • THashMD5.GetHashBytes
  • THashSHA1.GetHashString
  • THashSHA1.GetHashBytes
  • THashSHA2.GetHashString
  • THashSHA2.GetHashBytes
  • The System.Hash unit has the following new methods that allow you to obtain a hash digest from a file:
  • THashMD5.GetHashBytesFromFile
  • THashMD5.GetHashStringFromFile
  • THashSHA1.GetHashBytesFromFile
  • THashSHA1.GetHashStringFromFile
  • THashSHA2.GetHashBytesFromFile
  • THashSHA2.GetHashStringFromFile
  • Mobile Platforms:
  • Improved C++ packages for mobile
  • RAD Studio 10.2 Tokyo links C++ packages for iOS and Android statically. Previous versions of RAD Studio generated a file with the .so extension for C++ packages, but were not actually dynamic libraries. RAD Studio 10.2 Tokyo generates C++ packages with the correct file extension (.a). If you statically link against a .so package, you may need to change to link against the new filename.
  • RAD Server Multi-Tenancy Support
  • With Multi-Tenancy support, a single RAD Server instance with a single RAD Server database connection can support multiple isolated tenants. Each tenant has a unique set of RAD Server resources including Users, Groups, Installations, Edge Modules, and other data. All tenants have custom resources that are installed in the EMS Server. Also, as an administrator you can create new tenants, edit existing ones, add, edit, or delete details of your tenants, specify if the tenant is active, and delete the tenants that you do not need.
  • C++ Compilers:
  • Better Support for Debugging
  • In Clang-enhanced compilers:
  • Local variables in code built with the Clang-enhanced compilers for Win32 and Win64 can now always be evaluated in watches or the Local Variables view.
  • When code has two local variables with the same name in different scopes in a method, variable evaluation can now resolve both and display the correct one depending on the current location.
  • Class names are now always displayed in the call stack.
  • (Clang-enhanced Win32) Support for external type files for debug information, which reduces duplication of debug information created for common types used in many compilation units, such as VCL types. This significantly reduces the size of debug information generated when building.
  • Better Codegen:
  • In Clang-enhanced compilers:
  • Codegen for -O1 and -O2 optimization levels has been improved, including resolving all known issues.
  • New support for -O3. The Clang-enhanced Win32 and Win64 compilers support -O3, a strong optimization level which may double compiled code performance in some situations.
  • Mobile Platform support:
  • C++ Android applications can be built without requiring specific versions of the NDK.
  • Linkers:
  • The C++ linker has significant improvements:
  • Improved resource handling to address heap errors, including out of memory, VIRDEF, dwarf_str, and others.
  • The linker can now use up to 4GiB of memory; it is no longer limited to 2GiB.
  • The linker options have been extended to allow you to set the resource allocation sizes for specific types of debug or linker data.
  • While not necessary for the majority of projects, this is useful for very large projects, or projects generating an unusual amount of linked data, including debug info. If linker errors occur, they can be resolved by tailoring the options to your project's behavior.
  • Exception handling:
  • Significant quality improvements for exception handling, addressing errors relating to memory leaks.
  • IDE:
  • Code Insight and Code Completion for Delphi now correctly handles static and dynamic arrays.
  • The Find In Files dialog works on screens with high DPI.
  • Support for designing and opening forms at different DPIs has been improved.
  • The View Menu has been re-arranged. Tool windows such as the Object Inspector, Structure, Messages, etc have been moved to a Tool Windows submenu just below the existing Debug Windows submenu, and a new Editor submenu contains a number of editor actions and useful features from the editor's context menu. Other items have been moved to keep related items adjacent to each other.
  • Tool Windows submenu Editor submenu
  • 10.2 View Tool Windows.png 10.2 View Editor.png
  • The context menus for the code editor tabs and files in the Project Manager now have a "Show In Explorer" menu item, which will show the file's location in Explorer.
  • The project's manifest file support now supports several execution levels: As Invoker, Highest Available, and Require Administrator, and also allows the UI Access flag to be set.
  • IDE loading speed should be fast even with high network load or a missing network connection.
  • Support for building very large project groups, such as those with over a hundred projects, has been improved.
  • Debuggers:
  • iOS debuggers:
  • Full support for iOS10 debugging (from a 10.1 Berlin hotfix)
  • Full support for iOS Simulator debugging (from a 10.1 Berlin hotfix) - Delphi only.
  • Writing Delphi string values is supported in the iOS debugger
  • Evaluating character arrays gives the expected result
  • Errors ending the debug session (also on macOS) are resolved
  • macOS debuggers:
  • Full support for macOS Sierra debugging (from a 10.1 Berlin hotfix)
  • Errors ending the debug session (also on iOS) are resolved
  • Linux debuggers:
  • Support for debugging on Linux (Delphi only)
  • VCL:
  • High DPI fixes:
  • Improved High DPI support:
  • Form bounds are now correctly adjusted in response to WM_DPICHANGED messages, meaning TForm.AutoScroll works correctly, as well as the form's top/left position
  • Forms open at the correct scaling factor when the system has multiple monitors with different DPIs
  • TTabSheet and TPageControl, and controls placed on tab sheets or page controls
  • ActionMainMenuBar when moving a form across monitors with different DPIs
  • VCL menus (both main menus and popup menus) now display correctly on high DPI monitors
  • TStatusBar's height remains correct in high DPI
  • Message dialogs' icons are now scaled correctly
  • Anchored controls now stay in the expected position when moving a form between monitors with different DPIs
  • TCheckBox and TRadioButton paint correctly
  • Several issues with form inheritance, including that controls now use the correct font size when placed on a panel with ParentFont set to true on an inherited form, and TListView column sizes remaining correct on an inherited form.
  • Other improvements:
  • GetIt installer:
  • Enhanced parallel downloads.
  • Cloud:
  • Improved Azure and AWS support with updated APIs.
  • Compilers:
  • Delphi command line compilers are now large-memory-address enabled, allowing you to compile larger applications from the command line (and matching the memory available to the compilers when invoked in the IDE).
  • Given that dynamic arrays are managed types, involving reference counting and associated helper function generation, casting array elements using the @ operator is disallowed as it leads to memory corruption. Performing a similar operation is still allowed using an explicit cast operation, under the developer responsibility.
  • iOS 10 Simulator, device, and macOS:
  • Full support for iOS 10, including iOS 10 32-bit and 64-bit debugging on device, Simulator support (Delphi only) and macOS Sierra support.

New in RAD Studio 10.1 Berlin 24.0.22858.6822 (Jul 13, 2016)

  • Improved Installation Experience:
  • We have improved the installation experience of RAD Studio to make it much more customizable
  • There is a new Installer now that quickly installs a very basic version of RAD Studio that you can use as a plain text editor
  • Afterwards, the new Feature Installer lets you select the RAD Studio features (programming languages, target platforms, and more) that you want to have in your initial RAD Studio installation Only the selected features are installed, which can save you bandwidth, time and disk space
  • Later, you can add or remove features from RAD Studio at any time using the new Feature Manager
  • Some of the software that the RAD Studio installer from Seattle used to include is now available from the GetIt Package Manager instead See Optional Additional Software in the Installation Notes for more information
  • The RAD Studio installer from Seattle is still available as the Offline Installer, which you can use if your system cannot have a working internet connection during the installation
  • FireMonkey:
  • Android 60 Support
  • Address Book for iOS and Android
  • Improved Style Designer
  • New ListView Item Designer
  • Extended Clipboard Support Service
  • Improvement on the Image List Editor
  • Grid Improvements
  • High DPI Support on Windows
  • Improved Support for Accelerator Keys
  • Support for Extended Font Styles
  • Hint Property Changes
  • Simplified Dialog API
  • Other FireMonkey Changes
  • VCL:
  • Ribbon controls are no longer included in the RAD Studio installation. You must install them separately using the GetIt Package Manager
  • AppAnalytics uses HTTPS instead of HTTP
  • CreateRoot method from Vcl.Shell.ShellCtrls unit is now virtual. Root fields from the same unit are now protected instead of private
  • EMS:
  • Apache Server Support
  • Cross-Domain API Calls to the EMS Server
  • EMS EdgeModules
  • EMS EdgeModules Resource
  • ThingPoints Overview
  • EMS API Resource
  • Custom API Documentation
  • DataSnap:
  • Support for JSON Streaming
  • Other DataSnap Changes
  • Web Broker:
  • C++ Projects from Previous Versions Using WebWebReq Need Updating
  • Other Web Broker Changes
  • FireDAC:
  • Improvements for DB2
  • Improvements for MongoDB
  • Improvements for Advantage
  • Improvements for InterBase
  • Improvements for Firebird
  • Improvements for Informix
  • Improvements for ODBC
  • Improvements for Oracle
  • Improvements for PostgreSQL
  • Improvements for SQLite
  • Other FireDAC Changes
  • Cloud Service:
  • Amazon
  • Azure
  • REST Client Library:
  • The REST.Exception unit is now deprecated. Its classes belong to the REST.Types unit now.
  • LiveBindings:
  • Evaluation shortcuts are a new feature of some binding components, enabled by default, which greatly improves the performance of LiveBindings when populating list-based or table-based controls using simple binding expressions. See Using Evaluation Shortcuts.
  • The TConverterUtils class from System.Bindings.Outputs is now public. TConverterUtils provides a set of utilities for assigning/converting one type of value to another type of value.
  • ThingConnect IoT Connectivity Framework:
  • Note: ThingConnect components are available as separate downloads via the GetIt Package Manager.
  • ThingConnect turns off-the-shelf and custom Internet of Things (IoT) smart devices, sensors and wearables into easy-to-use API components. For more information, see the ThingConnect documentation.
  • BeaconFence:
  • We have added new features to BeaconFence in RAD Studio Berlin. The BeaconFence enhancements include:
  • Detect zones using Position or PositionInPath.
  • Beacons support on Windows platform.
  • Customize function of current position.
  • Support for Eddystone Beacons.
  • Improved calculation performance.
  • New drawing ability.
  • Added two properties to access last calculated positions:
  • LastRawPosition
  • LastPathPosition
  • New feature to enable/disable Beacons by program. The UseToPositioning property indicates whether the beacon is going to be used to calculate the position or not.
  • RTL:
  • Bluetooth LE and Beacon Support on Windows 10
  • Improved Bluetooth LE Discovery Performance
  • Bluetooth LE Includes New Events to Handle Subscriptions to Characteristics
  • Eddystone Beacon Format Support
  • Improved Beacon Scan Performance
  • TBeaconDevice Component Supports Eddystone Beacon Format
  • App Tethering Improvements
  • Asynchronous HTTP Request Support
  • Encrypted ZIP File Support
  • Improvements to Lists of Strings
  • Improvements to TMemIniFile
  • Buffering Support for TFileStream
  • Modified JSON Path Syntax to Access Object Properties
  • Optimization of Regular Expressions and String Replacement
  • HTTP Connection Improvements
  • URLEncode / URLDecode Functions
  • Use TMessageBase Instead of TMessage for C++ Projects
  • C++ Functions added to TRect, TRectF, TPoint, and TPointF Types
  • Other RTL Changes
  • Native APIs:
  • The Android Bluetooth LE API, included in the Androidapi.JNI.Bluetooth unit, has been updated with new classes and methods according to the changes introduced in API level 21 for Android 5.0 or higher
  • RAD Studio provides new units for DirectX 12
  • Units for WinRT are now easier to use
  • Delphi Compilers:
  • Performance Improvement when Compiling Generics
  • Attributes Supported by All Compilers
  • Other Delphi Compiler Improvements
  • C++ Compilers:
  • Upgraded BCCAARM and BCCIOSARM
  • Better C++ Support for Delphi Types
  • C++ Option Changes
  • Other C++ Compiler Changes
  • Removal of Legacy Headers
  • IDE:
  • Floating Form Designer
  • FireUI Live Preview
  • GetIt Dependencies
  • Bookmark Stack
  • Selection Expansion
  • Method Toxicity Metrics
  • Structure View Improvements for C++
  • Android Service Improvements
  • Support for Running iOS Ad hoc Applications
  • Customizable infoplist File
  • Design-Time Improvements for Android Smart Watches
  • New Options Page for File Associations
  • New Option to Show Information Messages from the Delphi Compiler
  • New Option to Hide/Show the Navigation Toolbar
  • High DPI Awareness
  • Other IDE Changes
  • Debuggers:
  • iOS and Android Debuggers
  • 64-bit iOS Debugger

New in RAD Studio XE8 Update 1 (Jun 25, 2015)

  • XE8 Update 1 Features:
  • Graphic Utility Changes:
  • GetIt Package Manager:
  • The name of the GetIt window, as well as the name of GetIt in the Tools Menu has been updated to GetIt Package Manager.
  • GetIt now counts with three new filter options: Free, Buy and Purchased. See more about these options in the GetIt Main Window.
  • Database Changes:
  • FireDAC Improvements:
  • In XE8, the Unidirectional property is synchronized to the read-only IsUniDirectional property.
  • Change the value of the Unidirectional property of your TFDQuery or TFDTable to convert your FireDAC datasets to unidirectional.
  • IDE Changes:
  • New Embarcadero Community Toolbar:
  • The new Embarcadero Community toolbar allows you to easily connect to the Embarcadero Social Community. You can see the toolbar on the right up corner on the IDE.
  • Go to View > Toolbars > Embarcadero Community to show or hide the toolbar.
  • See the Embarcadero Community Toolbar toolbar for more information.
  • Favorite Projects in Welcome Page:
  • The Welcome Page includes a Favorite Projects section. You can add favorite projects to this section. Visit Favorite Projects in Welcome Page to see how to add and remove your favorite projects.
  • XE8 Subscription Update 1:
  • The Subscription Update 1 is provided to active update subscription customers.
  • New features:
  • Community Toolbar
  • Favorites in Welcome Page
  • Fast search of Bluetooth LE devices
  • iOS 8 Simulator support
  • Fixes:
  • Improved robustness of IDE productivity features
  • Improvements in multi-device previews
  • DUnitX C++ template project should link with Delphi Runtime library
  • [OSX32] bplDUnitXRuntime220.dylib should be deployed for a DUnitX C++ project that uses runtime packages
  • AppAnalytics: Incorrect argument type in SysCtlByName call leads to AV in iOS64
  • bcc32.exe returns fatal error when compiling DataExtractor.cpp file
  • [MacOSX10.9.5.sdk] [C++] Can not build app
  • [Box2D|iOS64] Box2D Delphi converts 'uint32' to 'LongWord'
  • [MacOS] Internal Error C1883 affecting Box2D demo
  • AV on using TFontGlyphManager.GetGlyph
  • Error F2084 using Generic Interface (worked in XE7)
  • Compile error F2051 when using "array of ..." in generic method
  • Compiler bug: Incompatible types when using 2 for loops
  • [C++] It is not possible to compile an iOS C++ project with an iOS 8.3 SDK from XCode 6.3.2
  • [C++][XE7][iOS 8.3] Build fails with bcciosarm fatal error Corefoundation.h: float.h file not found
  • FDManager is not reading in the current dir by default
  • Unable to load libsqlib.dylib in iOS Simulator
  • TBytes is not saved properly as BLOB in InterBase
  • [iOS64] ERangeError: Range check error with ftDate
  • [FireDAC, iOS64] Replace LongInt with Integer as data storage for dtDate / dtTime DB types
  • [iOS64] ERangeError with calculated fields in TFDMemTable
  • [iOS64] Range check error with a bcd value
  • Null DateTime conversion error in REST.Response.Adapter
  • FireDAC path variable $(DOC) not correctly expanded
  • Rest.Response.Adaptor AddJSONDataRow throws an exception for null variant conversion
  • Android RESTClient.OnValidateCertificate doesn't work
  • When using a TRESTClient component, with a custom Useragent, "Embarcadero URI Client/1.0" will always be appended
  • [FireDAC] FireDAC DB2 driver is broken in XE8
  • DBLookupListBox does not allow item selection
  • Using REST with SSL fails on Android for self signed certificates (and other types)
  • Very serious BUG, FMTBCD or Variant
  • XE8 Bug: Generics TList.Insert where T is Record
  • [IBLite] [MacOS] [AppStore] OSX License error when deploying to Application Store under XE7
  • [FireDAC, PgSQL] TFDScript.ExecuteAll hangs on script with '$' in an object name
  • Sorted Params in TFDADOUDLImporter dosn't work
  • Unit EMS.Consts not found on an app with TEMSEdgeService on OSX platform
  • An EMS Resource is still available after delete it from EMSManagementConsole
  • EMS Internal error. New database version does not match expected version.
  • EMS group authentication not working
  • EMS Internal API not working for groups
  • [EMS] emsserver database needs to change "message" field to BLOB type in the "notifyqueue" table
  • EMS Server cannot send push notifications. EIdOSSLConnectError.
  • [XE8+1/AM1.16+1] IDE fails to read AppID iOS Provisioning profile
  • [AM1.16/Indivisual SKU (iOS)/iOS32] User certificate & several profiles autoinstalled after attempt to deploy FMX Delphi application on device
  • Wrong result returned by fCall on function with float point result
  • [Win10] apps doesn't run on win64 platform if 'Runtime Packages' are used
  • FMX MD HD App can't deploy on 2 different devices (User & App ID profiles) with error e8008016
  • F2084 Internal Error: AV0BADBA84-R80000000-0
  • Debugger hangs on Windows 8 X64
  • [C++|OSX|eval] Delphi RTL kills app in case of bad fCall address causing debugger hang
  • Small error in ImageListDemo
  • [Demos] Box2D TestBed has its own copies of Box2D Files
  • [Box2D] BasicSliderCrank test asserts in WIN64 (Few others tests AV)
  • Samples " SampleListViewMultiDetailAppearance" and "SampleListViewRatingsAppearance" name length too long
  • [Demos] apiKey not available in "Debug configuration - Android platform" in the 4 map samples (Map Type Selector and Maps)
  • [CPP,Win32,OSX] BeaconsProximityCPP has compilation errors
  • [Mobile Samples] MusicPlayer does not compile for iOS (C++)
  • [Mobile Samples] SampleListViewAddThumbAndCaption compile fails (User Interface/ListView)
  • [Mobile Samples] ListViewCustomBottomDetail compile fails (User Interface/ListView)
  • Physics/Testbed Sample for delphi does not compile for Android L 5.1
  • Switch off by default Indexer in Demo samples SampleEMSFireDACResourcePackageCpp.cbproj, NotesResourcePackageCpp.cbproj, HeartRateMonitorCpp.cbproj
  • Box2D TestBed does not compile (Delphi)
  • [Android] Bad render of header on Android devices
  • Cannot create a TPopupColumn inside a TGrid
  • TPopupColumn doesn't drop items in TGrid
  • [Windows 10] FMX Desktop ControlsDemo app, drag&drop object to DropTarget causes AV for Windows target
  • TProgressColumn doesn't show correct value in TGrid
  • [TTakePhotoFromLibraryAction][iOS] Radical aspect of images crash app on loading
  • [TListView] [Platform] TListView wrong places search field, if device rotated
  • [TPathAnimation, iOS64] TPathAnimation on iOS64 works incorrectly
  • CGContextSaveGState: invalid context 0x0. While using SetActiveTabWithTransition
  • [Memo] Vertical ScrollBar behaves strangely when calling TMemo.Lines.Delete, moreover this may cause an error
  • [Windows] All standard gestures are not caught when touchscreen is presented
  • [TGrid, TDateColumn, TTimeColumn, Android] App with TDateColumn or TTimeColumn cannot start on Android
  • Incorrect display MenuItem in TMenuBar
  • [3d] [iOS64] On iOS64 3d work is wrong
  • ActionList in C++ with TabControl makes the app crash when closed
  • dynamically created TSwitch won't fire OnSwitch event
  • FMX.Edit makes app does not load on iOS Simulator
  • [TMapView][iOS] AV or app crash when calling a magnifier of styled TMemo in app with TMapView
  • iPhone Landscape Image loads or Camera loads produce app failure
  • Mesh does not display properly in XE8
  • [iOS Simulator] Display is corrupted in landscape mode
  • [TGrid] The header displays graphic artifacts when touched
  • iOS native platform controls not rendering on iOS 64 bit iPhone 6
  • [iOS 64 bit] Wrong alignment native controls
  • Error with Analytics in the app around sending data
  • App Analytics not enabling after privacy dialog on Android
  • TFontGlyphManager.GetGlyph gives wrong result on IOS64
  • Exception when using valid Unicode surrogate pairs
  • Android L styles (default and custom) do not include Tint property
  • TMapView marker with custom icon leads to exception
  • FMX TGridPanelLayout with ExpandStyle = FixedSize makes Delphi crashing
  • [Win10Modern.fsf] Some styles are missed for TEditButtons
  • [Win64] Package code, accessing global variables, like Application, Screen, etc. throws Access Violation
  • No delivery of libPCRE.dylib and also mismatch of PATH between deployment list and actual folder structure
  • IDE stopped working building FireIBLite sample app for Android
  • E0004: File does not exists running FireIBLite sample after add a profile
  • Unable to match bundle identifier
  • Tools Options dialog "forgets" Application Store provisioning profile
  • Changes made to CFBundleIdentifier won't persist if you then select Provision Page in Project Options
  • Changes made to CFBundleIdentifier won't persist if you make a change and then click okay in Project Options
  • Multi Device Preview Invalid Class Typecast Error With Third Party Component
  • [iOS] Errror deploying an app on an iOS device when AppID is in the form of x.y.*
  • [Castalia] Crash when trying to edit code after compile time errror
  • Migration-Tool, wrong dialog for saving migration-file
  • GetIt not working with remote documents path
  • GetIt should compile all supported platforms of the runtime package before install it
  • IDE slows down proportionally to number of Forms open
  • GetIt always sends all personalities as supported to the catalog
  • Error Compiling Sample SampleListViewAddThumbAndCaptionProject for Android
  • Sometimes a range error is raised when a desktop preview is added to the multi device preview
  • Typing the char pipe "|" makes the IDE crash
  • [iOS] Error received deploying app to iOS device, error code e8008016
  • Closing the IDE show Crash dump
  • Installing a component using GetIt with a project opened and auto save editor option to true, causes opening "Save As" dialog
  • AndroidManifest.xml Error
  • Castalia causes AV on exit of IDE
  • Wrong Warning Message when there is no Developer Certificate on OSX.
  • Castalia structural highlighting is wrong on hanging blocks
  • applied iOS 8.1.3/8.2 Deployment Beta Hotfix for XE7 Pro and now IDE will not start
  • Castalia draws structure lines in a strange way
  • [Castalia] Editor looses focus if you click on the Castalia message
  • iOS 32bit app runs even using an invalid Bundle indentifier
  • libsqlite.a Missing From IOS64 Delphi Only Installation
  • Wrong PA Documents in the XE8 directory - \Embarcadero\Studio\16.0\PAServer
  • Can't build application for IOS64 with firedac sqlite components
  • [iOS] no Project deploy on simulator 8.0 or later
  • iOS simulator Unable to create Process
  • Design Project UML missing from Enterprise Edition
  • [iOS 8.3 / Xcode 6.3 / OSX 10.10.3] cannot deploy app to iOS device
  • PAServer is waiting forever try to read data from provisioning profile
  • TOSVersion needs to provide for Windows 10 support
  • System.Net.Http duplicates header values
  • TList.DeleteRange() produces incorrect results
  • TURI.Fragment is not properly set if URL hasn't query string
  • Unify how TURI.Query is encoded
  • TURI does not accept UTF-8 characters in path and credentials
  • Accessing TURI parameters (i.e.: TURI.DeleteParameter) is case insensitive
  • TURI.URLEncode raises range check error if string ends with a '%' character
  • [macos][ios] TURI doesn't parse properly Query string if it is followed by a fragment with UTF characters
  • TURI.ComposeURI doesn't encode items
  • Bobjenkins Hash function uses wrong data when hashing a string or a TBytes
  • [iOS Simulator] FMX MobileControls sample crashes on startup
  • An iOS application using TPerlRegEx fails to run in iOS simulator
  • XE8: GetIt fails on systems with script determined proxy address
  • TObjectList.Count try to free already freed objects
  • RTL, RTL\Delphi, RTL\Delphi\List/Collections
  • A severe bug about TTetheringManager In XE8
  • TObjectList.Count does not initialize items correctly
  • [Android] AdvertiseData BLE improvement
  • TList.Insert not working
  • "Argument out of range" with global TStyleBook
  • TNetHttpRequest.Post generates exception on iOS only with invalid credentials
  • [BluetoothLE][Windows] TBluetoothLEManager.LastDiscoveredDevices (TBluetoothLEDeviceList) is not properly managed in Windows.
  • TListHelper in System.Generics.Collections contains at least 7 critical bugs
  • TNetHTTPRequest does not return correct result when the url is invalid - it crashes all apps and is uncatchable
  • omnixmldom does not handle hex (#xD, #xA) when statically linked on Mac-OS
  • Running a long remote action can break communication protocol
  • [System.Hash] MDA5 does not set FFinalized
  • NetHTTPRequest.ContentSize always returns zero
  • TOSVersion does not detect Windows 10
  • Update the test TestHead of the UnitTestSystemNet
  • HttpDownloadDemo doesn't generates a valid downloaded file
  • HTTP Request does not rewind stream on request success
  • [System.Net] HandleRedirects does not handle relative redirects
  • [Windows] THTTPClient fails to propagate custom headers following a redirect
  • [System.Tether.Manager] Incorrect assignment of parameter value in TTetheringCommand.Create
  • Nil stream resources could cause an application hang or a protocol breakage.
  • Heap block at XXXXXX modified at YYYYYYY past requested size of 4
  • XE8 General Update 1:
  • The General Update 1 is provided to XE8 customers without an update subscription.
  • New features:
  • Community Toolbar
  • iOS 8 Simulator fix
  • Added missing files from the initial XE8 delivery

New in RAD Studio XE8 (Apr 7, 2015)

  • RAD Studio XE8 Introduces Serious Productivity Enhancements With Over 20 New Features:
  • New coding enhancements include code refactoring, live syntax checking, metrics, structural code highlighting, parenthesis matching, flow control highlighting, and code analysis. It all adds up to a more productive developer and to help better understand team productivity and code quality.:
  • New! Project Statistics provides developers with a clear picture of team productivity with activity tracking.
  • New! Clipboard History keeps a record of clipboard contents so developers can paste content previously copied.
  • New! Multi-Paste Support performs the same paste operation on multiple source code lines at once.
  • New! Modeless and Context-Sensitive Refactoring support which includes: renaming variables, classes, field and properties, inlining, introducing and splitting local variables, removing unused variables, eliminating with statements, extracting methods, adding parameters, and moving classes to a different unit (Object Pascal language only).
  • New! Stack Bookmarks improves code navigation.
  • New! Parenthesis Matching provides a visual queue to keep code clear.
  • New! Flow Control Highlighting provides visual representation of flow jumps in code directly in the editor.
  • New! Structural Highlighting.
  • New! Code Navigation Toolbar places classes and methods into a drop down box for easy in-code navigation (Object Pascal language only).
  • New! Smart Keys and Smart Symbol Search (Object Pascal language only)
  • New! Code Analysis tracks code quality with several code statistics like length parameters, nested statements, and cyclomatic complexity (Object Pascal language only).
  • INTEGRATED COMPILERS AND TOOLCHAINS:
  • New in XE8! iOS 64 bit Object Pascal compiler and toolchain
  • New in XE8! iOS 64 bit C++ compiler and toolchain
  • New in XE8! Support for iOS Universal Apps (including both 32 bit and 64 bit binaries in an app bundle)
  • FMX APPLICATION PLATFORM (FIREMONKEY):
  • New in XE8! FireUI Mobile Previews
  • New in XE8! Multi-Device Preview
  • New in XE8! Extended Multi Device Designer views styling, including universal styling and Windows styles customization
  • New in XE8! FireUI Device Manager, to edit the specifications of the available devices and add more
  • New in XE8! Memo platform controls for iOS
  • New in XE8! ListView platform controls for iOS
  • New in XE8! Calendar platform controls for iOS
  • New in XE8! Switch platform controls for iOS
  • New in XE8! MapView component for mobile platforms (iOS and Android) supporting platform specific interactive mapping libraries (respectively, by Apple and Google)
  • New in XE8! WebBrowser component for Windows
  • New in XE8! WebBrowser component for OS X
  • New in XE8! Improved mixing of platform and styled components, with new platform styling options for iOS and controls Z-order improvements (with ControlType property for non-platform controls)
  • New in XE8! ImageList component for FireMonkey
  • New in XE8! Enhancements in FireMonkey multimedia support
  • New in XE8! Support for higher resolutions in Camera components
  • New in XE8! Android Lollipop specific style enabled by default (Android only)
  • New in XE8! FireMonkey Applications Analytics Support*
  • * Requires a specific contract and by-volume fee for storing run-time analytics data and accessing it
  • New in XE8! App Tethering extensions and protocol enhancements
  • New in XE8! Bluetooth framework improvements and new TBluetooth component for classic Bluetooth
  • New in XE8! Proximity support based on the "beacons" technology (including the iBeacon and AltBeacon standards) for iOS, Android, and OS X
  • VISUAL COMPONENT LIBRARY (VCL):
  • New in XE8! VCL Font Scaling improvements
  • New in XE8! VCL Applications Analytics Support*
  • * Requires a specific contract and by-volume fee for storing run-time analytics data and accessing it
  • New in XE8! VCL App Tethering extensions and protocol enhancements
  • New in XE8! Bluetooth framework improvements and new TBluetooth component for classic Bluetooth
  • LANGUAGE AND RUNTIME LIBRARY FEATURES:
  • New in XE8! Simplified array initialization and construction for C++ Clang-based compilers
  • New in XE8! iOS 64-bit API headers and RTL integration for Delphi and C++
  • New in XE8! Box2D physics engine
  • New in XE8! Object Pascal interfaces for the Box2D physics engine
  • New in XE8! New System.Hash RTL unit, with hash functions to support the new HTTP framework
  • New in XE8! New HTTP client framework, mapped to platforms libraries on all supported platforms
  • New in XE8! New NetHTTPClient and NetHTTPRequest components, offering easy access to the HTTP client framework
  • New in XE8! Support for native HTTP(S) client libraries on Windows
  • New in XE8! Support for native HTTP(S) client libraries on OS X
  • New in XE8! Support for native HTTP(S) client libraries on mobile platforms (iOS and Android)
  • PERSONAL DEVELOPER PRODUCTIVITY:
  • New in XE8! GetIt Package Manager for easy discovery, download and update of source code libraries, components, and other features from Embarcadero GetIt servers
  • New in XE8! Configuration settings migration tool, to migrate configurations of older versions of the product to a newer version, or between different installations of the same version
  • New in XE8! Start Here page improvements
  • New in XE8! extra code refactoring, live syntax checking, metrics, and more integrated right into the IDE
  • New in XE8! Project Manager enhancements, with the support for adding database files and simplifying their deployment
  • New in XE8! Improved installation experience and reduced installation footprint
  • New in XE8! Virtual form positioner for FireMonkey designer
  • New in XE8! Project Statistics provides developers with a clear picture of team productivity with activity tracking.
  • New in XE8! Clipboard History keeps a record of clipboard contents so developers can paste content previously copied.
  • New in XE8! Multi-Paste Support performs the same paste operation on multiple source code lines at once.
  • New in XE8! Modeless and Context-Sensitive Refactoring support which includes: renaming variables, classes, field and properties, inlining, introducing and splitting local variables, removing unused variables, eliminating with statements, extracting methods, adding parameters, and moving classes to a different unit (Object Pascal language only).
  • New in XE8! Stack Bookmarks improves code navigation.
  • New in XE8! Parenthesis Matching provides a visual queue to keep code clear.
  • New in XE8! Flow Control Highlighting provides visual representation of flow jumps in code directly in the editor.
  • New in XE8! Structural Highlighting
  • New in XE8! Code Navigation Toolbar places classes and methods into a drop down box for easy in-code navigation (Object Pascal language only).
  • New in XE8! Smart Keys and Smart Symbol Search (Object Pascal language only)
  • New in XE8! Code Analysis tracks code quality with several code statistics like length parameters, nested statements, and cyclomatic complexity (Object Pascal language only).
  • SOURCE CODE MANAGEMENT:
  • Enhanced in XE8! Version Insight – Integrated framework for supporting source code management tooling inside the IDE
  • Enhanced in XE8! Subversion integration into the IDE, including change list labels, SVN merge dialog, branches switching and more
  • Enhanced in XE8! Git version control integration into the IDE, now including authentication, Push and Pull changes to and from remote repositories
  • Introduced in XE8! Mercurial version control integration into the IDE (supports cloning your remote repository, commit changes locally, show log data)
  • INTEGRATED UNIT TESTING:
  • New in XE8! Integrated unit testing with the DUnitX testing framework
  • Updated in XE8! Unit test wizards for quick and easy unit test and unit test project creation
  • DATABASE:
  • New in XE8! Core DB.PAS TField optimizations
  • FIREDAC MULTI-DEVICE DATA ACCESS LIBRARY:
  • New in XE8! FireDAC Teradata database support, based on the Teradata database ODBC driver
  • New in XE8! FireDAC support for XE7 Change Views
  • New in XE8! FireDAC support for change notifications
  • New in XE8! Improved FireDAC updates management
  • New in XE8! Tools and scripts to help migration of dbExpress code to FireDAC
  • Updated in XE8! iOS and Android mobile database support, including SQLite, InterBase ToGo and IBLite
  • Updated in XE8! Comprehensive support for SQLite v3.+ database, including "smart" data type recognition, supporting both dynamic and static linking
  • ENTERPRISE MOBILITY SERVICES:
  • New in XE8! FireDAC / EMS integration improvements, specifically focused on updates management
  • New in XE8! EMS Push Notifications server support for iOS and Android
  • New in XE8! EMS external credentials support
  • New in XE8! Extended EMS Administrative API, now with EMS Installation and EMS Push Resources
  • New in XE8! Database Connection Pooling and other EMS optimizations
  • New in XE8! New EMSClientAPI component to simplify EMS client side development
  • Enhanced in XE8! User, groups, sessions, and API calls analytics and reporting using a web based interface using the EMS Console
  • New in XE8! Ability to export data from EMS Console to .CSV files
  • New in XE8! Improved analytics for users and groups
  • New in XE8! EMS client application to manage user accounts
  • DATASNAP CONNECTORS:
  • Enhanced in XE8! DataSnap mobile connectors for ObjectiveC, supporting iOS 7 and iOS 8 SDKs
  • INCLUDED DATABASES:
  • Enhanced in XE8! InterBase XE7 Developer Edition – up to 20 users and 80 logical connections
  • LICENSING AND TOOL MANAGEABILITY:
  • Enhanced in XE8! Earlier version licenses included in network licenses (Delphi 2007- XE7, C++ Builder 2007-XE5, HTML5 Builder XE3, RadPHP XE2). Delphi 7 and C++Builder 6 available separately

New in RAD Studio XE7 (Apr 7, 2015)

  • Multi-Device Designer:
  • RAD Studio XE7 delivers the only true single source solution for natively compiled applications on Windows, OS X, iOS, and Android.
  • A revolutionary new way to build a single user interface based on visual form designer that scales and adjust to different types of devices, form factors, and operating systems
  • Develop your UI once and then view and adjust or customize it for each device type (mobile, tablet and desktop; iOS, Android, Windows and OS X)
  • Make changes on the main user interface that are propagated to other device specific user interfaces; fine tune a device specific form factor without affecting the other views
  • Customize layouts and styles for each device as desired or easily utilize the inherited style
  • Predefined views including size and layout standards are included for many popular mobile device, tablet and desktop form factors. You can also add your own.
  • Only one "form class" is required across all of the form factors allowing the developer to create a single source file managing all of the common user interface events in one shared source file.
  • FireMonkey Behavior service:
  • A new service API that allows the framework and developer to query information about the device the app is running on to dynamically adjust itself for the form factor and platform
  • UI element locations are automatically adjusted for each type of target device (for example, the position of tabs on different mobile platforms)
  • MultiView component:
  • The MultiView component is brand new unique FireMonkey component that utilizes the behavior services to dynamically displays itself depending on the form factor and desired platform behavior.
  • The multi-view lays outs menus appropriately for a phone as a drawer and for a tablet as popup or docked menu
  • Enterprise Mobility Services:
  • Enterprise Mobility Services is a turnkey REST based MEAP (Mobile Enterprise Application Platform) middleware stack that includes API hosting, data access, and SQL Database access and deployment, serving mobile, desktop and web application clients
  • Data management across tiers through middleware that is stateless, restful, and scalable
  • Create custom APIs for your business functionality
  • High-performance enterprise database access for Oracle, DB2, Microsoft SQL Server Informix, SQL Server, and many more from a mobile application through the middleware
  • Custom Mobile API management with REST/JSON through loadable modules
  • Data access components for multi-tier data access through standard REST/JSON
  • User, session, and API calls analytics and reporting using a web based interface
  • Secure Data Storage Service on both servers and mobile devices
  • Rapidly connect your apps to your enterprise APIs and databases and services on-premises or in a private cloud
  • Flexible deployment license options. Purchase deployment licenses based on the numbers of users that access the Enterprise Mobility Services
  • App Connectivity with App Tethering, REST and Bluetooth:
  • With App Tethering, RAD Studio makes it extremely easy for apps to broadcast and find other apps to tether with over local WiFi or Bluetooth
  • Extend existing VCL Windows apps with mobile companion apps or Bluetooth devices by simply adding a few components to each app
  • Connect with Bluetooth and Bluetooth LE enabled gadgets like healthcare sensors and wearables to build unique and domain specific solutions
  • Easily connect to REST APIs on any near field device to interact with that gadget
  • Specific Bluetooth LE component to connect with power sipping micro gadgets
  • Parallel Computing Library
  • The Parallel Computing library helps you exponentially increases performance making it easier to write multi-threaded applications that take advantage of multi-core CPUs
  • Boost the performance of your existing VCL and FireMonkey applications, with a self-tuning thread pool
  • Include the new System.Threading unit in your apps and you can do the following: Parallel 'for' loops
  • Scheduling of tasks
  • Futures
  • Joining of multiple tasks and waiting for all to complete
  • Easy integration for a significant performance boost
  • IDE and Development Tools Enhancements:
  • The new PAServer Manager is an OS X tray app that allows you to start and manage multiple instances of PAServer (the Platform Assistant app for developing iOS and OS X apps)
  • Improved Subversion version control support with new Git version control support
  • New integrated multi-device designer
  • IDE support for adding Java classes to an Android apk
  • IDE Guided Tours to help learn about RAD Studio features
  • New Java2Delphi native bridge file generator for Android
  • RTL and VCL Enhancements:
  • New OmniXML library for faster performance, particularly on mobile platforms and easier selection of default XML engine
  • Improved JSON low level processing
  • Updated C++ STL library for iOS and new versions of Boost and Dinkumware Libraries for Win64
  • Enhancements to the taskbar component introduced in XE6 to support with a new TJumpLists VCL component for Windows Taskbar Jump Lists
  • New unit for Web encoding and decoding
  • Hundreds of quality and performance improvements
  • Object Pascal Language Enhancements:
  • Improved initialization for dynamic arrays
  • Mix and match constant and dynamic arrays
  • String-like operations on dynamic arrays including + operator concatenation, Insert and Delete
  • An array constructor can be used to specify an initial value of a global dynamic array variable
  • Also, generics containers optimizations
  • Database and FireDAC Enhancements:
  • IBLite embeddable database now available for Windows, OS X, Android and iOS
  • FireDAC streaming support for blob fields and support for MSSQL file streams
  • Support for DBMS API command native timeouts
  • FireDAC connection parameters are now displayed in the Object Inspector as a record
  • Data Explorer enhancements (primary keys and fields are displayed, foreign keys and fields are displayed, sequences/generators are now displayed)
  • Other FireDAC enhancements including a new IBLite driver for desktop and mobile
  • FireMonkey Enhancements:
  • TEdit and TCalendar controls haves been rewritten to utilize a new presentation architecture: you choose whether you want the control to use the standard styled presentation or a platform native control presentation on iOS dynamically
  • Multi monitor support on desktop platforms
  • The TBannerAd component now supports the Google Mobile Ads API from Google Play Services
  • Immersive full screen mode on Android KitKat
  • TListView pull to refresh on iOS and Android