RoaringBitmap / RoaringBitmap/CRoaring

How do we feel about Coverity Scan?

Open
#323 5 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

question
Dominant language
C
Stars
1.9k
Forks
334
Avg merge
2d 5h
Merged PRs (30d)
17

Description

Some years ago I played a bit with Coverity Scan for some personal (admittedly toy) projects and it looked like a good way to find hard to spot memory bugs (it catches a few more things IIRC, but those were the ones it shined the brightest).
There's a free service for open source projects that we could take advantage of and in my experience it's far more sophisticated than tools like cppcheck, and slightly better at finding bugs than clang-analyzer.
Go and Java are also supported, so it could also be useful for implementations on those languages.

The downsides:

  1. Maintainers may be uncomfortable with relying on closed services;
  2. It would be advisable to keep only a few developers on the loop, due to the risk of 0-days leaking before they're fixed otherwise. This could have some undesirable side-effects, some regular contributors may feel left out, picking who should or should not see the results could be hard, etc. The impact on the morale of the community could be bad (or I may just be too worried over nothing);
  3. There's a limited number of builds per week. For the size of the project, it would be 28 builds a week, so a cron-like arrangement over main would probably be a better approach than, e.g., running on every PR.

So, what do other devs think? I'm interested in @lemire's opinion specially.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No files or tests are named. Start by reviewing the Coverity Scan proposal and the project's existing build process, then assess service access, security concerns, supported languages, and the weekly build limit; done means a decided integration plan or a documented decision not to proceed.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
ci-cd, security, tooling
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
22/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.