Introducing paid development of custom diagnostics in PVS-Studio code analyzer
We are introducing a PAID service of custom diagnostics development for our clients. At this point we have to admit that the "wish list" of diagnostics is so long that it'll take several years to implement all of them. But despite that we continue receiving requests to develop new interesting diagnostics, sent by our clients and those who downloaded the trial version. Additionally, this list is being filled with examples from books and articles. That's why we thought it's time to separate simple recommendations for the analyzer improvement and those tasks that are truly important for our clients. A good criterion can be a fee for a new diagnostic implementation.
It should be noted right away that we are not ready to start developing every single diagnostic. Quite often the ideas of new diagnostics are not really acceptable for us. By saying "unacceptable" we mean:
- Too few true errors in real projects.
- Too many false positives.
- Too many messages at a low critical level of this error. That means that the diagnostic worked correctly, but there is no necessity to fix the issue.
- The implementation is too complicated within the scope of our analyzer.
We try to explain why a particular diagnostic is not worth the effort. Now we've reached a point when there are too many "good" and acceptable diagnostics on our list. Fairly enough, our clients demand a quick response to their requests.
So, we have to choose diagnostics that should be developed first, looking at the request list of our clients. Here is the idea.
If you are a commercial customer of PVS-Studio and want to immediately implement some particular diagnostic, we are ready to do it for prepayment from your side. The procedure will be as follows:
- You have an idea for diagnostics that you think would be useful (no matter if it is only for your project or for everybody)
- You send us the description of this diagnostic, and we say whether it is worthy or not. If it is acceptable, we offer a fee.
- You do the payment.
- We implement the diagnostic within a month (usually faster), providing you with beta versions as the development process goes on.
If you are not willing to pay for the development of the diagnostics, it will still be on the wish list and will be implemented over time. But the waiting period won't have any deadlines and can take some years.
We think it would be fair: paying for the diagnostic, you show that search for specific defects is really important. We hope for your understanding, as we do have a lot of custom requests. And it's hard to determine what is truly important and what is not.
We believe that such a way to determine the priority will prove to be convenient both for customers and our developers.