To speak to one piece here:

 

In our case, a directory of .py files (a 'package') would be considered a 'component', and my previous understanding was that a updated file would warrant a new GUID, since it's essentially a 'new version' of the 'package'. Is that a bad assumption?”

 

Three key points to remember about Components:

 

1.  Components are identified by their GUID.  You can have two Components with the same Id (aka: Name) but they are not the same unless they have the same Component/@Guid.

 

2.  Components cannot overlap.  This means that if your Component installs three files in directory X that no other Component can install any of those files in directory X unless it has the exact same GUID. 

 

3.  A Component must always ship with same stuff.  This means if you ship a Component with three files then the next time you ship that Component (using the same GUID, of course) that it must have three files with the exact same names.  Of course, if you install to a completely different directory (to avoid overlap) then you get the option to create a totally new GUID.  You need to be very cognizant of overlap again.

 

So, the assumption above is wrong if the files are always installed to the same place.  If the files are always installed to different locations (an ever increasing versioned directory, ala Office9, Office10, Office11?) then the GUIDs may be changed each time.  Not simple.

 

Also, think very carefully about those rules as you try to design the component catalog.  I think you’ll find that getting the right answer is far more difficult than most people imagine (it certainly isn’t sufficient to just hash some things together to generate a GUID).  That’s why we don’t have a component catalog yet.  <smile/>

 

I wrote more about the Component Rules here:  http://blogs.msdn.com/robmen/archive/2003/10/18/56497.aspx

 

 


From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of Sidnei da Silva
Sent: Wednesday, May 17, 2006 1:50 PM
To: [EMAIL PROTECTED]; James Carter
Cc: Mark Hammond; WiX-devs@lists.sourceforge.net
Subject: RES: [WiX-devs] Re: [WiX-users] Extending Heat

 

So, essentially:

 

- A file updated in-place doesn't warrant a new GUID?

 

When Mark was talking about 'hash' he was actually refering to md5 checksum. I think you're talking about some other kind of hash.

 

Another important point, for our specific case, is that our files are 'non-versionable' as far as I understand this. Meaning that in 99% of the cases they are not .exe or .dll, but .py, .txt, .xml etc.

 

Now that I've expanded this a bit, let me go full length.

 

In our case, a directory of .py files (a 'package') would be considered a 'component', and my previous understanding was that a updated file would warrant a new GUID, since it's essentially a 'new version' of the 'package'. Is that a bad assumption?

--
Sidnei da Silva
Enfold Systems                http://enfoldsystems.com
Fax +1 832 201 8856     Office +1 713 942 2377 Ext 214

Reply via email to