Friday, 28 November 2014

Defect density is measured by the number of defects per 1,000 lines of code,
identified by the Coverity platform

11,751 Total defects, 21 Outstanding, 331 Dismissed, 11,399 Fixed

That's the dashboard reported figure. There are 21 unresolved warnings at the momentwhich works out at a true defect density of 0.003515303, we're in rounding to 0 territory. I reckon 11 of the remaining are really false positives but I'd still like to figure out how to "wiggle" the code to get their data validity check detected correctly.

Friday, 7 November 2014

Coverity Defect Density: LibreOffice vs Average

We run LibreOffice through Coverity approximately once a week. According
to Coverity's overview dashboard our current status is:

LibreOffice: 7,271,857 line of code and 0.02 defect density

Open Source Defect Density By Project Size

Line of Code (LOC)

Defect Density

Less than 100,000

0.35

100,000 to 499,999

0.5

500,000 to 1 million

0.7

More than 1 million

0.65

Note:
Defect density is measured by the number of defects per 1,000 lines of code,
identified by the Coverity platform. The numbers shown above are from our 2013
Coverity Scan Report, which analyzed 250 million lines of open source code.

The "lines of code" here is 7,271,857 vs 9,500,825 in older reports because I'm now building against system-libraries instead of building those in-tree in order to speed up the process. Those "external" libraries have always been marked as "ignore in analysis" in coverity so that change has no effect on the defect density of our own code.If anyone knows how we could rework our code or otherwise automatically silence https://communities.coverity.com/thread/2993 that would be great. This false positive keeps cropping up in uses of uno::Sequence so they keep popping up.We're now at that happy place where we are getting a very small and manageable number of actually new warnings in "really" modified code each run rather than getting the same old one again and again as general refactoring perturbs the code enough that they get newly detected.

Thursday, 6 November 2014

Toggle off master elements directly via delete

To remove footer, header, date/time and sheetnumber master elements in LibreOffice the user has to toggle them off via view->master->master elements. Actually selecting the corresponding placeholder preview of the element in master view and pressing delete doesn't do anything.

In LibreOffice 4.4 this infuriating behavior is changed and LibreOffice will do the right thing and toggle off any selected master elements when you press delete