winrm-fs 1.1.1 → 1.2.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
  SHA1:
3
- metadata.gz: 1057dec384d2432aa4fde74172e39ace17d404e0
4
- data.tar.gz: c5b4d5957364bf7cde02c66a03012dfe1f27e36f
3
+ metadata.gz: f0f709ab1c583eaa7566b5adc461aaf46cf2b65e
4
+ data.tar.gz: c8cdda9ef2983370cbc964dc9d89eddf348dbd22
5
5
  SHA512:
6
- metadata.gz: 0f56b0db7a4e6ab60941984acb19d32406a14fe2f09e1e75859b939ec43a0d17a197da5f61048a649be6411420869f48f17831072d9bb34b373ea2119d2b6d1e
7
- data.tar.gz: ee4dfcf750e0978259d4503658dc3a87b534d235ece19d5004e1da95c2424f95f41e852fcb5152be40c8cdbec283d3420f880560857401d7f62c79cc3f62024c
6
+ metadata.gz: b0d362238781bb50982b7b3f8947b754c3dde755fe4f727197579d943534c717db891b3a197150f2ad975661d12bfc8be66b2e6e9eee9f1395efa6e70cf15a39
7
+ data.tar.gz: f5daea2da6036290bca6446936f6d79105578a8106746c809a3887725ba2d7171470451f5c7e0290a8ec4264f7f597af86e77dcb0b01697d697ca35dd433bcc9
data/.rspec CHANGED
@@ -1,3 +1,2 @@
1
1
  --color
2
- --format nested
3
2
  --require spec_helper
@@ -1,4 +1,6 @@
1
- Style/FileName:
1
+ inherit_from: .rubocop_todo.yml
2
+
3
+ Naming/FileName:
2
4
  Exclude:
3
5
  - 'lib/winrm-fs.rb'
4
6
 
@@ -6,4 +8,7 @@ Style/Encoding:
6
8
  Enabled: true
7
9
 
8
10
  Metrics/LineLength:
9
- Max: 100
11
+ Max: 120
12
+
13
+ Metrics/AbcSize:
14
+ Max: 25
@@ -0,0 +1,72 @@
1
+ # This configuration was generated by
2
+ # `rubocop --auto-gen-config`
3
+ # on 2017-12-12 22:48:53 +0100 using RuboCop version 0.52.0.
4
+ # The point is for the user to remove these configuration records
5
+ # one by one as the offenses are removed from the code base.
6
+ # Note that changes in the inspected code, or installation of new
7
+ # versions of RuboCop, may require this file to be generated again.
8
+
9
+ # Offense count: 1
10
+ # Cop supports --auto-correct.
11
+ # Configuration parameters: EnforcedStyle.
12
+ # SupportedStyles: auto_detection, squiggly, active_support, powerpack, unindent
13
+ Layout/IndentHeredoc:
14
+ Exclude:
15
+ - 'spec/matchers.rb'
16
+
17
+ # Offense count: 6
18
+ # Configuration parameters: CountComments, ExcludedMethods.
19
+ Metrics/BlockLength:
20
+ Max: 185
21
+
22
+ # Offense count: 3
23
+ # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
24
+ # URISchemes: http, https
25
+ Metrics/LineLength:
26
+ Max: 106
27
+
28
+ # Offense count: 4
29
+ # Configuration parameters: Blacklist.
30
+ # Blacklist: END, (?-mix:EO[A-Z]{1})
31
+ Naming/HeredocDelimiterNaming:
32
+ Exclude:
33
+ - 'lib/winrm-fs/core/file_transporter.rb'
34
+ - 'spec/matchers.rb'
35
+ - 'winrm-fs.gemspec'
36
+
37
+ # Offense count: 2
38
+ # Cop supports --auto-correct.
39
+ # Configuration parameters: AutoCorrect.
40
+ Performance/HashEachMethods:
41
+ Exclude:
42
+ - 'lib/winrm-fs/core/file_transporter.rb'
43
+
44
+ # Offense count: 1
45
+ # Configuration parameters: .
46
+ # SupportedStyles: annotated, template, unannotated
47
+ Style/FormatStringToken:
48
+ EnforcedStyle: unannotated
49
+
50
+ # Offense count: 4
51
+ # Cop supports --auto-correct.
52
+ # Configuration parameters: AutoCorrect, EnforcedStyle.
53
+ # SupportedStyles: predicate, comparison
54
+ Style/NumericPredicate:
55
+ Exclude:
56
+ - 'spec/**/*'
57
+ - 'lib/winrm-fs/core/file_transporter.rb'
58
+ - 'lib/winrm-fs/file_manager.rb'
59
+
60
+ # Offense count: 1
61
+ # Cop supports --auto-correct.
62
+ # Configuration parameters: EnforcedStyle, AllowInnerSlashes.
63
+ # SupportedStyles: slashes, percent_r, mixed
64
+ Style/RegexpLiteral:
65
+ Exclude:
66
+ - 'lib/winrm-fs/core/tmp_zip.rb'
67
+
68
+ # Offense count: 3
69
+ # Configuration parameters: AllowHeredoc, AllowURI, URISchemes, IgnoreCopDirectives, IgnoredPatterns.
70
+ # URISchemes: http, https
71
+ Metrics/LineLength:
72
+ Max: 106
@@ -1,7 +1,8 @@
1
1
  language: ruby
2
2
  rvm:
3
- - 2.0.0
4
3
  - 2.1.0
4
+ - 2.3.4
5
+ - 2.4.1
5
6
 
6
7
  # This prevents testing branches that are created just for PRs
7
8
  branches:
data/Gemfile CHANGED
@@ -1,4 +1,3 @@
1
- # encoding: UTF-8
2
1
  source 'https://rubygems.org'
3
2
  gemspec
4
3
 
data/Rakefile CHANGED
@@ -1,4 +1,3 @@
1
- # encoding: UTF-8
2
1
  require 'rubygems'
3
2
  require 'bundler/setup'
4
3
  require 'rspec/core/rake_task'
@@ -23,6 +22,6 @@ end
23
22
 
24
23
  RuboCop::RakeTask.new
25
24
 
26
- task default: [:spec, :rubocop]
25
+ task default: %i[spec rubocop]
27
26
 
28
- task all: [:default, :integration]
27
+ task all: %i[default integration]
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.1.1
1
+ 1.2.0
@@ -1,8 +1,7 @@
1
- # encoding: UTF-8
2
1
  # -*- mode: ruby -*-
3
2
  # vi: set ft=ruby :
4
3
 
5
- VAGRANTFILE_API_VERSION = '2'
4
+ VAGRANTFILE_API_VERSION = '2'.freeze
6
5
 
7
6
  Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
8
7
  config.vm.box = 'mwrock/WindowsNano'
@@ -1,5 +1,4 @@
1
1
  #!/usr/bin/env ruby
2
- # encoding: UTF-8
3
2
  #
4
3
  # Copyright 2014 Shawn Neal <sneal@sneal.net>
5
4
  #
@@ -1,4 +1,7 @@
1
1
  # WinRM-fs Gem Changelog
2
+ # 1.2.0
3
+ - Add ability to download directories
4
+
2
5
  # 1.1.1
3
6
  - Remove empty items from powershell pipeline when extracting zip files
4
7
 
@@ -1,4 +1,3 @@
1
- # encoding: UTF-8
2
1
  #
3
2
  # Copyright 2015 Shawn Neal <sneal@sneal.net>
4
3
  #
@@ -1,4 +1,3 @@
1
- # -*- encoding: utf-8 -*-
2
1
  #
3
2
  # Author:: Fletcher (<fnichol@nichol.ca>)
4
3
  #
@@ -152,9 +151,7 @@ module WinRM
152
151
  # @api private
153
152
  def reconcile_destinations!(files)
154
153
  files.each do |_, data|
155
- if data['target_is_folder'] == 'True'
156
- data['dst'] = File.join(data['dst'], File.basename(data['src']))
157
- end
154
+ data['dst'] = File.join(data['dst'], File.basename(data['src'])) if data['target_is_folder'] == 'True'
158
155
  end
159
156
  end
160
157
 
@@ -321,7 +318,7 @@ module WinRM
321
318
  elsif File.directory?(expanded)
322
319
  add_directory_hash!(hash, expanded, remote)
323
320
  else
324
- fail Errno::ENOENT, "No such file or directory #{expanded}"
321
+ raise Errno::ENOENT, "No such file or directory #{expanded}"
325
322
  end
326
323
  end
327
324
  hash
@@ -362,10 +359,10 @@ module WinRM
362
359
  stderr = output.stderr
363
360
 
364
361
  if exitcode != 0
365
- fail FileTransporterFailed, "[#{self.class}] Upload failed " \
362
+ raise FileTransporterFailed, "[#{self.class}] Upload failed " \
366
363
  "(exitcode: #{exitcode})\n#{stderr}"
367
364
  elsif stderr != '\r\n' && stderr != ''
368
- fail FileTransporterFailed, "[#{self.class}] Upload failed " \
365
+ raise FileTransporterFailed, "[#{self.class}] Upload failed " \
369
366
  "(exitcode: 0), but stderr present\n#{stderr}"
370
367
  end
371
368
 
@@ -413,7 +410,8 @@ module WinRM
413
410
  # @api private
414
411
  def stream_upload(input_io, dest)
415
412
  read_size = ((max_encoded_write - dest.length) / 4) * 3
416
- chunk, bytes = 1, 0
413
+ chunk = 1
414
+ bytes = 0
417
415
  buffer = ''
418
416
  shell.run(<<-EOS
419
417
  $to = $ExecutionContext.SessionState.Path.GetUnresolvedProviderPathFromPSPath("#{dest}")
@@ -425,7 +423,6 @@ module WinRM
425
423
  [System.io.FileAccess]::Write,
426
424
  [System.IO.FileShare]::ReadWrite
427
425
  )
428
-
429
426
  # Powershell caches ScrpitBlocks in a dictionary
430
427
  # keyed on the script block text. Thats just great
431
428
  # unless the script is super large and called a gillion
@@ -436,7 +433,7 @@ module WinRM
436
433
  $bindingFlags= [Reflection.BindingFlags] "NonPublic,Static"
437
434
  $method = [scriptblock].GetMethod("ClearScriptBlockCache", $bindingFlags)
438
435
  EOS
439
- )
436
+ )
440
437
 
441
438
  while input_io.read(read_size, buffer)
442
439
  bytes += (buffer.bytesize / 3 * 4)
@@ -468,7 +465,8 @@ module WinRM
468
465
  # @api private
469
466
  def stream_upload_file(src, dest, &block)
470
467
  logger.debug "Uploading #{src} to #{dest}"
471
- chunks, bytes = 0, 0
468
+ chunks = 0
469
+ bytes = 0
472
470
  elapsed = Benchmark.measure do
473
471
  File.open(src, 'rb') do |io|
474
472
  chunks, bytes = stream_upload(io, dest, &block)
@@ -1,4 +1,3 @@
1
- # -*- encoding: utf-8 -*-
2
1
  #
3
2
  # Author:: Fletcher (<fnichol@nichol.ca>)
4
3
  #
@@ -103,9 +102,7 @@ module WinRM
103
102
  # @api private
104
103
  def clean_dirname(dir)
105
104
  paths = Pathname.glob(dir)
106
- if paths.length != 1
107
- fail "Expected Pathname.glob(dir) to return only dir, got #{paths}"
108
- end
105
+ raise "Expected Pathname.glob(dir) to return only dir, got #{paths}" if paths.length != 1
109
106
  paths.first
110
107
  end
111
108
 
@@ -132,7 +129,8 @@ module WinRM
132
129
  logger.debug "+++ Adding #{entry_path}"
133
130
  zos.put_next_entry(
134
131
  zip_entry(entry_path),
135
- nil, nil, ::Zip::Entry::DEFLATED, Zlib::BEST_COMPRESSION)
132
+ nil, nil, ::Zip::Entry::DEFLATED, Zlib::BEST_COMPRESSION
133
+ )
136
134
  entry.open('rb') { |src| IO.copy_stream(src, zos) }
137
135
  end
138
136
  logger.debug '=== All files added.'
@@ -1,4 +1,3 @@
1
- # encoding: UTF-8
2
1
  #
3
2
  # Copyright 2015 Shawn Neal <sneal@sneal.net>
4
3
  #
@@ -1,4 +1,3 @@
1
- # encoding: UTF-8
2
1
  #
3
2
  # Copyright 2015 Shawn Neal <sneal@sneal.net>
4
3
  #
@@ -60,14 +59,14 @@ module WinRM
60
59
  # Downloads the specified remote file to the specified local path
61
60
  # @param [String] The full path on the remote machine
62
61
  # @param [String] The full path to write the file to locally
63
- def download(remote_path, local_path)
62
+ def download(remote_path, local_path, first = true)
64
63
  @logger.debug("downloading: #{remote_path} -> #{local_path}")
65
64
  script = WinRM::FS::Scripts.render('download', path: remote_path)
66
65
  output = @connection.shell(:powershell) { |e| e.run(script) }
67
- return false if output.exitcode != 0
68
66
  contents = output.stdout.gsub('\n\r', '')
69
- out = Base64.decode64(contents)
70
- IO.binwrite(local_path, out)
67
+ return false if output.exitcode != 0
68
+ download_dir(remote_path, local_path, first) if contents.empty?
69
+ IO.binwrite(local_path, Base64.decode64(contents)) unless contents.empty?
71
70
  true
72
71
  end
73
72
 
@@ -85,7 +84,7 @@ module WinRM
85
84
  # @return [String] Full path to the temp directory
86
85
  def temp_dir
87
86
  @guest_temp ||= begin
88
- (@connection.shell(:powershell) { |e| e.run('$env:TEMP') }).stdout.chomp.gsub('\\', '/')
87
+ (@connection.shell(:powershell) { |e| e.run('$env:TEMP') }).stdout.chomp.tr('\\', '/')
89
88
  end
90
89
  end
91
90
 
@@ -113,6 +112,17 @@ module WinRM
113
112
  file_transporter.upload(local_path, remote_path, &block)[0]
114
113
  end
115
114
  end
115
+
116
+ private
117
+
118
+ def download_dir(remote_path, local_path, first)
119
+ local_path = File.join(local_path, File.basename(remote_path)) if first
120
+ FileUtils.mkdir_p(local_path) unless File.directory?(local_path)
121
+ command = "Get-ChildItem #{remote_path} | Select-Object Name"
122
+ @connection.shell(:powershell) { |e| e.run(command) }.stdout.strip.split(/\n/).drop(2).each do |file|
123
+ download(File.join(remote_path.to_s, file.strip), File.join(local_path, file.strip), first = false)
124
+ end
125
+ end
116
126
  end
117
127
  end
118
128
  end
@@ -1,8 +1,11 @@
1
1
  $p = $ExecutionContext.SessionState.Path
2
2
  $path = $p.GetUnresolvedProviderPathFromPSPath("<%= path %>")
3
- if (Test-Path $path -PathType Leaf) {
3
+ If (Test-Path $path -PathType Leaf) {
4
4
  $bytes = [System.convert]::ToBase64String([System.IO.File]::ReadAllBytes($path))
5
5
  Write-Host $bytes
6
6
  exit 0
7
7
  }
8
+ ElseIf (Test-Path $path -PathType Container) {
9
+ exit 0
10
+ }
8
11
  exit 1
@@ -1,4 +1,3 @@
1
- # encoding: UTF-8
2
1
  #
3
2
  # Copyright 2015 Shawn Neal <sneal@sneal.net>
4
3
  #
@@ -22,7 +21,8 @@ module WinRM
22
21
  module Scripts
23
22
  def self.render(template, context)
24
23
  template_path = File.expand_path(
25
- "#{File.dirname(__FILE__)}/#{template}.ps1.erb")
24
+ "#{File.dirname(__FILE__)}/#{template}.ps1.erb"
25
+ )
26
26
  template = File.read(template_path)
27
27
  Erubis::Eruby.new(template).result(context)
28
28
  end
@@ -1,8 +1,9 @@
1
- # encoding: UTF-8
2
1
  require 'pathname'
3
2
 
3
+ # rubocop:disable BlockLength
4
4
  describe WinRM::FS::FileManager do
5
- let(:dest_dir) { File.join(subject.temp_dir, "winrm_#{rand(2**16)}") }
5
+ let(:upload_dir) { "winrm_#{rand(2**16)}" }
6
+ let(:dest_dir) { File.join(subject.temp_dir, upload_dir) }
6
7
  let(:temp_upload_dir) { '$env:TEMP/winrm-upload' }
7
8
  let(:spec_dir) { File.expand_path(File.dirname(File.dirname(__FILE__))) }
8
9
  let(:this_file) { Pathname.new(__FILE__) }
@@ -39,6 +40,50 @@ describe WinRM::FS::FileManager do
39
40
  end
40
41
  end
41
42
 
43
+ context 'download file' do
44
+ let(:download_dir) { File.join(spec_dir, 'temp') }
45
+ let(:dest_file) { Pathname.new(File.join(dest_dir, File.basename(this_file))) }
46
+ let(:download_file) { Pathname.new(File.join(download_dir, File.basename(this_file))) }
47
+
48
+ before(:each) do
49
+ expect(subject.delete(dest_dir)).to be true
50
+ FileUtils.rm_rf(Dir.glob("#{download_dir}/*"))
51
+ FileUtils.mkdir_p(download_dir)
52
+ end
53
+
54
+ it 'should download the specified file' do
55
+ subject.upload(this_file, dest_file)
56
+ subject.download(dest_file, download_file)
57
+ expect(File.open(download_file).read).to eq(File.open(this_file).read)
58
+ end
59
+ end
60
+
61
+ context 'download directory' do
62
+ let(:download_dir) { File.join(spec_dir, 'temp') }
63
+ let(:dest_file) { Pathname.new(File.join(dest_dir, File.basename(this_file))) }
64
+ let(:root_dir) { File.expand_path('../../', File.dirname(__FILE__)) }
65
+ let(:winrm_fs_dir) { File.join(root_dir, 'lib/winrm-fs') }
66
+
67
+ before(:each) do
68
+ expect(subject.delete(dest_dir)).to be true
69
+ FileUtils.rm_rf(Dir.glob("#{download_dir}/*"))
70
+ FileUtils.mkdir_p(download_dir)
71
+ end
72
+
73
+ it 'downloads the directory contents recursively' do
74
+ subject.upload(winrm_fs_dir, dest_dir)
75
+ subject.download(dest_dir, download_dir)
76
+
77
+ Dir.glob(winrm_fs_dir + '/**/*.rb').each do |host_file|
78
+ host_file_rel = Pathname.new(host_file).relative_path_from(
79
+ Pathname.new(winrm_fs_dir)
80
+ ).to_s
81
+ download_file = File.join(download_dir, upload_dir, host_file_rel)
82
+ expect(File.open(download_file).read).to eq(File.open(host_file).read)
83
+ end
84
+ end
85
+ end
86
+
42
87
  context 'upload file' do
43
88
  let(:dest_file) { Pathname.new(File.join(dest_dir, File.basename(this_file))) }
44
89
 
@@ -110,8 +155,7 @@ describe WinRM::FS::FileManager do
110
155
  it 'yields progress data' do
111
156
  block_called = false
112
157
  total_bytes_copied = 0
113
- total = subject.upload(this_file, dest_file) do \
114
- |bytes_copied, total_bytes, local_path, remote_path|
158
+ total = subject.upload(this_file, dest_file) do |bytes_copied, total_bytes, local_path, remote_path|
115
159
  expect(total_bytes).to be > 0
116
160
  total_bytes_copied = bytes_copied
117
161
  expect(local_path).to eq(this_file.to_s)
@@ -222,3 +266,4 @@ describe WinRM::FS::FileManager do
222
266
  end
223
267
  end
224
268
  end
269
+ # rubocop:enable BlockLength
@@ -1,4 +1,3 @@
1
- # encoding: UTF-8
2
1
  require_relative '../../lib/winrm-fs/core/tmp_zip'
3
2
 
4
3
  describe WinRM::FS::Core::TmpZip do
@@ -18,9 +17,10 @@ describe WinRM::FS::Core::TmpZip do
18
17
  context 'create zip' do
19
18
  it 'should add all files in directory to the zip recursively' do
20
19
  expect(subject).to contain_zip_entries([
21
- 'exceptions.rb',
22
- 'core/tmp_zip.rb',
23
- 'scripts/checksum.ps1.erb'])
20
+ 'exceptions.rb',
21
+ 'core/tmp_zip.rb',
22
+ 'scripts/checksum.ps1.erb'
23
+ ])
24
24
  end
25
25
  end
26
26
  end
@@ -1,4 +1,3 @@
1
- # encoding: UTF-8
2
1
  require 'rspec/expectations'
3
2
 
4
3
  RSpec::Matchers.define :have_created do |remote_file|
@@ -1,4 +1,3 @@
1
- # encoding: UTF-8
2
1
  require 'rubygems'
3
2
  require 'bundler/setup'
4
3
  require 'winrm-fs'
@@ -7,7 +6,6 @@ require_relative 'matchers'
7
6
 
8
7
  # Creates a WinRM connection for integration tests
9
8
  module ConnectionHelper
10
- # rubocop:disable AbcSize
11
9
  def winrm_connection
12
10
  WinRM::Connection.new(config)
13
11
  end
@@ -15,8 +13,8 @@ module ConnectionHelper
15
13
 
16
14
  def config
17
15
  @config ||= begin
18
- cfg = symbolize_keys(YAML.load(File.read(winrm_config_path)))
19
- cfg.merge!(basic_auth_only: true) unless cfg[:transport].eql? :kerberos
16
+ cfg = symbolize_keys(YAML.safe_load(File.read(winrm_config_path)))
17
+ cfg[:basic_auth_only] = true unless cfg[:transport].eql? :kerberos
20
18
  merge_environment!(cfg)
21
19
  cfg
22
20
  end
@@ -26,9 +24,7 @@ module ConnectionHelper
26
24
  merge_config_option_from_environment(config, 'user')
27
25
  merge_config_option_from_environment(config, 'password')
28
26
  merge_config_option_from_environment(config, 'no_ssl_peer_verification')
29
- if ENV['use_ssl_peer_fingerprint']
30
- config[:options][:ssl_peer_fingerprint] = ENV['winrm_cert']
31
- end
27
+ config[:options][:ssl_peer_fingerprint] = ENV['winrm_cert'] if ENV['use_ssl_peer_fingerprint']
32
28
  config[:endpoint] = ENV['winrm_endpoint'] if ENV['winrm_endpoint']
33
29
  config[:transport] = ENV['winrm_transport'] if ENV['winrm_transport']
34
30
  end
@@ -1,4 +1,3 @@
1
- # -*- encoding: utf-8 -*-
2
1
  #
3
2
  # Author:: Fletcher (<fnichol@nichol.ca>)
4
3
  #
@@ -36,7 +35,7 @@ describe WinRM::FS::Core::TmpZip do
36
35
 
37
36
  let(:tmp_zip) { WinRM::FS::Core::TmpZip.new(src_dir) }
38
37
 
39
- before { @tmpdirs = [] }
38
+ before { @tmpdirs = [] }
40
39
 
41
40
  after do
42
41
  @tmpdirs.each(&:rmtree)
@@ -1,4 +1,3 @@
1
- # encoding: UTF-8
2
1
  require 'date'
3
2
 
4
3
  version = File.read(File.expand_path('../VERSION', __FILE__)).strip
@@ -7,7 +6,7 @@ Gem::Specification.new do |s|
7
6
  s.platform = Gem::Platform::RUBY
8
7
  s.name = 'winrm-fs'
9
8
  s.version = version
10
- s.date = Date.today.to_s
9
+ s.date = Date.today.to_s
11
10
 
12
11
  s.author = ['Shawn Neal', 'Matt Wrock']
13
12
  s.email = ['sneal@sneal.net', 'matt@mattwrock.com']
@@ -20,18 +19,18 @@ Gem::Specification.new do |s|
20
19
 
21
20
  s.files = `git ls-files`.split(/\n/)
22
21
  s.require_path = 'lib'
23
- s.rdoc_options = %w(-x test/ -x examples/)
24
- s.extra_rdoc_files = %w(README.md LICENSE)
22
+ s.rdoc_options = %w[-x test/ -x examples/]
23
+ s.extra_rdoc_files = %w[README.md LICENSE]
25
24
 
26
25
  s.bindir = 'bin'
27
- s.executables = ['rwinrmcp']
28
- s.required_ruby_version = '>= 1.9.0'
26
+ s.executables = ['rwinrmcp']
27
+ s.required_ruby_version = '>= 2.1.0'
29
28
  s.add_runtime_dependency 'erubis', '~> 2.7'
30
29
  s.add_runtime_dependency 'logging', ['>= 1.6.1', '< 3.0']
31
30
  s.add_runtime_dependency 'rubyzip', '~> 1.1'
32
31
  s.add_runtime_dependency 'winrm', '~> 2.0'
33
32
  s.add_development_dependency 'pry'
34
- s.add_development_dependency 'rspec', '~> 3.0.0'
35
- s.add_development_dependency 'rake', '~> 10.3.2'
36
- s.add_development_dependency 'rubocop', '~> 0.28.0'
33
+ s.add_development_dependency 'rake', '~> 10.3'
34
+ s.add_development_dependency 'rspec', '~> 3.0'
35
+ s.add_development_dependency 'rubocop', '~> 0.51'
37
36
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: winrm-fs
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Shawn Neal
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2017-11-22 00:00:00.000000000 Z
12
+ date: 2018-01-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: erubis
@@ -88,47 +88,47 @@ dependencies:
88
88
  - !ruby/object:Gem::Version
89
89
  version: '0'
90
90
  - !ruby/object:Gem::Dependency
91
- name: rspec
91
+ name: rake
92
92
  requirement: !ruby/object:Gem::Requirement
93
93
  requirements:
94
94
  - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: 3.0.0
96
+ version: '10.3'
97
97
  type: :development
98
98
  prerelease: false
99
99
  version_requirements: !ruby/object:Gem::Requirement
100
100
  requirements:
101
101
  - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: 3.0.0
103
+ version: '10.3'
104
104
  - !ruby/object:Gem::Dependency
105
- name: rake
105
+ name: rspec
106
106
  requirement: !ruby/object:Gem::Requirement
107
107
  requirements:
108
108
  - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: 10.3.2
110
+ version: '3.0'
111
111
  type: :development
112
112
  prerelease: false
113
113
  version_requirements: !ruby/object:Gem::Requirement
114
114
  requirements:
115
115
  - - "~>"
116
116
  - !ruby/object:Gem::Version
117
- version: 10.3.2
117
+ version: '3.0'
118
118
  - !ruby/object:Gem::Dependency
119
119
  name: rubocop
120
120
  requirement: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - "~>"
123
123
  - !ruby/object:Gem::Version
124
- version: 0.28.0
124
+ version: '0.51'
125
125
  type: :development
126
126
  prerelease: false
127
127
  version_requirements: !ruby/object:Gem::Requirement
128
128
  requirements:
129
129
  - - "~>"
130
130
  - !ruby/object:Gem::Version
131
- version: 0.28.0
131
+ version: '0.51'
132
132
  description: " Ruby library for file system operations via Windows Remote Management\n"
133
133
  email:
134
134
  - sneal@sneal.net
@@ -143,6 +143,7 @@ files:
143
143
  - ".gitignore"
144
144
  - ".rspec"
145
145
  - ".rubocop.yml"
146
+ - ".rubocop_todo.yml"
146
147
  - ".travis.yml"
147
148
  - Gemfile
148
149
  - LICENSE
@@ -188,7 +189,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
188
189
  requirements:
189
190
  - - ">="
190
191
  - !ruby/object:Gem::Version
191
- version: 1.9.0
192
+ version: 2.1.0
192
193
  required_rubygems_version: !ruby/object:Gem::Requirement
193
194
  requirements:
194
195
  - - ">="