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 several test levels for making sure that they work as described. Any new Zorro release is beta tested by hundreds of strategy developers and users, thus ensuring that it has no obvious or severe bugs. Still, no software is completely bug-safe (click for proof). You'll find below a list of all bugs ever found in any Zorro release.

Since Zorro serves as a frontend to your script, it's easy to let it behave strange or even crash. This is not a Zorro bug - even if you're sure that it is so. Read under Troubleshooting how to fix bugs, crashes, or other issues of  your script. But there are also real Zorro bugs, which are listed below. If you've encountered one of them, use the described workaround or get the latest fixed version on the Download page. If you found a previously unknown bug in the latest Zorro release, please contact support@opgroup.de with a description of the bug and the script, log files, and data needed for reproducing it. Any confirmed Zorro bug is normally fixed within 2-3 days. If your script behaves strange and you don't know how to fix it, subscribe a support ticket and Zorro Support will help.

Zorro 2.20 (current release) list of bugs

Zorro 2.15 list of bugs

Zorro 2.12 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; 
     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)

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:


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