hhvm / hacktest
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 22 files with 1,243 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)
    • 5 files changed 6-20 times (785 lines of code)
    • 17 files changed 1-5 times (458 lines of code)
0% | 0% | 0% | 63% | 36%
Legend:
101+
51-100
21-50
6-20
1-5
explore: zoomable circles | data
File Change Frequency per File Extension
php, hack, json, md, txt, gitignore, 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% | 63% | 36%
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/Framework0% | 0% | 0% | 93% | 6%
src/_Private0% | 0% | 0% | 60% | 39%
src/Retriever0% | 0% | 0% | 70% | 29%
src0% | 0% | 0% | 46% | 53%
src/Runner0% | 0% | 0% | 0% | 100%
src/enum0% | 0% | 0% | 0% | 100%
src/Exception0% | 0% | 0% | 0% | 100%
Most Frequently Changed Files (Top 22)

See data for all files...

File# lines# unitslast modified
(days ago)
created
(days ago)
# changes# contributors
HackTest.hack
in src/Framework
272 12 151 1122 11 4
ClassRetriever.hack
in src/Retriever
141 5 664 1122 9 3
VerboseCLIOutput.hack
in src/_Private
93 2 492 905 8 2
101 4 492 1122 8 3
CLIOutputHandler.hack
in src/_Private
178 10 151 905 6 3
FileRetriever.hack
in src/Retriever
58 3 748 1122 5 2
ConciseCLIOutput.hack
in src/_Private
60 2 492 905 5 1
HackTestRunner.hack
in src/Runner
65 3 905 1122 4 1
DataProvider.hack
in src/Framework
7 1 897 1122 2 1
TestGroup.hack
in src/Framework
11 2 897 1027 2 1
2 - 1122 1122 1 1
2 - 1122 1122 1 1
2 - 1122 1122 1 1
2 - 1122 1122 1 1
2 - 1122 1122 1 1
2 - 1122 1122 1 1
ExitCode.hack
in src/enum
6 - 1122 1122 1 1
TestResult.hack
in src/enum
7 - 1122 1122 1 1
OnScopeExitAsync.hack
in src/_Private
11 2 905 905 1 1
Result.hack
in src/_Private
18 4 906 906 1 1
Progress.hack
in src/_Private
86 6 905 905 1 1
117 18 905 905 1 1
Files With Most Contributors (Top 22)
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
HackTest.hack
in src/Framework
272 12 151 1122 11 4
ClassRetriever.hack
in src/Retriever
141 5 664 1122 9 3
VerboseCLIOutput.hack
in src/_Private
93 2 492 905 8 2
101 4 492 1122 8 3
CLIOutputHandler.hack
in src/_Private
178 10 151 905 6 3
ConciseCLIOutput.hack
in src/_Private
60 2 492 905 5 1
FileRetriever.hack
in src/Retriever
58 3 748 1122 5 2
HackTestRunner.hack
in src/Runner
65 3 905 1122 4 1
TestGroup.hack
in src/Framework
11 2 897 1027 2 1
DataProvider.hack
in src/Framework
7 1 897 1122 2 1
2 - 1122 1122 1 1
2 - 1122 1122 1 1
2 - 1122 1122 1 1
2 - 1122 1122 1 1
2 - 1122 1122 1 1
2 - 1122 1122 1 1
117 18 905 905 1 1
Result.hack
in src/_Private
18 4 906 906 1 1
OnScopeExitAsync.hack
in src/_Private
11 2 905 905 1 1
Progress.hack
in src/_Private
86 6 905 905 1 1
TestResult.hack
in src/enum
7 - 1122 1122 1 1
ExitCode.hack
in src/enum
6 - 1122 1122 1 1
Correlations

File Size vs. Number of Changes: 22 points

src/Framework/HackTest.hack x: 272 lines of code y: 11 # changes src/_Private/CLIOutputHandler.hack x: 178 lines of code y: 6 # changes src/HackTestCLI.hack x: 101 lines of code y: 8 # changes src/_Private/ConciseCLIOutput.hack x: 60 lines of code y: 5 # changes src/_Private/VerboseCLIOutput.hack x: 93 lines of code y: 8 # changes src/Retriever/ClassRetriever.hack x: 141 lines of code y: 9 # changes src/Retriever/FileRetriever.hack x: 58 lines of code y: 5 # changes src/Framework/DataProvider.hack x: 7 lines of code y: 2 # changes src/Framework/TestGroup.hack x: 11 lines of code y: 2 # changes src/ProgressEvent.hack x: 117 lines of code y: 1 # changes src/Runner/HackTestRunner.hack x: 65 lines of code y: 4 # changes src/_Private/OnScopeExitAsync.hack x: 11 lines of code y: 1 # changes src/_Private/Progress.hack x: 86 lines of code y: 1 # changes src/_Private/Result.hack x: 18 lines of code y: 1 # changes src/Exception/ExpectationFailedException.hack x: 2 lines of code y: 1 # changes src/enum/ExitCode.hack x: 6 lines of code y: 1 # changes src/enum/TestResult.hack x: 7 lines of code y: 1 # changes
11.0
# changes
  min: 1.0
  average: 3.27
  25th percentile: 1.0
  median: 1.0
  75th percentile: 5.25
  max: 11.0
0 272.0
lines of code
min: 2.0 | average: 56.5 | 25th percentile: 2.0 | median: 14.5 | 75th percentile: 95.0 | max: 272.0

Number of Contributors vs. Number of Changes: 22 points

src/Framework/HackTest.hack x: 4 # contributors y: 11 # changes src/_Private/CLIOutputHandler.hack x: 3 # contributors y: 6 # changes src/HackTestCLI.hack x: 3 # contributors y: 8 # changes src/_Private/ConciseCLIOutput.hack x: 1 # contributors y: 5 # changes src/_Private/VerboseCLIOutput.hack x: 2 # contributors y: 8 # changes src/Retriever/ClassRetriever.hack x: 3 # contributors y: 9 # changes src/Retriever/FileRetriever.hack x: 2 # contributors y: 5 # changes src/Framework/DataProvider.hack x: 1 # contributors y: 2 # changes src/ProgressEvent.hack x: 1 # contributors y: 1 # changes src/Runner/HackTestRunner.hack x: 1 # contributors y: 4 # changes
11.0
# changes
  min: 1.0
  average: 3.27
  25th percentile: 1.0
  median: 1.0
  75th percentile: 5.25
  max: 11.0
0 4.0
# contributors
min: 1.0 | average: 1.5 | 25th percentile: 1.0 | median: 1.0 | 75th percentile: 2.0 | max: 4.0