net-ssh 6.2.0.rc1 → 7.0.0.beta1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/.dockerignore +6 -0
  4. data/.github/config/rubocop_linter_action.yml +4 -0
  5. data/.github/workflows/ci-with-docker.yml +44 -0
  6. data/.github/workflows/ci.yml +87 -0
  7. data/.github/workflows/rubocop.yml +13 -0
  8. data/.rubocop.yml +12 -1
  9. data/.rubocop_todo.yml +470 -262
  10. data/CHANGES.txt +7 -1
  11. data/Dockerfile +27 -0
  12. data/Dockerfile.openssl3 +17 -0
  13. data/Gemfile +2 -0
  14. data/Gemfile.noed25519 +2 -0
  15. data/README.md +9 -3
  16. data/Rakefile +5 -0
  17. data/docker-compose.yml +23 -0
  18. data/lib/net/ssh/authentication/agent.rb +17 -15
  19. data/lib/net/ssh/authentication/certificate.rb +7 -5
  20. data/lib/net/ssh/authentication/constants.rb +0 -1
  21. data/lib/net/ssh/authentication/ed25519.rb +10 -6
  22. data/lib/net/ssh/authentication/ed25519_loader.rb +4 -7
  23. data/lib/net/ssh/authentication/key_manager.rb +46 -34
  24. data/lib/net/ssh/authentication/methods/abstract.rb +12 -3
  25. data/lib/net/ssh/authentication/methods/hostbased.rb +3 -5
  26. data/lib/net/ssh/authentication/methods/keyboard_interactive.rb +2 -2
  27. data/lib/net/ssh/authentication/methods/none.rb +6 -9
  28. data/lib/net/ssh/authentication/methods/password.rb +2 -3
  29. data/lib/net/ssh/authentication/methods/publickey.rb +56 -16
  30. data/lib/net/ssh/authentication/pageant.rb +97 -97
  31. data/lib/net/ssh/authentication/pub_key_fingerprint.rb +2 -2
  32. data/lib/net/ssh/authentication/session.rb +18 -17
  33. data/lib/net/ssh/buffer.rb +50 -30
  34. data/lib/net/ssh/buffered_io.rb +24 -25
  35. data/lib/net/ssh/config.rb +33 -20
  36. data/lib/net/ssh/connection/channel.rb +85 -82
  37. data/lib/net/ssh/connection/constants.rb +0 -4
  38. data/lib/net/ssh/connection/event_loop.rb +30 -24
  39. data/lib/net/ssh/connection/keepalive.rb +12 -12
  40. data/lib/net/ssh/connection/session.rb +108 -107
  41. data/lib/net/ssh/connection/term.rb +56 -58
  42. data/lib/net/ssh/errors.rb +12 -12
  43. data/lib/net/ssh/key_factory.rb +7 -8
  44. data/lib/net/ssh/known_hosts.rb +84 -15
  45. data/lib/net/ssh/loggable.rb +8 -9
  46. data/lib/net/ssh/packet.rb +1 -1
  47. data/lib/net/ssh/prompt.rb +9 -11
  48. data/lib/net/ssh/proxy/command.rb +1 -1
  49. data/lib/net/ssh/proxy/errors.rb +2 -4
  50. data/lib/net/ssh/proxy/http.rb +18 -20
  51. data/lib/net/ssh/proxy/https.rb +8 -10
  52. data/lib/net/ssh/proxy/jump.rb +8 -10
  53. data/lib/net/ssh/proxy/socks4.rb +2 -4
  54. data/lib/net/ssh/proxy/socks5.rb +3 -5
  55. data/lib/net/ssh/service/forward.rb +7 -7
  56. data/lib/net/ssh/test/channel.rb +23 -25
  57. data/lib/net/ssh/test/extensions.rb +35 -35
  58. data/lib/net/ssh/test/kex.rb +6 -8
  59. data/lib/net/ssh/test/local_packet.rb +0 -2
  60. data/lib/net/ssh/test/packet.rb +3 -3
  61. data/lib/net/ssh/test/remote_packet.rb +5 -7
  62. data/lib/net/ssh/test/script.rb +24 -26
  63. data/lib/net/ssh/test/socket.rb +12 -15
  64. data/lib/net/ssh/test.rb +4 -5
  65. data/lib/net/ssh/transport/algorithms.rb +14 -13
  66. data/lib/net/ssh/transport/cipher_factory.rb +28 -28
  67. data/lib/net/ssh/transport/constants.rb +3 -3
  68. data/lib/net/ssh/transport/ctr.rb +7 -7
  69. data/lib/net/ssh/transport/hmac/abstract.rb +4 -5
  70. data/lib/net/ssh/transport/hmac/md5.rb +0 -2
  71. data/lib/net/ssh/transport/hmac/md5_96.rb +0 -2
  72. data/lib/net/ssh/transport/hmac/none.rb +0 -2
  73. data/lib/net/ssh/transport/hmac/ripemd160.rb +0 -2
  74. data/lib/net/ssh/transport/hmac/sha1.rb +0 -2
  75. data/lib/net/ssh/transport/hmac/sha1_96.rb +0 -2
  76. data/lib/net/ssh/transport/hmac.rb +12 -12
  77. data/lib/net/ssh/transport/identity_cipher.rb +11 -13
  78. data/lib/net/ssh/transport/kex/abstract.rb +3 -3
  79. data/lib/net/ssh/transport/kex/abstract5656.rb +1 -1
  80. data/lib/net/ssh/transport/kex/curve25519_sha256.rb +2 -1
  81. data/lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb +4 -4
  82. data/lib/net/ssh/transport/kex/diffie_hellman_group14_sha256.rb +11 -0
  83. data/lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb +21 -21
  84. data/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb +1 -2
  85. data/lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb +2 -2
  86. data/lib/net/ssh/transport/kex.rb +8 -6
  87. data/lib/net/ssh/transport/key_expander.rb +7 -8
  88. data/lib/net/ssh/transport/openssl.rb +38 -22
  89. data/lib/net/ssh/transport/packet_stream.rb +2 -3
  90. data/lib/net/ssh/transport/server_version.rb +17 -16
  91. data/lib/net/ssh/transport/session.rb +9 -7
  92. data/lib/net/ssh/transport/state.rb +43 -43
  93. data/lib/net/ssh/verifiers/accept_new.rb +0 -2
  94. data/lib/net/ssh/verifiers/accept_new_or_local_tunnel.rb +1 -2
  95. data/lib/net/ssh/verifiers/always.rb +6 -4
  96. data/lib/net/ssh/verifiers/never.rb +0 -2
  97. data/lib/net/ssh/version.rb +3 -3
  98. data/lib/net/ssh.rb +4 -5
  99. data/net-ssh-public_cert.pem +8 -8
  100. data/net-ssh.gemspec +2 -2
  101. data/support/ssh_tunnel_bug.rb +3 -3
  102. data.tar.gz.sig +0 -0
  103. metadata +26 -18
  104. metadata.gz.sig +0 -0
  105. data/.travis.yml +0 -52
data/.rubocop_todo.yml CHANGED
@@ -1,46 +1,29 @@
1
1
  # This configuration was generated by
2
2
  # `rubocop --auto-gen-config`
3
- # on 2020-05-29 10:37:36 +0200 using RuboCop version 0.74.0.
3
+ # on 2022-04-29 12:31:14 UTC using RuboCop version 1.28.2.
4
4
  # The point is for the user to remove these configuration records
5
5
  # one by one as the offenses are removed from the code base.
6
6
  # Note that changes in the inspected code, or installation of new
7
7
  # versions of RuboCop, may require this file to be generated again.
8
8
 
9
- # Offense count: 75
10
- # Cop supports --auto-correct.
11
- # Configuration parameters: EnforcedStyle, IndentationWidth.
12
- # SupportedStyles: with_first_argument, with_fixed_indentation
13
- Layout/AlignArguments:
14
- Enabled: false
15
-
16
- # Offense count: 63
17
- # Cop supports --auto-correct.
18
- # Configuration parameters: AllowMultipleStyles, EnforcedHashRocketStyle, EnforcedColonStyle, EnforcedLastArgumentHashStyle.
19
- # SupportedHashRocketStyles: key, separator, table
20
- # SupportedColonStyles: key, separator, table
21
- # SupportedLastArgumentHashStyles: always_inspect, always_ignore, ignore_implicit, ignore_explicit
22
- Layout/AlignHash:
9
+ # Offense count: 1
10
+ # This cop supports safe auto-correction (--auto-correct).
11
+ # Configuration parameters: Include.
12
+ # Include: **/*.gemspec
13
+ Gemspec/RequireMFA:
23
14
  Exclude:
24
- - 'lib/net/ssh/key_factory.rb'
25
- - 'lib/net/ssh/transport/cipher_factory.rb'
26
- - 'lib/net/ssh/transport/hmac.rb'
27
- - 'lib/net/ssh/transport/kex.rb'
28
- - 'test/test_config.rb'
29
-
30
- # Offense count: 70
31
- # Cop supports --auto-correct.
32
- Layout/EmptyLineAfterGuardClause:
33
- Enabled: false
15
+ - 'net-ssh.gemspec'
34
16
 
35
- # Offense count: 172
36
- # Cop supports --auto-correct.
37
- # Configuration parameters: EnforcedStyle.
38
- # SupportedStyles: empty_lines, empty_lines_except_namespace, empty_lines_special, no_empty_lines
39
- Layout/EmptyLinesAroundModuleBody:
40
- Enabled: false
17
+ # Offense count: 1
18
+ # This cop supports safe auto-correction (--auto-correct).
19
+ # Configuration parameters: EnforcedStyle, IndentationWidth.
20
+ # SupportedStyles: aligned, indented
21
+ Layout/LineEndStringConcatenationIndentation:
22
+ Exclude:
23
+ - 'lib/net/ssh/transport/algorithms.rb'
41
24
 
42
- # Offense count: 23
43
- # Cop supports --auto-correct.
25
+ # Offense count: 7
26
+ # This cop supports safe auto-correction (--auto-correct).
44
27
  # Configuration parameters: EnforcedStyle, IndentationWidth.
45
28
  # SupportedStyles: aligned, indented
46
29
  Layout/MultilineOperationIndentation:
@@ -49,32 +32,9 @@ Layout/MultilineOperationIndentation:
49
32
  - 'lib/net/ssh/proxy/https.rb'
50
33
  - 'lib/net/ssh/transport/algorithms.rb'
51
34
  - 'lib/net/ssh/transport/state.rb'
52
- - 'lib/net/ssh/verifiers/always.rb'
53
- - 'test/authentication/methods/test_hostbased.rb'
54
- - 'test/authentication/methods/test_publickey.rb'
55
35
 
56
- # Offense count: 16
57
- # Cop supports --auto-correct.
58
- Layout/SpaceAfterColon:
59
- Exclude:
60
- - 'lib/net/ssh/authentication/ed25519.rb'
61
- - 'test/integration/test_ed25519_pkeys.rb'
62
- - 'test/verifiers/test_always.rb'
63
-
64
- # Offense count: 291
65
- # Cop supports --auto-correct.
66
- Layout/SpaceAfterComma:
67
- Enabled: false
68
-
69
- # Offense count: 136
70
- # Cop supports --auto-correct.
71
- # Configuration parameters: EnforcedStyle.
72
- # SupportedStyles: space, no_space
73
- Layout/SpaceAroundEqualsInParameterDefault:
74
- Enabled: false
75
-
76
- # Offense count: 12
77
- # Cop supports --auto-correct.
36
+ # Offense count: 5
37
+ # This cop supports safe auto-correction (--auto-correct).
78
38
  # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBraces, SpaceBeforeBlockParameters.
79
39
  # SupportedStyles: space, no_space
80
40
  # SupportedStylesForEmptyBraces: space, no_space
@@ -83,12 +43,9 @@ Layout/SpaceInsideBlockBraces:
83
43
  - 'lib/net/ssh/authentication/session.rb'
84
44
  - 'lib/net/ssh/transport/ctr.rb'
85
45
  - 'support/ssh_tunnel_bug.rb'
86
- - 'test/authentication/test_agent.rb'
87
- - 'test/authentication/test_key_manager.rb'
88
- - 'test/start/test_user_nil.rb'
89
46
 
90
47
  # Offense count: 6
91
- # Cop supports --auto-correct.
48
+ # This cop supports safe auto-correction (--auto-correct).
92
49
  # Configuration parameters: EnforcedStyle, EnforcedStyleForEmptyBrackets.
93
50
  # SupportedStyles: space, no_space
94
51
  # SupportedStylesForEmptyBrackets: space, no_space
@@ -96,11 +53,18 @@ Layout/SpaceInsideReferenceBrackets:
96
53
  Exclude:
97
54
  - 'lib/net/ssh/transport/algorithms.rb'
98
55
 
99
- # Offense count: 730
100
- # Cop supports --auto-correct.
101
- # Configuration parameters: AllowInHeredoc.
102
- Layout/TrailingWhitespace:
103
- Enabled: false
56
+ # Offense count: 11
57
+ # This cop supports safe auto-correction (--auto-correct).
58
+ Lint/AmbiguousOperatorPrecedence:
59
+ Exclude:
60
+ - 'lib/net/ssh/authentication/certificate.rb'
61
+ - 'lib/net/ssh/config.rb'
62
+ - 'lib/net/ssh/loggable.rb'
63
+ - 'lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb'
64
+ - 'lib/net/ssh/transport/openssl.rb'
65
+ - 'lib/net/ssh/transport/state.rb'
66
+ - 'lib/net/ssh/version.rb'
67
+ - 'test/integration/test_proxy.rb'
104
68
 
105
69
  # Offense count: 4
106
70
  # Configuration parameters: AllowSafeAssignment.
@@ -111,84 +75,142 @@ Lint/AssignmentInCondition:
111
75
  - 'lib/net/ssh/proxy/command.rb'
112
76
 
113
77
  # Offense count: 1
114
- Lint/EmptyWhen:
78
+ # Configuration parameters: AllowedMethods.
79
+ # AllowedMethods: enums
80
+ Lint/ConstantDefinitionInBlock:
115
81
  Exclude:
116
- - 'lib/net/ssh/config.rb'
82
+ - 'test/transport/test_cipher_factory.rb'
117
83
 
118
- # Offense count: 9
119
- # Configuration parameters: AllowComments.
120
- Lint/HandleExceptions:
84
+ # Offense count: 1
85
+ # This cop supports safe auto-correction (--auto-correct).
86
+ Lint/DeprecatedClassMethods:
87
+ Exclude:
88
+ - 'lib/net/ssh/transport/packet_stream.rb'
89
+
90
+ # Offense count: 12
91
+ # This cop supports safe auto-correction (--auto-correct).
92
+ Lint/DeprecatedOpenSSLConstant:
121
93
  Exclude:
122
- - 'lib/net/ssh/authentication/session.rb'
123
- - 'lib/net/ssh/known_hosts.rb'
124
94
  - 'lib/net/ssh/transport/openssl.rb'
125
- - 'test/integration/common.rb'
126
- - 'test/integration/test_forward.rb'
127
- - 'test/start/test_connection.rb'
95
+
96
+ # Offense count: 2
97
+ # Configuration parameters: AllowComments, AllowEmptyLambdas.
98
+ Lint/EmptyBlock:
99
+ Exclude:
100
+ - 'test/common.rb'
128
101
  - 'test/start/test_transport.rb'
129
102
 
103
+ # Offense count: 1
104
+ # Configuration parameters: AllowComments.
105
+ Lint/EmptyWhen:
106
+ Exclude:
107
+ - 'lib/net/ssh/config.rb'
108
+
130
109
  # Offense count: 72
131
110
  Lint/ImplicitStringConcatenation:
132
111
  Exclude:
133
112
  - 'lib/net/ssh/transport/kex/diffie_hellman_group14_sha1.rb'
134
113
  - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
135
114
 
136
- # Offense count: 1
137
- Lint/LiteralAsCondition:
115
+ # Offense count: 8
116
+ # This cop supports safe auto-correction (--auto-correct).
117
+ Lint/IncompatibleIoSelectWithFiberScheduler:
138
118
  Exclude:
139
- - 'lib/net/ssh/authentication/pageant.rb'
119
+ - 'lib/net/ssh/buffered_io.rb'
120
+ - 'lib/net/ssh/proxy/command.rb'
121
+ - 'lib/net/ssh/transport/packet_stream.rb'
122
+ - 'lib/net/ssh/transport/server_version.rb'
140
123
 
141
124
  # Offense count: 2
125
+ # This cop supports unsafe auto-correction (--auto-correct-all).
142
126
  Lint/Loop:
143
127
  Exclude:
144
128
  - 'lib/net/ssh/authentication/methods/password.rb'
145
129
  - 'lib/net/ssh/key_factory.rb'
146
130
 
131
+ # Offense count: 3
132
+ Lint/MissingSuper:
133
+ Exclude:
134
+ - 'lib/net/ssh/proxy/jump.rb'
135
+ - 'test/common.rb'
136
+ - 'test/integration/mitm_server.rb'
137
+
147
138
  # Offense count: 1
148
139
  Lint/NonLocalExitFromIterator:
149
140
  Exclude:
150
141
  - 'lib/net/ssh/known_hosts.rb'
151
142
 
143
+ # Offense count: 2
144
+ # This cop supports unsafe auto-correction (--auto-correct-all).
145
+ Lint/OrAssignmentToConstant:
146
+ Exclude:
147
+ - 'lib/net/ssh/authentication/pageant.rb'
148
+
149
+ # Offense count: 6
150
+ # This cop supports unsafe auto-correction (--auto-correct-all).
151
+ # Configuration parameters: AllowedImplicitNamespaces.
152
+ # AllowedImplicitNamespaces: Gem
153
+ Lint/RaiseException:
154
+ Exclude:
155
+ - 'Rakefile'
156
+ - 'lib/net/ssh/buffer.rb'
157
+ - 'lib/net/ssh/key_factory.rb'
158
+
159
+ # Offense count: 1
160
+ # This cop supports safe auto-correction (--auto-correct).
161
+ Lint/RedundantCopDisableDirective:
162
+ Exclude:
163
+ - 'lib/net/ssh/key_factory.rb'
164
+
152
165
  # Offense count: 3
153
166
  Lint/RescueException:
154
167
  Exclude:
155
168
  - 'lib/net/ssh/authentication/key_manager.rb'
156
169
  - 'lib/net/ssh/service/forward.rb'
157
170
 
171
+ # Offense count: 4
172
+ # This cop supports safe auto-correction (--auto-correct).
173
+ Lint/SendWithMixinArgument:
174
+ Exclude:
175
+ - 'lib/net/ssh/test/extensions.rb'
176
+
158
177
  # Offense count: 2
159
178
  Lint/ShadowedException:
160
179
  Exclude:
161
180
  - 'lib/net/ssh/authentication/key_manager.rb'
162
181
 
182
+ # Offense count: 5
183
+ # Configuration parameters: AllowComments, AllowNil.
184
+ Lint/SuppressedException:
185
+ Exclude:
186
+ - 'lib/net/ssh/authentication/session.rb'
187
+ - 'lib/net/ssh/transport/openssl.rb'
188
+ - 'test/integration/common.rb'
189
+ - 'test/integration/test_forward.rb'
190
+
163
191
  # Offense count: 1
164
192
  # Configuration parameters: AllowKeywordBlockArguments.
165
193
  Lint/UnderscorePrefixedVariableName:
166
194
  Exclude:
167
195
  - 'lib/net/ssh/test/local_packet.rb'
168
196
 
169
- # Offense count: 60
170
- # Cop supports --auto-correct.
197
+ # Offense count: 15
198
+ # This cop supports safe auto-correction (--auto-correct).
171
199
  # Configuration parameters: IgnoreEmptyBlocks, AllowUnusedKeywordArguments.
172
200
  Lint/UnusedBlockArgument:
173
201
  Exclude:
174
202
  - 'lib/net/ssh/connection/keepalive.rb'
175
203
  - 'lib/net/ssh/connection/session.rb'
176
204
  - 'lib/net/ssh/service/forward.rb'
177
- - 'test/authentication/methods/test_password.rb'
178
- - 'test/authentication/test_agent.rb'
179
- - 'test/common.rb'
180
- - 'test/connection/test_channel.rb'
181
- - 'test/connection/test_session.rb'
182
- - 'test/transport/test_algorithms.rb'
183
- - 'test/transport/test_hmac.rb'
184
205
 
185
- # Offense count: 65
186
- # Cop supports --auto-correct.
187
- # Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods.
206
+ # Offense count: 74
207
+ # This cop supports safe auto-correction (--auto-correct).
208
+ # Configuration parameters: AllowUnusedKeywordArguments, IgnoreEmptyMethods, IgnoreNotImplementedMethods.
188
209
  Lint/UnusedMethodArgument:
189
210
  Enabled: false
190
211
 
191
212
  # Offense count: 3
213
+ # This cop supports safe auto-correction (--auto-correct).
192
214
  # Configuration parameters: ContextCreatingMethods, MethodCreatingMethods.
193
215
  Lint/UselessAccessModifier:
194
216
  Exclude:
@@ -204,13 +226,20 @@ Lint/UselessAssignment:
204
226
  - 'test/integration/common.rb'
205
227
  - 'test/integration/test_forward.rb'
206
228
 
207
- # Offense count: 239
229
+ # Offense count: 1
230
+ # This cop supports unsafe auto-correction (--auto-correct-all).
231
+ Lint/UselessTimes:
232
+ Exclude:
233
+ - 'test/integration/test_forward.rb'
234
+
235
+ # Offense count: 205
236
+ # Configuration parameters: IgnoredMethods, CountRepeatedAttributes.
208
237
  Metrics/AbcSize:
209
- Max: 71
238
+ Max: 74
210
239
 
211
- # Offense count: 17
212
- # Configuration parameters: CountComments, ExcludedMethods.
213
- # ExcludedMethods: refine
240
+ # Offense count: 16
241
+ # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, IgnoredMethods.
242
+ # IgnoredMethods: refine
214
243
  Metrics/BlockLength:
215
244
  Max: 59
216
245
 
@@ -220,32 +249,34 @@ Metrics/BlockNesting:
220
249
  Max: 4
221
250
 
222
251
  # Offense count: 33
223
- # Configuration parameters: CountComments.
252
+ # Configuration parameters: CountComments, CountAsOne.
224
253
  Metrics/ClassLength:
225
254
  Max: 488
226
255
 
227
- # Offense count: 40
256
+ # Offense count: 38
257
+ # Configuration parameters: IgnoredMethods.
228
258
  Metrics/CyclomaticComplexity:
229
- Max: 28
259
+ Max: 32
230
260
 
231
- # Offense count: 224
232
- # Configuration parameters: CountComments, ExcludedMethods.
261
+ # Offense count: 232
262
+ # Configuration parameters: CountComments, CountAsOne, ExcludedMethods, IgnoredMethods.
233
263
  Metrics/MethodLength:
234
264
  Max: 72
235
265
 
236
266
  # Offense count: 3
237
- # Configuration parameters: CountComments.
267
+ # Configuration parameters: CountComments, CountAsOne.
238
268
  Metrics/ModuleLength:
239
269
  Max: 160
240
270
 
241
- # Offense count: 1
242
- # Configuration parameters: CountKeywordArgs.
271
+ # Offense count: 2
272
+ # Configuration parameters: Max, CountKeywordArgs.
243
273
  Metrics/ParameterLists:
244
- Max: 6
274
+ MaxOptionalParameters: 4
245
275
 
246
- # Offense count: 32
276
+ # Offense count: 34
277
+ # Configuration parameters: IgnoredMethods.
247
278
  Metrics/PerceivedComplexity:
248
- Max: 20
279
+ Max: 32
249
280
 
250
281
  # Offense count: 10
251
282
  Naming/AccessorMethodName:
@@ -259,12 +290,15 @@ Naming/AccessorMethodName:
259
290
  - 'lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb'
260
291
 
261
292
  # Offense count: 2
293
+ # This cop supports safe auto-correction (--auto-correct).
262
294
  Naming/BinaryOperatorParameterName:
263
295
  Exclude:
264
296
  - 'lib/net/ssh/buffer.rb'
265
297
  - 'lib/net/ssh/version.rb'
266
298
 
267
299
  # Offense count: 16
300
+ # Configuration parameters: AllowedNames.
301
+ # AllowedNames: module_parent
268
302
  Naming/ClassAndModuleCamelCase:
269
303
  Enabled: false
270
304
 
@@ -275,9 +309,9 @@ Naming/ConstantName:
275
309
  - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
276
310
  - 'lib/net/ssh/transport/openssl.rb'
277
311
 
278
- # Offense count: 12
279
- # Configuration parameters: Blacklist.
280
- # Blacklist: (?-mix:(^|\s)(EO[A-Z]{1}|END)(\s|$))
312
+ # Offense count: 15
313
+ # Configuration parameters: ForbiddenDelimiters.
314
+ # ForbiddenDelimiters: (?-mix:(^|\s)(EO[A-Z]{1}|END)(\s|$))
281
315
  Naming/HeredocDelimiterNaming:
282
316
  Exclude:
283
317
  - 'test/authentication/test_agent.rb'
@@ -296,7 +330,7 @@ Naming/MemoizedInstanceVariableName:
296
330
  - 'test/authentication/test_key_manager.rb'
297
331
 
298
332
  # Offense count: 32
299
- # Configuration parameters: EnforcedStyle.
333
+ # Configuration parameters: EnforcedStyle, AllowedPatterns, IgnoredPatterns.
300
334
  # SupportedStyles: snake_case, camelCase
301
335
  Naming/MethodName:
302
336
  Exclude:
@@ -309,19 +343,10 @@ Naming/MethodName:
309
343
  - 'test/test_config.rb'
310
344
  - 'test/test_key_factory.rb'
311
345
 
312
- # Offense count: 4
313
- # Cop supports --auto-correct.
314
- # Configuration parameters: PreferredName.
315
- Naming/RescuedExceptionsVariableName:
316
- Exclude:
317
- - 'lib/net/ssh/connection/session.rb'
318
- - 'lib/net/ssh/service/forward.rb'
319
- - 'lib/net/ssh/verifiers/accept_new.rb'
320
-
321
346
  # Offense count: 23
322
347
  # Configuration parameters: MinNameLength, AllowNamesEndingInNumbers, AllowedNames, ForbiddenNames.
323
- # AllowedNames: io, id, to, by, on, in, at, ip, db
324
- Naming/UncommunicativeMethodParamName:
348
+ # AllowedNames: at, by, db, id, in, io, ip, of, on, os, pp, to
349
+ Naming/MethodParameterName:
325
350
  Exclude:
326
351
  - 'lib/net/ssh/authentication/certificate.rb'
327
352
  - 'lib/net/ssh/authentication/ed25519.rb'
@@ -335,17 +360,53 @@ Naming/UncommunicativeMethodParamName:
335
360
  - 'lib/net/ssh/transport/identity_cipher.rb'
336
361
  - 'test/connection/test_session.rb'
337
362
 
338
- # Offense count: 8
339
- # Configuration parameters: EnforcedStyle.
363
+ # Offense count: 4
364
+ # This cop supports safe auto-correction (--auto-correct).
365
+ # Configuration parameters: PreferredName.
366
+ Naming/RescuedExceptionsVariableName:
367
+ Exclude:
368
+ - 'lib/net/ssh/connection/session.rb'
369
+ - 'lib/net/ssh/service/forward.rb'
370
+ - 'lib/net/ssh/verifiers/accept_new.rb'
371
+
372
+ # Offense count: 5
373
+ # Configuration parameters: EnforcedStyle, CheckMethodNames, CheckSymbols, AllowedIdentifiers.
374
+ # SupportedStyles: snake_case, normalcase, non_integer
375
+ # AllowedIdentifiers: capture3, iso8601, rfc1123_date, rfc822, rfc2822, rfc3339
376
+ Naming/VariableNumber:
377
+ Exclude:
378
+ - 'test/test_buffer.rb'
379
+ - 'test/test_known_hosts.rb'
380
+ - 'test/transport/test_identity_cipher.rb'
381
+
382
+ # Offense count: 1
383
+ # This cop supports unsafe auto-correction (--auto-correct-all).
384
+ Security/IoMethods:
385
+ Exclude:
386
+ - 'lib/net/ssh/config.rb'
387
+
388
+ # Offense count: 2
389
+ # Configuration parameters: EnforcedStyle, AllowModifiersOnSymbols.
340
390
  # SupportedStyles: inline, group
341
391
  Style/AccessModifierDeclarations:
342
392
  Exclude:
343
393
  - 'lib/net/ssh/authentication/pageant.rb'
344
- - 'lib/net/ssh/transport/openssl.rb'
345
- - 'test/test_key_factory.rb'
394
+
395
+ # Offense count: 31
396
+ # This cop supports safe auto-correction (--auto-correct).
397
+ # Configuration parameters: EnforcedStyle.
398
+ # SupportedStyles: separated, grouped
399
+ Style/AccessorGrouping:
400
+ Exclude:
401
+ - 'lib/net/ssh/authentication/certificate.rb'
402
+ - 'lib/net/ssh/transport/kex/abstract.rb'
403
+ - 'test/common.rb'
404
+ - 'test/connection/test_channel.rb'
405
+ - 'test/integration/mitm_server.rb'
406
+ - 'test/start/test_transport.rb'
346
407
 
347
408
  # Offense count: 2
348
- # Cop supports --auto-correct.
409
+ # This cop supports safe auto-correction (--auto-correct).
349
410
  # Configuration parameters: EnforcedStyle.
350
411
  # SupportedStyles: prefer_alias, prefer_alias_method
351
412
  Style/Alias:
@@ -353,36 +414,19 @@ Style/Alias:
353
414
  - 'lib/net/ssh/connection/session.rb'
354
415
  - 'lib/net/ssh/service/forward.rb'
355
416
 
356
- # Offense count: 31
357
- # Cop supports --auto-correct.
417
+ # Offense count: 9
418
+ # This cop supports safe auto-correction (--auto-correct).
358
419
  # Configuration parameters: EnforcedStyle.
359
420
  # SupportedStyles: always, conditionals
360
421
  Style/AndOr:
361
422
  Exclude:
362
- - 'lib/net/ssh/authentication/key_manager.rb'
363
- - 'lib/net/ssh/buffer.rb'
364
- - 'lib/net/ssh/buffered_io.rb'
365
423
  - 'lib/net/ssh/connection/channel.rb'
366
424
  - 'lib/net/ssh/connection/session.rb'
367
- - 'lib/net/ssh/key_factory.rb'
368
425
  - 'lib/net/ssh/service/forward.rb'
369
- - 'lib/net/ssh/test/channel.rb'
370
- - 'lib/net/ssh/test/script.rb'
371
- - 'lib/net/ssh/transport/cipher_factory.rb'
372
- - 'lib/net/ssh/transport/hmac.rb'
373
- - 'lib/net/ssh/transport/key_expander.rb'
374
- - 'test/common.rb'
375
-
376
- # Offense count: 2
377
- # Configuration parameters: AllowedChars.
378
- Style/AsciiComments:
379
- Exclude:
380
- - 'lib/net/ssh/authentication/pageant.rb'
381
- - 'lib/net/ssh/buffered_io.rb'
382
426
 
383
427
  # Offense count: 9
384
- # Cop supports --auto-correct.
385
- # Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, IgnoredMethods, AllowBracesOnProceduralOneLiners.
428
+ # This cop supports safe auto-correction (--auto-correct).
429
+ # Configuration parameters: EnforcedStyle, ProceduralMethods, FunctionalMethods, IgnoredMethods, AllowBracesOnProceduralOneLiners, BracesRequiredMethods.
386
430
  # SupportedStyles: line_count_based, semantic, braces_for_chaining, always_braces
387
431
  # ProceduralMethods: benchmark, bm, bmbm, create, each_with_object, measure, new, realtime, tap, with_object
388
432
  # FunctionalMethods: let, let!, subject, watch
@@ -397,37 +441,42 @@ Style/BlockDelimiters:
397
441
  - 'lib/net/ssh/transport/ctr.rb'
398
442
  - 'test/verifiers/test_always.rb'
399
443
 
400
- # Offense count: 7
401
- # Cop supports --auto-correct.
402
- # Configuration parameters: EnforcedStyle.
403
- # SupportedStyles: braces, no_braces, context_dependent
404
- Style/BracesAroundHashParameters:
405
- Exclude:
406
- - 'lib/net/ssh/config.rb'
407
- - 'test/integration/test_ed25519_pkeys.rb'
408
- - 'test/integration/test_id_rsa_keys.rb'
409
- - 'test/transport/test_hmac.rb'
410
- - 'test/transport/test_session.rb'
411
-
412
444
  # Offense count: 2
445
+ # This cop supports safe auto-correction (--auto-correct).
446
+ # Configuration parameters: AllowOnConstant.
413
447
  Style/CaseEquality:
414
448
  Exclude:
415
449
  - 'lib/net/ssh/buffer.rb'
416
450
  - 'lib/net/ssh/connection/session.rb'
417
451
 
452
+ # Offense count: 3
453
+ # This cop supports unsafe auto-correction (--auto-correct-all).
454
+ Style/CaseLikeIf:
455
+ Exclude:
456
+ - 'lib/net/ssh/transport/openssl.rb'
457
+ - 'test/connection/test_session.rb'
458
+
418
459
  # Offense count: 1
419
- # Cop supports --auto-correct.
460
+ # This cop supports safe auto-correction (--auto-correct).
420
461
  Style/CharacterLiteral:
421
462
  Exclude:
422
463
  - 'test/test_buffer.rb'
423
464
 
424
- # Offense count: 17
425
- # Cop supports --auto-correct.
426
- # Configuration parameters: AutoCorrect, EnforcedStyle.
465
+ # Offense count: 18
466
+ # This cop supports safe auto-correction (--auto-correct).
467
+ # Configuration parameters: EnforcedStyle.
427
468
  # SupportedStyles: nested, compact
428
469
  Style/ClassAndModuleChildren:
429
470
  Enabled: false
430
471
 
472
+ # Offense count: 1
473
+ # This cop supports safe auto-correction (--auto-correct).
474
+ # Configuration parameters: IgnoredMethods.
475
+ # IgnoredMethods: ==, equal?, eql?
476
+ Style/ClassEqualityComparison:
477
+ Exclude:
478
+ - 'lib/net/ssh/service/forward.rb'
479
+
431
480
  # Offense count: 7
432
481
  Style/ClassVars:
433
482
  Exclude:
@@ -437,15 +486,21 @@ Style/ClassVars:
437
486
  - 'test/authentication/methods/test_publickey.rb'
438
487
 
439
488
  # Offense count: 1
440
- # Cop supports --auto-correct.
489
+ # This cop supports safe auto-correction (--auto-correct).
441
490
  Style/ColonMethodCall:
442
491
  Exclude:
443
492
  - 'lib/net/ssh/authentication/ed25519.rb'
444
493
 
494
+ # Offense count: 2
495
+ Style/CombinableLoops:
496
+ Exclude:
497
+ - 'lib/net/ssh/connection/channel.rb'
498
+ - 'test/integration/test_hmac_etm.rb'
499
+
445
500
  # Offense count: 4
446
- # Cop supports --auto-correct.
447
- # Configuration parameters: Keywords.
448
- # Keywords: TODO, FIXME, OPTIMIZE, HACK, REVIEW
501
+ # This cop supports safe auto-correction (--auto-correct).
502
+ # Configuration parameters: Keywords, RequireColon.
503
+ # Keywords: TODO, FIXME, OPTIMIZE, HACK, REVIEW, NOTE
449
504
  Style/CommentAnnotation:
450
505
  Exclude:
451
506
  - 'lib/net/ssh/authentication/ed25519.rb'
@@ -454,13 +509,14 @@ Style/CommentAnnotation:
454
509
  - 'lib/net/ssh/config.rb'
455
510
 
456
511
  # Offense count: 3
512
+ # This cop supports safe auto-correction (--auto-correct).
457
513
  Style/CommentedKeyword:
458
514
  Exclude:
459
515
  - 'test/connection/test_session.rb'
460
516
  - 'test/integration/test_forward.rb'
461
517
 
462
518
  # Offense count: 7
463
- # Cop supports --auto-correct.
519
+ # This cop supports safe auto-correction (--auto-correct).
464
520
  # Configuration parameters: EnforcedStyle, SingleLineConditionsOnly, IncludeTernaryExpressions.
465
521
  # SupportedStyles: assign_to_condition, assign_inside_condition
466
522
  Style/ConditionalAssignment:
@@ -471,7 +527,8 @@ Style/ConditionalAssignment:
471
527
  - 'lib/net/ssh/transport/state.rb'
472
528
  - 'test/test_key_factory.rb'
473
529
 
474
- # Offense count: 13
530
+ # Offense count: 12
531
+ # Configuration parameters: AllowedConstants.
475
532
  Style/Documentation:
476
533
  Exclude:
477
534
  - 'spec/**/*'
@@ -485,19 +542,43 @@ Style/Documentation:
485
542
  - 'lib/net/ssh/transport/openssl.rb'
486
543
 
487
544
  # Offense count: 1
488
- # Cop supports --auto-correct.
489
- Style/EmptyLiteral:
545
+ # This cop supports safe auto-correction (--auto-correct).
546
+ Style/EvenOdd:
490
547
  Exclude:
491
- - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
548
+ - 'lib/net/ssh/buffer.rb'
549
+
550
+ # Offense count: 9
551
+ # This cop supports safe auto-correction (--auto-correct).
552
+ Style/ExplicitBlockArgument:
553
+ Exclude:
554
+ - 'lib/net/ssh/loggable.rb'
555
+ - 'lib/net/ssh/test.rb'
556
+ - 'test/integration/common.rb'
557
+ - 'test/integration/mitm_server.rb'
558
+ - 'test/integration/test_forward.rb'
559
+
560
+ # Offense count: 12
561
+ # This cop supports safe auto-correction (--auto-correct).
562
+ # Configuration parameters: AllowedVars.
563
+ Style/FetchEnvVar:
564
+ Exclude:
565
+ - 'lib/net/ssh.rb'
566
+ - 'lib/net/ssh/authentication/agent.rb'
567
+ - 'lib/net/ssh/authentication/methods/hostbased.rb'
568
+ - 'test/authentication/test_agent.rb'
569
+ - 'test/common.rb'
570
+ - 'test/start/test_options.rb'
571
+ - 'test/test_all.rb'
572
+ - 'test/test_config.rb'
492
573
 
493
574
  # Offense count: 1
494
- # Cop supports --auto-correct.
495
- Style/EvenOdd:
575
+ # This cop supports safe auto-correction (--auto-correct).
576
+ Style/FileWrite:
496
577
  Exclude:
497
- - 'lib/net/ssh/buffer.rb'
578
+ - 'test/integration/test_proxy.rb'
498
579
 
499
580
  # Offense count: 2
500
- # Cop supports --auto-correct.
581
+ # This cop supports safe auto-correction (--auto-correct).
501
582
  # Configuration parameters: EnforcedStyle.
502
583
  # SupportedStyles: format, sprintf, percent
503
584
  Style/FormatString:
@@ -505,33 +586,41 @@ Style/FormatString:
505
586
  - 'lib/net/ssh/authentication/pageant.rb'
506
587
  - 'lib/net/ssh/loggable.rb'
507
588
 
508
- # Offense count: 1
509
- # Configuration parameters: EnforcedStyle.
510
- # SupportedStyles: annotated, template, unannotated
511
- Style/FormatStringToken:
512
- Exclude:
513
- - 'lib/net/ssh/loggable.rb'
514
-
515
- # Offense count: 171
516
- # Cop supports --auto-correct.
589
+ # Offense count: 174
590
+ # This cop supports safe auto-correction (--auto-correct).
517
591
  # Configuration parameters: EnforcedStyle.
518
- # SupportedStyles: always, never
592
+ # SupportedStyles: always, always_true, never
519
593
  Style/FrozenStringLiteralComment:
520
594
  Enabled: false
521
595
 
596
+ # Offense count: 1
597
+ # This cop supports safe auto-correction (--auto-correct).
598
+ Style/GlobalStdStream:
599
+ Exclude:
600
+ - 'lib/net/ssh.rb'
601
+
522
602
  # Offense count: 35
523
- # Configuration parameters: MinBodyLength.
603
+ # Configuration parameters: MinBodyLength, AllowConsecutiveConditionals.
524
604
  Style/GuardClause:
525
605
  Enabled: false
526
606
 
607
+ # Offense count: 3
608
+ # This cop supports safe auto-correction (--auto-correct).
609
+ # Configuration parameters: AllowSplatArgument.
610
+ Style/HashConversion:
611
+ Exclude:
612
+ - 'lib/net/ssh/authentication/certificate.rb'
613
+ - 'test/test_config.rb'
614
+
527
615
  # Offense count: 1
616
+ # This cop supports safe auto-correction (--auto-correct).
528
617
  # Configuration parameters: AllowIfModifier.
529
618
  Style/IfInsideElse:
530
619
  Exclude:
531
620
  - 'lib/net/ssh/connection/session.rb'
532
621
 
533
622
  # Offense count: 13
534
- # Cop supports --auto-correct.
623
+ # This cop supports safe auto-correction (--auto-correct).
535
624
  Style/IfUnlessModifier:
536
625
  Exclude:
537
626
  - 'lib/net/ssh.rb'
@@ -544,13 +633,13 @@ Style/IfUnlessModifier:
544
633
  - 'test/test_key_factory.rb'
545
634
 
546
635
  # Offense count: 1
547
- # Cop supports --auto-correct.
636
+ # This cop supports unsafe auto-correction (--auto-correct-all).
548
637
  Style/InfiniteLoop:
549
638
  Exclude:
550
639
  - 'lib/net/ssh/authentication/pageant.rb'
551
640
 
552
641
  # Offense count: 27
553
- # Cop supports --auto-correct.
642
+ # This cop supports safe auto-correction (--auto-correct).
554
643
  Style/LineEndConcatenation:
555
644
  Exclude:
556
645
  - 'lib/net/ssh/authentication/pageant.rb'
@@ -559,9 +648,10 @@ Style/LineEndConcatenation:
559
648
  - 'lib/net/ssh/verifiers/always.rb'
560
649
 
561
650
  # Offense count: 1
562
- Style/MethodMissingSuper:
651
+ # This cop supports unsafe auto-correction (--auto-correct-all).
652
+ Style/MapToHash:
563
653
  Exclude:
564
- - 'lib/net/ssh/connection/session.rb'
654
+ - 'lib/net/ssh/config.rb'
565
655
 
566
656
  # Offense count: 1
567
657
  Style/MissingRespondToMissing:
@@ -569,21 +659,22 @@ Style/MissingRespondToMissing:
569
659
  - 'lib/net/ssh/connection/session.rb'
570
660
 
571
661
  # Offense count: 3
572
- # Cop supports --auto-correct.
662
+ # This cop supports safe auto-correction (--auto-correct).
573
663
  Style/MultilineIfThen:
574
664
  Exclude:
575
665
  - 'lib/net/ssh/buffered_io.rb'
576
666
  - 'lib/net/ssh/service/forward.rb'
577
667
 
578
- # Offense count: 6
579
- # Cop supports --auto-correct.
668
+ # Offense count: 7
669
+ # This cop supports safe auto-correction (--auto-correct).
580
670
  Style/MultilineWhenThen:
581
671
  Exclude:
582
- - 'lib/net/ssh/test/packet.rb'
583
672
  - 'lib/net/ssh/transport/packet_stream.rb'
584
673
  - 'lib/net/ssh/transport/session.rb'
585
674
 
586
675
  # Offense count: 5
676
+ # This cop supports safe auto-correction (--auto-correct).
677
+ # Configuration parameters: AllowMethodComparison.
587
678
  Style/MultipleComparison:
588
679
  Exclude:
589
680
  - 'lib/net/ssh/authentication/agent.rb'
@@ -591,15 +682,15 @@ Style/MultipleComparison:
591
682
  - 'lib/net/ssh/known_hosts.rb'
592
683
  - 'lib/net/ssh/verifiers/accept_new_or_local_tunnel.rb'
593
684
 
594
- # Offense count: 41
595
- # Cop supports --auto-correct.
685
+ # Offense count: 42
686
+ # This cop supports safe auto-correction (--auto-correct).
596
687
  # Configuration parameters: EnforcedStyle.
597
688
  # SupportedStyles: literals, strict
598
689
  Style/MutableConstant:
599
690
  Enabled: false
600
691
 
601
692
  # Offense count: 14
602
- # Cop supports --auto-correct.
693
+ # This cop supports safe auto-correction (--auto-correct).
603
694
  # Configuration parameters: EnforcedStyle.
604
695
  # SupportedStyles: both, prefix, postfix
605
696
  Style/NegatedIf:
@@ -614,14 +705,21 @@ Style/NegatedIf:
614
705
  - 'test/test_key_factory.rb'
615
706
  - 'test/transport/test_state.rb'
616
707
 
708
+ # Offense count: 2
709
+ # This cop supports safe auto-correction (--auto-correct).
710
+ Style/NegatedIfElseCondition:
711
+ Exclude:
712
+ - 'lib/net/ssh/transport/algorithms.rb'
713
+ - 'lib/net/ssh/transport/cipher_factory.rb'
714
+
617
715
  # Offense count: 1
618
- # Cop supports --auto-correct.
716
+ # This cop supports safe auto-correction (--auto-correct).
619
717
  Style/NegatedWhile:
620
718
  Exclude:
621
719
  - 'lib/net/ssh/config.rb'
622
720
 
623
721
  # Offense count: 1
624
- # Cop supports --auto-correct.
722
+ # This cop supports safe auto-correction (--auto-correct).
625
723
  # Configuration parameters: EnforcedStyle, MinBodyLength.
626
724
  # SupportedStyles: skip_modifier_ifs, always
627
725
  Style/Next:
@@ -629,7 +727,7 @@ Style/Next:
629
727
  - 'lib/net/ssh/authentication/key_manager.rb'
630
728
 
631
729
  # Offense count: 1
632
- # Cop supports --auto-correct.
730
+ # This cop supports safe auto-correction (--auto-correct).
633
731
  # Configuration parameters: EnforcedStyle.
634
732
  # SupportedStyles: predicate, comparison
635
733
  Style/NilComparison:
@@ -637,26 +735,52 @@ Style/NilComparison:
637
735
  - 'lib/net/ssh/proxy/command.rb'
638
736
 
639
737
  # Offense count: 3
640
- # Cop supports --auto-correct.
738
+ # This cop supports safe auto-correction (--auto-correct).
641
739
  Style/Not:
642
740
  Exclude:
643
741
  - 'lib/net/ssh/connection/channel.rb'
644
742
 
645
- # Offense count: 10
646
- # Cop supports --auto-correct.
647
- # Configuration parameters: Strict.
743
+ # Offense count: 11
744
+ # This cop supports safe auto-correction (--auto-correct).
745
+ # Configuration parameters: Strict, AllowedNumbers.
648
746
  Style/NumericLiterals:
649
747
  MinDigits: 310
650
748
 
651
749
  # Offense count: 29
652
- # Cop supports --auto-correct.
653
- # Configuration parameters: AutoCorrect, EnforcedStyle, IgnoredMethods.
750
+ # This cop supports unsafe auto-correction (--auto-correct-all).
751
+ # Configuration parameters: EnforcedStyle, IgnoredMethods.
654
752
  # SupportedStyles: predicate, comparison
655
753
  Style/NumericPredicate:
656
754
  Enabled: false
657
755
 
756
+ # Offense count: 13
757
+ Style/OpenStructUse:
758
+ Exclude:
759
+ - 'test/authentication/test_ed25519.rb'
760
+ - 'test/common.rb'
761
+ - 'test/transport/kex/test_curve25519_sha256.rb'
762
+ - 'test/transport/kex/test_diffie_hellman_group1_sha1.rb'
763
+ - 'test/transport/kex/test_ecdh_sha2_nistp256.rb'
764
+ - 'test/verifiers/test_always.rb'
765
+
766
+ # Offense count: 16
767
+ # Configuration parameters: AllowedMethods.
768
+ # AllowedMethods: respond_to_missing?
769
+ Style/OptionalBooleanParameter:
770
+ Exclude:
771
+ - 'lib/net/ssh/connection/session.rb'
772
+ - 'lib/net/ssh/key_factory.rb'
773
+ - 'lib/net/ssh/prompt.rb'
774
+ - 'lib/net/ssh/test/channel.rb'
775
+ - 'lib/net/ssh/test/script.rb'
776
+ - 'lib/net/ssh/transport/algorithms.rb'
777
+ - 'lib/net/ssh/transport/session.rb'
778
+ - 'lib/net/ssh/transport/state.rb'
779
+ - 'test/common.rb'
780
+ - 'test/transport/test_server_version.rb'
781
+
658
782
  # Offense count: 15
659
- # Cop supports --auto-correct.
783
+ # This cop supports safe auto-correction (--auto-correct).
660
784
  Style/ParallelAssignment:
661
785
  Exclude:
662
786
  - 'lib/net/ssh/config.rb'
@@ -670,7 +794,7 @@ Style/ParallelAssignment:
670
794
  - 'test/connection/test_channel.rb'
671
795
 
672
796
  # Offense count: 5
673
- # Cop supports --auto-correct.
797
+ # This cop supports safe auto-correction (--auto-correct).
674
798
  # Configuration parameters: AllowSafeAssignment, AllowInMultilineConditions.
675
799
  Style/ParenthesesAroundCondition:
676
800
  Exclude:
@@ -680,15 +804,15 @@ Style/ParenthesesAroundCondition:
680
804
  - 'test/integration/test_proxy.rb'
681
805
 
682
806
  # Offense count: 23
683
- # Cop supports --auto-correct.
807
+ # This cop supports safe auto-correction (--auto-correct).
684
808
  # Configuration parameters: PreferredDelimiters.
685
809
  Style/PercentLiteralDelimiters:
686
810
  Exclude:
687
811
  - 'net-ssh.gemspec'
688
812
  - 'test/test_config.rb'
689
813
 
690
- # Offense count: 15
691
- # Cop supports --auto-correct.
814
+ # Offense count: 17
815
+ # This cop supports safe auto-correction (--auto-correct).
692
816
  Style/PerlBackrefs:
693
817
  Exclude:
694
818
  - 'lib/net/ssh/buffer.rb'
@@ -698,8 +822,8 @@ Style/PerlBackrefs:
698
822
  - 'lib/net/ssh/proxy/socks5.rb'
699
823
  - 'test/integration/common.rb'
700
824
 
701
- # Offense count: 14
702
- # Cop supports --auto-correct.
825
+ # Offense count: 15
826
+ # This cop supports safe auto-correction (--auto-correct).
703
827
  Style/Proc:
704
828
  Exclude:
705
829
  - 'lib/net/ssh/connection/session.rb'
@@ -712,29 +836,72 @@ Style/Proc:
712
836
  - 'test/connection/test_session.rb'
713
837
 
714
838
  # Offense count: 7
715
- # Cop supports --auto-correct.
716
- # Configuration parameters: EnforcedStyle.
839
+ # This cop supports safe auto-correction (--auto-correct).
840
+ # Configuration parameters: EnforcedStyle, AllowedCompactTypes.
717
841
  # SupportedStyles: compact, exploded
718
842
  Style/RaiseArgs:
719
843
  Exclude:
720
844
  - 'lib/net/ssh/authentication/ed25519.rb'
721
845
 
722
- # Offense count: 4
723
- # Cop supports --auto-correct.
846
+ # Offense count: 6
847
+ # This cop supports unsafe auto-correction (--auto-correct-all).
848
+ # Configuration parameters: Methods.
849
+ Style/RedundantArgument:
850
+ Exclude:
851
+ - 'lib/net/ssh/known_hosts.rb'
852
+ - 'test/authentication/test_ed25519.rb'
853
+
854
+ # Offense count: 5
855
+ # This cop supports safe auto-correction (--auto-correct).
724
856
  Style/RedundantBegin:
725
857
  Exclude:
726
858
  - 'lib/net/ssh/buffered_io.rb'
859
+ - 'lib/net/ssh/service/forward.rb'
727
860
  - 'lib/net/ssh/verifiers/accept_new.rb'
728
861
  - 'test/manual/test_pageant.rb'
729
862
 
730
- # Offense count: 61
731
- # Cop supports --auto-correct.
863
+ # Offense count: 1
864
+ # This cop supports safe auto-correction (--auto-correct).
865
+ Style/RedundantCondition:
866
+ Exclude:
867
+ - 'lib/net/ssh/proxy/command.rb'
868
+
869
+ # Offense count: 1
870
+ # This cop supports safe auto-correction (--auto-correct).
871
+ Style/RedundantFileExtensionInRequire:
872
+ Exclude:
873
+ - 'lib/net/ssh/transport/cipher_factory.rb'
874
+
875
+ # Offense count: 2
876
+ # This cop supports safe auto-correction (--auto-correct).
877
+ Style/RedundantInterpolation:
878
+ Exclude:
879
+ - 'lib/net/ssh/proxy/socks5.rb'
880
+ - 'lib/net/ssh/transport/session.rb'
881
+
882
+ # Offense count: 2
883
+ # This cop supports safe auto-correction (--auto-correct).
884
+ Style/RedundantPercentQ:
885
+ Exclude:
886
+ - 'net-ssh.gemspec'
887
+
888
+ # Offense count: 11
889
+ # This cop supports safe auto-correction (--auto-correct).
890
+ Style/RedundantRegexpEscape:
891
+ Exclude:
892
+ - 'lib/net/ssh/authentication/agent.rb'
893
+ - 'lib/net/ssh/buffer.rb'
894
+ - 'lib/net/ssh/config.rb'
895
+ - 'lib/net/ssh/transport/cipher_factory.rb'
896
+
897
+ # Offense count: 87
898
+ # This cop supports safe auto-correction (--auto-correct).
732
899
  # Configuration parameters: AllowMultipleReturnValues.
733
900
  Style/RedundantReturn:
734
901
  Enabled: false
735
902
 
736
903
  # Offense count: 18
737
- # Cop supports --auto-correct.
904
+ # This cop supports safe auto-correction (--auto-correct).
738
905
  Style/RedundantSelf:
739
906
  Exclude:
740
907
  - 'lib/net/ssh/connection/channel.rb'
@@ -742,16 +909,16 @@ Style/RedundantSelf:
742
909
  - 'test/authentication/test_ed25519.rb'
743
910
 
744
911
  # Offense count: 6
745
- # Cop supports --auto-correct.
912
+ # This cop supports safe auto-correction (--auto-correct).
746
913
  Style/RescueModifier:
747
914
  Exclude:
748
915
  - 'lib/net/ssh/service/forward.rb'
749
916
  - 'lib/net/ssh/transport/algorithms.rb'
750
917
 
751
918
  # Offense count: 25
752
- # Cop supports --auto-correct.
753
- # Configuration parameters: ConvertCodeThatCanStartToReturnNil, Whitelist.
754
- # Whitelist: present?, blank?, presence, try, try!
919
+ # This cop supports safe auto-correction (--auto-correct).
920
+ # Configuration parameters: ConvertCodeThatCanStartToReturnNil, AllowedMethods, MaxChainLength.
921
+ # AllowedMethods: present?, blank?, presence, try, try!
755
922
  Style/SafeNavigation:
756
923
  Exclude:
757
924
  - 'lib/net/ssh/authentication/key_manager.rb'
@@ -767,14 +934,20 @@ Style/SafeNavigation:
767
934
  - 'lib/net/ssh/transport/algorithms.rb'
768
935
  - 'lib/net/ssh/transport/packet_stream.rb'
769
936
 
937
+ # Offense count: 3
938
+ # This cop supports safe auto-correction (--auto-correct).
939
+ Style/SelectByRegexp:
940
+ Exclude:
941
+ - 'test/test_all.rb'
942
+
770
943
  # Offense count: 2
771
- # Cop supports --auto-correct.
944
+ # This cop supports safe auto-correction (--auto-correct).
772
945
  Style/SelfAssignment:
773
946
  Exclude:
774
947
  - 'lib/net/ssh/config.rb'
775
948
 
776
949
  # Offense count: 7
777
- # Cop supports --auto-correct.
950
+ # This cop supports safe auto-correction (--auto-correct).
778
951
  # Configuration parameters: AllowAsExpressionSeparator.
779
952
  Style/Semicolon:
780
953
  Exclude:
@@ -783,7 +956,7 @@ Style/Semicolon:
783
956
  - 'test/connection/test_session.rb'
784
957
 
785
958
  # Offense count: 2
786
- # Cop supports --auto-correct.
959
+ # This cop supports safe auto-correction (--auto-correct).
787
960
  # Configuration parameters: EnforcedStyle.
788
961
  # SupportedStyles: only_raise, only_fail, semantic
789
962
  Style/SignalException:
@@ -792,16 +965,37 @@ Style/SignalException:
792
965
  - 'lib/net/ssh/connection/channel.rb'
793
966
 
794
967
  # Offense count: 2
795
- # Cop supports --auto-correct.
968
+ # This cop supports safe auto-correction (--auto-correct).
796
969
  # Configuration parameters: AllowIfMethodIsEmpty.
797
970
  Style/SingleLineMethods:
798
971
  Exclude:
799
972
  - 'lib/net/ssh/buffered_io.rb'
800
973
 
974
+ # Offense count: 11
975
+ # This cop supports unsafe auto-correction (--auto-correct-all).
976
+ Style/SlicingWithRange:
977
+ Exclude:
978
+ - 'lib/net/ssh/authentication/ed25519.rb'
979
+ - 'lib/net/ssh/buffer.rb'
980
+ - 'lib/net/ssh/config.rb'
981
+ - 'lib/net/ssh/transport/algorithms.rb'
982
+ - 'lib/net/ssh/transport/packet_stream.rb'
983
+ - 'lib/net/ssh/transport/state.rb'
984
+ - 'test/transport/test_packet_stream.rb'
985
+
986
+ # Offense count: 3
987
+ # This cop supports safe auto-correction (--auto-correct).
988
+ # Configuration parameters: AllowModifier.
989
+ Style/SoleNestedConditional:
990
+ Exclude:
991
+ - 'lib/net/ssh/transport/packet_stream.rb'
992
+ - 'test/common.rb'
993
+ - 'test/integration/test_proxy.rb'
994
+
801
995
  # Offense count: 18
802
- # Cop supports --auto-correct.
803
- # Configuration parameters: EnforcedStyle.
804
- # SupportedStyles: use_perl_names, use_english_names
996
+ # This cop supports safe auto-correction (--auto-correct).
997
+ # Configuration parameters: RequireEnglish, EnforcedStyle.
998
+ # SupportedStyles: use_perl_names, use_english_names, use_builtin_english_names
805
999
  Style/SpecialGlobalVars:
806
1000
  Exclude:
807
1001
  - 'lib/net/ssh/authentication/agent.rb'
@@ -812,16 +1006,39 @@ Style/SpecialGlobalVars:
812
1006
  - 'test/manual/test_pageant.rb'
813
1007
  - 'test/test_all.rb'
814
1008
 
815
- # Offense count: 1801
816
- # Cop supports --auto-correct.
1009
+ # Offense count: 1
1010
+ # This cop supports unsafe auto-correction (--auto-correct-all).
1011
+ Style/StringChars:
1012
+ Exclude:
1013
+ - 'test/transport/test_server_version.rb'
1014
+
1015
+ # Offense count: 27
1016
+ # This cop supports unsafe auto-correction (--auto-correct-all).
1017
+ # Configuration parameters: Mode.
1018
+ Style/StringConcatenation:
1019
+ Exclude:
1020
+ - 'lib/net/ssh/authentication/certificate.rb'
1021
+ - 'lib/net/ssh/authentication/key_manager.rb'
1022
+ - 'lib/net/ssh/authentication/pageant.rb'
1023
+ - 'lib/net/ssh/config.rb'
1024
+ - 'lib/net/ssh/transport/algorithms.rb'
1025
+ - 'lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb'
1026
+ - 'test/authentication/test_key_manager.rb'
1027
+ - 'test/integration/common.rb'
1028
+ - 'test/integration/test_proxy.rb'
1029
+ - 'test/test_buffer.rb'
1030
+ - 'test/test_key_factory.rb'
1031
+
1032
+ # Offense count: 1849
1033
+ # This cop supports safe auto-correction (--auto-correct).
817
1034
  # Configuration parameters: EnforcedStyle, ConsistentQuotesInMultiline.
818
1035
  # SupportedStyles: single_quotes, double_quotes
819
1036
  Style/StringLiterals:
820
1037
  Enabled: false
821
1038
 
822
- # Offense count: 7
823
- # Cop supports --auto-correct.
824
- # Configuration parameters: IgnoredMethods.
1039
+ # Offense count: 6
1040
+ # This cop supports unsafe auto-correction (--auto-correct-all).
1041
+ # Configuration parameters: AllowMethodsWithArguments, IgnoredMethods, AllowComments.
825
1042
  # IgnoredMethods: respond_to, define_method
826
1043
  Style/SymbolProc:
827
1044
  Exclude:
@@ -829,36 +1046,27 @@ Style/SymbolProc:
829
1046
  - 'lib/net/ssh/buffer.rb'
830
1047
  - 'lib/net/ssh/connection/session.rb'
831
1048
  - 'lib/net/ssh/test/extensions.rb'
832
- - 'lib/net/ssh/transport/algorithms.rb'
833
-
834
- # Offense count: 1
835
- # Cop supports --auto-correct.
836
- Style/UnneededCondition:
837
- Exclude:
838
- - 'lib/net/ssh/proxy/command.rb'
839
-
840
- # Offense count: 2
841
- # Cop supports --auto-correct.
842
- Style/UnneededInterpolation:
843
- Exclude:
844
- - 'lib/net/ssh/proxy/socks5.rb'
845
- - 'lib/net/ssh/transport/session.rb'
846
1049
 
847
- # Offense count: 2
848
- # Cop supports --auto-correct.
849
- Style/UnneededPercentQ:
1050
+ # Offense count: 14
1051
+ # This cop supports safe auto-correction (--auto-correct).
1052
+ Style/UnpackFirst:
850
1053
  Exclude:
851
- - 'net-ssh.gemspec'
1054
+ - 'lib/net/ssh/authentication/pageant.rb'
1055
+ - 'lib/net/ssh/buffer.rb'
1056
+ - 'lib/net/ssh/key_factory.rb'
1057
+ - 'lib/net/ssh/known_hosts.rb'
1058
+ - 'lib/net/ssh/transport/openssl.rb'
1059
+ - 'lib/net/ssh/transport/packet_stream.rb'
852
1060
 
853
1061
  # Offense count: 2
854
- # Cop supports --auto-correct.
1062
+ # This cop supports safe auto-correction (--auto-correct).
855
1063
  Style/WhileUntilDo:
856
1064
  Exclude:
857
1065
  - 'lib/net/ssh/config.rb'
858
1066
  - 'test/integration/common.rb'
859
1067
 
860
- # Offense count: 3
861
- # Cop supports --auto-correct.
1068
+ # Offense count: 4
1069
+ # This cop supports safe auto-correction (--auto-correct).
862
1070
  # Configuration parameters: WordRegex.
863
1071
  # SupportedStyles: percent, brackets
864
1072
  Style/WordArray:
@@ -866,7 +1074,7 @@ Style/WordArray:
866
1074
  MinSize: 3
867
1075
 
868
1076
  # Offense count: 4
869
- # Cop supports --auto-correct.
1077
+ # This cop supports unsafe auto-correction (--auto-correct-all).
870
1078
  Style/ZeroLengthPredicate:
871
1079
  Exclude:
872
1080
  - 'lib/net/ssh/buffered_io.rb'