file_pool 0.6.0 → 0.6.1

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 6c82e118048a3641ff3e4e198f307d4261710a78460d94da4ef8af301db1ee60
4
+ data.tar.gz: a3fbfaf25d682fc566625dbb79cc1299dc28746d9ae3fc98fe7f1ff34b1be908
5
+ SHA512:
6
+ metadata.gz: dfba8079bbc28eba69f003c11760773e84229242b20017d7da27561482ec5fc7b0ebaa504e50bece0ddf4e0ceea62a210693a67f66a33051b4bd28e73dee11bb
7
+ data.tar.gz: a36cb6452d696257f68c32cf5116dc472f6fb60015b96c399dc4c0e6f3b0029978414f7c5b92a865af871f37e580cf9f8b5d67748aad06ffdc1fc2d120a66772
@@ -92,9 +92,11 @@ module FilePool
92
92
  FileUtils.mkpath(id2dir newid)
93
93
  end
94
94
 
95
- if !@@copy_source and (File.stat(path).dev == File.stat(File.dirname(target)).dev)
95
+ # try quick hard-linking, copy if forced or hard-linking impossible
96
+ begin
97
+ raise Errno::EXDEV if @@copy_source
96
98
  FileUtils.link(path, target)
97
- else
99
+ rescue Errno::EXDEV
98
100
  FileUtils.copy(path, target)
99
101
  end
100
102
 
@@ -154,10 +156,14 @@ module FilePool
154
156
  end
155
157
 
156
158
  child = fork do
159
+ target = path(newid)
157
160
  # create the target file to write
158
- open(path(newid),'w') do |out_stream|
161
+ open(target,'w') do |out_stream|
159
162
  encrypt in_stream, out_stream
160
163
  end
164
+
165
+ FileUtils.chmod(@@mode, target) if @@mode
166
+ FileUtils.chown(@@owner, @@group, target)
161
167
  end
162
168
 
163
169
  Process.detach(child)
@@ -1,3 +1,3 @@
1
1
  module FilePool
2
- VERSION = "0.6.0"
2
+ VERSION = "0.6.1"
3
3
  end
metadata CHANGED
@@ -1,104 +1,77 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: file_pool
3
- version: !ruby/object:Gem::Version
4
- hash: 7
5
- prerelease:
6
- segments:
7
- - 0
8
- - 6
9
- - 0
10
- version: 0.6.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.6.1
11
5
  platform: ruby
12
- authors:
13
- - "robokopp (Robert Anni\xC3\xA9s)"
6
+ authors:
7
+ - robokopp (Robert Anniés)
14
8
  autorequire:
15
9
  bindir: bin
16
10
  cert_chain: []
17
-
18
- date: 2019-02-12 00:00:00 +01:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
11
+ date: 2019-10-14 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
22
14
  name: uuidtools
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ~>
28
- - !ruby/object:Gem::Version
29
- hash: 15
30
- segments:
31
- - 2
32
- - 1
33
- - 2
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - "~>"
18
+ - !ruby/object:Gem::Version
34
19
  version: 2.1.2
35
20
  type: :runtime
36
- version_requirements: *id001
37
- - !ruby/object:Gem::Dependency
38
- name: pry
39
21
  prerelease: false
40
- requirement: &id002 !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - "~>"
25
+ - !ruby/object:Gem::Version
26
+ version: 2.1.2
27
+ - !ruby/object:Gem::Dependency
28
+ name: pry
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
43
31
  - - ">="
44
- - !ruby/object:Gem::Version
45
- hash: 3
46
- segments:
47
- - 0
48
- version: "0"
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
49
34
  type: :development
50
- version_requirements: *id002
35
+ prerelease: false
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - ">="
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
51
41
  description: |
52
42
  FilePool helps to manage a large number of files in a Ruby
53
43
  project. It takes care of the storage of files in a balanced directory
54
44
  tree and generates unique identifiers for all files.
55
-
56
- email:
45
+ email:
57
46
  - robokopp@fernwerk.net
58
47
  executables: []
59
-
60
48
  extensions: []
61
-
62
- extra_rdoc_files:
49
+ extra_rdoc_files:
50
+ - README.md
51
+ files:
63
52
  - README.md
64
- files:
65
53
  - lib/file_pool.rb
66
54
  - lib/file_pool/version.rb
67
- - README.md
68
- has_rdoc: true
69
55
  homepage: https://github.com/robokopp/file_pool
70
56
  licenses: []
71
-
57
+ metadata: {}
72
58
  post_install_message:
73
59
  rdoc_options: []
74
-
75
- require_paths:
60
+ require_paths:
76
61
  - lib
77
- required_ruby_version: !ruby/object:Gem::Requirement
78
- none: false
79
- requirements:
80
- - - ~>
81
- - !ruby/object:Gem::Version
82
- hash: 3
83
- segments:
84
- - 2
85
- - 0
86
- version: "2.0"
87
- required_rubygems_version: !ruby/object:Gem::Requirement
88
- none: false
89
- requirements:
62
+ required_ruby_version: !ruby/object:Gem::Requirement
63
+ requirements:
64
+ - - "~>"
65
+ - !ruby/object:Gem::Version
66
+ version: '2.0'
67
+ required_rubygems_version: !ruby/object:Gem::Requirement
68
+ requirements:
90
69
  - - ">="
91
- - !ruby/object:Gem::Version
92
- hash: 3
93
- segments:
94
- - 0
95
- version: "0"
70
+ - !ruby/object:Gem::Version
71
+ version: '0'
96
72
  requirements: []
97
-
98
- rubyforge_project:
99
- rubygems_version: 1.6.2
73
+ rubygems_version: 3.0.6
100
74
  signing_key:
101
- specification_version: 3
75
+ specification_version: 4
102
76
  summary: Manage a large number files in a pool
103
77
  test_files: []
104
-