When we first developed IsWiX, we had an internal business rule that said all non program executables would be authored as non-key files. This was for two main reasons:
1) We only supported Major Upgrades so we didn't care about servicability issues.
2) We had 15,000+ files in our install and 1:1 authoring had a major performance impact.
I understand that not everyone will have these assumptions. Therefore IsWiX 1.0.264.0 now supports the ability to override the default behavior of 1:many with 1:1. To do so, simply right click the source files list and use the context menu to change the behavior.
This is useful when:
1) You want to be able to support Small Updates, Minor Upgrades and Patching
2) You want increased resilency checking
3) You have relatively few files or you aren't concerned about the performance impact.
4) You have files that need to be keyfiles so that you can manually inject additional WiX metadata.
I'm open to any and all feedback so please take a look at it and let me know what you think with your comments.