sshkit 1.23.2 → 1.24.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: deb517c2ce9ebf51e9dbb9899a16ba4993cc8159045fb6bbc0da83f980e60662
4
- data.tar.gz: 1ddc2ed93b2293a34c49f42838d3e2e6ed7bb76c622e9533db156862abf95d40
3
+ metadata.gz: 931b99f3ed7bae2c98d4d6e5b48ad8f2261c4ccfca373d75fab75de03d49b656
4
+ data.tar.gz: '09096adfadec79a68a91477f5de116847d2a6baa6f36ea9faab13e41dae4fc66'
5
5
  SHA512:
6
- metadata.gz: a06ca7e0df5e0cc49a9005cf29e97f4a229e8ccb6aa3d89f7e12cde841253d842904b2f5bbf3550a96875b1c06bee5abb54301f68826197bf3f47ad6a62d30cf
7
- data.tar.gz: 1e92da0637c7c9dbc67f3fe5a893c8a7b7e551b981054487e3d93c47e463f792449fb0edd22126b686e0a5d09aecccf2d1cfbd2bfd1fe59e99a5127b27365cac
6
+ metadata.gz: 9cb179c93ff215fed59c2f2c38dca664886af6f8b39376f7f1ed72bfb9a675d6c6a7616b519c165a83cd8e9356f15301e7a656b0045ab65f6faaf971176a8748
7
+ data.tar.gz: 22c231cdb7622ba13ceac3c6def0178dee92b2d3e75b71038f3e5415e9e2d5bf0c2e7f1dd48005b7a2fdcf65d8787ea83788a5531d781b8e76314b3f7d596a86
@@ -8,19 +8,7 @@ jobs:
8
8
  runs-on: ubuntu-latest
9
9
  strategy:
10
10
  matrix:
11
- ruby:
12
- [
13
- "2.3",
14
- "2.4",
15
- "2.5",
16
- "2.6",
17
- "2.7",
18
- "3.0",
19
- "3.1",
20
- "3.2",
21
- "3.3",
22
- "head",
23
- ]
11
+ ruby: ["2.5", "2.6", "2.7", "3.0", "3.1", "3.2", "3.3", "3.4", "head"]
24
12
  steps:
25
13
  - uses: actions/checkout@v4
26
14
  - name: Set up Ruby
@@ -33,24 +21,9 @@ jobs:
33
21
  env:
34
22
  RUBYOPT: ${{ startsWith(matrix.ruby, 'head') && '--enable=frozen-string-literal' || '' }}
35
23
 
36
- test-legacy:
37
- runs-on: ubuntu-20.04
38
- strategy:
39
- matrix:
40
- ruby: ["2.0", "2.1", "2.2"]
41
- steps:
42
- - uses: actions/checkout@v4
43
- - name: Set up Ruby
44
- uses: ruby/setup-ruby@v1
45
- with:
46
- ruby-version: ${{ matrix.ruby }}
47
- bundler-cache: true
48
- - name: Run tests
49
- run: bundle exec rake test:units
50
-
51
24
  test-all:
52
25
  runs-on: ubuntu-latest
53
- needs: [test, test-legacy]
26
+ needs: test
54
27
  if: always()
55
28
  steps:
56
29
  - name: All tests ok
@@ -76,7 +49,7 @@ jobs:
76
49
  runs-on: ubuntu-latest
77
50
  strategy:
78
51
  matrix:
79
- ruby: ["2.0", "ruby"]
52
+ ruby: ["2.5", "ruby"]
80
53
  steps:
81
54
  - uses: actions/checkout@v4
82
55
  - name: Set up Ruby
@@ -7,6 +7,6 @@ jobs:
7
7
  steps:
8
8
  - uses: actions/checkout@master
9
9
  - name: Draft Release
10
- uses: toolmantim/release-drafter@v6.0.0
10
+ uses: toolmantim/release-drafter@v6.1.0
11
11
  env:
12
12
  GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
data/.rubocop.yml CHANGED
@@ -3,7 +3,7 @@ inherit_from: .rubocop_todo.yml
3
3
  AllCops:
4
4
  DisplayCopNames: true
5
5
  DisplayStyleGuide: true
6
- TargetRubyVersion: 2.0
6
+ TargetRubyVersion: 2.5
7
7
 
8
8
  Lint/AmbiguousBlockAssociation:
9
9
  Enabled: false
@@ -18,12 +18,12 @@ Style/ClassAndModuleChildren:
18
18
  Enabled: false
19
19
  Style/DoubleNegation:
20
20
  Enabled: false
21
- Style/FileName:
21
+ Naming/FileName:
22
22
  Exclude:
23
23
  - "Dangerfile"
24
- Style/IndentHeredoc:
24
+ Layout/IndentHeredoc:
25
25
  Enabled: false
26
- Style/SpaceAroundEqualsInParameterDefault:
26
+ Layout/SpaceAroundEqualsInParameterDefault:
27
27
  EnforcedStyle: no_space
28
28
  Style/StringLiterals:
29
29
  EnforcedStyle: double_quotes
@@ -47,7 +47,7 @@ Metrics/CyclomaticComplexity:
47
47
  Enabled: false
48
48
  Metrics/MethodLength:
49
49
  Enabled: false
50
- Style/PredicateName:
50
+ Naming/PredicateName:
51
51
  Enabled: false
52
52
  Metrics/LineLength:
53
53
  Enabled: false
@@ -59,5 +59,5 @@ Metrics/ClassLength:
59
59
  Enabled: false
60
60
  Metrics/ModuleLength:
61
61
  Enabled: false
62
- Style/AccessorMethodName:
62
+ Naming/AccessorMethodName:
63
63
  Enabled: false
data/.rubocop_todo.yml CHANGED
@@ -439,7 +439,7 @@ Style/MethodDefParentheses:
439
439
  # Offense count: 3
440
440
  # Configuration parameters: SupportedStyles.
441
441
  # SupportedStyles: snake_case, camelCase
442
- Style/MethodName:
442
+ Naming/MethodName:
443
443
  EnforcedStyle: snake_case
444
444
  Exclude:
445
445
  - 'test/unit/test_color.rb'
@@ -460,7 +460,7 @@ Style/NumericPredicate:
460
460
  - 'lib/sshkit/command.rb'
461
461
 
462
462
  # Offense count: 1
463
- Style/OpMethod:
463
+ Naming/BinaryOperatorParameterName:
464
464
  Exclude:
465
465
  - 'lib/sshkit/host.rb'
466
466
 
@@ -611,7 +611,7 @@ Style/UnneededPercentQ:
611
611
  # Offense count: 1
612
612
  # Configuration parameters: EnforcedStyle, SupportedStyles.
613
613
  # SupportedStyles: snake_case, normalcase, non_integer
614
- Style/VariableNumber:
614
+ Naming/VariableNumber:
615
615
  Exclude:
616
616
  - 'test/unit/backends/test_connection_pool.rb'
617
617
 
data/Gemfile CHANGED
@@ -1,8 +1,3 @@
1
1
  source 'https://rubygems.org'
2
2
 
3
3
  gemspec
4
-
5
- # public_suffix 3+ requires ruby 2.1+
6
- if Gem::Requirement.new('< 2.1').satisfied_by?(Gem::Version.new(RUBY_VERSION))
7
- gem 'public_suffix', '< 3'
8
- end
data/RELEASING.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  * You must have commit rights to the SSHKit repository.
6
6
  * You must have push rights for the sshkit gem on rubygems.org.
7
- * You must be using Ruby >= 2.1.0.
7
+ * You must be using Ruby >= 2.5.0.
8
8
 
9
9
  ## How to release
10
10
 
@@ -135,8 +135,7 @@ module SSHKit
135
135
  # Backends which extend the Abstract backend should implement the following methods:
136
136
  def upload!(_local, _remote, _options = {}) raise MethodUnavailableError end
137
137
  def download!(_remote, _local=nil, _options = {}) raise MethodUnavailableError end
138
- def execute_command(_cmd) raise MethodUnavailableError end
139
- private :execute_command # Can inline after Ruby 2.1
138
+ private def execute_command(_cmd) raise MethodUnavailableError end
140
139
 
141
140
  private
142
141
 
@@ -1,5 +1,4 @@
1
1
  require "monitor"
2
- require "thread"
3
2
 
4
3
  # Since we call to_s on new connection arguments and use that as a cache key, we
5
4
  # need to make sure the memory address of the object is not used as part of the
@@ -1,5 +1,3 @@
1
- require 'thread'
2
-
3
1
  module SSHKit
4
2
 
5
3
  module Runner
@@ -1,3 +1,3 @@
1
1
  module SSHKit
2
- VERSION = "1.23.2".freeze
2
+ VERSION = "1.24.0".freeze
3
3
  end
data/sshkit.gemspec CHANGED
@@ -19,19 +19,20 @@ Gem::Specification.new do |gem|
19
19
  gem.name = "sshkit"
20
20
  gem.require_paths = ["lib"]
21
21
  gem.version = SSHKit::VERSION
22
+ gem.required_ruby_version = ">= 2.5"
22
23
 
23
- gem.add_runtime_dependency('base64') if RUBY_VERSION >= "2.4"
24
+ gem.add_runtime_dependency('base64')
25
+ gem.add_runtime_dependency('logger')
24
26
  gem.add_runtime_dependency('net-ssh', '>= 2.8.0')
25
27
  gem.add_runtime_dependency('net-scp', '>= 1.1.2')
26
28
  gem.add_runtime_dependency('net-sftp', '>= 2.1.2')
27
- gem.add_runtime_dependency('ostruct') if RUBY_VERSION >= "2.5"
29
+ gem.add_runtime_dependency('ostruct')
28
30
 
29
31
  gem.add_development_dependency('danger')
30
32
  gem.add_development_dependency('minitest', '>= 5.0.0')
31
33
  gem.add_development_dependency('minitest-reporters')
32
- gem.add_development_dependency('rainbow', '~> 2.2.2')
33
34
  gem.add_development_dependency('rake')
34
- gem.add_development_dependency('rubocop', "~> 0.49.1")
35
+ gem.add_development_dependency('rubocop', "~> 0.52.0")
35
36
  gem.add_development_dependency('mocha')
36
37
 
37
38
  gem.add_development_dependency('bcrypt_pbkdf')
@@ -131,7 +131,7 @@ module SSHKit
131
131
 
132
132
  def test_test_does_not_raise_on_non_zero_exit_status
133
133
  Netssh.new(a_host) do |_host|
134
- test :false
134
+ test :false # rubocop:disable Lint/BooleanSymbol
135
135
  end.run
136
136
  end
137
137
 
@@ -151,7 +151,7 @@ module SSHKit
151
151
  # ensure we enable connection pool
152
152
  SSHKit::Backend::Netssh.pool.idle_timeout = 10
153
153
  Netssh.new(a_host) do |_host|
154
- test :false
154
+ test :false # rubocop:disable Lint/BooleanSymbol
155
155
  end.run
156
156
  sleep 2.5
157
157
  captured_command_result = nil
@@ -112,12 +112,7 @@ module SSHKit
112
112
  end
113
113
 
114
114
  def test_background_logs_deprecation_warnings
115
- deprecation_out =
116
- if RUBY_VERSION < "2.3"
117
- ''
118
- else
119
- +''
120
- end
115
+ deprecation_out = +''
121
116
  SSHKit.config.deprecation_output = deprecation_out
122
117
 
123
118
  ExampleBackend.new do
@@ -211,12 +211,7 @@ module SSHKit
211
211
  end
212
212
 
213
213
  def test_deprecated_stdtream_accessors
214
- deprecation_out =
215
- if RUBY_VERSION < "2.3"
216
- ''
217
- else
218
- +''
219
- end
214
+ deprecation_out = +''
220
215
 
221
216
  SSHKit.config.deprecation_output = deprecation_out
222
217
 
@@ -11,12 +11,7 @@ module SSHKit
11
11
  end
12
12
 
13
13
  def test_deprecation_output
14
- output =
15
- if RUBY_VERSION < "2.3"
16
- ''
17
- else
18
- +''
19
- end
14
+ output = +''
20
15
 
21
16
  SSHKit.config.deprecation_output = output
22
17
  SSHKit.config.deprecation_logger.log('Test')
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: sshkit
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.23.2
4
+ version: 1.24.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Lee Hambley
8
8
  - Tom Clements
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-10-15 00:00:00.000000000 Z
11
+ date: 2025-02-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: base64
@@ -24,6 +24,20 @@ dependencies:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
26
  version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: logger
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - ">="
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
34
+ type: :runtime
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
27
41
  - !ruby/object:Gem::Dependency
28
42
  name: net-ssh
29
43
  requirement: !ruby/object:Gem::Requirement
@@ -122,20 +136,6 @@ dependencies:
122
136
  - - ">="
123
137
  - !ruby/object:Gem::Version
124
138
  version: '0'
125
- - !ruby/object:Gem::Dependency
126
- name: rainbow
127
- requirement: !ruby/object:Gem::Requirement
128
- requirements:
129
- - - "~>"
130
- - !ruby/object:Gem::Version
131
- version: 2.2.2
132
- type: :development
133
- prerelease: false
134
- version_requirements: !ruby/object:Gem::Requirement
135
- requirements:
136
- - - "~>"
137
- - !ruby/object:Gem::Version
138
- version: 2.2.2
139
139
  - !ruby/object:Gem::Dependency
140
140
  name: rake
141
141
  requirement: !ruby/object:Gem::Requirement
@@ -156,14 +156,14 @@ dependencies:
156
156
  requirements:
157
157
  - - "~>"
158
158
  - !ruby/object:Gem::Version
159
- version: 0.49.1
159
+ version: 0.52.0
160
160
  type: :development
161
161
  prerelease: false
162
162
  version_requirements: !ruby/object:Gem::Requirement
163
163
  requirements:
164
164
  - - "~>"
165
165
  - !ruby/object:Gem::Version
166
- version: 0.49.1
166
+ version: 0.52.0
167
167
  - !ruby/object:Gem::Dependency
168
168
  name: mocha
169
169
  requirement: !ruby/object:Gem::Requirement
@@ -329,14 +329,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
329
329
  requirements:
330
330
  - - ">="
331
331
  - !ruby/object:Gem::Version
332
- version: '0'
332
+ version: '2.5'
333
333
  required_rubygems_version: !ruby/object:Gem::Requirement
334
334
  requirements:
335
335
  - - ">="
336
336
  - !ruby/object:Gem::Version
337
337
  version: '0'
338
338
  requirements: []
339
- rubygems_version: 3.6.0.dev
339
+ rubygems_version: 3.6.3
340
340
  specification_version: 4
341
341
  summary: SSHKit makes it easy to write structured, testable SSH commands in Ruby
342
342
  test_files: