Bug History

Zorro is arguably one of the most stable and robust development platforms. We're going to great lengths for keeping it that way. New implemented functions must pass 4 test levels for making sure that they work as described. Any new Zorro release is beta tested by strategy developers and users, thus ensuring that it has no obvious or severe bugs. Still, no software is bug-safe (click for proof). You'll find below a list of all bugs ever found in any released Zorro version.

Since Zorro serves as a frontend to your script, it's no problem to let it behave strange or even crash. If this happens and you found no match in the bug list below, the reason is most likely not a Zorro bug - even if you're sure that it is so. Read under Troubleshooting how to fix bugs, crashes, or other problems of your script. If you've encountered one of the listed Zorro bugs, use the described workaround or get the latest fixed beta version on the Download page. If you found a previously unknown bug in the latest Zorro version, please contact support@opgroup.de with a description of the bug and the script, log, and data needed for reproducing it. Any confirmed bug is normally fixed within 2-3 days. Otherwise you can subscribe a support ticket, and Zorro Support will help you fixing your script.

Zorro 2.12 (current release) list of bugs

Zorro 2.08 list of bugs

Zorro 2.03 list of bugs

Zorro 1.96 list of bugs

Zorro 1.88 list of bugs

Zorro 1.84 list of bugs

Zorro 1.74 list of bugs

Zorro 1.66 list of bugs

Zorro 1.60 list of bugs

Zorro 1.56 list of bugs

Zorro 1.54 list of bugs

Zorro 1.50 list of bugs

Zorro 1.46 list of bugs

Zorro 1.40 list of bugs

Zorro 1.34 list of bugs

Zorro 1.28 list of bugs

Zorro 1.26 list of bugs

Zorro 1.24 list of bugs

Zorro 1.16 list of bugs

Zorro 1.12 list of bugs


Proof of unprovability of bug-free programs

You can never be sure that an arbitrary program is bug-free and won't crash - for instance, freeze by an endless loop - with all possible parameters that it processes. In the case of Zorro, 'all possible parameters' means all possible scripts and data. Alan Turing found the proof 80 years ago. Consider a function BugFree that can test whether a program with certain entry parameters crashes or not. BugFree looks like this (in pseudo code):

function BugFree(Program,Parameters)
{   
   if(Program does not crash with given Parameters) 
     return 1; 
   else 
     return 0;
}

Of course BugFree must not crash itself, but terminate properly even when the tested Program crashes. Now we define a recursive function TestMe that calls BugFree:

function TestMe(Program)
{
   if(BugFree(Program,Program)) 
     TestMe(Program); 
}

This evil function only terminates when Program does not crash when it gets itself as a parameter (this means here a Zorro running its own source code). Otherwise TestMe calls itself endlessly and freezes. If you now call TestMe with itself as a parameter, you'll get a contradiction:

TestMe(TestMe); 

This call does not crash only when it crashes. Therefore a function like BugFree cannot exist. Therefore we can never know if Zorro won't crash with your script and data before actually running it.

 

► latest version online