GetIt Package Manager Enhancements Coming in RAD Studio 10.4
RAD Studio has a light weight package manager, a mechanism for downloading additional product features, add-on libraries and components, demos, VCL and FMX styles and more. Some of the content is provided by Embarcadero, but a lot comes from our community of developers and third-party vendors.
Now in the coming 10.4 release of Delphi and C++Builder, the GetIt Package manager is going to see significant changes in 10.4. The key addition is that now each entry has an associated release date, technically a timestamp. This is the foundation of different features:
- the ability of sorting the list of entries by date, seeing the most recent ones on top
- for each entry you have already installed, the indication that an updated version is available
- the ability to list all installed entries that have an update available
In terms of UI change, the Filter section of the GetIt dialog UI will be modified:
We are removing older, inactive filters (like Free and Paid) and keeping 2 options offering 2 new ones:
- All for all entries
- Installed for the packages installed on the current system
- Subscription only is a new filter for exclusive content published by Embarcadero and limited to customers with an active update subscription license
- Updates lists packages installed on the current system and for which a new release is available (that is a package with a newer timestamp than the installed version timestamp)
This is the updates filter in action:
Another change is in the Sort By section of the GetIt Dialog box, which is going to have a new option to sort packages by release date (or timestamp).
GetIt Entries UI
The UI of the individual entry in the GetIt dialog will also be modified to indicate the specific date the package was published and (eventually) the date you installed that package. Depending on the status, the entry UI includes new buttons for the action(s) — there are now more actions available, including Updating a package. Here you can see the standard UI for an entry and the same after the package has been installed and an update has been made available:
Notice that the two dates indicated in the last image are the release date of the last update and the release date of the one currently installed (the timestamp of the installed item, not the date it was installed).
RAD Studio Patches
Another key feature we are enabling in 10.4 is the ability to use GetIt to distribute patches, with a specific way to alert customers that a patch is available. We’ve added a new section to the Welcome page to indicate when a patch is available and you have not installed it:
Once installed, that indication will disappear. Combined to this Welcome page hint, we’ll have a new category in the GetIt package manager for patches. But this is not the only related change. We have technically introduced a deferred installation mode, so that a patch requiring to update files used by the RAD Studio IDE itself can be installed by a separate process once you close RAD Studio (or as you restart it). This will account for the installation of more complex patches, that require you to close RAD Studio first.
Additional GetIt Features
Beside the features mentioned above, we have worked on many other smaller new features and improvements in the GetIt Package Manager:
- When installing packages, you can log the steps in the same log file used by installation. This is controlled by CatalogRepository/Debug RAD Studio registry key
- The open project action allows opening a project group
- The log file displays clearly in which folder the files are installed with GetIt
- In case of an error in a GetIt operation, the action name is indicated along with the internal numeric code, making it much easier to understand the error
Conclusion about GetIt Package Manager
As you can see, we have put quite some effort in adding value to the GetIt Package Manager in 10.4 and really hope this will increase its usefulness as a way to distribute components and libraries to the RAD Studio users — but we do have many further extensions already planned. Stay tuned.