redsnapper 0.4.0 → 0.5.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: 20921b02baf5c314923959df7f3eeb540cfdcb2d
4
- data.tar.gz: 59c37e1602ade44ad3745f6ff42e0cac358f2a91
3
+ metadata.gz: c89d2d3a5a33f6cc99baf2d64a1067b43c386774
4
+ data.tar.gz: e231c8fb1093b63327d9715eee2ad4f8fc5ef267
5
5
  SHA512:
6
- metadata.gz: f6b52020b660064c763be81cea95dc917619f5c9d7be7792d62a8c0f4fc3f383ea1febf78f08ef959ddf0f1375049319c81ddc80943ffa258904a254a7d57689
7
- data.tar.gz: 13217548cdaf7c211052feb77c8849ab5c365040b0ffd0be5e9a60cb271b754853a3d6f683ec061c9e158ba1634980c167ba3dba15430934441b9cf53374721e
6
+ metadata.gz: f45075e887d218907e73c8b88de77f87f6f81d07737da93ddafc79e028d9fc82f484c936ba4720193520e0150fb50449547864a84d036c9512b10c7ece6cc7b0
7
+ data.tar.gz: c8f4e9d7943fbf3d17923cb3a28fe37bf2eef0d18c79d97f7e4c49041487fd22989b250b219d69e3255639836665840f4f33721f97a18a35f7258a460aa087bb
@@ -13,3 +13,9 @@ parallel delivering approximately a 5x speedup in extracting large archives.
13
13
  Copyright (c) 2014 Scott Wheeler. See LICENSE.txt for
14
14
  further details.
15
15
 
16
+ === Installation
17
+
18
+ redsnapper can be installed via gem, Ruby's package manager. Install gem via
19
+ the ruby or rubygems package for your platform, and then run:
20
+
21
+ gem install redsnapper
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.4.0
1
+ 0.5.0
@@ -10,6 +10,8 @@ class RedSnapper
10
10
  EXIT_ERROR = "tarsnap: Error exit delayed from previous errors.\n"
11
11
  NOT_OLDER_ERROR = "File on disk is not older; skipping.\n"
12
12
 
13
+ GLOB_CHARS = '*?[]{}'
14
+
13
15
  @@output_mutex = Mutex.new
14
16
 
15
17
  class Group
@@ -98,6 +100,7 @@ class RedSnapper
98
100
  def run
99
101
  file_groups.each do |chunk|
100
102
  @thread_pool.process do
103
+ chunk.map! { |file| file.gsub(/([#{Regexp.escape(GLOB_CHARS)}])/) { |m| "\\#{m}" } }
101
104
  command = [ TARSNAP, '-xvf', @archive, *(@options[:tarsnap_options] + chunk) ]
102
105
  Open3.popen3(*command) do |_, _, err|
103
106
  while line = err.gets
@@ -2,19 +2,19 @@
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
3
  # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
- # stub: redsnapper 0.4.0 ruby lib
5
+ # stub: redsnapper 0.5.0 ruby lib
6
6
 
7
7
  Gem::Specification.new do |s|
8
- s.name = "redsnapper"
9
- s.version = "0.4.0"
8
+ s.name = "redsnapper".freeze
9
+ s.version = "0.5.0"
10
10
 
11
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
12
- s.require_paths = ["lib"]
13
- s.authors = ["Scott Wheeler"]
14
- s.date = "2017-01-05"
15
- s.description = "Faster extraction of large tarsnap archives using a pool of parallel tarsnap clients"
16
- s.email = "scott@directededge.com"
17
- s.executables = ["redsnapper"]
11
+ s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
+ s.require_paths = ["lib".freeze]
13
+ s.authors = ["Scott Wheeler".freeze]
14
+ s.date = "2018-09-28"
15
+ s.description = "Faster extraction of large tarsnap archives using a pool of parallel tarsnap clients".freeze
16
+ s.email = "scott@directededge.com".freeze
17
+ s.executables = ["redsnapper".freeze]
18
18
  s.extra_rdoc_files = [
19
19
  "LICENSE.txt",
20
20
  "README.rdoc"
@@ -30,30 +30,30 @@ Gem::Specification.new do |s|
30
30
  "lib/redsnapper.rb",
31
31
  "redsnapper.gemspec"
32
32
  ]
33
- s.homepage = "http://github.com/directededge/redsnapper"
34
- s.licenses = ["MIT"]
35
- s.rubygems_version = "2.5.1"
36
- s.summary = "Faster extraction of large tarsnap archives"
33
+ s.homepage = "http://github.com/directededge/redsnapper".freeze
34
+ s.licenses = ["MIT".freeze]
35
+ s.rubygems_version = "2.6.14".freeze
36
+ s.summary = "Faster extraction of large tarsnap archives".freeze
37
37
 
38
38
  if s.respond_to? :specification_version then
39
39
  s.specification_version = 4
40
40
 
41
41
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
42
- s.add_runtime_dependency(%q<thread>, [">= 0"])
43
- s.add_development_dependency(%q<rdoc>, ["~> 3.12"])
44
- s.add_development_dependency(%q<bundler>, ["~> 1.0"])
45
- s.add_development_dependency(%q<jeweler>, ["~> 2.0"])
42
+ s.add_runtime_dependency(%q<thread>.freeze, [">= 0"])
43
+ s.add_development_dependency(%q<rdoc>.freeze, ["~> 3.12"])
44
+ s.add_development_dependency(%q<bundler>.freeze, ["~> 1.0"])
45
+ s.add_development_dependency(%q<jeweler>.freeze, ["~> 2.0"])
46
46
  else
47
- s.add_dependency(%q<thread>, [">= 0"])
48
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
49
- s.add_dependency(%q<bundler>, ["~> 1.0"])
50
- s.add_dependency(%q<jeweler>, ["~> 2.0"])
47
+ s.add_dependency(%q<thread>.freeze, [">= 0"])
48
+ s.add_dependency(%q<rdoc>.freeze, ["~> 3.12"])
49
+ s.add_dependency(%q<bundler>.freeze, ["~> 1.0"])
50
+ s.add_dependency(%q<jeweler>.freeze, ["~> 2.0"])
51
51
  end
52
52
  else
53
- s.add_dependency(%q<thread>, [">= 0"])
54
- s.add_dependency(%q<rdoc>, ["~> 3.12"])
55
- s.add_dependency(%q<bundler>, ["~> 1.0"])
56
- s.add_dependency(%q<jeweler>, ["~> 2.0"])
53
+ s.add_dependency(%q<thread>.freeze, [">= 0"])
54
+ s.add_dependency(%q<rdoc>.freeze, ["~> 3.12"])
55
+ s.add_dependency(%q<bundler>.freeze, ["~> 1.0"])
56
+ s.add_dependency(%q<jeweler>.freeze, ["~> 2.0"])
57
57
  end
58
58
  end
59
59
 
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: redsnapper
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.4.0
4
+ version: 0.5.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Scott Wheeler
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-01-05 00:00:00.000000000 Z
11
+ date: 2018-09-28 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: thread
@@ -105,7 +105,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
105
105
  version: '0'
106
106
  requirements: []
107
107
  rubyforge_project:
108
- rubygems_version: 2.5.1
108
+ rubygems_version: 2.6.14
109
109
  signing_key:
110
110
  specification_version: 4
111
111
  summary: Faster extraction of large tarsnap archives