Wednesday, April 16, 2014

Delphi XE6 - Easy to upgrade

Delphi XE6 was just released yesterday!   My team of 10 Delphi Developers has been moving fast.

Several Open Source Libraries that my team uses have been updated to support XE6.  

We were able to internally update our commercial libraries such as TMS, SmartInspect, Envision, RichView, FastReports and few others because we did not want to wait.    The latest version of FinalBuilder already supports XE6 so that made our build easy.

We now have our primary application working with XE6.   It was quite easy to do.    

Our code base is over 2 million lines of code.    We have 178 Packages (all have been converted)  We have 650+ DPR, several of these have been converted.   Finishing all of the secondary applications (DPR's) right now, and expect to have our conversion complete in the next 3 weeks. 

This has been a VERY EASY upgrade.   We were upgrading from Delphi XE.

I had some headaches with the license registration, but once you get past that the product works well.


  1. Out of curiosity, what made you decide to stay with XE this long, and what was it about XE6 that convinced you to upgrade?

    1. Our previous upgrade from D2007 to XE did not go well. It took far longer than expected, as such it was not wise for us to impose another upgrade on the business so we waited. As developers we wanted to upgrade with each release, but business needs were the overriding factor. The timing was right on the business side to allow for an upgrade.

  2. Robert, how did you get past convertion of Project settings in such a complex project? In XE there are only two build configurations - Debug and Release with common Base root. Settings are inherited from the root in a clear, easy to manipulate way. Opening XE DPK in XE2-XE5 IDE combines some of VERSIONINFO settings into the long line CompanyName=xxx;FileDescription=;FileVersion=x.x.x.x;InternalName=xxx;LegalCopyright=xxx and settings are applied to All configurations, Release and Debug. But this is not enough for compiler, because it tooks the settings from the platform level under build configuration, which is completely clean. If you just hit compile, output file is stripped out from all the seetings.
    I know there were option sets introduced back in XE may be, but I didn't figured out how they may come in handy.
    If you use optset files, please tell about your experience.

    1. We have some tools that we developed that auto upgraded some settings in the Dproj files. However, for the most part dealing with Dproj settings has been a manual process.

      We don't use Version information through the DProj, we set it externally using FinalBuilder.

      We don't use Option Sets.

  3. We too have several million lines of Delphi code. We stayed with Delphi 5 for over 10 years before starting to upgrade. We jumped up to XE/XE2 without any major problems. Then we went to XE3, XE4, XE5, and now on XE6. At XE3 time frame, after the upgrade, the IDE would start running out of memory after the 6th or 7th compile/link. Sometimes we could do more compiles, sometimes less depending on if we actually run the code or just compile and work thru errors. Are ya having any similar problems? Support closed the Case as part of their XE6 clean up. Said the version fixed the issue, but it didn't in our case. Now they say, they don't recognize it as a "real" problem, because they can't cause it to happen. We've offered to send them a fully loaded laptop with with the components (we use a number of 3rd party components) installed, etc.. Any ideas?