rails-cache-tags 1.1.1 → 1.2.0

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.
data/LICENSE CHANGED
@@ -1,4 +1,4 @@
1
- Copyright (c) 2012 amikhailov
1
+ Copyright (c) 2012 Alexei Mikhailov
2
2
 
3
3
  MIT License
4
4
 
data/README.md CHANGED
@@ -1,6 +1,7 @@
1
1
  # Synopsys
2
2
 
3
3
  Tagged caching support within your Rails application. Tested against Rails 3.0, Rails 3.1 and Rails 3.2
4
+ [Dalli](https://github.com/mperham/dalli) store is also supported!
4
5
 
5
6
  # Installation
6
7
 
@@ -30,6 +31,39 @@ cache.delete_tag "baz"
30
31
  cache.read "foo" => nil
31
32
  ```
32
33
 
34
+ More realistic example:
35
+ ```ruby
36
+ class PostsController < ApplicationController
37
+ def index
38
+ @posts = cache.fetch("index", :tags =>
39
+
40
+ @posts = cache.read("posts") || begin
41
+ posts_from_db = Post.all
42
+
43
+ cache.write "posts", :tags => {:post => posts_from_db.map(&:id)}
44
+
45
+ posts_from_db
46
+ end
47
+ end
48
+
49
+ def show
50
+ id = params[:id]
51
+
52
+ @post = cache.fetch(["post", id], :tags => {:post => id}) do
53
+ Post.find(id)
54
+ end
55
+ end
56
+
57
+ def update
58
+ @post = Post.find(params[:id])
59
+
60
+ if @post.update_attributes
61
+ cache.delete_tag :post => @post.id
62
+ end
63
+ end
64
+ end
65
+ ```
66
+
33
67
  In your controller:
34
68
  ```ruby
35
69
  class PostController < ActionController::Base
@@ -51,6 +85,6 @@ end
51
85
  2. Create your feature branch (`git checkout -b my-new-feature`)
52
86
  3. Commit your changes (`git commit -am 'Added some feature'`)
53
87
  4. Write tests!
54
- 5. Run tests against all appraisals
88
+ 5. Run tests against all major version of Rails starting from 3.0
55
89
  6. Push to the branch (`git push origin my-new-feature`)
56
- 7. Create new Pull Request
90
+ 7. Create new Pull Request
@@ -5,6 +5,7 @@ require "action_controller"
5
5
  require "rails/cache/tag"
6
6
  require "rails/cache/tags/store"
7
7
 
8
+ # Patch ActiveSupport common store
8
9
  module ActiveSupport
9
10
  module Cache
10
11
  class Store
@@ -17,6 +18,7 @@ module ActiveSupport
17
18
  end
18
19
  end
19
20
 
21
+ # Patch ActionDispatch
20
22
  class ActionController::Base < ActionController::Metal
21
23
  def expire_fragments_by_tags *args
22
24
  return unless cache_configured?
@@ -24,4 +26,18 @@ class ActionController::Base < ActionController::Metal
24
26
  cache_store.delete_tag *args
25
27
  end
26
28
  alias expire_fragments_by_tag expire_fragments_by_tags
29
+ end
30
+
31
+ # Patch Dalli store
32
+ begin
33
+ require "dalli"
34
+ require "dalli/version"
35
+
36
+ if Dalli::VERSION.to_f > 2
37
+ require "active_support/cache/dalli_store"
38
+
39
+ ActiveSupport::Cache::DalliStore.extend(Rails::Cache::Tags::Store)
40
+ end
41
+ rescue LoadError, NameError
42
+ # ignore
27
43
  end
@@ -4,6 +4,9 @@ module Rails
4
4
  module Cache
5
5
  module Tags
6
6
  module Store
7
+ # cache entry (for Dalli mainly)
8
+ Entry = Struct.new(:value, :tags)
9
+
7
10
  # patched +new+ method
8
11
  def new(*args, &block) #:nodoc:
9
12
  unless acts_like?(:cached_tags)
@@ -37,8 +40,13 @@ module Rails
37
40
  def read_entry_with_tags(key, options) #:nodoc
38
41
  entry = read_entry_without_tags(key, options)
39
42
 
40
- if entry && entry.tags.present?
41
- current_versions = fetch_tags(entry.tags.keys)
43
+ # tags are supported only for ActiveSupport::Cache::Entry or Rails::Cache::Tags::Entry
44
+ tags = if entry.is_a?(ActiveSupport::Cache::Entry) || entry.is_a?(Entry)
45
+ entry.tags
46
+ end
47
+
48
+ if tags.is_a?(Hash) && tags.present?
49
+ current_versions = fetch_tags(entry.tags.keys).values
42
50
  saved_versions = entry.tags.values
43
51
 
44
52
  if current_versions != saved_versions
@@ -48,15 +56,27 @@ module Rails
48
56
  end
49
57
  end
50
58
 
51
- entry
59
+ entry.is_a?(Entry) ?
60
+ entry.value :
61
+ entry
52
62
  end # def read_entry_with_tags
53
63
 
54
64
  def write_entry_with_tags(key, entry, options) #:nodoc:
55
65
  tags = Rails::Cache::Tag.build_tags Array.wrap(options[:tags]).flatten.compact
56
66
 
57
67
  if entry && tags.present?
58
- current_versions = fetch_tags(tags) # => [1, 2, 3]
59
- entry.tags = Hash[tags.zip(current_versions).map { |tag, v| [tag.name, v || tag.increment(self)] }]
68
+ options[:raw] = false # force :raw => false
69
+
70
+ # Dalli treats ActiveSupport::Cache::Entry as deprecated behavior, so we use our own Entry class
71
+ entry = Entry.new(entry, nil) unless entry.is_a?(ActiveSupport::Cache::Entry)
72
+
73
+ entry.tags = fetch_tags(tags).reduce(HashWithIndifferentAccess.new) do |hash, v|
74
+ tag, value = v
75
+
76
+ hash[tag.name] = value || tag.increment(self)
77
+
78
+ hash
79
+ end
60
80
  end
61
81
 
62
82
  write_entry_without_tags(key, entry, options)
@@ -64,16 +84,19 @@ module Rails
64
84
 
65
85
  private
66
86
  # fetch tags versions from store
67
- # fetch ['user:1', 'post:2', 'country:2'] => [3, 4, nil]
87
+ # fetch ['user/1', 'post/2', 'country/2'] => [Tag('user/1') => 3, Tag('post/2') => 4, Tag('country/2') => nil]
68
88
  def fetch_tags(names) #:nodoc:
69
89
  tags = Rails::Cache::Tag.build_tags names
70
- keys = tags.map(&:to_key)
71
- stored = read_multi(*keys)
90
+ stored = read_multi(*tags.map(&:to_key))
72
91
 
73
- # we should save order
74
- keys.collect { |k| stored[k] }
75
- end
76
- end
92
+ # build hash
93
+ tags.reduce(Hash.new) do |hash, t|
94
+ hash[t] = stored[t.to_key]
95
+
96
+ hash
97
+ end
98
+ end # def fetch_tags
99
+ end # module InstanceMethods
77
100
  end # module Store
78
101
  end # module Tags
79
102
  end # module Cache
@@ -1,7 +1,7 @@
1
1
  module Rails
2
2
  module Cache
3
3
  module Tags
4
- VERSION = "1.1.1"
4
+ VERSION = "1.2.0"
5
5
  end
6
6
  end
7
7
  end
@@ -8,7 +8,7 @@ Gem::Specification.new do |gem|
8
8
  gem.summary = %q{Tagged caching support for Rails}
9
9
  gem.homepage = "https://github.com/take-five/rails-cache-tags"
10
10
 
11
- gem.files = `git ls-files`.split($\)
11
+ gem.files = %W(LICENSE README.md lib/rails-cache-tags.rb lib/rails/cache/tag.rb rails-cache-tags.gemspec lib/rails/cache/tags/store.rb lib/rails/cache/tags/version.rb test/cache_tags_test.rb test/caching_test.rb test/test_helper.rb)
12
12
  gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
13
13
  gem.name = "rails-cache-tags"
14
14
  gem.require_paths = %W(lib)
@@ -22,4 +22,5 @@ Gem::Specification.new do |gem|
22
22
  gem.add_development_dependency 'rack'
23
23
  gem.add_development_dependency 'mocha'
24
24
  gem.add_development_dependency 'simplecov'
25
+ gem.add_development_dependency 'dalli', '>= 2.0'
25
26
  end
@@ -73,6 +73,9 @@ module CacheTagsBehavior
73
73
  @cache.write("foo", "bar", :tags => {:baz => 1})
74
74
  assert_equal 'bar', @cache.read('foo')
75
75
 
76
+ @cache.delete_tag :baz => 2
77
+ assert_equal 'bar', @cache.read('foo')
78
+
76
79
  @cache.delete_tag :baz => 1
77
80
 
78
81
  assert_nil @cache.read('foo')
@@ -91,6 +94,6 @@ module CacheTagsBehavior
91
94
  end
92
95
  end
93
96
 
94
- [FileStoreTest, MemoryStoreTest, MemCacheStoreTest].each do |klass|
97
+ [FileStoreTest, MemoryStoreTest, MemCacheStoreTest, DalliStoreTest].each do |klass|
95
98
  klass.send :include, CacheTagsBehavior
96
99
  end
data/test/caching_test.rb CHANGED
@@ -3,138 +3,6 @@ $:.unshift(File.dirname(__FILE__))
3
3
  require 'test_helper'
4
4
  require 'logger'
5
5
 
6
- class CacheKeyTest < ActiveSupport::TestCase
7
- def test_expand_cache_key
8
- assert_equal '1/2/true', ActiveSupport::Cache.expand_cache_key([1, '2', true])
9
- assert_equal 'name/1/2/true', ActiveSupport::Cache.expand_cache_key([1, '2', true], :name)
10
- end
11
-
12
- def test_expand_cache_key_with_rails_cache_id
13
- begin
14
- ENV['RAILS_CACHE_ID'] = 'c99'
15
- assert_equal 'c99/foo', ActiveSupport::Cache.expand_cache_key(:foo)
16
- assert_equal 'c99/foo', ActiveSupport::Cache.expand_cache_key([:foo])
17
- assert_equal 'nm/c99/foo', ActiveSupport::Cache.expand_cache_key(:foo, :nm)
18
- assert_equal 'nm/c99/foo', ActiveSupport::Cache.expand_cache_key([:foo], :nm)
19
- ensure
20
- ENV['RAILS_CACHE_ID'] = nil
21
- end
22
- end
23
-
24
- def test_expand_cache_key_with_rails_app_version
25
- begin
26
- ENV['RAILS_APP_VERSION'] = 'rails3'
27
- assert_equal 'rails3/foo', ActiveSupport::Cache.expand_cache_key(:foo)
28
- ensure
29
- ENV['RAILS_APP_VERSION'] = nil
30
- end
31
- end
32
-
33
- def test_expand_cache_key_rails_cache_id_should_win_over_rails_app_version
34
- begin
35
- ENV['RAILS_CACHE_ID'] = 'c99'
36
- ENV['RAILS_APP_VERSION'] = 'rails3'
37
- assert_equal 'c99/foo', ActiveSupport::Cache.expand_cache_key(:foo)
38
- ensure
39
- ENV['RAILS_CACHE_ID'] = nil
40
- ENV['RAILS_APP_VERSION'] = nil
41
- end
42
- end
43
-
44
- def test_respond_to_cache_key
45
- key = 'foo'
46
- def key.cache_key
47
- :foo_key
48
- end
49
- assert_equal 'foo_key', ActiveSupport::Cache.expand_cache_key(key)
50
- end
51
-
52
- end
53
-
54
- class CacheStoreSettingTest < ActiveSupport::TestCase
55
- def test_file_fragment_cache_store
56
- store = ActiveSupport::Cache.lookup_store :file_store, "/path/to/cache/directory"
57
- assert_kind_of(ActiveSupport::Cache::FileStore, store)
58
- assert_equal "/path/to/cache/directory", store.cache_path
59
- end
60
-
61
- def test_mem_cache_fragment_cache_store
62
- MemCache.expects(:new).with(%w[localhost], {})
63
- store = ActiveSupport::Cache.lookup_store :mem_cache_store, "localhost"
64
- assert_kind_of(ActiveSupport::Cache::MemCacheStore, store)
65
- end
66
-
67
- def test_mem_cache_fragment_cache_store_with_given_mem_cache
68
- mem_cache = MemCache.new
69
- MemCache.expects(:new).never
70
- store = ActiveSupport::Cache.lookup_store :mem_cache_store, mem_cache
71
- assert_kind_of(ActiveSupport::Cache::MemCacheStore, store)
72
- end
73
-
74
- def test_mem_cache_fragment_cache_store_with_given_mem_cache_like_object
75
- MemCache.expects(:new).never
76
- memcache = Object.new
77
- def memcache.get() true end
78
- store = ActiveSupport::Cache.lookup_store :mem_cache_store, memcache
79
- assert_kind_of(ActiveSupport::Cache::MemCacheStore, store)
80
- end
81
-
82
- def test_mem_cache_fragment_cache_store_with_multiple_servers
83
- MemCache.expects(:new).with(%w[localhost 192.168.1.1], {})
84
- store = ActiveSupport::Cache.lookup_store :mem_cache_store, "localhost", '192.168.1.1'
85
- assert_kind_of(ActiveSupport::Cache::MemCacheStore, store)
86
- end
87
-
88
- def test_mem_cache_fragment_cache_store_with_options
89
- MemCache.expects(:new).with(%w[localhost 192.168.1.1], { :timeout => 10 })
90
- store = ActiveSupport::Cache.lookup_store :mem_cache_store, "localhost", '192.168.1.1', :namespace => 'foo', :timeout => 10
91
- assert_kind_of(ActiveSupport::Cache::MemCacheStore, store)
92
- assert_equal 'foo', store.options[:namespace]
93
- end
94
-
95
- def test_object_assigned_fragment_cache_store
96
- store = ActiveSupport::Cache.lookup_store ActiveSupport::Cache::FileStore.new("/path/to/cache/directory")
97
- assert_kind_of(ActiveSupport::Cache::FileStore, store)
98
- assert_equal "/path/to/cache/directory", store.cache_path
99
- end
100
- end
101
-
102
- class CacheStoreNamespaceTest < ActiveSupport::TestCase
103
- def test_static_namespace
104
- cache = ActiveSupport::Cache.lookup_store(:memory_store, :namespace => "tester")
105
- cache.write("foo", "bar")
106
- assert_equal "bar", cache.read("foo")
107
- assert_equal "bar", cache.instance_variable_get(:@data)["tester:foo"].value
108
- end
109
-
110
- def test_proc_namespace
111
- test_val = "tester"
112
- proc = lambda{test_val}
113
- cache = ActiveSupport::Cache.lookup_store(:memory_store, :namespace => proc)
114
- cache.write("foo", "bar")
115
- assert_equal "bar", cache.read("foo")
116
- assert_equal "bar", cache.instance_variable_get(:@data)["tester:foo"].value
117
- end
118
-
119
- def test_delete_matched_key_start
120
- cache = ActiveSupport::Cache.lookup_store(:memory_store, :namespace => "tester")
121
- cache.write("foo", "bar")
122
- cache.write("fu", "baz")
123
- cache.delete_matched(/^fo/)
124
- assert_equal false, cache.exist?("foo")
125
- assert_equal true, cache.exist?("fu")
126
- end
127
-
128
- def test_delete_matched_key
129
- cache = ActiveSupport::Cache.lookup_store(:memory_store, :namespace => "foo")
130
- cache.write("foo", "bar")
131
- cache.write("fu", "baz")
132
- cache.delete_matched(/OO/i)
133
- assert_equal false, cache.exist?("foo")
134
- assert_equal true, cache.exist?("fu")
135
- end
136
- end
137
-
138
6
  # Tests the base functionality that should be identical across all cache stores.
139
7
  module CacheStoreBehavior
140
8
  def test_should_read_and_write_strings
@@ -566,24 +434,37 @@ uses_memcached 'memcached backed store' do
566
434
  end
567
435
  end
568
436
  end
569
- end
570
437
 
571
- class CacheStoreLoggerTest < ActiveSupport::TestCase
572
- def setup
573
- @cache = ActiveSupport::Cache.lookup_store(:memory_store)
438
+ class DalliStoreTest < ActiveSupport::TestCase
439
+ def setup
440
+ @cache = ActiveSupport::Cache.lookup_store(:dalli_store, :expires_in => 60)
441
+ @peek = ActiveSupport::Cache.lookup_store(:dalli_store)
442
+ @data = @cache.instance_variable_get(:@data)
443
+ @cache.clear
444
+ @cache.silence!
445
+ end
574
446
 
575
- @buffer = StringIO.new
576
- @cache.logger = Logger.new(@buffer)
577
- end
447
+ def test_should_read_and_write_strings
448
+ assert_equal true, @cache.write('foo', 'bar')
449
+ assert_equal 'bar', @cache.read('foo')
450
+ end
578
451
 
579
- def test_logging
580
- @cache.fetch('foo') { 'bar' }
581
- assert_present @buffer.string
582
- end
452
+ def test_should_read_and_write_hash
453
+ assert_equal true, @cache.write('foo', {:a => "b"})
454
+ assert_equal({:a => "b"}, @cache.read('foo'))
455
+ end
583
456
 
584
- def test_mute_logging
585
- @cache.mute { @cache.fetch('foo') { 'bar' } }
586
- assert_blank @buffer.string
457
+ def test_should_read_and_write_integer
458
+ assert_equal true, @cache.write('foo', 1)
459
+ assert_equal 1, @cache.read('foo')
460
+ end
461
+
462
+ def test_read_multi
463
+ @cache.write('foo', 'bar')
464
+ @cache.write('fu', 'baz')
465
+ @cache.write('fud', 'biz')
466
+ assert_equal({"foo" => "bar", "fu" => "baz"}, @cache.read_multi('foo', 'fu'))
467
+ end
587
468
  end
588
469
  end
589
470
 
data/test/test_helper.rb CHANGED
@@ -1,5 +1,7 @@
1
1
  require "bundler/setup"
2
2
 
3
+ require 'rails'
4
+
3
5
  require 'active_support/all'
4
6
  require 'active_support/test_case'
5
7
  require "active_support/core_ext"
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails-cache-tags
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.1
4
+ version: 1.2.0
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-07-09 00:00:00.000000000Z
12
+ date: 2012-07-16 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: rails
16
- requirement: &18370040 !ruby/object:Gem::Requirement
16
+ requirement: &20459380 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '3.0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *18370040
24
+ version_requirements: *20459380
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: appraisal
27
- requirement: &18369620 !ruby/object:Gem::Requirement
27
+ requirement: &20458680 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *18369620
35
+ version_requirements: *20458680
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: minitest
38
- requirement: &18369080 !ruby/object:Gem::Requirement
38
+ requirement: &20457820 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ~>
@@ -43,10 +43,10 @@ dependencies:
43
43
  version: '3.2'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *18369080
46
+ version_requirements: *20457820
47
47
  - !ruby/object:Gem::Dependency
48
48
  name: memcache-client
49
- requirement: &18368620 !ruby/object:Gem::Requirement
49
+ requirement: &20457360 !ruby/object:Gem::Requirement
50
50
  none: false
51
51
  requirements:
52
52
  - - ! '>='
@@ -54,10 +54,10 @@ dependencies:
54
54
  version: '0'
55
55
  type: :development
56
56
  prerelease: false
57
- version_requirements: *18368620
57
+ version_requirements: *20457360
58
58
  - !ruby/object:Gem::Dependency
59
59
  name: rack
60
- requirement: &18368160 !ruby/object:Gem::Requirement
60
+ requirement: &20456820 !ruby/object:Gem::Requirement
61
61
  none: false
62
62
  requirements:
63
63
  - - ! '>='
@@ -65,10 +65,10 @@ dependencies:
65
65
  version: '0'
66
66
  type: :development
67
67
  prerelease: false
68
- version_requirements: *18368160
68
+ version_requirements: *20456820
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: mocha
71
- requirement: &18367680 !ruby/object:Gem::Requirement
71
+ requirement: &20455780 !ruby/object:Gem::Requirement
72
72
  none: false
73
73
  requirements:
74
74
  - - ! '>='
@@ -76,10 +76,10 @@ dependencies:
76
76
  version: '0'
77
77
  type: :development
78
78
  prerelease: false
79
- version_requirements: *18367680
79
+ version_requirements: *20455780
80
80
  - !ruby/object:Gem::Dependency
81
81
  name: simplecov
82
- requirement: &18367220 !ruby/object:Gem::Requirement
82
+ requirement: &20454640 !ruby/object:Gem::Requirement
83
83
  none: false
84
84
  requirements:
85
85
  - - ! '>='
@@ -87,7 +87,18 @@ dependencies:
87
87
  version: '0'
88
88
  type: :development
89
89
  prerelease: false
90
- version_requirements: *18367220
90
+ version_requirements: *20454640
91
+ - !ruby/object:Gem::Dependency
92
+ name: dalli
93
+ requirement: &20440600 !ruby/object:Gem::Requirement
94
+ none: false
95
+ requirements:
96
+ - - ! '>='
97
+ - !ruby/object:Gem::Version
98
+ version: '2.0'
99
+ type: :development
100
+ prerelease: false
101
+ version_requirements: *20440600
91
102
  description: Tagged caching support for Rails
92
103
  email:
93
104
  - amikhailov83@gmail.com
@@ -95,17 +106,13 @@ executables: []
95
106
  extensions: []
96
107
  extra_rdoc_files: []
97
108
  files:
98
- - .gitignore
99
- - Appraisals
100
- - Gemfile
101
109
  - LICENSE
102
110
  - README.md
103
- - Rakefile
104
111
  - lib/rails-cache-tags.rb
105
112
  - lib/rails/cache/tag.rb
113
+ - rails-cache-tags.gemspec
106
114
  - lib/rails/cache/tags/store.rb
107
115
  - lib/rails/cache/tags/version.rb
108
- - rails-cache-tags.gemspec
109
116
  - test/cache_tags_test.rb
110
117
  - test/caching_test.rb
111
118
  - test/test_helper.rb
@@ -121,18 +128,12 @@ required_ruby_version: !ruby/object:Gem::Requirement
121
128
  - - ! '>='
122
129
  - !ruby/object:Gem::Version
123
130
  version: '0'
124
- segments:
125
- - 0
126
- hash: -1966449301647994117
127
131
  required_rubygems_version: !ruby/object:Gem::Requirement
128
132
  none: false
129
133
  requirements:
130
134
  - - ! '>='
131
135
  - !ruby/object:Gem::Version
132
136
  version: '0'
133
- segments:
134
- - 0
135
- hash: -1966449301647994117
136
137
  requirements: []
137
138
  rubyforge_project:
138
139
  rubygems_version: 1.8.17
@@ -143,3 +144,4 @@ test_files:
143
144
  - test/cache_tags_test.rb
144
145
  - test/caching_test.rb
145
146
  - test/test_helper.rb
147
+ has_rdoc:
data/.gitignore DELETED
@@ -1,19 +0,0 @@
1
- *.gem
2
- *.rbc
3
- .bundle
4
- .config
5
- .yardoc
6
- Gemfile.lock
7
- InstalledFiles
8
- _yardoc
9
- coverage
10
- doc/
11
- lib/bundler/man
12
- pkg
13
- rdoc
14
- spec/reports
15
- test/tmp
16
- test/version_tmp
17
- tmp
18
- .idea
19
- gemfiles
data/Appraisals DELETED
@@ -1,11 +0,0 @@
1
- appraise "rails3.0" do
2
- gem "rails", "~> 3.0.0"
3
- end
4
-
5
- appraise "rails3.1" do
6
- gem "rails", "~> 3.1.0"
7
- end
8
-
9
- appraise "rails3.2" do
10
- gem "rails", "~> 3.2.0"
11
- end
data/Gemfile DELETED
@@ -1,4 +0,0 @@
1
- source 'https://rubygems.org'
2
-
3
- # Specify your gem's dependencies in rails-cache-tags.gemspec
4
- gemspec
data/Rakefile DELETED
@@ -1,11 +0,0 @@
1
- #!/usr/bin/env rake
2
- require "bundler/gem_tasks"
3
- require 'appraisal'
4
-
5
- desc 'Run tests'
6
- task :test do
7
- test_dir = File.expand_path(File.join("..", "test"), __FILE__)
8
-
9
- Dir[File.join(test_dir, '**', '*_test.rb')].each { |f| require f }
10
- require 'minitest/autorun'
11
- end