facebook / nailgun
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 38 files with 3,876 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 (1,361 lines of code)
    • 36 files changed 1-5 times (2,515 lines of code)
0% | 0% | 0% | 35% | 64%
Legend:
101+
51-100
21-50
6-20
1-5
explore: zoomable circles | data
File Change Frequency per File Extension
java, md, txt, xml, py, c, gitignore, json, yml, properties
File Change Frequency per Extension
The number of recorded file updates
101+
51-100
21-50
6-20
1-5
py0% | 0% | 0% | 99% | <1%
c0% | 0% | 0% | 100% | 0%
java0% | 0% | 0% | 0% | 100%
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
nailgun-client/py0% | 0% | 0% | 99% | <1%
nailgun-client/c0% | 0% | 0% | 100% | 0%
nailgun-server/src/main/java/com/facebook/nailgun0% | 0% | 0% | 0% | 100%
nailgun-server/src/main/java/com/facebook/nailgun/builtins0% | 0% | 0% | 0% | 100%
Most Frequently Changed Files (Top 38)

See data for all files...

File# lines# unitslast modified
(days ago)
created
(days ago)
# changes# contributors
ng.py
in nailgun-client/py
771 55 512 1387 10 6
ng.c
in nailgun-client/c
590 25 1066 1387 6 4
NGExitException.java
in nailgun-server/src/main/java/com/facebook/nailgun
19 4 612 1285 5 4
Alias.java
in nailgun-server/src/main/java/com/facebook/nailgun
32 7 610 1285 4 4
NGConstants.java
in nailgun-server/src/main/java/com/facebook/nailgun
36 2 612 1285 4 4
NGAlias.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
39 2 612 1285 4 4
ThreadLocalInputStream.java
in nailgun-server/src/main/java/com/facebook/nailgun
47 11 1170 1285 4 3
NailStats.java
in nailgun-server/src/main/java/com/facebook/nailgun
58 9 610 1285 4 4
ThreadLocalPrintStream.java
in nailgun-server/src/main/java/com/facebook/nailgun
95 28 1170 1285 4 3
NGContext.java
in nailgun-server/src/main/java/com/facebook/nailgun
135 30 1121 1285 4 4
__init__.py
in nailgun-client/py
1 - 1276 1387 3 3
NGHeartbeatListener.java
in nailgun-server/src/main/java/com/facebook/nailgun
4 - 1260 1285 3 2
NGVersion.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
8 1 1276 1285 3 2
NonStaticNail.java
in nailgun-server/src/main/java/com/facebook/nailgun
4 - 1280 1285 2 2
NGClientListener.java
in nailgun-server/src/main/java/com/facebook/nailgun
4 - 1280 1285 2 2
NGStop.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
7 1 1280 1285 2 2
NGClientDisconnectReason.java
in nailgun-server/src/main/java/com/facebook/nailgun
8 - 1280 1285 2 2
NGNailNotFoundException.java
in nailgun-server/src/main/java/com/facebook/nailgun
9 2 1280 1285 2 2
DefaultNail.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
9 1 1280 1285 2 2
NGServerStats.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
19 3 1280 1285 2 2
NGOutputStream.java
in nailgun-server/src/main/java/com/facebook/nailgun
25 4 1280 1285 2 2
NGClasspath.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
29 2 1280 1285 2 2
NGSecurityManager.java
in nailgun-server/src/main/java/com/facebook/nailgun
29 5 1280 1285 2 2
CommandContext.java
in nailgun-server/src/main/java/com/facebook/nailgun
31 4 1280 1285 2 2
NGInputStream.java
in nailgun-server/src/main/java/com/facebook/nailgun
33 6 1280 1285 2 2
ReferenceCountedFileDescriptor.java
in nailgun-server/src/main/java/com/facebook/nailgun
44 6 1280 1285 2 2
NGWin32NamedPipeLibrary.java
in nailgun-server/src/main/java/com/facebook/nailgun
47 - 1280 1285 2 2
AliasManager.java
in nailgun-server/src/main/java/com/facebook/nailgun
57 6 1280 1285 2 2
NGListeningAddress.java
in nailgun-server/src/main/java/com/facebook/nailgun
65 9 1280 1285 2 2
NGSessionPool.java
in nailgun-server/src/main/java/com/facebook/nailgun
86 3 1280 1285 2 2
NGUnixDomainSocketLibrary.java
in nailgun-server/src/main/java/com/facebook/nailgun
89 6 1280 1285 2 2
NGUnixDomainServerSocket.java
in nailgun-server/src/main/java/com/facebook/nailgun
105 9 1280 1285 2 2
NGUnixDomainSocket.java
in nailgun-server/src/main/java/com/facebook/nailgun
121 13 1280 1285 2 2
NGWin32NamedPipeSocket.java
in nailgun-server/src/main/java/com/facebook/nailgun
140 11 1280 1285 2 2
NGWin32NamedPipeServerSocket.java
in nailgun-server/src/main/java/com/facebook/nailgun
152 9 1280 1285 2 2
NGSession.java
in nailgun-server/src/main/java/com/facebook/nailgun
217 7 1280 1285 2 2
NGServer.java
in nailgun-server/src/main/java/com/facebook/nailgun
270 22 1280 1285 2 2
NGCommunicator.java
in nailgun-server/src/main/java/com/facebook/nailgun
441 27 1280 1285 2 2
Files With Most Contributors (Top 38)
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
ng.py
in nailgun-client/py
771 55 512 1387 10 6
ng.c
in nailgun-client/c
590 25 1066 1387 6 4
NGExitException.java
in nailgun-server/src/main/java/com/facebook/nailgun
19 4 612 1285 5 4
ThreadLocalInputStream.java
in nailgun-server/src/main/java/com/facebook/nailgun
47 11 1170 1285 4 3
ThreadLocalPrintStream.java
in nailgun-server/src/main/java/com/facebook/nailgun
95 28 1170 1285 4 3
NailStats.java
in nailgun-server/src/main/java/com/facebook/nailgun
58 9 610 1285 4 4
NGAlias.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
39 2 612 1285 4 4
Alias.java
in nailgun-server/src/main/java/com/facebook/nailgun
32 7 610 1285 4 4
NGContext.java
in nailgun-server/src/main/java/com/facebook/nailgun
135 30 1121 1285 4 4
NGConstants.java
in nailgun-server/src/main/java/com/facebook/nailgun
36 2 612 1285 4 4
NGVersion.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
8 1 1276 1285 3 2
NGHeartbeatListener.java
in nailgun-server/src/main/java/com/facebook/nailgun
4 - 1260 1285 3 2
__init__.py
in nailgun-client/py
1 - 1276 1387 3 3
NGNailNotFoundException.java
in nailgun-server/src/main/java/com/facebook/nailgun
9 2 1280 1285 2 2
AliasManager.java
in nailgun-server/src/main/java/com/facebook/nailgun
57 6 1280 1285 2 2
CommandContext.java
in nailgun-server/src/main/java/com/facebook/nailgun
31 4 1280 1285 2 2
NGWin32NamedPipeLibrary.java
in nailgun-server/src/main/java/com/facebook/nailgun
47 - 1280 1285 2 2
NonStaticNail.java
in nailgun-server/src/main/java/com/facebook/nailgun
4 - 1280 1285 2 2
NGSession.java
in nailgun-server/src/main/java/com/facebook/nailgun
217 7 1280 1285 2 2
NGUnixDomainServerSocket.java
in nailgun-server/src/main/java/com/facebook/nailgun
105 9 1280 1285 2 2
NGInputStream.java
in nailgun-server/src/main/java/com/facebook/nailgun
33 6 1280 1285 2 2
NGListeningAddress.java
in nailgun-server/src/main/java/com/facebook/nailgun
65 9 1280 1285 2 2
NGClientListener.java
in nailgun-server/src/main/java/com/facebook/nailgun
4 - 1280 1285 2 2
NGClientDisconnectReason.java
in nailgun-server/src/main/java/com/facebook/nailgun
8 - 1280 1285 2 2
NGClasspath.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
29 2 1280 1285 2 2
DefaultNail.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
9 1 1280 1285 2 2
NGStop.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
7 1 1280 1285 2 2
NGServerStats.java
in nailgun-server/src/main/java/com/facebook/nailgun/builtins
19 3 1280 1285 2 2
NGWin32NamedPipeServerSocket.java
in nailgun-server/src/main/java/com/facebook/nailgun
152 9 1280 1285 2 2
NGServer.java
in nailgun-server/src/main/java/com/facebook/nailgun
270 22 1280 1285 2 2
NGUnixDomainSocket.java
in nailgun-server/src/main/java/com/facebook/nailgun
121 13 1280 1285 2 2
NGCommunicator.java
in nailgun-server/src/main/java/com/facebook/nailgun
441 27 1280 1285 2 2
ReferenceCountedFileDescriptor.java
in nailgun-server/src/main/java/com/facebook/nailgun
44 6 1280 1285 2 2
NGSessionPool.java
in nailgun-server/src/main/java/com/facebook/nailgun
86 3 1280 1285 2 2
NGUnixDomainSocketLibrary.java
in nailgun-server/src/main/java/com/facebook/nailgun
89 6 1280 1285 2 2
NGWin32NamedPipeSocket.java
in nailgun-server/src/main/java/com/facebook/nailgun
140 11 1280 1285 2 2
NGOutputStream.java
in nailgun-server/src/main/java/com/facebook/nailgun
25 4 1280 1285 2 2
NGSecurityManager.java
in nailgun-server/src/main/java/com/facebook/nailgun
29 5 1280 1285 2 2
Correlations

File Size vs. Number of Changes: 38 points

nailgun-client/py/ng.py x: 771 lines of code y: 10 # changes nailgun-server/src/main/java/com/facebook/nailgun/Alias.java x: 32 lines of code y: 4 # changes nailgun-server/src/main/java/com/facebook/nailgun/NailStats.java x: 58 lines of code y: 4 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGExitException.java x: 19 lines of code y: 5 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGConstants.java x: 36 lines of code y: 4 # changes nailgun-server/src/main/java/com/facebook/nailgun/builtins/NGAlias.java x: 39 lines of code y: 4 # changes nailgun-client/c/ng.c x: 590 lines of code y: 6 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGContext.java x: 135 lines of code y: 4 # changes nailgun-server/src/main/java/com/facebook/nailgun/ThreadLocalInputStream.java x: 47 lines of code y: 4 # changes nailgun-server/src/main/java/com/facebook/nailgun/ThreadLocalPrintStream.java x: 95 lines of code y: 4 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGHeartbeatListener.java x: 4 lines of code y: 3 # changes nailgun-client/py/__init__.py x: 1 lines of code y: 3 # changes nailgun-server/src/main/java/com/facebook/nailgun/builtins/NGVersion.java x: 8 lines of code y: 3 # changes nailgun-server/src/main/java/com/facebook/nailgun/AliasManager.java x: 57 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/CommandContext.java x: 31 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGClientDisconnectReason.java x: 8 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGClientListener.java x: 4 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGCommunicator.java x: 441 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGInputStream.java x: 33 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGListeningAddress.java x: 65 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGNailNotFoundException.java x: 9 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGOutputStream.java x: 25 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGSecurityManager.java x: 29 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGServer.java x: 270 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGSession.java x: 217 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGSessionPool.java x: 86 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGUnixDomainServerSocket.java x: 105 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGUnixDomainSocket.java x: 121 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGUnixDomainSocketLibrary.java x: 89 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGWin32NamedPipeLibrary.java x: 47 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGWin32NamedPipeServerSocket.java x: 152 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGWin32NamedPipeSocket.java x: 140 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/ReferenceCountedFileDescriptor.java x: 44 lines of code y: 2 # changes nailgun-server/src/main/java/com/facebook/nailgun/builtins/NGServerStats.java x: 19 lines of code y: 2 # changes
10.0
# changes
  min: 2.0
  average: 2.84
  25th percentile: 2.0
  median: 2.0
  75th percentile: 4.0
  max: 10.0
0 771.0
lines of code
min: 1.0 | average: 102.0 | 25th percentile: 16.5 | median: 41.5 | 75th percentile: 109.0 | max: 771.0

Number of Contributors vs. Number of Changes: 38 points

nailgun-client/py/ng.py x: 6 # contributors y: 10 # changes nailgun-server/src/main/java/com/facebook/nailgun/Alias.java x: 4 # contributors y: 4 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGExitException.java x: 4 # contributors y: 5 # changes nailgun-client/c/ng.c x: 4 # contributors y: 6 # changes nailgun-server/src/main/java/com/facebook/nailgun/ThreadLocalInputStream.java x: 3 # contributors y: 4 # changes nailgun-server/src/main/java/com/facebook/nailgun/NGHeartbeatListener.java x: 2 # contributors y: 3 # changes nailgun-client/py/__init__.py x: 3 # contributors y: 3 # changes nailgun-server/src/main/java/com/facebook/nailgun/AliasManager.java x: 2 # contributors y: 2 # changes
10.0
# changes
  min: 2.0
  average: 2.84
  25th percentile: 2.0
  median: 2.0
  75th percentile: 4.0
  max: 10.0
0 6.0
# contributors
min: 2.0 | average: 2.55 | 25th percentile: 2.0 | median: 2.0 | 75th percentile: 3.0 | max: 6.0