Topic: Static analysis and continuous integration

KroArtem on June 30, 2014, 12:44:57 PM

KroArtem

  • Full Member
  • ***
  • Posts: 104
  • Karma: +0/-0
    • View Profile
Hello,
as far as I remember, long ago somebody checked Sumwars with cppcheck - static analysis tool for C/C++ (afaik it was Protogenes). Not so long ago sumwars was checked with Coverity, much more powerful analyzer.

I suggest the following: it's possible to integrate cppcheck into several IDEs, so when a person does changes, he can check whether he introduced new warning/errors or not. It can be also done as a pre-commit hook, if I understand correctly. In this way developers won't add more problems to the existing ones :)

The second step could be to check Sumwars with coverity once in X weeks or several times before the release.

A lot more things can be done for continuous integration, but I think this is enough. :)

P.S. By  the way, in case you'll add me to Coverity not as a viewer but as a contributor/member, I'd be able to do check and send it to coverity by myself.
Logged
  • Read 4548 times
  • Category Programming
Comments: 6

KroArtem on August 13, 2014, 08:55:10 AM
Reply #1

KroArtem

  • Full Member
  • ***
  • Posts: 104
  • Karma: +0/-0
    • View Profile
Any updates on this topic? Or at least about Sumwars itself ;)
Logged

fusion44 on August 13, 2014, 06:10:45 PM
Reply #2

fusion44

  • Administrator
  • Sr. Member
  • *****
  • Posts: 459
  • Karma: +10/-0
    • View Profile
Hi Artem,

I guess integrating cpp-check in an IDE is the responsibility of everyone of his own and I'd only suggest it but not demand it as it may not easily be possible with every IDE on the planet.
My original plan was to use travisCI which integrates with Coverity nicely but that plan fell short to time constraints. To use Coverities full potential we'd have to switch to github + travis since integration with Bitbucket will take a long time according to them.

Anyway, I've decided to take a break from Sumwars for a few month. Activity seems to be at a low point at the moment and I have no real desire to work on Sumwars at the moment :-/
I'll check the forums for the time being but don't expect much "real" work from me until November :(
Logged

dezGusty on August 13, 2014, 07:56:12 PM
Reply #3

dezGusty

  • Artists
  • Full Member
  • *
  • Posts: 245
  • Karma: +8/-0
    • View Profile
Hi everyone,

just wanted to let you know that I'm still around. Quite busy with work right now, but I'm hoping to get some spare time around the second half of september. :-)
I will try to make some updates related to improving the compilation / build time as it increased a bit due to some intermediate work to support both CEGUI 07 and CEGUI 08... which is no longer needed at the moment.
Logged

KroArtem on August 19, 2014, 10:16:49 AM
Reply #4

KroArtem

  • Full Member
  • ***
  • Posts: 104
  • Karma: +0/-0
    • View Profile
Re cppcheck: I see your point of view, though according to cppcheck site, it can be easily integrated into VS, Code::Blocks, CodeLite, Eclipse, gedit and QtCreator. Note that it became more powerful during last year, and can be tweaked to show only needed things.

Re sumwars: I also understand your feelings, especially when you have no motivation.
Logged

fusion44 on August 20, 2014, 05:09:37 PM
Reply #5

fusion44

  • Administrator
  • Sr. Member
  • *****
  • Posts: 459
  • Karma: +10/-0
    • View Profile
I took a look at how this could be done and there are already cmake scripts htat automate the process. For example there's this one:
https://github.com/rpavlik/cmake-modules/blob/master/CppcheckTargets.cmake

Anyone who wants to integrate this should first take a look at this. I think cmake is the right place to look for the solution.
Logged

vyguera on August 21, 2014, 07:50:54 PM
Reply #6

vyguera

  • Newbie
  • *
  • Posts: 18
  • Karma: +2/-0
    • View Profile
I use to use a static analisys tool called SonarQube at work. It can be integrated with some IDEs, tracking tools, and languages (cppcheck among others) and it has some usefull stats and charts.
Logged