file_pool 0.5.0 → 0.5.1

Sign up to get free protection for your applications and to get access to all the features.
data/lib/file_pool.rb CHANGED
@@ -74,21 +74,26 @@ module FilePool
74
74
  # === Return Value:
75
75
  #
76
76
  # :: *String* containing a new unique ID for the file added.
77
- def self.add! path
77
+ def self.add! orig_path
78
78
  newid = uuid
79
79
  target = path newid
80
80
 
81
81
  if @@crypted_mode
82
82
  FileUtils.mkpath(id2dir_secured newid)
83
- path = crypt(path)
83
+ path = crypt(orig_path)
84
84
  else
85
+ path = orig_path
85
86
  FileUtils.mkpath(id2dir newid)
86
87
  end
87
88
 
88
89
  if !@@copy_source and (File.stat(path).dev == File.stat(File.dirname(target)).dev)
89
90
  FileUtils.link(path, target)
90
91
  else
91
- FileUtils.copy(path, target)
92
+ FileUtils.copy(path, target)
93
+ end
94
+
95
+ # don't chmod if orginal file is same as target (hard-linked)
96
+ if File.stat(orig_path).ino != File.stat(File.dirname(target)).ino
92
97
  FileUtils.chmod(@@mode, target) if @@mode
93
98
  FileUtils.chown(@@owner, @@group, target)
94
99
  end
@@ -1,3 +1,3 @@
1
1
  module FilePool
2
- VERSION = "0.5.0"
2
+ VERSION = "0.5.1"
3
3
  end
metadata CHANGED
@@ -1,78 +1,104 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: file_pool
3
- version: !ruby/object:Gem::Version
4
- version: 0.5.0
3
+ version: !ruby/object:Gem::Version
4
+ hash: 9
5
+ prerelease:
6
+ segments:
7
+ - 0
8
+ - 5
9
+ - 1
10
+ version: 0.5.1
5
11
  platform: ruby
6
- authors:
7
- - robokopp (Robert Anniés)
12
+ authors:
13
+ - "robokopp (Robert Anni\xC3\xA9s)"
8
14
  autorequire:
9
15
  bindir: bin
10
16
  cert_chain: []
11
- date: 2018-03-23 00:00:00.000000000 Z
12
- dependencies:
13
- - !ruby/object:Gem::Dependency
17
+
18
+ date: 2018-03-26 00:00:00 +02:00
19
+ default_executable:
20
+ dependencies:
21
+ - !ruby/object:Gem::Dependency
14
22
  name: uuidtools
15
- requirement: !ruby/object:Gem::Requirement
16
- requirements:
17
- - - "~>"
18
- - !ruby/object:Gem::Version
19
- version: 2.1.2
20
- type: :runtime
21
23
  prerelease: false
22
- version_requirements: !ruby/object:Gem::Requirement
23
- requirements:
24
- - - "~>"
25
- - !ruby/object:Gem::Version
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
26
34
  version: 2.1.2
27
- - !ruby/object:Gem::Dependency
35
+ type: :runtime
36
+ version_requirements: *id001
37
+ - !ruby/object:Gem::Dependency
28
38
  name: pry
29
- requirement: !ruby/object:Gem::Requirement
30
- requirements:
31
- - - ">="
32
- - !ruby/object:Gem::Version
33
- version: '0'
34
- type: :development
35
39
  prerelease: false
36
- version_requirements: !ruby/object:Gem::Requirement
37
- requirements:
40
+ requirement: &id002 !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
38
43
  - - ">="
39
- - !ruby/object:Gem::Version
40
- version: '0'
44
+ - !ruby/object:Gem::Version
45
+ hash: 3
46
+ segments:
47
+ - 0
48
+ version: "0"
49
+ type: :development
50
+ version_requirements: *id002
41
51
  description: |
42
52
  FilePool helps to manage a large number of files in a Ruby
43
53
  project. It takes care of the storage of files in a balanced directory
44
54
  tree and generates unique identifiers for all files.
45
- email:
55
+
56
+ email:
46
57
  - robokopp@fernwerk.net
47
58
  executables: []
59
+
48
60
  extensions: []
49
- extra_rdoc_files:
50
- - README.md
51
- files:
61
+
62
+ extra_rdoc_files:
52
63
  - README.md
64
+ files:
53
65
  - lib/file_pool.rb
54
66
  - lib/file_pool/version.rb
67
+ - README.md
68
+ has_rdoc: true
55
69
  homepage: https://github.com/robokopp/file_pool
56
70
  licenses: []
57
- metadata: {}
71
+
58
72
  post_install_message:
59
73
  rdoc_options: []
60
- require_paths:
74
+
75
+ require_paths:
61
76
  - lib
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:
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:
69
90
  - - ">="
70
- - !ruby/object:Gem::Version
71
- version: '0'
91
+ - !ruby/object:Gem::Version
92
+ hash: 3
93
+ segments:
94
+ - 0
95
+ version: "0"
72
96
  requirements: []
97
+
73
98
  rubyforge_project:
74
- rubygems_version: 2.5.2
99
+ rubygems_version: 1.6.2
75
100
  signing_key:
76
- specification_version: 4
101
+ specification_version: 3
77
102
  summary: Manage a large number files in a pool
78
103
  test_files: []
104
+
checksums.yaml DELETED
@@ -1,7 +0,0 @@
1
- ---
2
- SHA1:
3
- metadata.gz: 92b693e812622ddf1df122afe233c2bde4907921
4
- data.tar.gz: e126ad5ff94b137c1bd983ea64b438dd60129aff
5
- SHA512:
6
- metadata.gz: 0e34e2384e4d185ef4c6063892c18799d82d2b5e8825090d16c843d34e0b33f58e1b0641158e502252e5559226d206480b21027dc25ef41a37a64143ae45ba35
7
- data.tar.gz: 0db3ef7390c70efd6cc77cb147a0147273caafe9ef0d905866dbd3b8981dd923d7bc25305d5d54bde87318d1a6e424be63559631e5e22efa1134340018d9280a