I got asked an interesting question on Instagram. I'll answer here
great! Is it possible to have an all320.4pw and another all400.4pw? maybe it is possible to build same external projects in many versions, right?
A .4pw, like the other GUI source files such as .4fd, .4rp, .4ba, .4db etc need to be maintained using the same version of Genero Studio (X.YY). As I mentioned in the article these files are xml internally, and you can see that if you open them in a text editor.
What happens between versions is that we might add extra nodes, extra attributes to this internal xml. So when you open a 3.20 version of these files using 4.00 Studio you will typically get a dialog warning then when saved it will be saved in the new format, that is the new nodes and attributes will be added. Similarly if you open a 4.00 version of these files in 3.20 Studio you will get a dialog advising that the file was created with a new version and cannot be opened. This is because the 3.20 Studio does not know about these new nodes and attributes in the xml.
So to answer, yes you would probably have an all320.4pw and an all400.4pw. I would expect you could only add External projects that were on the same version but a quick test suggests it does not do a version check... (I'll have to check that)
As the .4pw is xml internally, this does mean you can script it. I gave the example in the article of a system with 400 applications. You don't necessarily have to go Right-click -> Add External project 400 times. You could potentially create the .4pw with a script (or Genero application) that looks at something where your 400 applications are listed and builds a .4pw by iterating through that list creating an xml document that matches the 4pw structure. You could also create scripts to do diff that ignore the version differences.