facebook / openr
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 231 files with 47,412 lines of code.
    • 13 files changed more than 100 times (12,478 lines of code)
    • 24 files changed 51-100 times (8,600 lines of code)
    • 47 files changed 21-50 times (11,764 lines of code)
    • 74 files changed 6-20 times (8,003 lines of code)
    • 73 files changed 1-5 times (6,567 lines of code)
26% | 18% | 24% | 16% | 13%
Legend:
101+
51-100
21-50
6-20
1-5
explore: zoomable circles | data
File Change Frequency per File Extension
cpp, py, h, md, cmake, thrift, sh, txt, json, rst, yml, gitignore, c, clang-format, bat, prettierignore
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
cpp46% | 8% | 23% | 12% | 9%
py10% | 30% | 28% | 19% | 11%
h8% | 25% | 31% | 19% | 15%
thrift0% | 45% | 27% | 26% | <1%
cmake0% | 0% | 0% | 33% | 66%
c0% | 0% | 0% | 100% | 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
openr/kvstore53% | 7% | 13% | 7% | 17%
openr/link-monitor92% | 0% | 4% | 3% | 0%
openr/spark71% | 16% | 2% | 7% | 2%
openr/prefix-manager84% | 15% | 0% | 0% | 0%
openr/py20% | 27% | 40% | 10% | 1%
openr/ctrl-server77% | 22% | 0% | 0% | 0%
openr/fib86% | 13% | 0% | 0% | 0%
openr/decision20% | 3% | 67% | 8% | 0%
openr100% | 0% | 0% | 0% | 0%
openr/common7% | 11% | 7% | 24% | 49%
build/fbcode_builder0% | 25% | 12% | 31% | 30%
openr/allocators0% | 62% | 32% | 5% | 0%
openr/if0% | 55% | 34% | 9% | 0%
openr/platform0% | 77% | 22% | 0% | 0%
openr/config0% | 42% | 57% | 0% | 0%
openr/nl0% | 0% | 54% | 38% | 7%
openr/config-store0% | 0% | 67% | 32% | 0%
openr/watchdog0% | 0% | 79% | 20% | 0%
openr/plugin0% | 0% | 54% | 45% | 0%
openr/messaging0% | 0% | 0% | 100% | 0%
configerator/structs0% | 0% | 0% | 96% | 3%
openr/monitor0% | 0% | 0% | 41% | 58%
openr/policy0% | 0% | 0% | 35% | 64%
ROOT0% | 0% | 0% | 0% | 100%
build0% | 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
Main.cpp
in openr
472 1 29 1606 274 34
KvStore.cpp
in openr/kvstore
2715 1 38 1612 218 28
Decision.cpp
in openr/decision
819 - 22 1596 213 24
LinkMonitor.cpp
in openr/link-monitor
1441 3 14 1605 187 29
Spark.cpp
in openr/spark
1631 - 29 1607 149 25
Fib.cpp
in openr/fib
870 - 63 1612 145 25
Util.cpp
in openr/common
154 - 69 1554 135 27
PrefixManager.cpp
in openr/prefix-manager
1337 1 29 1582 134 23
Util.h
in openr/common
103 1 73 1550 130 23
KvStore.h
in openr/kvstore
340 1 42 1612 125 18
utils.py
in openr/py/openr/cli/utils
1326 66 56 1612 120 25
OpenrCtrlHandler.cpp
in openr/ctrl-server
1079 8 49 1190 108 21
LinkMonitor.h
in openr/link-monitor
191 - 51 1577 102 19
254 - 29 743 99 17
Decision.h
in openr/decision
149 1 22 1550 97 20
Spark.h
in openr/spark
250 - 48 1499 92 17
builder.py
in build/fbcode_builder/getdeps
822 48 35 1077 90 23
PrefixManager.h
in openr/prefix-manager
247 1 109 1544 82 17
Constants.h
in openr/common
97 - 52 1590 81 20
kvstore.py
in openr/py/openr/cli/commands
1196 62 56 1612 81 23
Fib.h
in openr/fib
136 - 72 1590 79 20
KvStoreWrapper.cpp
in openr/kvstore
280 - 49 1599 77 22
OpenrCtrl.thrift
in openr/if
249 - 25 1190 75 20
Flags.cpp
in openr/common
57 - 109 1121 71 13
PrefixAllocator.cpp
in openr/allocators
813 3 29 1579 70 23
Flags.h
in openr/common
16 - 109 1121 68 13
OpenrCtrlHandler.h
in openr/ctrl-server
319 - 48 1190 68 17
NetlinkFibHandler.cpp
in openr/platform
558 7 80 1606 64 21
Types.h
in openr/common
150 1 80 1275 63 14
Constants.cpp
in openr/common
80 - 52 1590 61 17
KvStoreWrapper.h
in openr/kvstore
139 - 49 1599 61 16
getdeps.py
in build/fbcode_builder
993 41 32 1077 61 20
Config.h
in openr/config
429 2 32 743 58 15
decision.py
in openr/py/openr/cli/commands
594 25 109 1577 57 19
SparkWrapper.cpp
in openr/spark
113 - 55 1499 54 17
KvStore.thrift
in openr/if
225 - 14 1599 52 15
buildopts.py
in build/fbcode_builder/getdeps
434 20 56 1077 52 19
fib.py
in openr/py/openr/cli/commands
446 19 59 1573 50 18
Config.cpp
in openr/config
573 1 35 743 50 16
NetlinkTypes.cpp
in openr/nl
1092 - 109 1381 48 17
NetlinkTypes.h
in openr/nl
369 1 109 1381 46 14
325 - 49 777 44 12
kvstore.py
in openr/py/openr/cli/clis
249 19 73 1612 43 14
Types.thrift
in openr/if
269 - 15 465 43 12
manifest.py
in build/fbcode_builder/getdeps
548 29 32 1077 43 18
Platform.thrift
in openr/if
89 - 49 1541 42 16
PrefixAllocator.h
in openr/allocators
98 - 29 1579 42 13
SparkWrapper.h
in openr/spark
53 - 55 1499 40 14
Network.thrift
in openr/if
85 - 30 1165 40 14
LinkState.cpp
in openr/decision
843 - 80 1171 36 13
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
Main.cpp
in openr
472 1 29 1606 274 34
KvStore.cpp
in openr/kvstore
2715 1 38 1612 218 28
Decision.cpp
in openr/decision
819 - 22 1596 213 24
LinkMonitor.cpp
in openr/link-monitor
1441 3 14 1605 187 29
Spark.cpp
in openr/spark
1631 - 29 1607 149 25
Fib.cpp
in openr/fib
870 - 63 1612 145 25
Util.cpp
in openr/common
154 - 69 1554 135 27
PrefixManager.cpp
in openr/prefix-manager
1337 1 29 1582 134 23
Util.h
in openr/common
103 1 73 1550 130 23
KvStore.h
in openr/kvstore
340 1 42 1612 125 18
utils.py
in openr/py/openr/cli/utils
1326 66 56 1612 120 25
OpenrCtrlHandler.cpp
in openr/ctrl-server
1079 8 49 1190 108 21
LinkMonitor.h
in openr/link-monitor
191 - 51 1577 102 19
254 - 29 743 99 17
Decision.h
in openr/decision
149 1 22 1550 97 20
Spark.h
in openr/spark
250 - 48 1499 92 17
builder.py
in build/fbcode_builder/getdeps
822 48 35 1077 90 23
PrefixManager.h
in openr/prefix-manager
247 1 109 1544 82 17
Constants.h
in openr/common
97 - 52 1590 81 20
kvstore.py
in openr/py/openr/cli/commands
1196 62 56 1612 81 23
Fib.h
in openr/fib
136 - 72 1590 79 20
KvStoreWrapper.cpp
in openr/kvstore
280 - 49 1599 77 22
OpenrCtrl.thrift
in openr/if
249 - 25 1190 75 20
Flags.cpp
in openr/common
57 - 109 1121 71 13
PrefixAllocator.cpp
in openr/allocators
813 3 29 1579 70 23
Flags.h
in openr/common
16 - 109 1121 68 13
OpenrCtrlHandler.h
in openr/ctrl-server
319 - 48 1190 68 17
NetlinkFibHandler.cpp
in openr/platform
558 7 80 1606 64 21
Types.h
in openr/common
150 1 80 1275 63 14
KvStoreWrapper.h
in openr/kvstore
139 - 49 1599 61 16
Constants.cpp
in openr/common
80 - 52 1590 61 17
getdeps.py
in build/fbcode_builder
993 41 32 1077 61 20
Config.h
in openr/config
429 2 32 743 58 15
decision.py
in openr/py/openr/cli/commands
594 25 109 1577 57 19
SparkWrapper.cpp
in openr/spark
113 - 55 1499 54 17
KvStore.thrift
in openr/if
225 - 14 1599 52 15
buildopts.py
in build/fbcode_builder/getdeps
434 20 56 1077 52 19
Config.cpp
in openr/config
573 1 35 743 50 16
fib.py
in openr/py/openr/cli/commands
446 19 59 1573 50 18
NetlinkTypes.cpp
in openr/nl
1092 - 109 1381 48 17
NetlinkTypes.h
in openr/nl
369 1 109 1381 46 14
325 - 49 777 44 12
Types.thrift
in openr/if
269 - 15 465 43 12
kvstore.py
in openr/py/openr/cli/clis
249 19 73 1612 43 14
manifest.py
in build/fbcode_builder/getdeps
548 29 32 1077 43 18
PrefixAllocator.h
in openr/allocators
98 - 29 1579 42 13
Platform.thrift
in openr/if
89 - 49 1541 42 16
SparkWrapper.h
in openr/spark
53 - 55 1499 40 14
Network.thrift
in openr/if
85 - 30 1165 40 14
LinkState.cpp
in openr/decision
843 - 80 1171 36 13
Correlations

File Size vs. Number of Changes: 231 points

openr/if/KvStore.thrift x: 225 lines of code y: 52 # changes openr/link-monitor/LinkMonitor.cpp x: 1441 lines of code y: 187 # changes openr/if/Types.thrift x: 269 lines of code y: 43 # changes openr/decision/Decision.cpp x: 819 lines of code y: 213 # changes openr/decision/Decision.h x: 149 lines of code y: 97 # changes openr/if/OpenrCtrl.thrift x: 249 lines of code y: 75 # changes build/fbcode_builder/getdeps/dyndeps.py x: 309 lines of code y: 16 # changes openr/Main.cpp x: 472 lines of code y: 274 # changes openr/allocators/PrefixAllocator.cpp x: 813 lines of code y: 70 # changes openr/allocators/PrefixAllocator.h x: 98 lines of code y: 42 # changes openr/allocators/RangeAllocator-inl.h x: 329 lines of code y: 27 # changes openr/allocators/RangeAllocator.h x: 71 lines of code y: 20 # changes openr/if/OpenrConfig.thrift x: 254 lines of code y: 99 # changes openr/prefix-manager/PrefixManager.cpp x: 1337 lines of code y: 134 # changes openr/spark/Spark.cpp x: 1631 lines of code y: 149 # changes openr/if/Network.thrift x: 85 lines of code y: 40 # changes openr/config/Config.h x: 429 lines of code y: 58 # changes build/fbcode_builder/getdeps.py x: 993 lines of code y: 61 # changes build/fbcode_builder/getdeps/manifest.py x: 548 lines of code y: 43 # changes build/fbcode_builder/getdeps/fetcher.py x: 550 lines of code y: 27 # changes openr/config/Config.cpp x: 573 lines of code y: 50 # changes build/fbcode_builder/getdeps/builder.py x: 822 lines of code y: 90 # changes openr/kvstore/KvStorePublisher.cpp x: 79 lines of code y: 21 # changes openr/kvstore/KvStorePublisher.h x: 33 lines of code y: 15 # changes openr/kvstore/KvStore.cpp x: 2715 lines of code y: 218 # changes openr/kvstore/KvStore.h x: 340 lines of code y: 125 # changes openr/spark/Spark.h x: 250 lines of code y: 92 # changes openr/ctrl-server/OpenrCtrlHandler.h x: 319 lines of code y: 68 # changes openr/if/Platform.thrift x: 89 lines of code y: 42 # changes openr/platform/NetlinkFibHandler.h x: 96 lines of code y: 34 # changes openr/kvstore/KvStoreServiceHandler-inl.h x: 57 lines of code y: 1 # changes openr/kvstore/KvStoreServiceHandler.h x: 41 lines of code y: 2 # changes openr/kvstore/KvStoreWrapper.cpp x: 280 lines of code y: 77 # changes openr/kvstore/KvStoreWrapper.h x: 139 lines of code y: 61 # changes openr/common/OpenrClient.h x: 92 lines of code y: 21 # changes openr/ctrl-server/OpenrCtrlHandler.cpp x: 1079 lines of code y: 108 # changes openr/kvstore/KvStoreClientInternal.cpp x: 325 lines of code y: 44 # changes openr/kvstore/KvStoreClientInternal.h x: 80 lines of code y: 23 # changes openr/kvstore/tools/KvStoreSnooper.cpp x: 74 lines of code y: 17 # changes openr/link-monitor/LinkMonitor.h x: 191 lines of code y: 102 # changes openr/common/Constants.cpp x: 80 lines of code y: 61 # changes openr/common/Constants.h x: 97 lines of code y: 81 # changes build/fbcode_builder/getdeps/envfuncs.py x: 110 lines of code y: 12 # changes openr/common/LsdbTypes.h x: 242 lines of code y: 2 # changes openr/spark/SparkWrapper.cpp x: 113 lines of code y: 54 # changes openr/spark/SparkWrapper.h x: 53 lines of code y: 40 # changes openr/py/openr/cli/commands/kvstore.py x: 1196 lines of code y: 81 # changes openr/py/openr/cli/utils/utils.py x: 1326 lines of code y: 120 # changes build/fbcode_builder/getdeps/buildopts.py x: 434 lines of code y: 52 # changes build/fbcode_builder/getdeps/cargo.py x: 295 lines of code y: 5 # changes build/fbcode_builder/getdeps/py_wheel_builder.py x: 146 lines of code y: 9 # changes build/fbcode_builder/getdeps/runcmd.py x: 106 lines of code y: 14 # changes build/fbcode_builder/shell_quoting.py x: 48 lines of code y: 5 # changes openr/kvstore/KvStoreUtil.cpp x: 330 lines of code y: 14 # changes openr/kvstore/KvStoreUtil.h x: 104 lines of code y: 24 # changes build/fbcode_builder/CMake/RustStaticLibrary.cmake x: 267 lines of code y: 3 # changes build/fbcode_builder/getdeps/cache.py x: 7 lines of code y: 6 # changes build/fbcode_builder/getdeps/copytree.py x: 42 lines of code y: 11 # changes build/fbcode_builder/getdeps/errors.py x: 5 lines of code y: 7 # changes build/fbcode_builder/getdeps/expr.py x: 120 lines of code y: 8 # changes build/fbcode_builder/getdeps/load.py x: 228 lines of code y: 19 # changes build/fbcode_builder/getdeps/platform.py x: 187 lines of code y: 18 # changes build/fbcode_builder/getdeps/subcmd.py x: 24 lines of code y: 6 # changes openr/py/openr/cli/breeze.py x: 76 lines of code y: 26 # changes openr/py/openr/cli/commands/fib.py x: 446 lines of code y: 50 # changes openr/py/openr/utils/ipnetwork.py x: 111 lines of code y: 26 # changes openr/py/openr/utils/printing.py x: 55 lines of code y: 16 # changes openr/kvstore/KvStoreUtil-inl.h x: 182 lines of code y: 22 # changes openr/common/LsdbUtil.cpp x: 920 lines of code y: 5 # changes openr/common/OpenrThriftCtrlServer.cpp x: 74 lines of code y: 7 # changes openr/config-store/PersistentStore.cpp x: 304 lines of code y: 33 # changes openr/decision/SpfSolver.cpp x: 992 lines of code y: 34 # changes openr/fib/Fib.cpp x: 870 lines of code y: 145 # changes openr/common/LsdbUtil.h x: 224 lines of code y: 4 # changes openr/common/Util.cpp x: 154 lines of code y: 135 # changes openr/fib/Fib.h x: 136 lines of code y: 79 # changes openr/py/openr/cli/clis/decision.py x: 129 lines of code y: 33 # changes openr/py/openr/cli/clis/kvstore.py x: 249 lines of code y: 43 # changes openr/common/Util.h x: 103 lines of code y: 130 # changes openr/common/BuildInfo.cpp x: 97 lines of code y: 6 # changes openr/common/FileUtil.cpp x: 11 lines of code y: 3 # changes openr/common/LsdbTypes.cpp x: 39 lines of code y: 1 # changes openr/common/PrependLabelAllocator.cpp x: 113 lines of code y: 7 # changes openr/common/Types.cpp x: 33 lines of code y: 14 # changes openr/common/Types.h x: 150 lines of code y: 63 # changes openr/decision/PrefixState.h x: 29 lines of code y: 29 # changes openr/link-monitor/InterfaceEntry.h x: 54 lines of code y: 13 # changes openr/plugin/Plugin.h x: 28 lines of code y: 23 # changes openr/common/MplsUtil.h x: 59 lines of code y: 5 # changes openr/decision/LinkState.cpp x: 843 lines of code y: 36 # changes openr/decision/PrefixState.cpp x: 116 lines of code y: 35 # changes openr/platform/NetlinkFibHandler.cpp x: 558 lines of code y: 64 # changes build/fbcode_builder/CMake/fb_py_test_main.py x: 566 lines of code y: 4 # changes build/fbcode_builder/docker_builder.py x: 111 lines of code y: 8 # changes build/fbcode_builder/fbcode_builder.py x: 391 lines of code y: 20 # changes build/fbcode_builder/fbcode_builder_config.py x: 8 lines of code y: 3 # changes build/fbcode_builder/make_docker_context.py x: 132 lines of code y: 5 # changes build/fbcode_builder/parse_args.py x: 54 lines of code y: 3 # changes build/fbcode_builder/shell_builder.py x: 73 lines of code y: 9 # changes build/fbcode_builder/utils.py x: 54 lines of code y: 5 # changes openr/py/openr/cli/commands/spark.py x: 104 lines of code y: 7 # changes openr/py/openr/cli/commands/prefix_mgr.py x: 309 lines of code y: 28 # changes openr/py/openr/cli/clis/spark.py x: 27 lines of code y: 5 # changes openr/monitor/SystemMetrics.h x: 33 lines of code y: 6 # changes openr/decision/LinkState.h x: 426 lines of code y: 26 # changes openr/plugin/Plugin.cpp x: 23 lines of code y: 8 # changes FBGenCMakeBuildInfo.cmake x: 90 lines of code y: 3 # changes ThriftLibrary.cmake x: 254 lines of code y: 5 # changes build/cython_compile.py x: 32 lines of code y: 2 # changes build/gen.py x: 45 lines of code y: 4 # changes configerator/structs/neteng/config/routing_policy.thrift x: 302 lines of code y: 10 # changes openr/common/AsyncDebounce.h x: 44 lines of code y: 7 # changes openr/common/AsyncThrottle.cpp x: 27 lines of code y: 4 # changes openr/common/ExponentialBackoff.cpp x: 79 lines of code y: 8 # changes openr/common/ExponentialBackoff.h x: 38 lines of code y: 5 # changes openr/common/FileUtil.h x: 11 lines of code y: 2 # changes openr/common/Flags.cpp x: 57 lines of code y: 71 # changes openr/common/Flags.h x: 16 lines of code y: 68 # changes openr/common/NetworkUtil.h x: 164 lines of code y: 26 # changes openr/common/OpenrEventBase.cpp x: 174 lines of code y: 20 # changes openr/common/OpenrEventBase.h x: 92 lines of code y: 19 # changes openr/common/PrependLabelAllocator.h x: 31 lines of code y: 5 # changes openr/common/StepDetector.h x: 79 lines of code y: 6 # changes openr/config-store/PersistentStore.h x: 96 lines of code y: 20 # changes openr/config-store/PersistentStoreWrapper.cpp x: 26 lines of code y: 11 # changes openr/decision/RibEntry.h x: 140 lines of code y: 26 # changes openr/decision/RibPolicy.cpp x: 188 lines of code y: 12 # changes openr/decision/RouteUpdate.h x: 112 lines of code y: 18 # changes openr/decision/SpfSolver.h x: 204 lines of code y: 21 # changes openr/if/BgpConfig.thrift x: 108 lines of code y: 15 # changes openr/if/OpenrCtrlCpp.thrift x: 22 lines of code y: 18 # changes openr/kvstore/Dual.cpp x: 732 lines of code y: 5 # changes openr/kvstore/Dual.h x: 182 lines of code y: 4 # changes openr/link-monitor/InterfaceEntry.cpp x: 87 lines of code y: 22 # changes openr/messaging/Queue-inl.h x: 173 lines of code y: 8 # changes openr/messaging/Queue.h x: 75 lines of code y: 8 # changes openr/messaging/ReplicateQueue-inl.h x: 111 lines of code y: 7 # changes openr/messaging/ReplicateQueue.h x: 41 lines of code y: 6 # changes openr/monitor/LogSample.cpp x: 140 lines of code y: 4 # changes openr/monitor/LogSample.h x: 46 lines of code y: 3 # changes openr/monitor/Monitor.cpp x: 13 lines of code y: 6 # changes openr/monitor/Monitor.h x: 16 lines of code y: 8 # changes openr/monitor/MonitorBase.cpp x: 83 lines of code y: 10 # changes openr/monitor/MonitorBase.h x: 33 lines of code y: 8 # changes openr/nl/NetlinkAddrMessage.cpp x: 131 lines of code y: 7 # changes openr/nl/NetlinkLinkMessage.cpp x: 241 lines of code y: 6 # changes openr/nl/NetlinkMessageBase.cpp x: 88 lines of code y: 6 # changes openr/nl/NetlinkMessageBase.h x: 63 lines of code y: 7 # changes openr/nl/NetlinkNeighborMessage.cpp x: 78 lines of code y: 4 # changes openr/nl/NetlinkProtocolSocket.h x: 89 lines of code y: 17 # changes openr/nl/NetlinkRouteMessage.cpp x: 709 lines of code y: 12 # changes openr/nl/NetlinkRouteMessage.h x: 83 lines of code y: 9 # changes openr/nl/NetlinkRuleMessage.cpp x: 110 lines of code y: 3 # changes openr/nl/NetlinkRuleMessage.h x: 28 lines of code y: 2 # changes openr/nl/NetlinkTypes.cpp x: 1092 lines of code y: 48 # changes openr/nl/NetlinkTypes.h x: 369 lines of code y: 46 # changes openr/platform/LinuxPlatformMain.cpp x: 62 lines of code y: 30 # changes openr/policy/PolicyManager.cpp x: 15 lines of code y: 4 # changes openr/policy/PolicyManager.h x: 22 lines of code y: 4 # changes openr/prefix-manager/PrefixManager.h x: 247 lines of code y: 82 # changes openr/py/openr/__init__.py x: 1 lines of code y: 5 # changes openr/py/openr/cli/clis/config.py x: 70 lines of code y: 16 # changes openr/py/openr/cli/clis/fib.py x: 136 lines of code y: 27 # changes openr/py/openr/cli/clis/lm.py x: 126 lines of code y: 24 # changes openr/py/openr/cli/clis/monitor.py x: 33 lines of code y: 16 # changes openr/py/openr/cli/clis/openr.py x: 31 lines of code y: 10 # changes openr/py/openr/cli/clis/perf.py x: 15 lines of code y: 12 # changes openr/py/openr/cli/clis/prefix_mgr.py x: 239 lines of code y: 27 # changes openr/py/openr/cli/clis/tech_support.py x: 12 lines of code y: 12 # changes openr/py/openr/cli/commands/config.py x: 147 lines of code y: 27 # changes openr/py/openr/cli/commands/decision.py x: 594 lines of code y: 57 # changes openr/py/openr/cli/commands/lm.py x: 317 lines of code y: 30 # changes openr/py/openr/cli/commands/monitor.py x: 134 lines of code y: 22 # changes openr/py/openr/cli/commands/perf.py x: 27 lines of code y: 10 # changes openr/py/openr/cli/commands/tech_support.py x: 116 lines of code y: 24 # changes openr/py/openr/cli/utils/commands.py x: 87 lines of code y: 23 # changes openr/py/openr/cli/utils/default_option_overrides.py x: 4 lines of code y: 3 # changes openr/py/openr/cli/utils/options.py x: 58 lines of code y: 17 # changes openr/py/openr/clients/openr_client.py x: 103 lines of code y: 17 # changes openr/py/openr/utils/consts.py x: 33 lines of code y: 30 # changes openr/py/openr/utils/serializer.py x: 44 lines of code y: 9 # changes openr/py/setup.py x: 112 lines of code y: 19 # changes openr/spark/IoProvider.cpp x: 165 lines of code y: 9 # changes openr/spark/IoProvider.h x: 56 lines of code y: 4 # changes openr/watchdog/Watchdog.cpp x: 151 lines of code y: 23 # changes openr/watchdog/Watchdog.h x: 38 lines of code y: 16 # changes build/fbcode_builder/CMake/fb_py_win_main.c x: 74 lines of code y: 6 # changes build/fbcode_builder/CMake/FindZstd.cmake x: 34 lines of code y: 1 # changes build/fbcode_builder/CMake/make_fbpy_archive.py x: 243 lines of code y: 3 # changes build/fbcode_builder/CMake/FindSodium.cmake x: 265 lines of code y: 2 # changes build/fbcode_builder/CMake/FBCompilerSettingsUnix.cmake x: 7 lines of code y: 2 # changes build/fbcode_builder/CMake/FBThriftCppLibrary.cmake x: 180 lines of code y: 6 # changes build/fbcode_builder/CMake/FindGlog.cmake x: 29 lines of code y: 3 # changes build/fbcode_builder/CMake/FindGflags.cmake x: 97 lines of code y: 3 # changes build/fbcode_builder/CMake/FindRe2.cmake x: 16 lines of code y: 1 # changes build/fbcode_builder/CMake/FindLibUnwind.cmake x: 25 lines of code y: 1 # changes build/fbcode_builder/getdeps/__init__.py x: 1 lines of code y: 2 # changes build/fbcode_builder/CMake/FBCompilerSettings.cmake x: 11 lines of code y: 1 # changes build/fbcode_builder/CMake/FBCompilerSettingsMSVC.cmake x: 9 lines of code y: 1 # changes build/fbcode_builder/CMake/FBPythonBinary.cmake x: 646 lines of code y: 8 # changes build/fbcode_builder/CMake/FBThriftPyLibrary.cmake x: 100 lines of code y: 2 # changes build/fbcode_builder/CMake/FBThriftLibrary.cmake x: 72 lines of code y: 1 # changes build/fbcode_builder/CMake/FBCMakeParseArgs.cmake x: 135 lines of code y: 1 # changes build/fbcode_builder/CMake/FindGMock.cmake x: 71 lines of code y: 2 # changes build/fbcode_builder/CMake/FindLibEvent.cmake x: 69 lines of code y: 4 # changes
274.0
# changes
  min: 1.0
  average: 27.25
  25th percentile: 5.0
  median: 11.0
  75th percentile: 30.0
  max: 274.0
0 2715.0
lines of code
min: 1.0 | average: 205.25 | 25th percentile: 33.0 | median: 92.0 | 75th percentile: 239.0 | max: 2715.0

Number of Contributors vs. Number of Changes: 231 points

openr/if/KvStore.thrift x: 15 # contributors y: 52 # changes openr/link-monitor/LinkMonitor.cpp x: 29 # contributors y: 187 # changes openr/if/Types.thrift x: 12 # contributors y: 43 # changes openr/decision/Decision.cpp x: 24 # contributors y: 213 # changes openr/decision/Decision.h x: 20 # contributors y: 97 # changes openr/if/OpenrCtrl.thrift x: 20 # contributors y: 75 # changes build/fbcode_builder/getdeps/dyndeps.py x: 6 # contributors y: 16 # changes openr/Main.cpp x: 34 # contributors y: 274 # changes openr/allocators/PrefixAllocator.cpp x: 23 # contributors y: 70 # changes openr/allocators/PrefixAllocator.h x: 13 # contributors y: 42 # changes openr/allocators/RangeAllocator-inl.h x: 13 # contributors y: 27 # changes openr/allocators/RangeAllocator.h x: 10 # contributors y: 20 # changes openr/if/OpenrConfig.thrift x: 17 # contributors y: 99 # changes openr/prefix-manager/PrefixManager.cpp x: 23 # contributors y: 134 # changes openr/spark/Spark.cpp x: 25 # contributors y: 149 # changes openr/if/Network.thrift x: 14 # contributors y: 40 # changes openr/config/Config.h x: 15 # contributors y: 58 # changes build/fbcode_builder/getdeps.py x: 20 # contributors y: 61 # changes build/fbcode_builder/getdeps/manifest.py x: 18 # contributors y: 43 # changes build/fbcode_builder/getdeps/fetcher.py x: 12 # contributors y: 27 # changes openr/config/Config.cpp x: 16 # contributors y: 50 # changes build/fbcode_builder/getdeps/builder.py x: 23 # contributors y: 90 # changes openr/kvstore/KvStorePublisher.cpp x: 11 # contributors y: 21 # changes openr/kvstore/KvStorePublisher.h x: 9 # contributors y: 15 # changes openr/kvstore/KvStore.cpp x: 28 # contributors y: 218 # changes openr/kvstore/KvStore.h x: 18 # contributors y: 125 # changes openr/spark/Spark.h x: 17 # contributors y: 92 # changes openr/ctrl-server/OpenrCtrlHandler.h x: 17 # contributors y: 68 # changes openr/if/Platform.thrift x: 16 # contributors y: 42 # changes openr/platform/NetlinkFibHandler.h x: 13 # contributors y: 34 # changes openr/kvstore/KvStoreServiceHandler-inl.h x: 1 # contributors y: 1 # changes openr/kvstore/KvStoreServiceHandler.h x: 1 # contributors y: 2 # changes openr/kvstore/KvStoreWrapper.cpp x: 22 # contributors y: 77 # changes openr/kvstore/KvStoreWrapper.h x: 16 # contributors y: 61 # changes openr/common/OpenrClient.h x: 13 # contributors y: 21 # changes openr/ctrl-server/OpenrCtrlHandler.cpp x: 21 # contributors y: 108 # changes openr/kvstore/KvStoreClientInternal.cpp x: 12 # contributors y: 44 # changes openr/kvstore/KvStoreClientInternal.h x: 7 # contributors y: 23 # changes openr/kvstore/tools/KvStoreSnooper.cpp x: 10 # contributors y: 17 # changes openr/link-monitor/LinkMonitor.h x: 19 # contributors y: 102 # changes openr/common/Constants.cpp x: 17 # contributors y: 61 # changes openr/common/Constants.h x: 20 # contributors y: 81 # changes build/fbcode_builder/getdeps/envfuncs.py x: 7 # contributors y: 12 # changes openr/common/LsdbTypes.h x: 2 # contributors y: 2 # changes openr/spark/SparkWrapper.cpp x: 17 # contributors y: 54 # changes openr/py/openr/cli/commands/kvstore.py x: 23 # contributors y: 81 # changes openr/py/openr/cli/utils/utils.py x: 25 # contributors y: 120 # changes build/fbcode_builder/getdeps/buildopts.py x: 19 # contributors y: 52 # changes build/fbcode_builder/getdeps/cargo.py x: 3 # contributors y: 5 # changes build/fbcode_builder/getdeps/py_wheel_builder.py x: 6 # contributors y: 9 # changes build/fbcode_builder/getdeps/runcmd.py x: 8 # contributors y: 14 # changes build/fbcode_builder/shell_quoting.py x: 4 # contributors y: 5 # changes openr/kvstore/KvStoreUtil.cpp x: 7 # contributors y: 14 # changes openr/kvstore/KvStoreUtil.h x: 11 # contributors y: 24 # changes build/fbcode_builder/CMake/RustStaticLibrary.cmake x: 3 # contributors y: 3 # changes build/fbcode_builder/getdeps/cache.py x: 5 # contributors y: 6 # changes build/fbcode_builder/getdeps/copytree.py x: 5 # contributors y: 11 # changes build/fbcode_builder/getdeps/errors.py x: 6 # contributors y: 7 # changes build/fbcode_builder/getdeps/expr.py x: 7 # contributors y: 8 # changes build/fbcode_builder/getdeps/load.py x: 10 # contributors y: 19 # changes build/fbcode_builder/getdeps/platform.py x: 11 # contributors y: 18 # changes openr/py/openr/cli/breeze.py x: 11 # contributors y: 26 # changes openr/py/openr/cli/commands/fib.py x: 18 # contributors y: 50 # changes openr/py/openr/utils/ipnetwork.py x: 12 # contributors y: 26 # changes openr/py/openr/utils/printing.py x: 9 # contributors y: 16 # changes openr/kvstore/KvStoreUtil-inl.h x: 14 # contributors y: 22 # changes openr/common/LsdbUtil.cpp x: 2 # contributors y: 5 # changes openr/common/OpenrThriftCtrlServer.cpp x: 5 # contributors y: 7 # changes openr/config-store/PersistentStore.cpp x: 15 # contributors y: 33 # changes openr/decision/SpfSolver.cpp x: 9 # contributors y: 34 # changes openr/fib/Fib.cpp x: 25 # contributors y: 145 # changes openr/common/LsdbUtil.h x: 2 # contributors y: 4 # changes openr/common/Util.cpp x: 27 # contributors y: 135 # changes openr/fib/Fib.h x: 20 # contributors y: 79 # changes openr/py/openr/cli/clis/decision.py x: 13 # contributors y: 33 # changes openr/py/openr/cli/clis/kvstore.py x: 14 # contributors y: 43 # changes openr/common/Util.h x: 23 # contributors y: 130 # changes openr/common/FileUtil.cpp x: 2 # contributors y: 3 # changes openr/common/Types.h x: 14 # contributors y: 63 # changes openr/decision/PrefixState.h x: 8 # contributors y: 29 # changes openr/link-monitor/InterfaceEntry.h x: 6 # contributors y: 13 # changes openr/plugin/Plugin.h x: 11 # contributors y: 23 # changes openr/decision/LinkState.cpp x: 13 # contributors y: 36 # changes openr/decision/PrefixState.cpp x: 13 # contributors y: 35 # changes openr/platform/NetlinkFibHandler.cpp x: 21 # contributors y: 64 # changes build/fbcode_builder/CMake/fb_py_test_main.py x: 4 # contributors y: 4 # changes build/fbcode_builder/fbcode_builder.py x: 14 # contributors y: 20 # changes build/fbcode_builder/make_docker_context.py x: 5 # contributors y: 5 # changes build/fbcode_builder/shell_builder.py x: 8 # contributors y: 9 # changes openr/py/openr/cli/commands/spark.py x: 4 # contributors y: 7 # changes openr/monitor/SystemMetrics.h x: 6 # contributors y: 6 # changes openr/decision/LinkState.h x: 8 # contributors y: 26 # changes openr/plugin/Plugin.cpp x: 5 # contributors y: 8 # changes build/gen.py x: 3 # contributors y: 4 # changes configerator/structs/neteng/config/routing_policy.thrift x: 6 # contributors y: 10 # changes openr/common/ExponentialBackoff.cpp x: 8 # contributors y: 8 # changes openr/common/Flags.cpp x: 13 # contributors y: 71 # changes openr/common/Flags.h x: 13 # contributors y: 68 # changes openr/common/NetworkUtil.h x: 9 # contributors y: 26 # changes openr/common/OpenrEventBase.cpp x: 9 # contributors y: 20 # changes openr/common/OpenrEventBase.h x: 6 # contributors y: 19 # changes openr/config-store/PersistentStoreWrapper.cpp x: 8 # contributors y: 11 # changes openr/decision/RouteUpdate.h x: 10 # contributors y: 18 # changes openr/decision/SpfSolver.h x: 7 # contributors y: 21 # changes openr/if/BgpConfig.thrift x: 8 # contributors y: 15 # changes openr/link-monitor/InterfaceEntry.cpp x: 10 # contributors y: 22 # changes openr/monitor/Monitor.cpp x: 4 # contributors y: 6 # changes openr/monitor/Monitor.h x: 3 # contributors y: 8 # changes openr/monitor/MonitorBase.cpp x: 4 # contributors y: 10 # changes openr/nl/NetlinkLinkMessage.h x: 3 # contributors y: 6 # changes openr/nl/NetlinkMessageBase.h x: 3 # contributors y: 7 # changes openr/nl/NetlinkProtocolSocket.cpp x: 8 # contributors y: 28 # changes openr/nl/NetlinkProtocolSocket.h x: 5 # contributors y: 17 # changes openr/nl/NetlinkRouteMessage.cpp x: 4 # contributors y: 12 # changes openr/nl/NetlinkRouteMessage.h x: 3 # contributors y: 9 # changes openr/nl/NetlinkTypes.cpp x: 17 # contributors y: 48 # changes openr/nl/NetlinkTypes.h x: 14 # contributors y: 46 # changes openr/platform/LinuxPlatformMain.cpp x: 12 # contributors y: 30 # changes openr/prefix-manager/PrefixManager.h x: 17 # contributors y: 82 # changes openr/py/openr/cli/clis/config.py x: 7 # contributors y: 16 # changes openr/py/openr/cli/clis/fib.py x: 11 # contributors y: 27 # changes openr/py/openr/cli/clis/lm.py x: 8 # contributors y: 24 # changes openr/py/openr/cli/clis/tech_support.py x: 6 # contributors y: 12 # changes openr/py/openr/cli/commands/config.py x: 10 # contributors y: 27 # changes openr/py/openr/cli/commands/decision.py x: 19 # contributors y: 57 # changes openr/py/openr/cli/commands/lm.py x: 11 # contributors y: 30 # changes openr/py/openr/cli/commands/perf.py x: 5 # contributors y: 10 # changes openr/py/openr/cli/commands/tech_support.py x: 9 # contributors y: 24 # changes openr/py/openr/clients/openr_client.py x: 9 # contributors y: 17 # changes openr/py/openr/utils/consts.py x: 8 # contributors y: 30 # changes openr/py/openr/utils/serializer.py x: 5 # contributors y: 9 # changes openr/py/setup.py x: 9 # contributors y: 19 # changes openr/watchdog/Watchdog.cpp x: 15 # contributors y: 23 # changes openr/watchdog/Watchdog.h x: 11 # contributors y: 16 # changes build/fbcode_builder/CMake/FBPythonBinary.cmake x: 2 # contributors y: 8 # changes
274.0
# changes
  min: 1.0
  average: 27.25
  25th percentile: 5.0
  median: 11.0
  75th percentile: 30.0
  max: 274.0
0 34.0
# contributors
min: 1.0 | average: 8.62 | 25th percentile: 3.0 | median: 6.0 | 75th percentile: 12.0 | max: 34.0