Proving program correctness is a step further than I was thinking, but I do find that interesting, too. It's a theoretical impossibility to know if a Turing complete program will reach certain states, but you can rule out certain types of failures. Program correctness is more about finding bugs than about fixing them. Finding all bugs is theoretically impossible. But fixing all found bugs is a lot easier. (OK, maybe still too difficult for practical purposes.)
As for the practical side: there would be releases, but those would then be maintenance releases for the next five years.
There is no clear distinction between a bug and a feature request of course. A missing driver would have to fall to the side of bugs. Anything that makes computers absolutely unusable is a bug.
If only the Linux ecosystem would do this, we would start losing an audience. But if the entire software industry did it, we would probably be looking at a future where bugs are virtually nonexistent. I'm not suggesting that we could do this. But it's a nice dream.
Maybe something less extreme could be accomplished, such as watching the bug list and not allowing it to grow between releases. Because if you allow it to grow, then you know for a fact that certain known bugs will never be fixed.
It is never possible to fix all bugs
Some bugs are design compromises, where you make one thing batter knowing it makes something else worse.
Some "bugs" come down to not having the expected behavior, where "expected behavior" may differ for various users.
And in real life, development doesn't happen without introducing new bugs and inconsistencies.
We do the best we can, and we live with the ones that can't be reasonably
Those would be investigated and either fixed or closed as not a bug.
Originally Posted by d4ddi0
I do now see a problem where your confirmed bug list could be shrinking, but now you have an enormous backlog on the unconfirmed bugs.
Even something sounding as simple as this is in a large software project impossible. That's why a smart dude invented MoSCoW.
Originally Posted by Remco
Not sure if this is supposed to be a joke, but where did you get that wrong information from?
Originally Posted by V!NCENT
The last KDE 3.5.X release had thousands of known bugs ...
i know a bug.. if you rename a file in konquorer right klick on it and then rename and finish this all is fine.. but you do this on diverend files again and again behind konuorer crashes...
Originally Posted by V!NCENT
Often in software engineering, fixing minor bugs can cause regressions or the introduction of major bugs.
Early in the process you define target levels for each category of bug before release.
Aiming for no known bugs is often not realistic with complex software. Each bug fix cycle introduces new bugs. You asymptotically reach 0 bugs if you are lucky. Otherwise the cycle never ends and you don't release in a timely manner.
Perfect is the enemy of good.
What I mean is that there are dozens of P2 bugs still open! They only fixed for now the P1.
In GCC there are many bugs open sinece 4.0 release.
I wish LLVM, Clang and friends will reach a stable and ready to use status soon.