net-sftp 4.0.0 → 4.0.1
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 +4 -4
- checksums.yaml.gz.sig +0 -0
- data/.github/workflows/ci.yml +11 -23
- data/.gitignore +1 -0
- data/CHANGES.txt +9 -0
- data/Gemfile +4 -2
- data/Rakefile +88 -1
- data/lib/net/sftp/version.rb +1 -1
- data/net-sftp-public_cert.pem +19 -18
- data/net-sftp.gemspec +3 -3
- data.tar.gz.sig +3 -1
- metadata +27 -26
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 1d42976ec0ca9fa6131be80a2d84e8e4b375a95dc410aa20f987ebf56b5717c3
|
|
4
|
+
data.tar.gz: 8b3b507190fed78c32dedd040e4d5d814ca36a7ecc0b72a6de402459f9f8b999
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 1ac5c4215ede73ce6f16b1db405647cc545d420c2e4ab87ba64e7db5efd4535a32549217a34b8a3989978dd47af1dd274f28a953c5f28c8d16f3f6948047e458
|
|
7
|
+
data.tar.gz: b61e54caed650be40e5b8a3d89f9d6cb52ffcb0c4fbe37ebfd2c2f20e5fca15405e7c06bd579b71d3458c6182fdc2e247caae4c1d5e0a5c6ed0adab73c205e6c
|
checksums.yaml.gz.sig
CHANGED
|
Binary file
|
data/.github/workflows/ci.yml
CHANGED
|
@@ -1,35 +1,23 @@
|
|
|
1
1
|
name: CI
|
|
2
|
-
on:
|
|
2
|
+
on:
|
|
3
|
+
pull_request:
|
|
4
|
+
push: { branches: master }
|
|
5
|
+
permissions:
|
|
6
|
+
contents: read
|
|
3
7
|
jobs:
|
|
4
8
|
test:
|
|
5
|
-
runs-on: ubuntu-
|
|
6
|
-
continue-on-error: ${{ matrix.flaky }}
|
|
9
|
+
runs-on: ubuntu-latest
|
|
7
10
|
strategy:
|
|
11
|
+
fail-fast: false
|
|
8
12
|
matrix:
|
|
9
|
-
ruby-version: [
|
|
10
|
-
|
|
11
|
-
include:
|
|
12
|
-
- ruby-version: "ruby-head"
|
|
13
|
-
flaky: true
|
|
14
|
-
- ruby-version: "jruby-9.2"
|
|
15
|
-
flaky: true
|
|
16
|
-
- ruby-version: "jruby-9.3"
|
|
17
|
-
flaky: true
|
|
18
|
-
- ruby-version: "jruby-head"
|
|
19
|
-
flaky: true
|
|
20
|
-
- ruby-version: "truffleruby-head"
|
|
21
|
-
flaky: true
|
|
13
|
+
ruby-version: ['2.6', '2.7', '3.0', '3.1', '3.2', '3.3', '3.4', '4.0', 'ruby-head', 'jruby', 'truffleruby']
|
|
14
|
+
continue-on-error: ${{ contains(fromJSON('["ruby-head", "jruby", "truffleruby"]'), matrix.ruby-version) }}
|
|
22
15
|
steps:
|
|
23
|
-
- uses: actions/checkout@
|
|
24
|
-
|
|
16
|
+
- uses: actions/checkout@v4
|
|
25
17
|
- name: Set up Ruby ${{ matrix.ruby-version }}
|
|
26
18
|
uses: ruby/setup-ruby@v1
|
|
27
19
|
with:
|
|
28
20
|
ruby-version: ${{ matrix.ruby-version }}
|
|
29
|
-
|
|
30
|
-
- name: Bundle install
|
|
31
|
-
run: |
|
|
32
|
-
gem install bundler
|
|
33
|
-
bundle install
|
|
21
|
+
bundler-cache: true
|
|
34
22
|
- name: Run Tests
|
|
35
23
|
run: bundle exec rake test
|
data/.gitignore
CHANGED
data/CHANGES.txt
CHANGED
data/Gemfile
CHANGED
|
@@ -4,8 +4,10 @@ source 'https://rubygems.org'
|
|
|
4
4
|
gemspec
|
|
5
5
|
|
|
6
6
|
# TODO: add to gemspec
|
|
7
|
-
gem "bundler", "
|
|
8
|
-
gem "rake", "
|
|
7
|
+
gem "bundler", ">= 1.11"
|
|
8
|
+
gem "rake", ">= 12.0"
|
|
9
|
+
gem "rdoc"
|
|
10
|
+
gem "logger" # no longer a default gem in Ruby 4.0+
|
|
9
11
|
|
|
10
12
|
gem 'byebug', group: %i[development test] if !Gem.win_platform? && RUBY_ENGINE == "ruby"
|
|
11
13
|
|
data/Rakefile
CHANGED
|
@@ -27,7 +27,7 @@ namespace :cert do
|
|
|
27
27
|
raw = File.read "net-sftp-public_cert.pem"
|
|
28
28
|
certificate = OpenSSL::X509::Certificate.new raw
|
|
29
29
|
raise Exception, "Not yet expired: #{certificate.not_after}" unless certificate.not_after < Time.now
|
|
30
|
-
sh "gem cert --build netssh@solutious.com --days
|
|
30
|
+
sh "gem cert --build netssh@solutious.com --days 1825 --private-key /mnt/gem/net-ssh-private_key.pem"
|
|
31
31
|
sh "mv gem-public_cert.pem net-sftp-public_cert.pem"
|
|
32
32
|
sh "gem cert --add net-sftp-public_cert.pem"
|
|
33
33
|
end
|
|
@@ -51,3 +51,90 @@ RDoc::Task.new do |rdoc|
|
|
|
51
51
|
rdoc.rdoc_files.include(file) if File.exist?(file)
|
|
52
52
|
}
|
|
53
53
|
end
|
|
54
|
+
|
|
55
|
+
def change_version(&block)
|
|
56
|
+
version_file = 'lib/net/sftp/version.rb'
|
|
57
|
+
require_relative version_file
|
|
58
|
+
pre = Net::SFTP::Version::PRE
|
|
59
|
+
tiny = Net::SFTP::Version::TINY
|
|
60
|
+
result = block[pre: pre, tiny: Net::SFTP::Version::TINY]
|
|
61
|
+
raise ArgumentError, "Version change logic should always return a pre" unless result.key?(:pre)
|
|
62
|
+
|
|
63
|
+
new_pre = result[:pre]
|
|
64
|
+
new_tiny = result[:tiny] || tiny
|
|
65
|
+
found = { pre: false, tiny: false }
|
|
66
|
+
File.open("#{version_file}.new", "w") do |f|
|
|
67
|
+
File.readlines(version_file).each do |line|
|
|
68
|
+
match =
|
|
69
|
+
if pre.nil?
|
|
70
|
+
/^(\s+PRE\s+=\s+)nil(\s*)$/.match(line)
|
|
71
|
+
else
|
|
72
|
+
/^(\s+PRE\s+=\s+")#{pre}("\s*)$/.match(line)
|
|
73
|
+
end
|
|
74
|
+
if match
|
|
75
|
+
prefix = match[1]
|
|
76
|
+
postfix = match[2]
|
|
77
|
+
prefix.delete_suffix!('"')
|
|
78
|
+
postfix.delete_prefix!('"')
|
|
79
|
+
new_line = "#{prefix}#{new_pre.inspect}#{postfix}"
|
|
80
|
+
puts "Changing:\n - #{line} + #{new_line}"
|
|
81
|
+
line = new_line
|
|
82
|
+
found[:pre] = true
|
|
83
|
+
end
|
|
84
|
+
|
|
85
|
+
if new_tiny != tiny
|
|
86
|
+
match = /^(\s+TINY\s+=\s+)#{tiny}(\s*)$/.match(line)
|
|
87
|
+
if match
|
|
88
|
+
prefix = match[1]
|
|
89
|
+
postfix = match[2]
|
|
90
|
+
new_line = "#{prefix}#{new_tiny}#{postfix}"
|
|
91
|
+
puts "Changing:\n - #{line} + #{new_line}"
|
|
92
|
+
line = new_line
|
|
93
|
+
found[:tiny] = true
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
|
|
97
|
+
f.write(line)
|
|
98
|
+
end
|
|
99
|
+
raise ArgumentError, "Cound not find line: PRE = \"#{pre}\" in #{version_file}" unless found[:pre]
|
|
100
|
+
raise ArgumentError, "Cound not find line: TINY = \"#{tiny}\" in #{version_file}" unless found[:tiny] || new_tiny == tiny
|
|
101
|
+
end
|
|
102
|
+
|
|
103
|
+
FileUtils.mv version_file, "#{version_file}.old"
|
|
104
|
+
FileUtils.mv "#{version_file}.new", version_file
|
|
105
|
+
end
|
|
106
|
+
|
|
107
|
+
namespace :vbump do
|
|
108
|
+
desc "Final release"
|
|
109
|
+
task :final do
|
|
110
|
+
change_version do |pre:, tiny:|
|
|
111
|
+
_ = tiny
|
|
112
|
+
if pre.nil?
|
|
113
|
+
{ tiny: tiny + 1, pre: nil }
|
|
114
|
+
else
|
|
115
|
+
raise ArgumentError, "Unexpected pre: #{pre}" if pre.nil?
|
|
116
|
+
|
|
117
|
+
{ pre: nil }
|
|
118
|
+
end
|
|
119
|
+
end
|
|
120
|
+
end
|
|
121
|
+
|
|
122
|
+
desc "Increment prerelease"
|
|
123
|
+
task :pre, [:type] do |_t, args|
|
|
124
|
+
change_version do |pre:, tiny:|
|
|
125
|
+
puts " PRE => #{pre.inspect}"
|
|
126
|
+
match = /^([a-z]+)(\d+)/.match(pre)
|
|
127
|
+
raise ArgumentError, "Unexpected pre: #{pre}" if match.nil? && args[:type].nil?
|
|
128
|
+
|
|
129
|
+
if match.nil? || (!args[:type].nil? && args[:type] != match[1])
|
|
130
|
+
if pre.nil?
|
|
131
|
+
{ pre: "#{args[:type]}1", tiny: tiny + 1 }
|
|
132
|
+
else
|
|
133
|
+
{ pre: "#{args[:type]}1" }
|
|
134
|
+
end
|
|
135
|
+
else
|
|
136
|
+
{ pre: "#{match[1]}#{match[2].to_i + 1}" }
|
|
137
|
+
end
|
|
138
|
+
end
|
|
139
|
+
end
|
|
140
|
+
end
|
data/lib/net/sftp/version.rb
CHANGED
data/net-sftp-public_cert.pem
CHANGED
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
-----BEGIN CERTIFICATE-----
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
2
|
+
MIIDeDCCAmCgAwIBAgIBATANBgkqhkiG9w0BAQsFADBBMQ8wDQYDVQQDDAZuZXRz
|
|
3
|
+
c2gxGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZFgNj
|
|
4
|
+
b20wHhcNMjYxMDIyMDk1NDI1WhcNMjcxMDIyMDk1NDI1WjBBMQ8wDQYDVQQDDAZu
|
|
5
|
+
ZXRzc2gxGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZ
|
|
6
|
+
FgNjb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGJ4TbZ9H+qZ08
|
|
7
|
+
pQfJhPJTHaDCyQvCsKTFrL5O9z3tllQ7B/zksMMM+qFBpNYu9HCcg4yBATacE/PB
|
|
8
|
+
qVVyUrpr6lbH/XwoN5ljXm+bdCfmnjZvTCL2FTE6o+bcnaF0IsJyC0Q2B1fbWdXN
|
|
9
|
+
6Off1ZWoUk6We2BIM1bn6QJLxBpGyYhvOPXsYoqSuzDf2SJDDsWFZ8kV5ON13Ohm
|
|
10
|
+
JbBzn0oD8HF8FuYOewwsC0C1q4w7E5GtvHcQ5juweS7+RKsyDcVcVrLuNzoGRttS
|
|
11
|
+
KP4yMn+TzaXijyjRg7gECfJr3TGASaA4bQsILFGG5dAWcwO4OMrZedR7SHj/o0Kf
|
|
12
|
+
3gL7P0axAgMBAAGjezB5MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQW
|
|
13
|
+
BBQF8qLA7Z4zg0SJGtUbv3eoQ8tjIzAfBgNVHREEGDAWgRRuZXRzc2hAc29sdXRp
|
|
14
|
+
b3VzLmNvbTAfBgNVHRIEGDAWgRRuZXRzc2hAc29sdXRpb3VzLmNvbTANBgkqhkiG
|
|
15
|
+
9w0BAQsFAAOCAQEAbVrRpiCFmHDMLNU+SCjpg43snWYksQOtejPPTEMdOc9cCmmv
|
|
16
|
+
ctJbaPIySLUgzwFbQDZStDPbLJmIujh0fm5dHp/sDJpvPZ3Mm3FfzWQMJqzBx4uk
|
|
17
|
+
OMx00yJK8VeFrwUViE3zO5raWvw85dUybp25pgaKGW4AA5mJ/2UHqYLc4lefKFKK
|
|
18
|
+
9xFsyYSciMEKyAsUNSNTJzPKUo2vn7TNF/pS0ZL+h8Qkr0A0F0ncfj7uM1kOWjO0
|
|
19
|
+
mMdUtmMoVbjbik3hqkY/18G03c3PoFNpL38VLKuyyROYz1DaCqOaRju3sbOoirD+
|
|
20
|
+
piQTZDCWxeKuX0Iuxq02uxkYHfoGB6In0y3OOQ==
|
|
20
21
|
-----END CERTIFICATE-----
|
data/net-sftp.gemspec
CHANGED
|
@@ -31,16 +31,16 @@ Gem::Specification.new do |spec|
|
|
|
31
31
|
spec.specification_version = 3
|
|
32
32
|
|
|
33
33
|
if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
|
|
34
|
-
spec.add_runtime_dependency(%q<net-ssh>, [">= 5.0.0", "<
|
|
34
|
+
spec.add_runtime_dependency(%q<net-ssh>, [">= 5.0.0", "< 9.0.0"])
|
|
35
35
|
spec.add_development_dependency(%q<minitest>, [">= 5"])
|
|
36
36
|
spec.add_development_dependency(%q<mocha>, [">= 0"])
|
|
37
37
|
else
|
|
38
|
-
spec.add_dependency(%q<net-ssh>, [">= 5.0.0", "<
|
|
38
|
+
spec.add_dependency(%q<net-ssh>, [">= 5.0.0", "< 9.0.0"])
|
|
39
39
|
spec.add_dependency(%q<minitest>, [">= 5"])
|
|
40
40
|
spec.add_dependency(%q<mocha>, [">= 0"])
|
|
41
41
|
end
|
|
42
42
|
else
|
|
43
|
-
spec.add_dependency(%q<net-ssh>, [">= 5.0.0", "<
|
|
43
|
+
spec.add_dependency(%q<net-ssh>, [">= 5.0.0", "< 9.0.0"])
|
|
44
44
|
spec.add_dependency(%q<minitest>, [">= 5"])
|
|
45
45
|
spec.add_dependency(%q<test-unit>, [">= 0"])
|
|
46
46
|
spec.add_dependency(%q<mocha>, [">= 0"])
|
data.tar.gz.sig
CHANGED
metadata
CHANGED
|
@@ -1,37 +1,38 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: net-sftp
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 4.0.
|
|
4
|
+
version: 4.0.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Jamis Buck
|
|
8
8
|
- Delano Mandelbaum
|
|
9
9
|
- Miklós Fazekas
|
|
10
|
-
autorequire:
|
|
10
|
+
autorequire:
|
|
11
11
|
bindir: exe
|
|
12
12
|
cert_chain:
|
|
13
13
|
- |
|
|
14
14
|
-----BEGIN CERTIFICATE-----
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
15
|
+
MIIDeDCCAmCgAwIBAgIBATANBgkqhkiG9w0BAQsFADBBMQ8wDQYDVQQDDAZuZXRz
|
|
16
|
+
c2gxGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZFgNj
|
|
17
|
+
b20wHhcNMjYxMDIyMDk1NDI1WhcNMjcxMDIyMDk1NDI1WjBBMQ8wDQYDVQQDDAZu
|
|
18
|
+
ZXRzc2gxGTAXBgoJkiaJk/IsZAEZFglzb2x1dGlvdXMxEzARBgoJkiaJk/IsZAEZ
|
|
19
|
+
FgNjb20wggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDGJ4TbZ9H+qZ08
|
|
20
|
+
pQfJhPJTHaDCyQvCsKTFrL5O9z3tllQ7B/zksMMM+qFBpNYu9HCcg4yBATacE/PB
|
|
21
|
+
qVVyUrpr6lbH/XwoN5ljXm+bdCfmnjZvTCL2FTE6o+bcnaF0IsJyC0Q2B1fbWdXN
|
|
22
|
+
6Off1ZWoUk6We2BIM1bn6QJLxBpGyYhvOPXsYoqSuzDf2SJDDsWFZ8kV5ON13Ohm
|
|
23
|
+
JbBzn0oD8HF8FuYOewwsC0C1q4w7E5GtvHcQ5juweS7+RKsyDcVcVrLuNzoGRttS
|
|
24
|
+
KP4yMn+TzaXijyjRg7gECfJr3TGASaA4bQsILFGG5dAWcwO4OMrZedR7SHj/o0Kf
|
|
25
|
+
3gL7P0axAgMBAAGjezB5MAkGA1UdEwQCMAAwCwYDVR0PBAQDAgSwMB0GA1UdDgQW
|
|
26
|
+
BBQF8qLA7Z4zg0SJGtUbv3eoQ8tjIzAfBgNVHREEGDAWgRRuZXRzc2hAc29sdXRp
|
|
27
|
+
b3VzLmNvbTAfBgNVHRIEGDAWgRRuZXRzc2hAc29sdXRpb3VzLmNvbTANBgkqhkiG
|
|
28
|
+
9w0BAQsFAAOCAQEAbVrRpiCFmHDMLNU+SCjpg43snWYksQOtejPPTEMdOc9cCmmv
|
|
29
|
+
ctJbaPIySLUgzwFbQDZStDPbLJmIujh0fm5dHp/sDJpvPZ3Mm3FfzWQMJqzBx4uk
|
|
30
|
+
OMx00yJK8VeFrwUViE3zO5raWvw85dUybp25pgaKGW4AA5mJ/2UHqYLc4lefKFKK
|
|
31
|
+
9xFsyYSciMEKyAsUNSNTJzPKUo2vn7TNF/pS0ZL+h8Qkr0A0F0ncfj7uM1kOWjO0
|
|
32
|
+
mMdUtmMoVbjbik3hqkY/18G03c3PoFNpL38VLKuyyROYz1DaCqOaRju3sbOoirD+
|
|
33
|
+
piQTZDCWxeKuX0Iuxq02uxkYHfoGB6In0y3OOQ==
|
|
33
34
|
-----END CERTIFICATE-----
|
|
34
|
-
date:
|
|
35
|
+
date: 2026-10-22 00:00:00.000000000 Z
|
|
35
36
|
dependencies:
|
|
36
37
|
- !ruby/object:Gem::Dependency
|
|
37
38
|
name: net-ssh
|
|
@@ -42,7 +43,7 @@ dependencies:
|
|
|
42
43
|
version: 5.0.0
|
|
43
44
|
- - "<"
|
|
44
45
|
- !ruby/object:Gem::Version
|
|
45
|
-
version:
|
|
46
|
+
version: 9.0.0
|
|
46
47
|
type: :runtime
|
|
47
48
|
prerelease: false
|
|
48
49
|
version_requirements: !ruby/object:Gem::Requirement
|
|
@@ -52,7 +53,7 @@ dependencies:
|
|
|
52
53
|
version: 5.0.0
|
|
53
54
|
- - "<"
|
|
54
55
|
- !ruby/object:Gem::Version
|
|
55
|
-
version:
|
|
56
|
+
version: 9.0.0
|
|
56
57
|
- !ruby/object:Gem::Dependency
|
|
57
58
|
name: minitest
|
|
58
59
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -131,7 +132,7 @@ homepage: https://github.com/net-ssh/net-sftp
|
|
|
131
132
|
licenses:
|
|
132
133
|
- MIT
|
|
133
134
|
metadata: {}
|
|
134
|
-
post_install_message:
|
|
135
|
+
post_install_message:
|
|
135
136
|
rdoc_options: []
|
|
136
137
|
require_paths:
|
|
137
138
|
- lib
|
|
@@ -146,8 +147,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
146
147
|
- !ruby/object:Gem::Version
|
|
147
148
|
version: '0'
|
|
148
149
|
requirements: []
|
|
149
|
-
rubygems_version: 3.
|
|
150
|
-
signing_key:
|
|
150
|
+
rubygems_version: 3.3.3
|
|
151
|
+
signing_key:
|
|
151
152
|
specification_version: 3
|
|
152
153
|
summary: A pure Ruby implementation of the SFTP client protocol.
|
|
153
154
|
test_files: []
|
metadata.gz.sig
CHANGED
|
Binary file
|