Hello everyone,
we are currently in the process of evaluating, if patching is a viable way of updating our product (PowerBuilder application).
Recently I found a way to create and apply patches using the "diffUtils" and "patch" tool from the "GnuWin32" toolbox.
But during research and testing I found that even smallest changes within the PowerBuilder source code will lead to differences for all PBD files of our application, which does increase the size of the resulting patch file a lot.
E.g. lately we had kind of an emergency hotfix for one of our customers, which were only fixing an error within a single global function in one of our PBL files. But as a consequence when comparing the resulting PBD files with the ones from the predecessor version the patch/diff file did amount to about 400 MB (!!!).
So here are my questions :
- Does anyone have some experience in patching PowerBuilder applications?
- If yes, which tools or workflows did you use?
- Did you try other tools? And if yes, why did you choose the other approach/tool?
- Why the big difference in PBD files although the made changes were comparatively minor?
- Is it related to the PBD file format?
- Does with each new build the order of things within all used PBD files get changed a lot? If yes, why?
- Is it possible to somehow configure PowerBuilder or its compiler to keep the order of things in general and only make as few changes as possible?
Many thanks in advance for all your efforts!
Best Regards,
Constantin Bergatt
Having that PBD at the top of the hierarchy chain of PBDs means that anything placed within it will override the same object in any subsequent PBD of the application. The warning Mike listed above are acacurate; changin ancestor code in a common object is NOT something for which you would normally use this type of patching.