hhvm / definition-finder
File Change Frequency

File change frequency (churn) shows the distribution of file updates (days with at least one commit).

File Change Frequency Overall
File Change Frequency Overall
The number of recorded file updates
  • There are 93 files with 2,818 lines of code.
    • 0 files changed more than 100 times (0 lines of code)
    • 0 files changed 51-100 times (0 lines of code)
    • 0 files changed 21-50 times (0 lines of code)
    • 2 files changed 6-20 times (406 lines of code)
    • 91 files changed 1-5 times (2,412 lines of code)
0% | 0% | 0% | 14% | 85%
Legend:
101+
51-100
21-50
6-20
1-5
explore: zoomable circles | data
File Change Frequency per File Extension
hack, php, json, md, txt, sh, gitignore, hhi, yml, gitattributes
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
hack0% | 0% | 0% | 14% | 85%
File Change Frequency per Logical Decomposition
primary
primary (file change frequency)
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
src/consumers0% | 0% | 0% | 22% | 77%
src/definitions0% | 0% | 0% | 20% | 79%
src/expression0% | 0% | 0% | 0% | 100%
src0% | 0% | 0% | 0% | 100%
Most Frequently Changed Files (Top 50)

See data for all files...

File# lines# unitslast modified
(days ago)
created
(days ago)
# changes# contributors
typehint_from_ast.hack
in src/consumers
243 1 529 1151 8 3
ScannedTypehint.hack
in src/definitions
163 14 529 1151 7 3
29 1 962 1151 5 2
32 1 901 1151 5 2
scope_from_ast.hack
in src/consumers
47 1 748 1151 5 2
parameters_from_ast.hack
in src/consumers
48 1 748 1151 5 2
79 5 951 1151 5 2
name_from_ast.hack
in src/consumers
20 1 748 1151 4 2
merge_scopes.hack
in src/consumers
25 1 962 1151 4 2
parameter_from_ast.hack
in src/consumers
42 1 901 1151 4 2
71 - 349 1151 4 1
85 1 951 1151 4 2
classish_from_ast.hack
in src/consumers
113 1 951 1151 4 3
ast_without_trivia.hack
in src/consumers
10 1 1006 1151 3 1
12 1 1006 1151 3 1
14 1 398 1151 3 2
typehints_from_ast.hack
in src/consumers
15 1 1006 1151 3 1
attributes_from_ast.hack
in src/consumers
19 1 998 1151 3 2
Expression.hack
in src/expression
24 4 1025 1151 3 1
doccomment_from_ast.hack
in src/consumers
25 1 1006 1151 3 1
constant_from_ast.hack
in src/consumers
26 1 1006 1151 3 1
StaticExpression.hack
in src/expression
31 1 600 1151 3 2
method_from_ast.hack
in src/consumers
41 1 951 1151 3 3
property_from_ast.hack
in src/consumers
43 1 1004 1151 3 1
ScannedParameter.hack
in src/definitions
51 10 901 1151 3 2
generic_from_ast.hack
in src/consumers
51 1 1006 1151 3 1
ScannedDefinition.hack
in src/definitions
60 13 1006 1151 3 1
ScannedScope.hack
in src/definitions
68 14 1006 1151 3 1
ScopeType.hack
in src/consumers
6 - 398 1151 2 1
ConsumerContext.hack
in src/consumers
8 - 951 1151 2 2
8 1 591 1151 2 2
constants_from_ast.hack
in src/consumers
12 1 1048 1151 2 1
13 1 1048 1151 2 1
generics_from_ast.hack
in src/consumers
15 1 1048 1151 2 1
value_from_ast.hack
in src/consumers
17 1 1048 1151 2 1
ScannedExpression.hack
in src/definitions
18 4 1048 1151 2 1
ScannedTypeish.hack
in src/definitions
18 2 1048 1151 2 1
18 1 1006 1151 2 1
19 1 1006 1151 2 1
StaticDictExpression.hack
in src/expression
19 1 1048 1151 2 1
function_from_ast.hack
in src/consumers
20 1 951 1151 2 2
22 1 1048 1151 2 1
22 1 1048 1151 2 1
StaticListExpression.hack
in src/expression
23 1 1048 1151 2 1
26 1 1006 1151 2 1
26 3 748 1151 2 2
typeish_from_ast.hack
in src/consumers
29 1 1006 1151 2 1
ScannedFunctionish.hack
in src/definitions
30 5 1048 1151 2 1
ScannedTypeConstant.hack
in src/definitions
30 4 1048 1151 2 1
ScannedShapeField.hack
in src/definitions
31 6 1048 1151 2 1
Files With Most Contributors (Top 50)
Files sorted by the number of unique email addresses found in commits.

See data for all files...

File# lines# unitslast modified
(days ago)
created
(days ago)
# changes# contributors
typehint_from_ast.hack
in src/consumers
243 1 529 1151 8 3
ScannedTypehint.hack
in src/definitions
163 14 529 1151 7 3
scope_from_ast.hack
in src/consumers
47 1 748 1151 5 2
29 1 962 1151 5 2
parameters_from_ast.hack
in src/consumers
48 1 748 1151 5 2
32 1 901 1151 5 2
79 5 951 1151 5 2
71 - 349 1151 4 1
merge_scopes.hack
in src/consumers
25 1 962 1151 4 2
name_from_ast.hack
in src/consumers
20 1 748 1151 4 2
85 1 951 1151 4 2
parameter_from_ast.hack
in src/consumers
42 1 901 1151 4 2
classish_from_ast.hack
in src/consumers
113 1 951 1151 4 3
ScannedScope.hack
in src/definitions
68 14 1006 1151 3 1
ScannedDefinition.hack
in src/definitions
60 13 1006 1151 3 1
Expression.hack
in src/expression
24 4 1025 1151 3 1
doccomment_from_ast.hack
in src/consumers
25 1 1006 1151 3 1
typehints_from_ast.hack
in src/consumers
15 1 1006 1151 3 1
12 1 1006 1151 3 1
property_from_ast.hack
in src/consumers
43 1 1004 1151 3 1
generic_from_ast.hack
in src/consumers
51 1 1006 1151 3 1
constant_from_ast.hack
in src/consumers
26 1 1006 1151 3 1
ast_without_trivia.hack
in src/consumers
10 1 1006 1151 3 1
ScannedParameter.hack
in src/definitions
51 10 901 1151 3 2
StaticExpression.hack
in src/expression
31 1 600 1151 3 2
14 1 398 1151 3 2
attributes_from_ast.hack
in src/consumers
19 1 998 1151 3 2
method_from_ast.hack
in src/consumers
41 1 951 1151 3 3
ScannedShapeField.hack
in src/definitions
31 6 1048 1151 2 1
ScannedFunctionish.hack
in src/definitions
30 5 1048 1151 2 1
ScannedMethod.hack
in src/definitions
48 7 1048 1151 2 1
ScannedExpression.hack
in src/definitions
18 4 1048 1151 2 1
ScannedConstant.hack
in src/definitions
42 6 1048 1151 2 1
ScannedClassish.hack
in src/definitions
82 17 1048 1151 2 1
ScannedTypeConstant.hack
in src/definitions
30 4 1048 1151 2 1
ScannedTypeish.hack
in src/definitions
18 2 1048 1151 2 1
ScannedProperty.hack
in src/definitions
44 9 1048 1151 2 1
43 2 1006 1151 2 1
19 1 1006 1151 2 1
22 1 1048 1151 2 1
22 1 1048 1151 2 1
NameExpression.hack
in src/expression
46 1 1025 1151 2 1
StaticDictExpression.hack
in src/expression
19 1 1048 1151 2 1
26 1 1006 1151 2 1
StaticListExpression.hack
in src/expression
23 1 1048 1151 2 1
ScopeType.hack
in src/consumers
6 - 398 1151 2 1
13 1 1048 1151 2 1
value_from_ast.hack
in src/consumers
17 1 1048 1151 2 1
18 1 1006 1151 2 1
generics_from_ast.hack
in src/consumers
15 1 1048 1151 2 1
Correlations

File Size vs. Number of Changes: 93 points

src/expression/StaticBinaryExpression.hack x: 71 lines of code y: 4 # changes src/consumers/ScopeType.hack x: 6 lines of code y: 2 # changes src/consumers/decl_name_in_context.hack x: 14 lines of code y: 3 # changes src/consumers/typehint_from_ast.hack x: 243 lines of code y: 8 # changes src/definitions/ScannedTypehint.hack x: 163 lines of code y: 7 # changes src/consumers/mangle_xhp_name_token.hack x: 8 lines of code y: 2 # changes src/expression/StaticExpression.hack x: 31 lines of code y: 3 # changes src/Option.hack x: 37 lines of code y: 2 # changes src/ParseException.hack x: 26 lines of code y: 2 # changes src/consumers/name_from_ast.hack x: 20 lines of code y: 4 # changes src/consumers/parameters_from_ast.hack x: 48 lines of code y: 5 # changes src/consumers/scope_from_ast.hack x: 47 lines of code y: 5 # changes src/consumers/parameter_from_ast.hack x: 42 lines of code y: 4 # changes src/consumers/parameter_info_from_decorated_expression.hack x: 32 lines of code y: 5 # changes src/definitions/ScannedParameter.hack x: 51 lines of code y: 3 # changes src/expression/LiteralExpression.hack x: 38 lines of code y: 2 # changes src/definitions/TypeTextOptions.hack x: 4 lines of code y: 1 # changes src/FileParser.hack x: 79 lines of code y: 5 # changes src/consumers/classish_from_ast.hack x: 113 lines of code y: 4 # changes src/consumers/function_from_ast.hack x: 20 lines of code y: 2 # changes src/consumers/method_from_ast.hack x: 41 lines of code y: 3 # changes src/consumers/scope_from_ast_and_ns.hack x: 85 lines of code y: 4 # changes src/consumers/merge_scopes.hack x: 25 lines of code y: 4 # changes src/consumers/type_constant_from_ast.hack x: 29 lines of code y: 5 # changes src/consumers/attributes_from_ast.hack x: 19 lines of code y: 3 # changes src/consumers/property_from_ast.hack x: 43 lines of code y: 3 # changes src/TreeParser.hack x: 43 lines of code y: 2 # changes src/consumers/ast_without_trivia.hack x: 10 lines of code y: 3 # changes src/consumers/constant_from_ast.hack x: 26 lines of code y: 3 # changes src/consumers/doccomment_from_ast.hack x: 25 lines of code y: 3 # changes src/consumers/shape_field_from_ast.hack x: 18 lines of code y: 2 # changes src/consumers/typehints_from_ast.hack x: 15 lines of code y: 3 # changes src/consumers/typehints_from_ast_va.hack x: 12 lines of code y: 3 # changes src/consumers/typeish_from_ast.hack x: 29 lines of code y: 2 # changes src/definitions/ScannedDefinition.hack x: 60 lines of code y: 3 # changes src/definitions/ScannedScope.hack x: 68 lines of code y: 3 # changes src/expression/StaticScopeResolutionExpression.hack x: 19 lines of code y: 2 # changes src/expression/Expression.hack x: 24 lines of code y: 3 # changes src/expression/NameExpression.hack x: 46 lines of code y: 2 # changes src/expression/StaticListExpression.hack x: 23 lines of code y: 2 # changes src/consumers/constants_from_ast.hack x: 12 lines of code y: 2 # changes src/consumers/context_with_node_position.hack x: 13 lines of code y: 2 # changes src/consumers/generics_from_ast.hack x: 15 lines of code y: 2 # changes src/consumers/value_from_ast.hack x: 17 lines of code y: 2 # changes src/definitions/ScannedClassish.hack x: 82 lines of code y: 2 # changes src/definitions/ScannedConstant.hack x: 42 lines of code y: 2 # changes src/definitions/ScannedFunctionish.hack x: 30 lines of code y: 2 # changes src/definitions/ScannedMethod.hack x: 48 lines of code y: 2 # changes src/definitions/ScannedProperty.hack x: 44 lines of code y: 2 # changes src/definitions/ScannedShapeField.hack x: 31 lines of code y: 2 # changes src/expression/StaticDarrayExpression.hack x: 22 lines of code y: 2 # changes src/BaseParser.hack x: 82 lines of code y: 1 # changes src/ClassDefinitionType.hack x: 6 lines of code y: 1 # changes src/Exception.hack x: 3 lines of code y: 1 # changes src/SourcePosition.hack x: 2 lines of code y: 1 # changes src/consumers/enum_from_ast.hack x: 14 lines of code y: 1 # changes src/definitions/DefinitionType.hack x: 12 lines of code y: 1 # changes src/definitions/HasScannedGenerics.hack x: 5 lines of code y: 1 # changes src/definitions/ScannedClass.hack x: 7 lines of code y: 1 # changes src/definitions/ScannedGeneric.hack x: 26 lines of code y: 1 # changes src/expression/BooleanLIteralExpression.hack x: 22 lines of code y: 1 # changes src/expression/DecimalLiteralExpression.hack x: 11 lines of code y: 1 # changes src/expression/DoubleQuotedStringLiteralExpression.hack x: 13 lines of code y: 1 # changes src/expression/HeredocStringLiteralExpression.hack x: 21 lines of code y: 1 # changes src/expression/StaticElementInitializerExpression.hack x: 19 lines of code y: 1 # changes src/expression/StaticKeysetExpression.hack x: 31 lines of code y: 1 # changes src/expression/StaticVarrayExpression.hack x: 23 lines of code y: 1 # changes src/expression/StaticVecExpression.hack x: 15 lines of code y: 1 # changes src/typedefs.hack x: 45 lines of code y: 1 # changes
8.0
# changes
  min: 1.0
  average: 2.19
  25th percentile: 1.0
  median: 2.0
  75th percentile: 3.0
  max: 8.0
0 243.0
lines of code
min: 2.0 | average: 30.3 | 25th percentile: 12.0 | median: 21.0 | 75th percentile: 39.5 | max: 243.0

Number of Contributors vs. Number of Changes: 93 points

src/expression/StaticBinaryExpression.hack x: 1 # contributors y: 4 # changes src/consumers/ScopeType.hack x: 1 # contributors y: 2 # changes src/consumers/decl_name_in_context.hack x: 2 # contributors y: 3 # changes src/consumers/typehint_from_ast.hack x: 3 # contributors y: 8 # changes src/definitions/ScannedTypehint.hack x: 3 # contributors y: 7 # changes src/consumers/mangle_xhp_name_token.hack x: 2 # contributors y: 2 # changes src/consumers/name_from_ast.hack x: 2 # contributors y: 4 # changes src/consumers/parameters_from_ast.hack x: 2 # contributors y: 5 # changes src/definitions/TypeTextOptions.hack x: 1 # contributors y: 1 # changes src/consumers/classish_from_ast.hack x: 3 # contributors y: 4 # changes src/consumers/method_from_ast.hack x: 3 # contributors y: 3 # changes src/consumers/property_from_ast.hack x: 1 # contributors y: 3 # changes
8.0
# changes
  min: 1.0
  average: 2.19
  25th percentile: 1.0
  median: 2.0
  75th percentile: 3.0
  max: 8.0
0 3.0
# contributors
min: 1.0 | average: 1.29 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 1.5 | max: 3.0