code-analysis.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Mon, 22 Feb 2016 13:31:27 +0200
changeset 1909 6b76120bd2d3
parent 1905 fba288d59662
child 1912 8b81a8f0f692
permissions -rw-r--r--
Check for presents of :local: keyword.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1167
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     1
.. -*- coding: utf-8; -*-
1334
9bf0d5a1f0cf Include common header with quick links.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1322
diff changeset
     2
.. include:: HEADER.rst
1167
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     3
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     4
================
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     5
 Code analysis.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     6
================
1187
eaa71972ea1d Fix RST syntax.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1180
diff changeset
     7
.. contents::
1905
fba288d59662 Include only local subsections into TOC. This prevent duplication of
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1639
diff changeset
     8
   :local:
1167
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
     9
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    10
About.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    11
======
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    12
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    13
 * http://en.wikipedia.org/wiki/List_of_tools_for_static_code_analysis
1179
ff4d5da903a9 Dmalloc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1176
diff changeset
    14
 * http://en.wikipedia.org/wiki/Static_code_analysis
1175
eef4d07eff61 Program_verification
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1174
diff changeset
    15
 * http://en.wikipedia.org/wiki/Automated_code_review
1176
1950067f64c0 Valgrind.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
    16
 * http://en.wikipedia.org/wiki/Dynamic_code_analysis
1175
eef4d07eff61 Program_verification
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1174
diff changeset
    17
 * http://en.wikipedia.org/wiki/Program_analysis_%28computer_science%29
eef4d07eff61 Program_verification
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1174
diff changeset
    18
 * http://en.wikipedia.org/wiki/Performance_analysis
eef4d07eff61 Program_verification
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1174
diff changeset
    19
 * http://en.wikipedia.org/wiki/Program_verification
1167
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    20
1170
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    21
Splint.
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    22
=======
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    23
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    24
Secure Programming Lint, is a programming tool for statically checking C
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    25
programs for security vulnerabilities and coding mistakes. Formerly called
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    26
LCLint, it is a modern version of the Unix lint tool.
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    27
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    28
  http://en.wikipedia.org/wiki/Splint_%28programming_tool%29
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    29
1322
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    30
weblint.
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    31
========
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    32
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    33
Syntax and minimal style checker for HTML.
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    34
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    35
lintsh.
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    36
=======
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    37
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    38
Lintsh is a Bourne shell that optionally warns about suspicious or nonportable
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    39
constructs.
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    40
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    41
  http://code.dogmap.org/lintsh/
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    42
                Home page.
fd6361e16489 weblint. lintsh.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1187
diff changeset
    43
1176
1950067f64c0 Valgrind.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
    44
Valgrind.
1950067f64c0 Valgrind.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
    45
=========
1950067f64c0 Valgrind.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
    46
1950067f64c0 Valgrind.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
    47
Runs programs on a virtual processor and can detect memory errors (e.g., misuse
1950067f64c0 Valgrind.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
    48
of malloc and free) and race conditions in multithread programs.
1950067f64c0 Valgrind.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
    49
1950067f64c0 Valgrind.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
    50
  http://en.wikipedia.org/wiki/Valgrind
1950067f64c0 Valgrind.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
    51
                Wikipedia page.
1950067f64c0 Valgrind.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1175
diff changeset
    52
1179
ff4d5da903a9 Dmalloc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1176
diff changeset
    53
Dmalloc.
ff4d5da903a9 Dmalloc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1176
diff changeset
    54
========
ff4d5da903a9 Dmalloc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1176
diff changeset
    55
ff4d5da903a9 Dmalloc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1176
diff changeset
    56
Dmalloc is a memory debugger C library.
ff4d5da903a9 Dmalloc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1176
diff changeset
    57
ff4d5da903a9 Dmalloc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1176
diff changeset
    58
  http://en.wikipedia.org/wiki/Dmalloc
ff4d5da903a9 Dmalloc.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1176
diff changeset
    59
1180
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    60
Avalanche.
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    61
==========
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    62
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    63
Avalanche is a dynamic defect detection tool that generates "inputs of death" -
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    64
input data reproducing critical bugs and vulnerabilities in the analysed
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    65
program.
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    66
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    67
  http://code.google.com/p/avalanche/
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    68
                Home page.
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    69
  http://en.wikipedia.org/wiki/Avalanche_%28dynamic_analysis_tool%29
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    70
                Wikipedia page.
da61212610e8 Avalanche.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1179
diff changeset
    71
1170
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    72
Sparse.
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    73
=======
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    74
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    75
Sparse is a tool designed to find possible coding faults in the Linux kernel.
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    76
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    77
  http://en.wikipedia.org/wiki/Sparse
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    78
                Wikipedia page.
d575b6abcc42 Splint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1169
diff changeset
    79
1167
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    80
PMD.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    81
====
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    82
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    83
PMD is a static ruleset based Java source code analyzer that identifies
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    84
potential problems.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    85
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    86
PMD has plugins for JDeveloper, Eclipse, JEdit, JBuilder, Omnicore's CodeGuide,
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    87
NetBeans/Sun Studio, IntelliJ IDEA, TextPad, Maven, Ant, Gel, JCreator, Hudson,
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    88
Jenkins, Sonar and Emacs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    89
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    90
  http://pmd.sf.net/
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    91
                Home page.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents:
diff changeset
    92
  http://en.wikipedia.org/wiki/PMD_%28software%29
1168
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    93
                Wikipedia page.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
    94
1171
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
    95
Checkstyle.
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
    96
===========
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
    97
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
    98
Static code analysis tool used in software development for checking if Java
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
    99
source code complies with coding rules.
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
   100
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
   101
  http://en.wikipedia.org/wiki/Checkstyle
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
   102
                Wikipedia page.
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
   103
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
   104
FindBugs.
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
   105
=========
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
   106
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
   107
  http://en.wikipedia.org/wiki/FindBugs
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
   108
                Wikipedia page.
7d45ad92679a FindBugs.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1170
diff changeset
   109
1174
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   110
Pychecker.
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   111
==========
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   112
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   113
  http://en.wikipedia.org/wiki/Pychecker
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   114
                Wikipedia page.
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   115
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   116
Pylint.
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   117
=======
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   118
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   119
  http://en.wikipedia.org/wiki/Pylint
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   120
                Wikipedia page.
2039dc94e890 Pylint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1173
diff changeset
   121
1173
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   122
JSLint.
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   123
=======
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   124
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   125
JSLint is a static code analysis tool used in software development for checking
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   126
if JavaScript source code complies with coding rules.
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   127
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   128
It is provided primarily as an online tool, but there are also command-line
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   129
adaptations.
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   130
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   131
  http://en.wikipedia.org/wiki/JSLint
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   132
                Wikipedia page.
e7f9a20dc376 JSLint.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1172
diff changeset
   133
1172
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   134
Squale.
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   135
=======
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   136
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   137
Squale (Software Quality Enhancement) is an open-source platform that helps
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   138
monitoring software quality for multi-language applications. It currently
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   139
supports Java out-of-the-box, and can also analyse C/C++ and Cobol code with an
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   140
adapter to McCabe tool. Squale is distributed under the terms of the LGPL v3
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   141
licence.
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   142
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   143
  http://en.wikipedia.org/wiki/Squale
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   144
                Wikipedia page.
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   145
1168
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   146
Yasca.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   147
======
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   148
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   149
Yasca leverages external open source programs, such as FindBugs, PMD, JLint,
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   150
JavaScript Lint, PHPLint, Cppcheck, ClamAV, Pixy, and RATS to scan specific file
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   151
types, and also contains many custom scanners developed for Yasca.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   152
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   153
  http://yasca.org/
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   154
                Home page.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   155
  http://yasca.org/
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   156
                Development home page.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   157
  http://en.wikipedia.org/wiki/Yasca
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   158
                Wikipedia page.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1167
diff changeset
   159
1169
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
   160
Sonar.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
   161
======
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
   162
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
   163
Sonar uses various static code analysis tools such as Checkstyle, PMD, FindBugs,
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
   164
Clover to extract software metrics.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
   165
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1168
diff changeset
   166
  http://en.wikipedia.org/wiki/Sonar_%28software_quality%29
1172
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   167
                Wikipedia page.
c9f019a072ac Squale.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1171
diff changeset
   168
1639
ad05334bf5d4 sloccount.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   169
sloccount.
ad05334bf5d4 sloccount.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   170
==========
ad05334bf5d4 sloccount.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   171
ad05334bf5d4 sloccount.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   172
Count files or LOC in project hierarchy::
ad05334bf5d4 sloccount.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   173
ad05334bf5d4 sloccount.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   174
  $ sudo apt-get install sloccount
ad05334bf5d4 sloccount.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   175
  $ sloccount --addlangall $DIR/$PROJ
ad05334bf5d4 sloccount.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   176
  $ rm -r $HOME/.slocdata/$PROJ
ad05334bf5d4 sloccount.
Oleksandr Gavenko <gavenkoa@gmail.com>
parents: 1334
diff changeset
   177