net-ssh 6.3.0.beta1 → 7.0.0.beta1

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.
Files changed (73) 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 +4 -10
  7. data/.github/workflows/rubocop.yml +13 -0
  8. data/.rubocop.yml +2 -1
  9. data/.rubocop_todo.yml +244 -237
  10. data/Dockerfile +27 -0
  11. data/Dockerfile.openssl3 +17 -0
  12. data/README.md +7 -1
  13. data/Rakefile +4 -0
  14. data/docker-compose.yml +23 -0
  15. data/lib/net/ssh/authentication/agent.rb +13 -13
  16. data/lib/net/ssh/authentication/certificate.rb +4 -4
  17. data/lib/net/ssh/authentication/ed25519.rb +5 -5
  18. data/lib/net/ssh/authentication/key_manager.rb +18 -5
  19. data/lib/net/ssh/authentication/methods/abstract.rb +12 -2
  20. data/lib/net/ssh/authentication/methods/hostbased.rb +3 -3
  21. data/lib/net/ssh/authentication/methods/keyboard_interactive.rb +1 -1
  22. data/lib/net/ssh/authentication/methods/none.rb +1 -1
  23. data/lib/net/ssh/authentication/methods/password.rb +1 -1
  24. data/lib/net/ssh/authentication/methods/publickey.rb +56 -14
  25. data/lib/net/ssh/authentication/pageant.rb +8 -8
  26. data/lib/net/ssh/authentication/pub_key_fingerprint.rb +2 -2
  27. data/lib/net/ssh/authentication/session.rb +5 -3
  28. data/lib/net/ssh/buffer.rb +41 -26
  29. data/lib/net/ssh/buffered_io.rb +6 -6
  30. data/lib/net/ssh/config.rb +4 -4
  31. data/lib/net/ssh/connection/channel.rb +13 -13
  32. data/lib/net/ssh/connection/event_loop.rb +8 -8
  33. data/lib/net/ssh/connection/session.rb +13 -13
  34. data/lib/net/ssh/errors.rb +2 -2
  35. data/lib/net/ssh/key_factory.rb +7 -7
  36. data/lib/net/ssh/known_hosts.rb +5 -4
  37. data/lib/net/ssh/prompt.rb +1 -1
  38. data/lib/net/ssh/proxy/http.rb +1 -1
  39. data/lib/net/ssh/proxy/https.rb +2 -2
  40. data/lib/net/ssh/proxy/socks4.rb +1 -1
  41. data/lib/net/ssh/proxy/socks5.rb +1 -1
  42. data/lib/net/ssh/service/forward.rb +4 -4
  43. data/lib/net/ssh/test/channel.rb +3 -3
  44. data/lib/net/ssh/test/extensions.rb +6 -6
  45. data/lib/net/ssh/test/packet.rb +1 -1
  46. data/lib/net/ssh/test/script.rb +3 -3
  47. data/lib/net/ssh/test/socket.rb +1 -1
  48. data/lib/net/ssh/test.rb +3 -3
  49. data/lib/net/ssh/transport/algorithms.rb +12 -12
  50. data/lib/net/ssh/transport/cipher_factory.rb +15 -15
  51. data/lib/net/ssh/transport/ctr.rb +3 -3
  52. data/lib/net/ssh/transport/hmac/abstract.rb +4 -4
  53. data/lib/net/ssh/transport/hmac.rb +12 -12
  54. data/lib/net/ssh/transport/identity_cipher.rb +1 -1
  55. data/lib/net/ssh/transport/kex/abstract.rb +3 -3
  56. data/lib/net/ssh/transport/kex/abstract5656.rb +1 -1
  57. data/lib/net/ssh/transport/kex/curve25519_sha256.rb +1 -1
  58. data/lib/net/ssh/transport/kex/diffie_hellman_group1_sha1.rb +21 -21
  59. data/lib/net/ssh/transport/kex/diffie_hellman_group_exchange_sha1.rb +1 -1
  60. data/lib/net/ssh/transport/kex/ecdh_sha2_nistp256.rb +2 -2
  61. data/lib/net/ssh/transport/kex.rb +7 -7
  62. data/lib/net/ssh/transport/key_expander.rb +1 -1
  63. data/lib/net/ssh/transport/openssl.rb +32 -11
  64. data/lib/net/ssh/transport/packet_stream.rb +1 -1
  65. data/lib/net/ssh/transport/session.rb +6 -6
  66. data/lib/net/ssh/transport/state.rb +1 -1
  67. data/lib/net/ssh/version.rb +2 -2
  68. data/lib/net/ssh.rb +3 -3
  69. data/net-ssh.gemspec +2 -2
  70. data.tar.gz.sig +0 -0
  71. metadata +13 -7
  72. metadata.gz.sig +1 -2
  73. data/.travis.yml +0 -51
@@ -46,10 +46,10 @@ module Net
46
46
  end
47
47
 
48
48
  # The major component of this version of the Net::SSH library
49
- MAJOR = 6
49
+ MAJOR = 7
50
50
 
51
51
  # The minor component of this version of the Net::SSH library
52
- MINOR = 3
52
+ MINOR = 0
53
53
 
54
54
  # The tiny component of this version of the Net::SSH library
55
55
  TINY = 0
data/lib/net/ssh.rb CHANGED
@@ -214,7 +214,7 @@ module Net
214
214
  # * :fingerprint_hash => 'MD5' or 'SHA256', defaults to 'SHA256'
215
215
  # If +user+ parameter is nil it defaults to USER from ssh_config, or
216
216
  # local username
217
- def self.start(host, user=nil, options={}, &block)
217
+ def self.start(host, user = nil, options = {}, &block)
218
218
  invalid_options = options.keys - VALID_OPTIONS
219
219
  if invalid_options.any?
220
220
  raise ArgumentError, "invalid option(s): #{invalid_options.join(', ')}"
@@ -301,9 +301,9 @@ module Net
301
301
  end
302
302
 
303
303
  def self._sanitize_options(options)
304
- invalid_option_values = [nil,[nil]]
304
+ invalid_option_values = [nil, [nil]]
305
305
  unless (options.values & invalid_option_values).empty?
306
- nil_options = options.select { |_k,v| invalid_option_values.include?(v) }.map(&:first)
306
+ nil_options = options.select { |_k, v| invalid_option_values.include?(v) }.map(&:first)
307
307
  Kernel.warn "#{caller_locations(2, 1)[0]}: Passing nil, or [nil] to Net::SSH.start is deprecated for keys: #{nil_options.join(', ')}"
308
308
  end
309
309
  end
data/net-ssh.gemspec CHANGED
@@ -15,7 +15,7 @@ Gem::Specification.new do |spec|
15
15
  spec.description = %q{Net::SSH: a pure-Ruby implementation of the SSH2 client protocol. It allows you to write programs that invoke and interact with processes on remote servers, via SSH2.}
16
16
  spec.homepage = "https://github.com/net-ssh/net-ssh"
17
17
  spec.license = "MIT"
18
- spec.required_ruby_version = Gem::Requirement.new(">= 2.5")
18
+ spec.required_ruby_version = Gem::Requirement.new(">= 2.6")
19
19
  spec.metadata = {
20
20
  "changelog_uri" => "https://github.com/net-ssh/net-ssh/blob/master/CHANGES.txt"
21
21
  }
@@ -40,5 +40,5 @@ Gem::Specification.new do |spec|
40
40
  spec.add_development_dependency "minitest", "~> 5.10"
41
41
  spec.add_development_dependency "mocha", "~> 1.11.2"
42
42
  spec.add_development_dependency "rake", "~> 12.0"
43
- spec.add_development_dependency "rubocop", "~> 1.12.1"
43
+ spec.add_development_dependency "rubocop", "~> 1.28.0"
44
44
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: net-ssh
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.3.0.beta1
4
+ version: 7.0.0.beta1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jamis Buck
@@ -31,7 +31,7 @@ cert_chain:
31
31
  i4SfC5m5UXIVZvOBYiMuZ/1B2m6R9xU41027zfOVwRFNtlVDiNfQRq6sDmz44At/
32
32
  dv8pkxXDgySe41vzlRXFsgIgz5A=
33
33
  -----END CERTIFICATE-----
34
- date: 2021-08-10 00:00:00.000000000 Z
34
+ date: 2022-04-30 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: bcrypt_pbkdf
@@ -137,14 +137,14 @@ dependencies:
137
137
  requirements:
138
138
  - - "~>"
139
139
  - !ruby/object:Gem::Version
140
- version: 1.12.1
140
+ version: 1.28.0
141
141
  type: :development
142
142
  prerelease: false
143
143
  version_requirements: !ruby/object:Gem::Requirement
144
144
  requirements:
145
145
  - - "~>"
146
146
  - !ruby/object:Gem::Version
147
- version: 1.12.1
147
+ version: 1.28.0
148
148
  description: 'Net::SSH: a pure-Ruby implementation of the SSH2 client protocol. It
149
149
  allows you to write programs that invoke and interact with processes on remote servers,
150
150
  via SSH2.'
@@ -156,12 +156,17 @@ extra_rdoc_files:
156
156
  - LICENSE.txt
157
157
  - README.md
158
158
  files:
159
+ - ".dockerignore"
160
+ - ".github/config/rubocop_linter_action.yml"
161
+ - ".github/workflows/ci-with-docker.yml"
159
162
  - ".github/workflows/ci.yml"
163
+ - ".github/workflows/rubocop.yml"
160
164
  - ".gitignore"
161
165
  - ".rubocop.yml"
162
166
  - ".rubocop_todo.yml"
163
- - ".travis.yml"
164
167
  - CHANGES.txt
168
+ - Dockerfile
169
+ - Dockerfile.openssl3
165
170
  - Gemfile
166
171
  - Gemfile.noed25519
167
172
  - ISSUE_TEMPLATE.md
@@ -171,6 +176,7 @@ files:
171
176
  - Rakefile
172
177
  - THANKS.txt
173
178
  - appveyor.yml
179
+ - docker-compose.yml
174
180
  - lib/net/ssh.rb
175
181
  - lib/net/ssh/authentication/agent.rb
176
182
  - lib/net/ssh/authentication/certificate.rb
@@ -278,14 +284,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
278
284
  requirements:
279
285
  - - ">="
280
286
  - !ruby/object:Gem::Version
281
- version: '2.5'
287
+ version: '2.6'
282
288
  required_rubygems_version: !ruby/object:Gem::Requirement
283
289
  requirements:
284
290
  - - ">"
285
291
  - !ruby/object:Gem::Version
286
292
  version: 1.3.1
287
293
  requirements: []
288
- rubygems_version: 3.0.3
294
+ rubygems_version: 3.1.6
289
295
  signing_key:
290
296
  specification_version: 4
291
297
  summary: 'Net::SSH: a pure-Ruby implementation of the SSH2 client protocol.'
metadata.gz.sig CHANGED
@@ -1,2 +1 @@
1
- ������^J��Z��"��$���N�Y=�o����ε{�2Э����*�z�A)'�W���c�{�E�<��a��l������+ʍ��EO ڀ���:%X>;0v]snf��_�������@��rRX-�Q �w-���N?��\��1 |$C.��J�-N?���m�-���OQ(,
2
- 4<�z���LY[�E�j��7� ���6��S��Ʌ��9�ŝ��(�D#���8�kz�'1�P�_>�d�
1
+ ���yc@ε%�sc��\�R굧g �jRV��s��:��[dZ�@�?���G��)��$�W�VJ�y@}褭9�%�{0����%�2��� �!��*W���!S(v)Q��婁<uCY51�@�Σp����z[�;<��.7v609X��K%`�+WPLu����%��s@E2��xݹ�so��d�c��VUUS�������?����l�LO���YVT���S�0��'9J��� ��TlK
data/.travis.yml DELETED
@@ -1,51 +0,0 @@
1
- language: ruby
2
- sudo: true
3
- dist: focal
4
-
5
- addon:
6
- hosts:
7
- gateway.netssh
8
-
9
- rvm:
10
- - 2.5.7
11
- - 2.6.5
12
- - 2.7.0
13
- - 3.0.0
14
- - jruby-9.2.11.1
15
- - rbx-3.107
16
- - ruby-head
17
- env:
18
- NET_SSH_RUN_INTEGRATION_TESTS=1
19
-
20
- matrix:
21
- exclude:
22
- - rvm: rbx-3.107
23
- include:
24
- - rvm: rbx-3.107
25
- env: NET_SSH_RUN_INTEGRATION_TESTS=
26
- - rvm: jruby-9.2.11.1
27
- env: JRUBY_OPTS='--client -J-XX:+TieredCompilation -J-XX:TieredStopAtLevel=1 -Xcext.enabled=false -J-Xss2m -Xcompile.invokedynamic=false' NET_SSH_RUN_INTEGRATION_TESTS=
28
- fast_finish: true
29
- allow_failures:
30
- - rvm: rbx-3.107
31
- - rvm: jruby-9.2.11.1
32
- - rvm: ruby-head
33
-
34
- install:
35
- - export JRUBY_OPTS='--client -J-XX:+TieredCompilation -J-XX:TieredStopAtLevel=1 -Xcext.enabled=false -J-Xss2m -Xcompile.invokedynamic=false'
36
- - sudo pip install ansible urllib3 pyOpenSSL ndg-httpsclient pyasn1
37
- - gem install bundler
38
- - gem list bundler
39
- - bundle install
40
- - bundle -v
41
- - BUNDLE_GEMFILE=./Gemfile.noed25519 bundle install
42
- - sudo ansible-galaxy install rvm.ruby
43
- - sudo chown -R travis:travis /home/travis/.ansible
44
- - ansible-playbook ./test/integration/playbook.yml -i "localhost," --become -c local -e 'no_rvm=true' -e 'myuser=travis' -e 'mygroup=travis' -e 'homedir=/home/travis'
45
-
46
- script:
47
- - ssh -V
48
- - bundle exec rake test
49
- - BUNDLE_GEMFILE=./Gemfile.noed25519 bundle exec rake test
50
- - bundle exec rake test_test
51
- - bundle exec rubocop