facebookincubator / FCR
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 7,211 lines of code.
    • 0 files changed more than 100 times (0 lines of code)
    • 1 files changed 51-100 times (734 lines of code)
    • 4 files changed 21-50 times (1,128 lines of code)
    • 9 files changed 6-20 times (4,022 lines of code)
    • 8 files changed 1-5 times (1,327 lines of code)
0% | 10% | 15% | 55% | 18%
Legend:
101+
51-100
21-50
6-20
1-5
explore: zoomable circles | data
File Change Frequency per File Extension
py, md, json, txt, sh, thrift, gitmodules
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
py0% | 10% | 13% | 57% | 18%
thrift0% | 0% | 100% | 0% | 0%
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
fbnet/command_runner0% | 26% | 34% | 31% | 7%
if0% | 0% | 100% | 0% | 0%
if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner0% | 0% | 0% | 74% | 25%
if/py0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
if/py/gen-py/fbnet/command_runner_asyncio0% | 0% | 0% | 0% | 0%
if/py/gen-py/fbnet0% | 0% | 0% | 0% | 0%
if/py/gen-py0% | 0% | 0% | 0% | 0%
Most Frequently Changed Files (Top 27)

See data for all files...

File# lines# unitslast modified
(days ago)
created
(days ago)
# changes# contributors
command_session.py
in fbnet/command_runner
734 57 61 1765 58 12
console_session.py
in fbnet/command_runner
294 10 131 1765 42 13
command_handler.py
in fbnet/command_runner
567 15 78 1765 39 12
device_info.py
in fbnet/command_runner
96 16 61 1765 24 8
171 - 73 1727 23 9
device_vendor.py
in fbnet/command_runner
173 30 73 1765 20 6
ssh_netconf.py
in fbnet/command_runner
110 6 295 1447 17 7
service.py
in fbnet/command_runner
130 16 61 1765 13 5
device_db.py
in fbnet/command_runner
66 3 151 1775 10 5
utils.py
in fbnet/command_runner
171 11 61 1727 8 5
exceptions.py
in fbnet/command_runner
91 2 254 309 7 1
counters.py
in fbnet/command_runner
49 12 1005 1765 6 4
thrift_client.py
in fbnet/command_runner
64 6 346 1765 6 4
Command.py
in if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner
3168 232 435 1689 6 4
setup.py
in root
16 - 1064 1775 5 3
options.py
in fbnet/command_runner
21 5 254 1765 5 4
command_server.py
in fbnet/command_runner
48 6 1064 1765 5 4
base_service.py
in fbnet/command_runner
112 16 254 1765 5 4
ttypes.py
in if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner
1094 86 1140 1689 4 2
__init__.py
in fbnet/command_runner
1 - 1064 1758 3 2
setup.py
in if/py
16 - 1064 1727 3 3
global_namespace.py
in fbnet/command_runner
19 4 248 339 3 2
__init__.py
in if/py/gen-py
1 -
__init__.py
in if/py/gen-py/fbnet
1 -
__init__.py
in if/py/gen-py/fbnet/command_runner_asyncio
1 -
__init__.py
in if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner
1 -
constants.py
in if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner
10 -
Files With Most Contributors (Top 27)
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
command_session.py
in fbnet/command_runner
734 57 61 1765 58 12
console_session.py
in fbnet/command_runner
294 10 131 1765 42 13
command_handler.py
in fbnet/command_runner
567 15 78 1765 39 12
device_info.py
in fbnet/command_runner
96 16 61 1765 24 8
171 - 73 1727 23 9
device_vendor.py
in fbnet/command_runner
173 30 73 1765 20 6
ssh_netconf.py
in fbnet/command_runner
110 6 295 1447 17 7
service.py
in fbnet/command_runner
130 16 61 1765 13 5
device_db.py
in fbnet/command_runner
66 3 151 1775 10 5
utils.py
in fbnet/command_runner
171 11 61 1727 8 5
exceptions.py
in fbnet/command_runner
91 2 254 309 7 1
Command.py
in if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner
3168 232 435 1689 6 4
thrift_client.py
in fbnet/command_runner
64 6 346 1765 6 4
counters.py
in fbnet/command_runner
49 12 1005 1765 6 4
setup.py
in root
16 - 1064 1775 5 3
base_service.py
in fbnet/command_runner
112 16 254 1765 5 4
command_server.py
in fbnet/command_runner
48 6 1064 1765 5 4
options.py
in fbnet/command_runner
21 5 254 1765 5 4
ttypes.py
in if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner
1094 86 1140 1689 4 2
global_namespace.py
in fbnet/command_runner
19 4 248 339 3 2
__init__.py
in fbnet/command_runner
1 - 1064 1758 3 2
setup.py
in if/py
16 - 1064 1727 3 3
__init__.py
in if/py/gen-py
1 -
__init__.py
in if/py/gen-py/fbnet
1 -
__init__.py
in if/py/gen-py/fbnet/command_runner_asyncio
1 -
__init__.py
in if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner
1 -
constants.py
in if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner
10 -
Correlations

File Size vs. Number of Changes: 22 points

fbnet/command_runner/command_session.py x: 734 lines of code y: 58 # changes fbnet/command_runner/device_info.py x: 96 lines of code y: 24 # changes fbnet/command_runner/service.py x: 130 lines of code y: 13 # changes fbnet/command_runner/utils.py x: 171 lines of code y: 8 # changes fbnet/command_runner/device_vendor.py x: 173 lines of code y: 20 # changes if/CommandRunner.thrift x: 171 lines of code y: 23 # changes fbnet/command_runner/command_handler.py x: 567 lines of code y: 39 # changes fbnet/command_runner/console_session.py x: 294 lines of code y: 42 # changes fbnet/command_runner/device_db.py x: 66 lines of code y: 10 # changes fbnet/command_runner/global_namespace.py x: 19 lines of code y: 3 # changes fbnet/command_runner/exceptions.py x: 91 lines of code y: 7 # changes fbnet/command_runner/options.py x: 21 lines of code y: 5 # changes fbnet/command_runner/base_service.py x: 112 lines of code y: 5 # changes fbnet/command_runner/ssh_netconf.py x: 110 lines of code y: 17 # changes fbnet/command_runner/thrift_client.py x: 64 lines of code y: 6 # changes if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner/Command.py x: 3168 lines of code y: 6 # changes fbnet/command_runner/counters.py x: 49 lines of code y: 6 # changes fbnet/command_runner/__init__.py x: 1 lines of code y: 3 # changes fbnet/command_runner/command_server.py x: 48 lines of code y: 5 # changes if/py/setup.py x: 16 lines of code y: 3 # changes setup.py x: 16 lines of code y: 5 # changes if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner/ttypes.py x: 1094 lines of code y: 4 # changes
58.0
# changes
  min: 3.0
  average: 14.18
  25th percentile: 5.0
  median: 6.5
  75th percentile: 20.75
  max: 58.0
0 3168.0
lines of code
min: 1.0 | average: 327.77 | 25th percentile: 41.25 | median: 103.0 | 75th percentile: 203.25 | max: 3168.0

Number of Contributors vs. Number of Changes: 22 points

fbnet/command_runner/command_session.py x: 12 # contributors y: 58 # changes fbnet/command_runner/device_info.py x: 8 # contributors y: 24 # changes fbnet/command_runner/service.py x: 5 # contributors y: 13 # changes fbnet/command_runner/utils.py x: 5 # contributors y: 8 # changes fbnet/command_runner/device_vendor.py x: 6 # contributors y: 20 # changes if/CommandRunner.thrift x: 9 # contributors y: 23 # changes fbnet/command_runner/command_handler.py x: 12 # contributors y: 39 # changes fbnet/command_runner/console_session.py x: 13 # contributors y: 42 # changes fbnet/command_runner/device_db.py x: 5 # contributors y: 10 # changes fbnet/command_runner/global_namespace.py x: 2 # contributors y: 3 # changes fbnet/command_runner/exceptions.py x: 1 # contributors y: 7 # changes fbnet/command_runner/options.py x: 4 # contributors y: 5 # changes fbnet/command_runner/ssh_netconf.py x: 7 # contributors y: 17 # changes fbnet/command_runner/thrift_client.py x: 4 # contributors y: 6 # changes if/py/setup.py x: 3 # contributors y: 3 # changes setup.py x: 3 # contributors y: 5 # changes if/py/gen-py/fbnet/command_runner_asyncio/CommandRunner/ttypes.py x: 2 # contributors y: 4 # changes
58.0
# changes
  min: 3.0
  average: 14.18
  25th percentile: 5.0
  median: 6.5
  75th percentile: 20.75
  max: 58.0
0 13.0
# contributors
min: 1.0 | average: 5.41 | 25th percentile: 3.0 | median: 4.0 | 75th percentile: 7.25 | max: 13.0