Next Intraweb release...delayed


For the past several months we have had a number of delays and have not been able to make new releases of Intraweb. First of all, I'd like to apologize on behalf of Atozed for these delays. Secondly, I want to explain the main causes. Initially we had several issues with upgrading existing installations of Intraweb that were packaged with Delphi IDE's. This was caused somewhat by MSI technology that likes to replace files at will and permissions preventing us to "clean-up" a users system before installing a new version. During this time we were also working closely with CodeGear to get a new release of Intraweb into Highlander. Every time there is a new CG product release, we have to make sure we sync their releases with ours (it's not a question of branching or forking code, but also other factors that there is no need to go into). This prevents us from making a release to our customers until their product has been officially released. If you look back at release dates of previous CodeGear products and Intraweb you'll see that they coincide by a couple of days difference.

This happened a couple of days ago and as always, we immediately started working on the new release of Intraweb that includes an update for both our customers and all CodeGear customers.  Now here's where the real fun starts. First of all I must say, I am very pleased about Highlander and it's quality, so kudos to the team. However (and there's always a However), I am not happy about the installer. I know I've mentioned this in the past and also expressed my feeling in public, so this is not another rant as such.

Here's the deal. As component vendors, we have to maintain versions of our products for different tools. In our case, we support Delphi 5 - 7, C++ Builder 5 and 6, Delphi 2005 - 2006 and Delphi 2007 / Highlander. To make sure that builds go smoothly each time and that development changes don't creep in when they shouldn't, or environment variables don't change, etc. we use a Virtual machine and do all the builds there (btw, if you're interested in all this, make sure you come to my Build and Deploy session at Ekon  </plugin>).  On this machine, apart from all the different environments, we have folders that contain specific files and utilities that are used as part of the build, as well as tools such as Finalbuilder, InnoSetup, et al. 

This build machine has grown over time. We were using this machine back since the days of Intraweb 5 (even earlier IIRC). Fortunately, thanks to VM and it's outstanding product, we've managed to adapt the machine. We've added new hard-drives, expanding existing ones, etc. Everything worked fine.......until InstallAware arrived.

On Delphi 2007 release and after spending more than 2 days on it, I managed to install Delphi 2007 and continue to use the same machine for the build. And things continued to run smoothly. However, yesterday I installed Highlander.

Initially I ran into an issue with the installer (I know, it sounds ridiculous, but it happened). "Luckily" for me I'm not the only one that has had this problem. Nick pointed me to an entry that explains the issue. So, naive as I am, I followed the instructions. I downloaded the tool (btw, you could add a direct link to that QB article) and removed RAD Studio. Next, I started up Setup.exe and went through the screens. I got my favorite negative billion bytes telling me there's not enough space on my drive, but once it actually let me choose the drive I want to install on, things looked promising.

I had 2GB left on my drive after install. I also had 1.5GB left on drive C, my system drive. Yes, I had moved everything off of it and left a lot of space for InstallAware. You see, InstallAware decompresses files during installation. But I, as stupid as I am, would think that InstallAware uses the temp environment variable to decompress files in. No. It doesn't. It uses the users "Document And Settings" folder, i.e. the profiles directory. Probably because it needs to keep 2GB of garbage. Now, the funny thing is, that when I installed Delphi 2007, I had less space on drive C and despite it running real down (to something under 100MB) it managed to install. I thought this time it wouldn't be a problem. Wrong again! It was. In the next step I got a nice box (unfortunately I didn't take a snapshot) saying "Not enough disk space to install the product". Hitting OK just exits the installer. There's no information on WHERE there is no space, just that there's no space.

Well according to the numbers, InstallAware has 2GB left on drive E after installing. So I change my environment variables to point my temp folder to another drive I have with 5GB free space on it. I also do what Olaf tells me and MOVE my Document and Settings folder to the new drive. I change the registry entries, reboot, etc. Run the installer, again, Not enough Space.

I have spent nearly two days trying to install a product on my virtual machine to actually start working on a new release of Intraweb. Two days of my work have been lost. We have customers waiting for a new release with fixes and I myself am very eager to get one out. Thanks to InstallAware I cannot. Now I have to work on creating a NEW build machine. Yes, a new build machine with all the IDE's, all the tools, etc. Our build process it too large to run this in two machines. It would introduce too many manual steps and prone to errors. And no matter how complex a build is, the primary objective is to keep it simple. I know that might sound like an oxymoron, but it isn't. I can't afford to have two distinct machines to run our installs off of.

For the record, I want to say that when we released Intraweb 8, the first alphas were done using InstallAware. We decided to switch from InnoSetup to InstallAware. After the second release we reverted back to Inno. We cut down the installation time by around 90% and the size by around 50%. Those customers who tested InstallAware were thrilled that we rolled it back. So when I talk about the product I do with some knowledge of it's working. We spent around 2 months with the main developer of the product and didn't manage to solve the installation issues our customers were having. And trust me, when you start to lose time and money, it's not funny.

In any case, my most sincere apology to our customers and to let you know that both myself and others will be putting in extra efforts to try and solve these issues as soon as possible and get a new release out.






Comments: 

Stephane Wierzbicki 2007-09-12 05:35:06
Why didn't you provide a seperate install for Intraweb ? (like RaveReport did ?)
Hadi Hariri 2007-09-12 05:41:28
I fail to see how that's related to my post :). I'm not talking about the integration process of Intraweb with Highlander, I'm talking about our own releases.
Thaddy de Koning 2007-09-12 08:30:54
As I recall Codegear were pointed to the numereous install issues during the beta. They seem to have solved it to a large degree.
I fear - having had problems like this with our own software - deployment through InstallAware is a *very* costly business to get right.... Be warned. If I had the choice I'd use InnoSetup anyday :-)

Richard S 2007-09-12 01:06:16
Thanks for the update Hadi. I think most of us are sympathetic to your situation. The only thing I would say is keep us in the loop on what's happening, I for one was just feeling a bit concerned that it had gone rather quiet on the Intraweb front.

Would love to see even a partial list of what's coming up in the next 6-12 months...

Karsten Hoffrath 2007-09-13 01:32:43
Have you tried VM converter to resize the disks inside your virtual machine?
With converter you can convert an existing machine (physical or virtual) to a new virtual machine. During the configuration process you can resize the disks inside the new machine.

Karsten Hoffrath 2007-09-13 01:33:56
Forgot the link:

http://www.vmware.com/products/converter/

Splice 2007-10-22 01:06:21
Delete sanctuarylib.dll from install catalog.

Add your comment: 

Name:  
E-Mail:  
URL:  
Comment:  
Please add 6 and 7 and type the answer here: