sshkit 1.23.2 → 1.24.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
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: