apple / swift-nio-ssh
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 87 files with 9,835 lines of code.
    • 1 very long files (1,344 lines of code)
    • 3 long files (2,198 lines of code)
    • 9 medium size files (2,846 lines of codeclsfd_ftr_w_mp_ins)
    • 9 small files (1,278 lines of code)
    • 65 very small files (2,169 lines of code)
13% | 22% | 28% | 12% | 22%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
swift13% | 22% | 29% | 13% | 21%
yaml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
Sources/NIOSSH53% | 0% | 22% | 16% | 6%
Sources/NIOSSH/Connection State Machine0% | 60% | 0% | 0% | 39%
Sources/NIOSSH/Child Channels0% | 40% | 36% | 6% | 16%
Sources/NIOSSH/Keys And Signatures0% | 42% | 46% | 10% | <1%
Sources/NIOSSH/Key Exchange0% | 0% | 83% | 13% | 2%
Sources/NIOSSH/User Authentication0% | 0% | 57% | 30% | 12%
Sources/NIOSSH/TransportProtection0% | 0% | 0% | 91% | 8%
Sources/NIOSSHServer0% | 0% | 0% | 32% | 67%
Sources/NIOSSHClient0% | 0% | 0% | 0% | 100%
Sources/NIOSSHPerformanceTester0% | 0% | 0% | 0% | 100%
docker0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
Sources/NIOSSH/CSPRNG0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
SSHMessages.swift
in Sources/NIOSSH
1344 61
SSHConnectionStateMachine.swift
in Sources/NIOSSH/Connection State Machine
862 6
SSHChildChannel.swift
in Sources/NIOSSH/Child Channels
818 13
NIOSSHCertifiedPublicKey.swift
in Sources/NIOSSH/Keys And Signatures
518 5
ChildChannelStateMachine.swift
in Sources/NIOSSH/Child Channels
459 24
SSHKeyExchangeStateMachine.swift
in Sources/NIOSSH/Key Exchange
391 11
NIOSSHPublicKey.swift
in Sources/NIOSSH/Keys And Signatures
324 4
UserAuthenticationStateMachine.swift
in Sources/NIOSSH/User Authentication
322 16
NIOSSHHandler.swift
in Sources/NIOSSH
321 4
ChildChannelUserEvents.swift
in Sources/NIOSSH/Child Channels
283 10
SSHTerminalModes.swift
in Sources/NIOSSH
256 2
EllipticCurveKeyExchange.swift
in Sources/NIOSSH/Key Exchange
245 9
NIOSSHSignature.swift
in Sources/NIOSSH/Keys And Signatures
245 3
AESGCM.swift
in Sources/NIOSSH/TransportProtection
198 12
UserAuthenticationMethod.swift
in Sources/NIOSSH/User Authentication
174 4
NIOSSHError.swift
in Sources/NIOSSH
159 -
SSHChannelMultiplexer.swift
in Sources/NIOSSH/Child Channels
141 9
SSHPacketParser.swift
in Sources/NIOSSH
139 4
ByteBuffer+SSH.swift
in Sources/NIOSSH
127 12
NIOSSHPrivateKey.swift
in Sources/NIOSSH/Keys And Signatures
124 2
ExecHandler.swift
in Sources/NIOSSHServer
115 5
ECDHCompatibleKey.swift
in Sources/NIOSSH/Key Exchange
101 17
ExecHandler.swift
in Sources/NIOSSHClient
86 7
GlueHandler.swift
in Sources/NIOSSHClient
83 9
GlueHandler.swift
in Sources/NIOSSHServer
83 9
SSHChannelType.swift
in Sources/NIOSSH/Child Channels
80 -
SimpleCLIParser.swift
in Sources/NIOSSHClient
80 2
AcceptsUserAuthMessages.swift
in Sources/NIOSSH/Connection State Machine/Operations
77 6
SSHChannelData.swift
in Sources/NIOSSH/Child Channels
74 -
main.swift
in Sources/NIOSSHClient
68 2
shared.swift
in Sources/NIOSSHPerformanceTester
65 8
RemotePortForwarding.swift
in Sources/NIOSSHServer
63 4
Package.swift
in root
60 -
ChildChannelWritabilityManager.swift
in Sources/NIOSSH/Child Channels
60 4
GlobalRequestDelegate.swift
in Sources/NIOSSH
58 1
PortForwardingServer.swift
in Sources/NIOSSHClient
57 4
main.swift
in Sources/NIOSSHServer
55 3
ChildChannelWindowManager.swift
in Sources/NIOSSH/Child Channels
50 5
SendsChannelMessages.swift
in Sources/NIOSSH/Connection State Machine/Operations
48 14
SSHPacketSerializer.swift
in Sources/NIOSSH
43 2
main.swift
in Sources/NIOSSHPerformanceTester
40 1
BenchmarkLinearThroughput.swift
in Sources/NIOSSHPerformanceTester
39 4
ActiveState.swift
in Sources/NIOSSH/Connection State Machine/States
37 3
InteractivePasswordPromptDelegate.swift
in Sources/NIOSSHClient
36 2
DataToBufferCodec.swift
in Sources/NIOSSHServer
36 4
SendsUserAuthMessages.swift
in Sources/NIOSSH/Connection State Machine/Operations
35 7
OutboundFlowController.swift
in Sources/NIOSSH/Child Channels
33 3
AcceptsVersionMessages.swift
in Sources/NIOSSH/Connection State Machine/Operations
33 1
RekeyingState.swift
in Sources/NIOSSH/Connection State Machine/States
32 2
UserAuthenticationState.swift
in Sources/NIOSSH/Connection State Machine/States
32 2
Files With Most Units (Top 20)
File# lines# units
SSHMessages.swift
in Sources/NIOSSH
1344 61
ChildChannelStateMachine.swift
in Sources/NIOSSH/Child Channels
459 24
ECDHCompatibleKey.swift
in Sources/NIOSSH/Key Exchange
101 17
UserAuthenticationStateMachine.swift
in Sources/NIOSSH/User Authentication
322 16
AcceptsChannelMessages.swift
in Sources/NIOSSH/Connection State Machine/Operations
19 14
SendsChannelMessages.swift
in Sources/NIOSSH/Connection State Machine/Operations
48 14
SSHChildChannel.swift
in Sources/NIOSSH/Child Channels
818 13
ByteBuffer+SSH.swift
in Sources/NIOSSH
127 12
AESGCM.swift
in Sources/NIOSSH/TransportProtection
198 12
SSHKeyExchangeStateMachine.swift
in Sources/NIOSSH/Key Exchange
391 11
ChildChannelUserEvents.swift
in Sources/NIOSSH/Child Channels
283 10
SSHChannelMultiplexer.swift
in Sources/NIOSSH/Child Channels
141 9
EllipticCurveKeyExchange.swift
in Sources/NIOSSH/Key Exchange
245 9
GlueHandler.swift
in Sources/NIOSSHClient
83 9
GlueHandler.swift
in Sources/NIOSSHServer
83 9
shared.swift
in Sources/NIOSSHPerformanceTester
65 8
SendsUserAuthMessages.swift
in Sources/NIOSSH/Connection State Machine/Operations
35 7
ExecHandler.swift
in Sources/NIOSSHClient
86 7
AcceptsUserAuthMessages.swift
in Sources/NIOSSH/Connection State Machine/Operations
77 6
SSHConnectionStateMachine.swift
in Sources/NIOSSH/Connection State Machine
862 6
Files With Long Lines (Top 20)

There are 47 files with lines longer than 120 characters. In total, there are 343 long lines.

File# lines# units# long lines
ChildChannelStateMachine.swift
in Sources/NIOSSH/Child Channels
459 24 36
SSHKeyExchangeStateMachine.swift
in Sources/NIOSSH/Key Exchange
391 11 35
EllipticCurveKeyExchange.swift
in Sources/NIOSSH/Key Exchange
245 9 33
UserAuthenticationStateMachine.swift
in Sources/NIOSSH/User Authentication
322 16 31
SSHConnectionStateMachine.swift
in Sources/NIOSSH/Connection State Machine
862 6 27
SSHChildChannel.swift
in Sources/NIOSSH/Child Channels
818 13 24
NIOSSHHandler.swift
in Sources/NIOSSH
321 4 19
SSHMessages.swift
in Sources/NIOSSH
1344 61 13
ChildChannelUserEvents.swift
in Sources/NIOSSH/Child Channels
283 10 9
NIOSSHError.swift
in Sources/NIOSSH
159 - 9
SendsChannelMessages.swift
in Sources/NIOSSH/Connection State Machine/Operations
48 14 8
AcceptsUserAuthMessages.swift
in Sources/NIOSSH/Connection State Machine/Operations
77 6 7
NIOSSHSignature.swift
in Sources/NIOSSH/Keys And Signatures
245 3 7
NIOSSHPublicKey.swift
in Sources/NIOSSH/Keys And Signatures
324 4 6
AESGCM.swift
in Sources/NIOSSH/TransportProtection
198 12 5
BenchmarkLinearThroughput.swift
in Sources/NIOSSHPerformanceTester
39 4 5
SSHChannelMultiplexer.swift
in Sources/NIOSSH/Child Channels
141 9 4
SSHChannelType.swift
in Sources/NIOSSH/Child Channels
80 - 4
SendsUserAuthMessages.swift
in Sources/NIOSSH/Connection State Machine/Operations
35 7 4
BenchmarkHandshake.swift
in Sources/NIOSSHPerformanceTester
24 4 4