virtualfs 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 2e73c6237904739d0d25ed562c7882978d05a633
4
+ data.tar.gz: c89983cf4c2445b395497ec04cd71d0a85de126f
5
+ SHA512:
6
+ metadata.gz: 5b3c3e72b749bc5c32c3ef0859affb638f82ba20576b05c7faafef17b820f94c1b7c86499b135c14956b3d1fb763fba79574c8f093a89deb6d8a84c67880c544
7
+ data.tar.gz: 7552cc3df962ad8b4398c64830b857617f9229e0494c54d9bc2edb9cf62964672f684a557af6daf4a058d00a3962a0ef55b8b1b19f4191f5e21bd1341f402f5c
data/Gemfile.lock CHANGED
@@ -2,12 +2,14 @@ PATH
2
2
  remote: .
3
3
  specs:
4
4
  virtualfs (0.1.2)
5
+ dalli (~> 2.7)
5
6
  github_api (~> 0.8)
6
7
  unicode (~> 0.4.4)
7
8
 
8
9
  GEM
9
10
  remote: https://rubygems.org/
10
11
  specs:
12
+ dalli (2.7.2)
11
13
  diff-lcs (1.1.3)
12
14
  fakefs (0.4.2)
13
15
  faraday (0.8.5)
@@ -19,21 +21,18 @@ GEM
19
21
  nokogiri (~> 1.5.2)
20
22
  oauth2
21
23
  hashie (1.2.0)
22
- httpauth (0.2.0)
23
- jwt (0.1.5)
24
- multi_json (>= 1.0)
25
- multi_json (1.5.1)
26
- multi_xml (0.5.3)
24
+ jwt (1.0.0)
25
+ multi_json (1.10.1)
26
+ multi_xml (0.5.5)
27
27
  multipart-post (1.1.5)
28
28
  nokogiri (1.5.6)
29
- oauth2 (0.9.0)
30
- faraday (~> 0.8)
31
- httpauth (~> 0.1)
32
- jwt (~> 0.1.4)
33
- multi_json (~> 1.0)
29
+ oauth2 (1.0.0)
30
+ faraday (>= 0.8, < 0.10)
31
+ jwt (~> 1.0)
32
+ multi_json (~> 1.3)
34
33
  multi_xml (~> 0.5)
35
34
  rack (~> 1.2)
36
- rack (1.5.2)
35
+ rack (1.6.0)
37
36
  rspec (2.12.0)
38
37
  rspec-core (~> 2.12.0)
39
38
  rspec-expectations (~> 2.12.0)
@@ -0,0 +1,23 @@
1
+ require 'dalli'
2
+
3
+ module VirtualFS
4
+ class DalliCache
5
+ attr_accessor :expires_after
6
+
7
+ def initialize(opts={})
8
+ @expires_after = opts[:expires_after] || -1
9
+
10
+ opts[:expires_in] = [0, @expires_after].max
11
+ opts[:namespace] ||= 'virtualfs'
12
+
13
+ @client = Dalli::Client.new(opts[:host], opts)
14
+ end
15
+
16
+ def cache(key, &proc)
17
+ value = yield
18
+ return @client.get(key) unless @client.add(key, value)
19
+
20
+ value
21
+ end
22
+ end
23
+ end
@@ -1,3 +1,3 @@
1
1
  module VirtualFS
2
- VERSION = "0.1.2"
2
+ VERSION = "0.1.3"
3
3
  end
data/lib/virtualfs.rb CHANGED
@@ -27,3 +27,4 @@ require "virtualfs/github"
27
27
  # Caches
28
28
  require "virtualfs/runtime_cache"
29
29
  require "virtualfs/file_cache"
30
+ require "virtualfs/dalli_cache"
data/virtualfs.gemspec CHANGED
@@ -13,9 +13,11 @@ Gem::Specification.new do |gem|
13
13
  gem.name = "virtualfs"
14
14
  gem.require_paths = ["lib"]
15
15
  gem.version = VirtualFS::VERSION
16
+ gem.licenses = 'MIT'
16
17
 
17
18
  gem.add_dependency 'github_api', '~> 0.8'
18
19
  gem.add_dependency 'unicode', '~> 0.4.4'
20
+ gem.add_dependency 'dalli', '~> 2.7'
19
21
 
20
22
  gem.add_development_dependency 'rspec', '~> 2.12'
21
23
  gem.add_development_dependency 'fakefs', '~> 0.4'
metadata CHANGED
@@ -1,78 +1,83 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: virtualfs
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.2
5
- prerelease:
4
+ version: 0.1.3
6
5
  platform: ruby
7
6
  authors:
8
7
  - Rafał Hirsz
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2013-02-16 00:00:00.000000000 Z
11
+ date: 2015-01-13 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: github_api
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ~>
17
+ - - "~>"
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0.8'
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
26
  version: '0.8'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: unicode
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ~>
31
+ - - "~>"
36
32
  - !ruby/object:Gem::Version
37
33
  version: 0.4.4
38
34
  type: :runtime
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
45
40
  version: 0.4.4
41
+ - !ruby/object:Gem::Dependency
42
+ name: dalli
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - "~>"
46
+ - !ruby/object:Gem::Version
47
+ version: '2.7'
48
+ type: :runtime
49
+ prerelease: false
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - "~>"
53
+ - !ruby/object:Gem::Version
54
+ version: '2.7'
46
55
  - !ruby/object:Gem::Dependency
47
56
  name: rspec
48
57
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
58
  requirements:
51
- - - ~>
59
+ - - "~>"
52
60
  - !ruby/object:Gem::Version
53
61
  version: '2.12'
54
62
  type: :development
55
63
  prerelease: false
56
64
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
65
  requirements:
59
- - - ~>
66
+ - - "~>"
60
67
  - !ruby/object:Gem::Version
61
68
  version: '2.12'
62
69
  - !ruby/object:Gem::Dependency
63
70
  name: fakefs
64
71
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
72
  requirements:
67
- - - ~>
73
+ - - "~>"
68
74
  - !ruby/object:Gem::Version
69
75
  version: '0.4'
70
76
  type: :development
71
77
  prerelease: false
72
78
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
79
  requirements:
75
- - - ~>
80
+ - - "~>"
76
81
  - !ruby/object:Gem::Version
77
82
  version: '0.4'
78
83
  description:
@@ -82,7 +87,7 @@ executables: []
82
87
  extensions: []
83
88
  extra_rdoc_files: []
84
89
  files:
85
- - .gitignore
90
+ - ".gitignore"
86
91
  - Gemfile
87
92
  - Gemfile.lock
88
93
  - LICENSE
@@ -90,6 +95,7 @@ files:
90
95
  - Rakefile
91
96
  - lib/virtualfs.rb
92
97
  - lib/virtualfs/backend.rb
98
+ - lib/virtualfs/dalli_cache.rb
93
99
  - lib/virtualfs/dir.rb
94
100
  - lib/virtualfs/file.rb
95
101
  - lib/virtualfs/file_cache.rb
@@ -100,28 +106,28 @@ files:
100
106
  - spec/local_spec.rb
101
107
  - virtualfs.gemspec
102
108
  homepage: https://github.com/evoL/virtualfs
103
- licenses: []
109
+ licenses:
110
+ - MIT
111
+ metadata: {}
104
112
  post_install_message:
105
113
  rdoc_options: []
106
114
  require_paths:
107
115
  - lib
108
116
  required_ruby_version: !ruby/object:Gem::Requirement
109
- none: false
110
117
  requirements:
111
- - - ! '>='
118
+ - - ">="
112
119
  - !ruby/object:Gem::Version
113
120
  version: '0'
114
121
  required_rubygems_version: !ruby/object:Gem::Requirement
115
- none: false
116
122
  requirements:
117
- - - ! '>='
123
+ - - ">="
118
124
  - !ruby/object:Gem::Version
119
125
  version: '0'
120
126
  requirements: []
121
127
  rubyforge_project:
122
- rubygems_version: 1.8.24
128
+ rubygems_version: 2.4.3
123
129
  signing_key:
124
- specification_version: 3
130
+ specification_version: 4
125
131
  summary: Allows accessing remote datastores in a unified way.
126
132
  test_files:
127
133
  - spec/local_spec.rb