maybe someone is interested in a plugin for Xide.
It manipulates AssemblyInfo.prg.
First part is change VersionAttibutes.
It increments the build number (third part of version) in all VersionAttibutes after every compile.
When I deploy my apps I always set the build number to divisible by 10 (zero at end, I call it release build no). So via menu item one can set the build number back to previous release build no or up to next release build no (due to fact that a new comile has to be done the number is set to 9 at the end). At export the current version is added to filename. Also the minor version (seconds part of version) can be incremented via menu.
Seconds part of the plugin is setting/changing the other AssemblyAttributes.
Backgound: I sell standard software to resellers. Some of the reseller have there own product name. So via menu item it is possible to change easily the attributes. I hope the sample is self explaining.
Attached a zip with the plugin (copy to PlugIns folder in XIDE folder) and a sample AssemblyInfo.prg
I have a new version of XIDE_BuildCount ready:
- The version from AssemblyInfo.prg of current app/lib will be inserted in caption.
- If a native recource file AssemblyInfo.rc is available the VERSIONINFO will be changed like in AssemblyInfo.prg.
- Version will be change only if files have changed after last compile.
- In AssemblyInfo.prg one can add defines and resources for each reseller. These values are inserted in AssemblyInfo.rc when reseller is changed.
A sample of AssemblyInfo.prg and AssemblyInfo.rc is included in zip file (hopefully self explaining).
The not commented attributes get incremented as they should (i added one attribute after the other to provoke "change" -
But one strange thing: the commented lines with "1.2.279" increment as well - and this info is the one shown in Xides' caption...
quick and dirty. I do not parse complete content. I just search for [assembly: AssemblyVersion. With incrementing the same. Just check if line starts with searched value. So if you comment each line ('//') then it should work as expected.
First tried with all lines "//" - no change.
Renamed file and set it to "Text", made a new AssemblyInfo.prg:
// Application : arraybase
// AssemblyInfo.prg , Created : 17.04.2018 16:34
// User : Karl2