“GetIt” is the new Package Manager that is part of the RAD Studio XE8 IDE. It greatly simplifies discovering, installing, and updating third party components and libraries for Delphi and C++Builder. (For more information, see also http://www.embarcadero.com/products/rad-studio/tools-and-components.) The GetIt repository is currently loaded with the TurboPack set of components, but it is open for submission by any developer and third party. At the moment the repository hosts only free libraries and components.
If you have a library, a component package, or some other code you want to make available to fellow developers, you can submit it to Embarcadero for inclusion in GetIt. While in the future the process will be automated with a specific web management console, at the moment it is manual. Attached to this article you can find a document with the required information for submission.
The focus of this article is more to explain the acceptance guidelines for GetIt package submissions, more than the current procedure (which is going to change soon). This is meant as a set of guidelines to help you create the best opportunity for your submission’s acceptance into the GetIt repository.
The goal of GetIt is to help customer discover valuable libraries that add value to the core development platform. The goal of GetIt also and equally meant to help simplify the migration from one version of RAD Studio to the next, making sure those libraries are available upon release so that an existing project can be easily migrated after a rapid download of the required libraries. It is because of the high importance smooth version to version migrations that the most relevant rules for anyone submitting a library to GetIt is to make sure their submission works smoothly with a coming release (and we are open to invite library maintainers to the product beta testing). Specifically, our goal is to have all libraries updated (which means working, not necessarily leveraging new features) within 30 days a new version of RAD Studio is released. If a submission is not maintained current, we may consider removing an outdated or unsupported library from the catalog.
Overall, we are seeking good quality libraries and components that are focused on adding value to current supported versions of Delphi and C++Builder (they may also support older versions or other Pascal dialects or C++ compilers alongside). Libraries with the best chance of acceptance should offer their “best experience and best support” for RAD Studio, focusing primarily on Delphi and/or C++Builder. If a submission requires a different product or toolset for its use or “best experience” it is less likely to be accepted. We are seeking a “trusted partnership” (even if not a formal one) as part of the submission process, and this requires mutual respect and trust.
Libraries We prefer Having
Libraries and components that specifically support the latest Delphi and C++Builder releases, new language features, latest VCL and FireMonkey features and multiple platforms are highly desirable but this is not a restriction in any way. Even an older Win32 specific VCL library can add significant value for Delphi and C++Builder developers. While having clean code based on a branch specific for our latest releases is preferred, if your library has IFDEFs dating back to the Turbo Pascal days (as an example), if it adds value to Delphi XE8, why not include it?
Another important factor is to submit libraries that add capabilities to the core Delphi and C++Builder platforms and capabilities, rather than replace core features of the platform (unless they do it with added value in capabilities, performance, or platform support). For example having an alternative solution for processing JSON, XML, strings, and math computation is always welcome, of course. Replacing key capabilities that are part of the core platforms definitions such as Client/Server FireDAC pack or the DataSnap/EMS Enterprise middleware, would be less likely to be accepted. The different SKUs are meant for different types of developers, and multi-tier capabilities with strong client/server RDBMS integration require an Enterprise edition license. We will bias acceptance toward GetIt libraries that respect the spirit of our licensing and editions, not just use the letter of the license and the technical boundaries. If you are unsure about your submission please check with us first.
Finally, but this should not even have to be mentioned, if the library doesn’t have a clean track record of Intellectual Property (IP), cloned either Embarcadero or third party components and libraries code, and has been subject of discussion in the developer community, we won’t keep hosting their artifacts. We won’t be doing any formal audit, of course, but if we receive any complain in this respect we’ll certainly pull off the library from the repository, pending some more detailed investigation.
This is the short summary:
- Provide timely update upon RAD Studio releases
- Offer “best experience” to RAD Studio developers
- Consider it a trusted partnership
- Have clean and modern code is a preference, not a rule
- Support multi device and FireMonkey is great, but not required
- Do not submit libraries that replace core Enterprise functionality
- Avoid any Intellectual Property complaint
Submitting a Library
If you feel a library you have been working on, or you have been involved with, follows these rather simple rules, download the attached PDF or Word document, fill it with the library details, and email it to the addresses listed in the document. If you have any doubt, ask for more information. None of the rules above is set in stone, if there are specific reasons or issues, we have a small internal team willing to consider your request, as well as ready to do a fast evaluation of submissions.
Rest assured the goal is to have a lot of libraries on GetIt, but keep the quality bar relatively high. We are ready to work with you to host your library, and also improve the entire experience as GetIt becomes more feature complete.
Update on Downloads
If the downloads above don't work for you, you can use the following links: