facebook / squangle
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 41 files with 9,394 lines of code.
    • 1 files changed more than 100 times (1,537 lines of code)
    • 4 files changed 51-100 times (2,316 lines of code)
    • 9 files changed 21-50 times (3,589 lines of code)
    • 16 files changed 6-20 times (1,303 lines of code)
    • 11 files changed 1-5 times (649 lines of code)
16% | 24% | 38% | 13% | 6%
Legend:
101+
51-100
21-50
6-20
1-5
explore: zoomable circles | data
File Change Frequency per File Extension
h, cpp, md, txt, json
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
cpp30% | 21% | 25% | 18% | 4%
h0% | 28% | 52% | 8% | 9%
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
mysql_client17% | 26% | 38% | 10% | 7%
logger0% | 0% | 37% | 62% | 0%
base0% | 0% | 0% | 95% | 4%
Most Frequently Changed Files (Top 41)

See data for all files...

File# lines# unitslast modified
(days ago)
created
(days ago)
# changes# contributors
Operation.cpp
in squangle/mysql_client
1537 92 14 2612 120 35
Operation.h
in squangle/mysql_client
988 54 76 2612 97 26
AsyncMysqlClient.cpp
in squangle/mysql_client
252 19 52 2617 79 31
AsyncMysqlClient.h
in squangle/mysql_client
260 20 74 2521 75 28
AsyncConnectionPool.cpp
in squangle/mysql_client
816 43 39 2430 53 24
AsyncConnectionPool.h
in squangle/mysql_client
574 44 22 2612 43 22
Query.h
in squangle/mysql_client
365 18 31 2618 32 22
DBEventLogger.h
in squangle/logger
182 5 83 2596 29 12
Row.h
in squangle/mysql_client
356 47 70 2599 28 16
DbResult.cpp
in squangle/mysql_client
362 27 83 2292 28 10
DbResult.h
in squangle/mysql_client
438 38 83 2612 26 13
Query.cpp
in squangle/mysql_client
523 35 83 2618 25 19
Connection.h
in squangle/mysql_client
425 37 76 2612 22 11
Connection.cpp
in squangle/mysql_client
364 33 74 2464 21 11
DBEventLogger.cpp
in squangle/logger
37 4 83 2596 19 10
SSLOptionsProviderBase.h
in squangle/mysql_client
27 1 34 2383 13 7
DBEventCounter.h
in squangle/logger
187 28 29 2464 13 9
FutureAdapter.cpp
in squangle/mysql_client
147 14 77 2292 12 10
Row.cpp
in squangle/mysql_client
242 18 83 2292 12 9
QueryBenchmark.cpp
in squangle/mysql_client
245 11 83 2195 11 10
ExceptionUtil.h
in squangle/base
27 - 83 2116 8 5
SSLOptionsProviderBase.cpp
in squangle/mysql_client
34 2 83 2019 8 5
ClientPool.h
in squangle/mysql_client
66 7 83 2111 8 7
FutureAdapter.h
in squangle/mysql_client
28 - 83 2292 7 6
AsyncHelpers.cpp
in squangle/mysql_client
30 2 83 2350 7 5
OperationBatch.cpp
in squangle/mysql_client
44 4 83 2292 7 6
DBEventCounter.cpp
in squangle/logger
75 5 29 2464 7 5
AsyncHelpers.h
in squangle/mysql_client
19 - 83 2292 6 5
ConnectionKey.h
in squangle/base
43 1 83 2480 6 5
ConnectionKey.cpp
in squangle/base
52 2 83 2016 6 5
OperationBatch.h
in squangle/mysql_client
37 1 83 2612 5 5
Compression.h
in squangle/mysql_client
19 - 83 247 4 1
Compression.cpp
in squangle/mysql_client
57 3 83 247 4 2
MysqlClientBase.h
in squangle/mysql_client
109 5 56 85 4 1
SyncMysqlClient.h
in squangle/mysql_client
131 21 56 85 4 1
SyncMysqlClient.cpp
in squangle/mysql_client
12 1 56 85 3 1
MysqlConnectionHolder.cpp
in squangle/mysql_client
55 2 76 85 3 2
MysqlClientBase.cpp
in squangle/mysql_client
91 6 56 85 3 1
MysqlConnectionHolder.h
in squangle/mysql_client
98 12 76 85 3 2
Base.h
in squangle/base
6 - 83 85 2 1
MysqlHandler.h
in squangle/mysql_client
34 - 83 308 2 2
Files With Most Contributors (Top 41)
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
Operation.cpp
in squangle/mysql_client
1537 92 14 2612 120 35
Operation.h
in squangle/mysql_client
988 54 76 2612 97 26
AsyncMysqlClient.cpp
in squangle/mysql_client
252 19 52 2617 79 31
AsyncMysqlClient.h
in squangle/mysql_client
260 20 74 2521 75 28
AsyncConnectionPool.cpp
in squangle/mysql_client
816 43 39 2430 53 24
AsyncConnectionPool.h
in squangle/mysql_client
574 44 22 2612 43 22
Query.h
in squangle/mysql_client
365 18 31 2618 32 22
DBEventLogger.h
in squangle/logger
182 5 83 2596 29 12
DbResult.cpp
in squangle/mysql_client
362 27 83 2292 28 10
Row.h
in squangle/mysql_client
356 47 70 2599 28 16
DbResult.h
in squangle/mysql_client
438 38 83 2612 26 13
Query.cpp
in squangle/mysql_client
523 35 83 2618 25 19
Connection.h
in squangle/mysql_client
425 37 76 2612 22 11
Connection.cpp
in squangle/mysql_client
364 33 74 2464 21 11
DBEventLogger.cpp
in squangle/logger
37 4 83 2596 19 10
SSLOptionsProviderBase.h
in squangle/mysql_client
27 1 34 2383 13 7
DBEventCounter.h
in squangle/logger
187 28 29 2464 13 9
Row.cpp
in squangle/mysql_client
242 18 83 2292 12 9
FutureAdapter.cpp
in squangle/mysql_client
147 14 77 2292 12 10
QueryBenchmark.cpp
in squangle/mysql_client
245 11 83 2195 11 10
ExceptionUtil.h
in squangle/base
27 - 83 2116 8 5
SSLOptionsProviderBase.cpp
in squangle/mysql_client
34 2 83 2019 8 5
ClientPool.h
in squangle/mysql_client
66 7 83 2111 8 7
AsyncHelpers.cpp
in squangle/mysql_client
30 2 83 2350 7 5
DBEventCounter.cpp
in squangle/logger
75 5 29 2464 7 5
OperationBatch.cpp
in squangle/mysql_client
44 4 83 2292 7 6
FutureAdapter.h
in squangle/mysql_client
28 - 83 2292 7 6
ConnectionKey.h
in squangle/base
43 1 83 2480 6 5
ConnectionKey.cpp
in squangle/base
52 2 83 2016 6 5
AsyncHelpers.h
in squangle/mysql_client
19 - 83 2292 6 5
OperationBatch.h
in squangle/mysql_client
37 1 83 2612 5 5
MysqlClientBase.h
in squangle/mysql_client
109 5 56 85 4 1
Compression.h
in squangle/mysql_client
19 - 83 247 4 1
SyncMysqlClient.h
in squangle/mysql_client
131 21 56 85 4 1
Compression.cpp
in squangle/mysql_client
57 3 83 247 4 2
SyncMysqlClient.cpp
in squangle/mysql_client
12 1 56 85 3 1
MysqlClientBase.cpp
in squangle/mysql_client
91 6 56 85 3 1
MysqlConnectionHolder.cpp
in squangle/mysql_client
55 2 76 85 3 2
MysqlConnectionHolder.h
in squangle/mysql_client
98 12 76 85 3 2
Base.h
in squangle/base
6 - 83 85 2 1
MysqlHandler.h
in squangle/mysql_client
34 - 83 308 2 2
Correlations

File Size vs. Number of Changes: 41 points

squangle/mysql_client/Operation.cpp x: 1537 lines of code y: 120 # changes squangle/mysql_client/AsyncConnectionPool.h x: 574 lines of code y: 43 # changes squangle/logger/DBEventCounter.cpp x: 75 lines of code y: 7 # changes squangle/logger/DBEventCounter.h x: 187 lines of code y: 13 # changes squangle/mysql_client/Query.h x: 365 lines of code y: 32 # changes squangle/mysql_client/SSLOptionsProviderBase.h x: 27 lines of code y: 13 # changes squangle/mysql_client/AsyncConnectionPool.cpp x: 816 lines of code y: 53 # changes squangle/mysql_client/AsyncMysqlClient.cpp x: 252 lines of code y: 79 # changes squangle/mysql_client/MysqlClientBase.cpp x: 91 lines of code y: 3 # changes squangle/mysql_client/MysqlClientBase.h x: 109 lines of code y: 4 # changes squangle/mysql_client/SyncMysqlClient.cpp x: 12 lines of code y: 3 # changes squangle/mysql_client/SyncMysqlClient.h x: 131 lines of code y: 4 # changes squangle/mysql_client/Row.h x: 356 lines of code y: 28 # changes squangle/mysql_client/AsyncMysqlClient.h x: 260 lines of code y: 75 # changes squangle/mysql_client/Connection.cpp x: 364 lines of code y: 21 # changes squangle/mysql_client/Connection.h x: 425 lines of code y: 22 # changes squangle/mysql_client/MysqlConnectionHolder.cpp x: 55 lines of code y: 3 # changes squangle/mysql_client/MysqlConnectionHolder.h x: 98 lines of code y: 3 # changes squangle/mysql_client/Operation.h x: 988 lines of code y: 97 # changes squangle/mysql_client/FutureAdapter.cpp x: 147 lines of code y: 12 # changes squangle/base/Base.h x: 6 lines of code y: 2 # changes squangle/base/ConnectionKey.cpp x: 52 lines of code y: 6 # changes squangle/base/ConnectionKey.h x: 43 lines of code y: 6 # changes squangle/base/ExceptionUtil.h x: 27 lines of code y: 8 # changes squangle/logger/DBEventLogger.cpp x: 37 lines of code y: 19 # changes squangle/logger/DBEventLogger.h x: 182 lines of code y: 29 # changes squangle/mysql_client/AsyncHelpers.cpp x: 30 lines of code y: 7 # changes squangle/mysql_client/AsyncHelpers.h x: 19 lines of code y: 6 # changes squangle/mysql_client/ClientPool.h x: 66 lines of code y: 8 # changes squangle/mysql_client/Compression.cpp x: 57 lines of code y: 4 # changes squangle/mysql_client/Compression.h x: 19 lines of code y: 4 # changes squangle/mysql_client/DbResult.cpp x: 362 lines of code y: 28 # changes squangle/mysql_client/DbResult.h x: 438 lines of code y: 26 # changes squangle/mysql_client/MysqlHandler.h x: 34 lines of code y: 2 # changes squangle/mysql_client/OperationBatch.cpp x: 44 lines of code y: 7 # changes squangle/mysql_client/OperationBatch.h x: 37 lines of code y: 5 # changes squangle/mysql_client/Query.cpp x: 523 lines of code y: 25 # changes squangle/mysql_client/QueryBenchmark.cpp x: 245 lines of code y: 11 # changes squangle/mysql_client/Row.cpp x: 242 lines of code y: 12 # changes squangle/mysql_client/SSLOptionsProviderBase.cpp x: 34 lines of code y: 8 # changes
120.0
# changes
  min: 2.0
  average: 21.1
  25th percentile: 4.5
  median: 8.0
  75th percentile: 27.0
  max: 120.0
0 1537.0
lines of code
min: 6.0 | average: 229.12 | 25th percentile: 35.5 | median: 98.0 | 75th percentile: 359.0 | max: 1537.0

Number of Contributors vs. Number of Changes: 41 points

squangle/mysql_client/Operation.cpp x: 35 # contributors y: 120 # changes squangle/mysql_client/AsyncConnectionPool.h x: 22 # contributors y: 43 # changes squangle/logger/DBEventCounter.cpp x: 5 # contributors y: 7 # changes squangle/logger/DBEventCounter.h x: 9 # contributors y: 13 # changes squangle/mysql_client/Query.h x: 22 # contributors y: 32 # changes squangle/mysql_client/SSLOptionsProviderBase.h x: 7 # contributors y: 13 # changes squangle/mysql_client/AsyncConnectionPool.cpp x: 24 # contributors y: 53 # changes squangle/mysql_client/AsyncMysqlClient.cpp x: 31 # contributors y: 79 # changes squangle/mysql_client/MysqlClientBase.cpp x: 1 # contributors y: 3 # changes squangle/mysql_client/MysqlClientBase.h x: 1 # contributors y: 4 # changes squangle/mysql_client/Row.h x: 16 # contributors y: 28 # changes squangle/mysql_client/AsyncMysqlClient.h x: 28 # contributors y: 75 # changes squangle/mysql_client/Connection.cpp x: 11 # contributors y: 21 # changes squangle/mysql_client/Connection.h x: 11 # contributors y: 22 # changes squangle/mysql_client/MysqlConnectionHolder.cpp x: 2 # contributors y: 3 # changes squangle/mysql_client/Operation.h x: 26 # contributors y: 97 # changes squangle/mysql_client/FutureAdapter.cpp x: 10 # contributors y: 12 # changes squangle/base/Base.h x: 1 # contributors y: 2 # changes squangle/base/ConnectionKey.cpp x: 5 # contributors y: 6 # changes squangle/base/ExceptionUtil.h x: 5 # contributors y: 8 # changes squangle/logger/DBEventLogger.cpp x: 10 # contributors y: 19 # changes squangle/logger/DBEventLogger.h x: 12 # contributors y: 29 # changes squangle/mysql_client/ClientPool.h x: 7 # contributors y: 8 # changes squangle/mysql_client/Compression.cpp x: 2 # contributors y: 4 # changes squangle/mysql_client/DbResult.cpp x: 10 # contributors y: 28 # changes squangle/mysql_client/DbResult.h x: 13 # contributors y: 26 # changes squangle/mysql_client/FutureAdapter.h x: 6 # contributors y: 7 # changes squangle/mysql_client/MysqlHandler.h x: 2 # contributors y: 2 # changes squangle/mysql_client/OperationBatch.h x: 5 # contributors y: 5 # changes squangle/mysql_client/Query.cpp x: 19 # contributors y: 25 # changes squangle/mysql_client/QueryBenchmark.cpp x: 10 # contributors y: 11 # changes squangle/mysql_client/Row.cpp x: 9 # contributors y: 12 # changes
120.0
# changes
  min: 2.0
  average: 21.1
  25th percentile: 4.5
  median: 8.0
  75th percentile: 27.0
  max: 120.0
0 35.0
# contributors
min: 1.0 | average: 9.95 | 25th percentile: 3.5 | median: 7.0 | 75th percentile: 12.5 | max: 35.0