rfusefs 1.0.2.RC2 → 1.0.2
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 +15 -0
- data/lib/fusefs/pathmapper.rb +15 -9
- data/lib/rfusefs/version.rb +1 -1
- data/rfusefs.gemspec +1 -1
- metadata +9 -30
checksums.yaml
ADDED
@@ -0,0 +1,15 @@
|
|
1
|
+
---
|
2
|
+
!binary "U0hBMQ==":
|
3
|
+
metadata.gz: !binary |-
|
4
|
+
MzhlODUwNTJmNTNmNGM5OTZhNWU5Nzg0YjhkMTM2MWRmMmZmMzA5OQ==
|
5
|
+
data.tar.gz: !binary |-
|
6
|
+
YWRhODkyYzJjZGNjYzc2YzM4ZTc5NjJhYWUyNjlkM2FiYzNjMGI4Nw==
|
7
|
+
SHA512:
|
8
|
+
metadata.gz: !binary |-
|
9
|
+
OGMwYWQ3YzE4MDJlZTlhNmExMWQxZWYyOGUzZTcxMWZhYWZkNzI3N2MwNmYz
|
10
|
+
MWU1NTI5M2IyMjU2Y2Q2MjU3ZTQwNzcwN2EzYmQ2MzAwNzI1ZmFlNWJlYTll
|
11
|
+
Y2FkMDY5NmNkYThjNmZhYWUzMDQ2ZWQ4YmRkMmMwNTRkNzYxMWY=
|
12
|
+
data.tar.gz: !binary |-
|
13
|
+
OTgxN2NmMWQ3MjBlZTQwODU4NTBlMTdiNjQ3NTMwNTZiYjUzMjUxMTZhZDg4
|
14
|
+
MTllMGUwODliMGJjMDkzNTQwNDhiYTZhNzUzMzg0MjNiNmRjZWUwNGE1Yjdh
|
15
|
+
NWY2NmE2YzYwNDg4NWJhNGRmYzI5MjZiYjhjZjZhNzUwOTZiZWM=
|
data/lib/fusefs/pathmapper.rb
CHANGED
@@ -1,6 +1,12 @@
|
|
1
|
-
require 'ffi-xattr'
|
2
1
|
|
3
2
|
module FuseFS
|
3
|
+
begin
|
4
|
+
require 'ffi-xattr'
|
5
|
+
HAS_FFI_XATTR = true
|
6
|
+
rescue LoadError
|
7
|
+
warn "ffi-xattr not available, extended attributes will not be mapped"
|
8
|
+
HAS_FFI_XATTR = false
|
9
|
+
end
|
4
10
|
|
5
11
|
# A FuseFS that maps files from their original location into a new path
|
6
12
|
# eg tagged audio files can be mapped by title etc...
|
@@ -17,7 +23,7 @@ module FuseFS
|
|
17
23
|
|
18
24
|
def initialize(node)
|
19
25
|
@node = node
|
20
|
-
@file_xattr = ::Xattr.new(node.real_path.to_s) if node.file?
|
26
|
+
@file_xattr = ::Xattr.new(node.real_path.to_s) if node.file? && HAS_FFI_XATTR
|
21
27
|
end
|
22
28
|
|
23
29
|
def [](key)
|
@@ -26,12 +32,12 @@ module FuseFS
|
|
26
32
|
|
27
33
|
def []=(key,value)
|
28
34
|
raise Errno::EACCES if additional.has_key?(key) || node.directory?
|
29
|
-
file_xattr[key] = value
|
35
|
+
file_xattr[key] = value if file_xattr
|
30
36
|
end
|
31
37
|
|
32
38
|
def delete(key)
|
33
39
|
raise Errno::EACCES if additional.has_key?(key) || node.directory?
|
34
|
-
file_xattr.remove(key)
|
40
|
+
file_xattr.remove(key) if file_xattr
|
35
41
|
end
|
36
42
|
|
37
43
|
def keys
|
@@ -173,12 +179,12 @@ module FuseFS
|
|
173
179
|
#
|
174
180
|
# @return [StatsHelper] accumulated filesystem statistics
|
175
181
|
attr_reader :stats
|
176
|
-
|
182
|
+
|
177
183
|
# Creates a new Path Mapper filesystem over an existing directory
|
178
184
|
# @param [String] dir
|
179
185
|
# @param [Hash] options
|
180
186
|
# @yieldparam [String] file path to map
|
181
|
-
# @yieldreturn [String]
|
187
|
+
# @yieldreturn [String]
|
182
188
|
# @see #initialize
|
183
189
|
# @see #map_directory
|
184
190
|
def PathMapperFS.create(dir,options={ },&block)
|
@@ -201,7 +207,7 @@ module FuseFS
|
|
201
207
|
@use_raw_file_access = options[:use_raw_file_access]
|
202
208
|
@allow_write = options[:allow_write]
|
203
209
|
end
|
204
|
-
|
210
|
+
|
205
211
|
# Recursively find all files and map according to the given block
|
206
212
|
# @param [String...] dirs directories to list
|
207
213
|
# @yieldparam [String] file path to map
|
@@ -250,14 +256,14 @@ module FuseFS
|
|
250
256
|
node = node(path)
|
251
257
|
(node && node.file?) ? node.real_path : nil
|
252
258
|
end
|
253
|
-
|
259
|
+
|
254
260
|
# Deletes files and directories.
|
255
261
|
# Yields each {#node} in the filesystem and deletes it if the block returns true
|
256
262
|
#
|
257
263
|
# Useful if your filesystem is periodically remapping the entire contents and you need
|
258
264
|
# to delete entries that have not been touched in the latest scan
|
259
265
|
#
|
260
|
-
# @yieldparam [Hash] filesystem node
|
266
|
+
# @yieldparam [Hash] filesystem node
|
261
267
|
# @yieldreturn [true,false] should this node be deleted
|
262
268
|
def cleanup(&block)
|
263
269
|
recursive_cleanup(@root,&block)
|
data/lib/rfusefs/version.rb
CHANGED
data/rfusefs.gemspec
CHANGED
@@ -20,7 +20,7 @@ Gem::Specification.new do |s|
|
|
20
20
|
s.has_rdoc = 'yard'
|
21
21
|
s_extra_rdoc_files = 'History.rdoc'
|
22
22
|
|
23
|
-
s.add_dependency("rfuse", ">= 1.0.
|
23
|
+
s.add_dependency("rfuse", ">= 1.0.5")
|
24
24
|
s.add_development_dependency("rake")
|
25
25
|
s.add_development_dependency("rspec")
|
26
26
|
s.add_development_dependency("yard")
|
metadata
CHANGED
@@ -1,36 +1,32 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rfusefs
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.0.2
|
5
|
-
prerelease: 6
|
4
|
+
version: 1.0.2
|
6
5
|
platform: ruby
|
7
6
|
authors:
|
8
7
|
- Grant Gardner
|
9
8
|
autorequire:
|
10
9
|
bindir: bin
|
11
10
|
cert_chain: []
|
12
|
-
date: 2014-
|
11
|
+
date: 2014-04-16 00:00:00.000000000 Z
|
13
12
|
dependencies:
|
14
13
|
- !ruby/object:Gem::Dependency
|
15
14
|
name: rfuse
|
16
15
|
requirement: !ruby/object:Gem::Requirement
|
17
|
-
none: false
|
18
16
|
requirements:
|
19
17
|
- - ! '>='
|
20
18
|
- !ruby/object:Gem::Version
|
21
|
-
version: 1.0.
|
19
|
+
version: 1.0.5
|
22
20
|
type: :runtime
|
23
21
|
prerelease: false
|
24
22
|
version_requirements: !ruby/object:Gem::Requirement
|
25
|
-
none: false
|
26
23
|
requirements:
|
27
24
|
- - ! '>='
|
28
25
|
- !ruby/object:Gem::Version
|
29
|
-
version: 1.0.
|
26
|
+
version: 1.0.5
|
30
27
|
- !ruby/object:Gem::Dependency
|
31
28
|
name: rake
|
32
29
|
requirement: !ruby/object:Gem::Requirement
|
33
|
-
none: false
|
34
30
|
requirements:
|
35
31
|
- - ! '>='
|
36
32
|
- !ruby/object:Gem::Version
|
@@ -38,7 +34,6 @@ dependencies:
|
|
38
34
|
type: :development
|
39
35
|
prerelease: false
|
40
36
|
version_requirements: !ruby/object:Gem::Requirement
|
41
|
-
none: false
|
42
37
|
requirements:
|
43
38
|
- - ! '>='
|
44
39
|
- !ruby/object:Gem::Version
|
@@ -46,7 +41,6 @@ dependencies:
|
|
46
41
|
- !ruby/object:Gem::Dependency
|
47
42
|
name: rspec
|
48
43
|
requirement: !ruby/object:Gem::Requirement
|
49
|
-
none: false
|
50
44
|
requirements:
|
51
45
|
- - ! '>='
|
52
46
|
- !ruby/object:Gem::Version
|
@@ -54,7 +48,6 @@ dependencies:
|
|
54
48
|
type: :development
|
55
49
|
prerelease: false
|
56
50
|
version_requirements: !ruby/object:Gem::Requirement
|
57
|
-
none: false
|
58
51
|
requirements:
|
59
52
|
- - ! '>='
|
60
53
|
- !ruby/object:Gem::Version
|
@@ -62,7 +55,6 @@ dependencies:
|
|
62
55
|
- !ruby/object:Gem::Dependency
|
63
56
|
name: yard
|
64
57
|
requirement: !ruby/object:Gem::Requirement
|
65
|
-
none: false
|
66
58
|
requirements:
|
67
59
|
- - ! '>='
|
68
60
|
- !ruby/object:Gem::Version
|
@@ -70,7 +62,6 @@ dependencies:
|
|
70
62
|
type: :development
|
71
63
|
prerelease: false
|
72
64
|
version_requirements: !ruby/object:Gem::Requirement
|
73
|
-
none: false
|
74
65
|
requirements:
|
75
66
|
- - ! '>='
|
76
67
|
- !ruby/object:Gem::Version
|
@@ -78,7 +69,6 @@ dependencies:
|
|
78
69
|
- !ruby/object:Gem::Dependency
|
79
70
|
name: redcarpet
|
80
71
|
requirement: !ruby/object:Gem::Requirement
|
81
|
-
none: false
|
82
72
|
requirements:
|
83
73
|
- - ! '>='
|
84
74
|
- !ruby/object:Gem::Version
|
@@ -86,7 +76,6 @@ dependencies:
|
|
86
76
|
type: :development
|
87
77
|
prerelease: false
|
88
78
|
version_requirements: !ruby/object:Gem::Requirement
|
89
|
-
none: false
|
90
79
|
requirements:
|
91
80
|
- - ! '>='
|
92
81
|
- !ruby/object:Gem::Version
|
@@ -94,7 +83,6 @@ dependencies:
|
|
94
83
|
- !ruby/object:Gem::Dependency
|
95
84
|
name: sqlite3
|
96
85
|
requirement: !ruby/object:Gem::Requirement
|
97
|
-
none: false
|
98
86
|
requirements:
|
99
87
|
- - ! '>='
|
100
88
|
- !ruby/object:Gem::Version
|
@@ -102,7 +90,6 @@ dependencies:
|
|
102
90
|
type: :development
|
103
91
|
prerelease: false
|
104
92
|
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
none: false
|
106
93
|
requirements:
|
107
94
|
- - ! '>='
|
108
95
|
- !ruby/object:Gem::Version
|
@@ -110,7 +97,6 @@ dependencies:
|
|
110
97
|
- !ruby/object:Gem::Dependency
|
111
98
|
name: sys-filesystem
|
112
99
|
requirement: !ruby/object:Gem::Requirement
|
113
|
-
none: false
|
114
100
|
requirements:
|
115
101
|
- - ! '>='
|
116
102
|
- !ruby/object:Gem::Version
|
@@ -118,7 +104,6 @@ dependencies:
|
|
118
104
|
type: :development
|
119
105
|
prerelease: false
|
120
106
|
version_requirements: !ruby/object:Gem::Requirement
|
121
|
-
none: false
|
122
107
|
requirements:
|
123
108
|
- - ! '>='
|
124
109
|
- !ruby/object:Gem::Version
|
@@ -126,7 +111,6 @@ dependencies:
|
|
126
111
|
- !ruby/object:Gem::Dependency
|
127
112
|
name: ffi-xattr
|
128
113
|
requirement: !ruby/object:Gem::Requirement
|
129
|
-
none: false
|
130
114
|
requirements:
|
131
115
|
- - ! '>='
|
132
116
|
- !ruby/object:Gem::Version
|
@@ -134,7 +118,6 @@ dependencies:
|
|
134
118
|
type: :development
|
135
119
|
prerelease: false
|
136
120
|
version_requirements: !ruby/object:Gem::Requirement
|
137
|
-
none: false
|
138
121
|
requirements:
|
139
122
|
- - ! '>='
|
140
123
|
- !ruby/object:Gem::Version
|
@@ -181,30 +164,26 @@ files:
|
|
181
164
|
- spec/sqlitemapper_spec.rb
|
182
165
|
homepage: http://rubygems.org/gems/rfusefs
|
183
166
|
licenses: []
|
167
|
+
metadata: {}
|
184
168
|
post_install_message:
|
185
169
|
rdoc_options: []
|
186
170
|
require_paths:
|
187
171
|
- lib
|
188
172
|
required_ruby_version: !ruby/object:Gem::Requirement
|
189
|
-
none: false
|
190
173
|
requirements:
|
191
174
|
- - ! '>='
|
192
175
|
- !ruby/object:Gem::Version
|
193
176
|
version: '0'
|
194
|
-
segments:
|
195
|
-
- 0
|
196
|
-
hash: -1145013380842573975
|
197
177
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
198
|
-
none: false
|
199
178
|
requirements:
|
200
|
-
- - ! '
|
179
|
+
- - ! '>='
|
201
180
|
- !ruby/object:Gem::Version
|
202
|
-
version:
|
181
|
+
version: '0'
|
203
182
|
requirements: []
|
204
183
|
rubyforge_project:
|
205
|
-
rubygems_version: 1.
|
184
|
+
rubygems_version: 2.1.11
|
206
185
|
signing_key:
|
207
|
-
specification_version:
|
186
|
+
specification_version: 4
|
208
187
|
summary: Filesystem in Ruby Userspace
|
209
188
|
test_files: []
|
210
189
|
has_rdoc: yard
|