Tweaky, here's the version of your script I'm using. I've made the following changes:
- The script now passes Au3Check cleanly. No warnings or errors. Future versions must always meet this criteria. I enforce very rigid quality control standards on our build scripts and one of those things is the script must pass "au3check.exe -q -d -w 1 -w 2 -w 3 -w- 4 -w 5 -w 6 -w 7" cleanly.
- The script is now configured via an INI file. It's now easier to localize and change error output languages with just a quick setting change in the INI file. Also paths are no longer hard-coded in favor of being configured in the INI file. This should make it easier for you to update and for us to integrate the changes since the source file no longer controls the configuration, too.
It *looks* like some other stuff should perhaps be in the INI file as well. Could you please explain to me what the variables $array_auslassen_anz_var, $array_auslassen_optional, $array_sammelfunc_1 and $array_sammelfunc_2 contain? I think I can guess but I want to be sure. If they do what I think then I'll add some code to read them from INI (I think I have code laying around to do this already).
A couple comments about the tests. Test 21 (validate links) seems to complain a lot and I don't understand why. I find it very hard to believe that we have so many bad links. That's why the INI file I've provided has it disabled (the INI file is the one I currently have configured meaning it's how we're going to run things). Also I suggest getting rid of test 19 completely. I will never enable that test and as JP has already pointed out, it's pretty much useless. There's not much correlation.
I would really like it if the script didn't write anything to disk. I'd like to see $grundpfad_geaenderte, $ini_verwandte and the related INI setting go away. Is this possible? For us, at least, we only need output from stdout which is already provided. I can't see the purpose of writing to a file, it appears to only happen in one place. The INI file appears to be related entirely to test 19 which as I mentioned is totally useless. If writing to a file is necessary for your use of the script, then I ask that you please provide an option exposed via the INI file so it can be disabled.
That's all for now. I'll probably change the structure of the program slightly at a later time just to move any executed code inside a function. I detest code being executed at global scope (that isn't a global variable definition) because it's far too easy to miss something.
Edit: Attachment removed.
This post has been edited by Valik: 03 November 2009 - 04:06 AM