code-analysis.rst
author Oleksandr Gavenko <gavenkoa@gmail.com>
Mon, 22 Feb 2016 12:46:36 +0200
changeset 1905 fba288d59662
parent 1639 ad05334bf5d4
child 1912 8b81a8f0f692
permissions -rw-r--r--
Include only local subsections into TOC. This prevent duplication of TOC when build single page HTML document. Also this make unnecessary CSS hack to hide document title as top level section.
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