method_cache 1.0.0 → 1.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: a99a50f7a13bc0c87fa4c68eac6e3324114d76e2
4
+ data.tar.gz: b51163473e41ce10fab806f2ef67a7e592a88f82
5
+ SHA512:
6
+ metadata.gz: 32fc56dace20244c2e9e795e506e2de3dbea956948e1be032b821d43cb1b7ad9a59607b6005090507ad37dc8180b0b6b4d14fdf1aa7c0ab3564d6bf1c72bb239
7
+ data.tar.gz: 7babb4a5d21ebd3767541a18d9e049b15aad416c1427005306a60791155684b917a701c13e119665257bd10f718c2a0ffd98036ce299eee2cc4a6621dd62f170
@@ -1 +1 @@
1
- ree-1.8.7-2012.02
1
+ 2.0.0-p247
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.0
1
+ 1.1.0
@@ -12,7 +12,7 @@ module MethodCache
12
12
  def initialize(method_name, opts)
13
13
  opts[:cache] ||= :counters if opts[:counter]
14
14
  @method_name = method_name
15
- @opts = opts
15
+ @opts = opts
16
16
  end
17
17
 
18
18
  def bind(target, args)
@@ -108,7 +108,7 @@ module MethodCache
108
108
  def method_name_without_caching
109
109
  @method_name_without_caching ||= begin
110
110
  base_name, punctuation = method_name.to_s.sub(/([?!=])$/, ''), $1
111
- "#{base_name}_without_caching#{punctuation}"
111
+ "#{base_name}_without_caching#{punctuation}".to_sym
112
112
  end
113
113
  end
114
114
 
@@ -140,10 +140,10 @@ module MethodCache
140
140
  arg_string = ([method_name, target] + args).collect do |arg|
141
141
  object_key(arg)
142
142
  end.join('|')
143
- @key = ['m', version, arg_string].compact.join('|')
144
- @key = "m|#{Digest::SHA1.hexdigest(@key)}" if @key.length > 250
143
+ @key = [version, arg_string].compact.join('|')
144
+ @key = Digest::SHA1.hexdigest(@key) if @key.length > 250
145
145
  end
146
- @key
146
+ "m#{MethodCache.version}|#{@key}"
147
147
  end
148
148
 
149
149
  def cached_at
@@ -9,6 +9,7 @@ Gem::Specification.new do |gem|
9
9
  gem.description = %q{Simple memcache-based memoization library for Ruby}
10
10
  gem.summary = gem.description
11
11
  gem.homepage = "https://github.com/ninjudd/method_cache"
12
+ gem.license = 'MIT'
12
13
 
13
14
  gem.add_development_dependency 'shoulda'
14
15
  gem.add_development_dependency 'mocha'
@@ -16,7 +17,6 @@ Gem::Specification.new do |gem|
16
17
  gem.add_development_dependency 'dalli'
17
18
  gem.add_development_dependency 'activesupport', '~> 2.3.9'
18
19
 
19
-
20
20
  gem.add_dependency 'memcache', '>= 1.0.0'
21
21
 
22
22
  gem.files = `git ls-files`.split($/)
@@ -84,6 +84,23 @@ class Baz
84
84
  extend Bar
85
85
  end
86
86
 
87
+ class A
88
+ extend MethodCache
89
+ end
90
+
91
+ class B < A
92
+ cache_method :foo
93
+ def foo
94
+ 'old'
95
+ end
96
+ end
97
+
98
+ class C < B
99
+ def foo
100
+ 'new'
101
+ end
102
+ end
103
+
87
104
  class TestMethodCache < Test::Unit::TestCase
88
105
  should 'cache methods locally' do
89
106
  a = Foo.new
metadata CHANGED
@@ -1,121 +1,106 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: method_cache
3
- version: !ruby/object:Gem::Version
4
- hash: 23
5
- prerelease:
6
- segments:
7
- - 1
8
- - 0
9
- - 0
10
- version: 1.0.0
3
+ version: !ruby/object:Gem::Version
4
+ version: 1.1.0
11
5
  platform: ruby
12
- authors:
6
+ authors:
13
7
  - Justin Balthrop
14
8
  autorequire:
15
9
  bindir: bin
16
10
  cert_chain: []
17
-
18
- date: 2013-07-15 00:00:00 -07:00
19
- default_executable:
20
- dependencies:
21
- - !ruby/object:Gem::Dependency
11
+ date: 2013-11-01 00:00:00.000000000 Z
12
+ dependencies:
13
+ - !ruby/object:Gem::Dependency
22
14
  name: shoulda
23
- prerelease: false
24
- requirement: &id001 !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - ">="
28
- - !ruby/object:Gem::Version
29
- hash: 3
30
- segments:
31
- - 0
32
- version: "0"
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - '>='
18
+ - !ruby/object:Gem::Version
19
+ version: '0'
33
20
  type: :development
34
- version_requirements: *id001
35
- - !ruby/object:Gem::Dependency
36
- name: mocha
37
21
  prerelease: false
38
- requirement: &id002 !ruby/object:Gem::Requirement
39
- none: false
40
- requirements:
41
- - - ">="
42
- - !ruby/object:Gem::Version
43
- hash: 3
44
- segments:
45
- - 0
46
- version: "0"
22
+ version_requirements: !ruby/object:Gem::Requirement
23
+ requirements:
24
+ - - '>='
25
+ - !ruby/object:Gem::Version
26
+ version: '0'
27
+ - !ruby/object:Gem::Dependency
28
+ name: mocha
29
+ requirement: !ruby/object:Gem::Requirement
30
+ requirements:
31
+ - - '>='
32
+ - !ruby/object:Gem::Version
33
+ version: '0'
47
34
  type: :development
48
- version_requirements: *id002
49
- - !ruby/object:Gem::Dependency
50
- name: rake
51
35
  prerelease: false
52
- requirement: &id003 !ruby/object:Gem::Requirement
53
- none: false
54
- requirements:
55
- - - ">="
56
- - !ruby/object:Gem::Version
57
- hash: 3
58
- segments:
59
- - 0
60
- version: "0"
36
+ version_requirements: !ruby/object:Gem::Requirement
37
+ requirements:
38
+ - - '>='
39
+ - !ruby/object:Gem::Version
40
+ version: '0'
41
+ - !ruby/object:Gem::Dependency
42
+ name: rake
43
+ requirement: !ruby/object:Gem::Requirement
44
+ requirements:
45
+ - - '>='
46
+ - !ruby/object:Gem::Version
47
+ version: '0'
61
48
  type: :development
62
- version_requirements: *id003
63
- - !ruby/object:Gem::Dependency
64
- name: dalli
65
49
  prerelease: false
66
- requirement: &id004 !ruby/object:Gem::Requirement
67
- none: false
68
- requirements:
69
- - - ">="
70
- - !ruby/object:Gem::Version
71
- hash: 3
72
- segments:
73
- - 0
74
- version: "0"
50
+ version_requirements: !ruby/object:Gem::Requirement
51
+ requirements:
52
+ - - '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ - !ruby/object:Gem::Dependency
56
+ name: dalli
57
+ requirement: !ruby/object:Gem::Requirement
58
+ requirements:
59
+ - - '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
75
62
  type: :development
76
- version_requirements: *id004
77
- - !ruby/object:Gem::Dependency
78
- name: activesupport
79
63
  prerelease: false
80
- requirement: &id005 !ruby/object:Gem::Requirement
81
- none: false
82
- requirements:
64
+ version_requirements: !ruby/object:Gem::Requirement
65
+ requirements:
66
+ - - '>='
67
+ - !ruby/object:Gem::Version
68
+ version: '0'
69
+ - !ruby/object:Gem::Dependency
70
+ name: activesupport
71
+ requirement: !ruby/object:Gem::Requirement
72
+ requirements:
83
73
  - - ~>
84
- - !ruby/object:Gem::Version
85
- hash: 17
86
- segments:
87
- - 2
88
- - 3
89
- - 9
74
+ - !ruby/object:Gem::Version
90
75
  version: 2.3.9
91
76
  type: :development
92
- version_requirements: *id005
93
- - !ruby/object:Gem::Dependency
94
- name: memcache
95
77
  prerelease: false
96
- requirement: &id006 !ruby/object:Gem::Requirement
97
- none: false
98
- requirements:
99
- - - ">="
100
- - !ruby/object:Gem::Version
101
- hash: 23
102
- segments:
103
- - 1
104
- - 0
105
- - 0
78
+ version_requirements: !ruby/object:Gem::Requirement
79
+ requirements:
80
+ - - ~>
81
+ - !ruby/object:Gem::Version
82
+ version: 2.3.9
83
+ - !ruby/object:Gem::Dependency
84
+ name: memcache
85
+ requirement: !ruby/object:Gem::Requirement
86
+ requirements:
87
+ - - '>='
88
+ - !ruby/object:Gem::Version
106
89
  version: 1.0.0
107
90
  type: :runtime
108
- version_requirements: *id006
91
+ prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - '>='
95
+ - !ruby/object:Gem::Version
96
+ version: 1.0.0
109
97
  description: Simple memcache-based memoization library for Ruby
110
- email:
98
+ email:
111
99
  - git@justinbalthrop.com
112
100
  executables: []
113
-
114
101
  extensions: []
115
-
116
102
  extra_rdoc_files: []
117
-
118
- files:
103
+ files:
119
104
  - .gitignore
120
105
  - .rbenv-gemsets
121
106
  - .rbenv-version
@@ -131,41 +116,31 @@ files:
131
116
  - test/method_cache_remote_test.rb
132
117
  - test/method_cache_test.rb
133
118
  - test/test_helper.rb
134
- has_rdoc: true
135
119
  homepage: https://github.com/ninjudd/method_cache
136
- licenses: []
137
-
120
+ licenses:
121
+ - MIT
122
+ metadata: {}
138
123
  post_install_message:
139
124
  rdoc_options: []
140
-
141
- require_paths:
125
+ require_paths:
142
126
  - lib
143
- required_ruby_version: !ruby/object:Gem::Requirement
144
- none: false
145
- requirements:
146
- - - ">="
147
- - !ruby/object:Gem::Version
148
- hash: 3
149
- segments:
150
- - 0
151
- version: "0"
152
- required_rubygems_version: !ruby/object:Gem::Requirement
153
- none: false
154
- requirements:
155
- - - ">="
156
- - !ruby/object:Gem::Version
157
- hash: 3
158
- segments:
159
- - 0
160
- version: "0"
127
+ required_ruby_version: !ruby/object:Gem::Requirement
128
+ requirements:
129
+ - - '>='
130
+ - !ruby/object:Gem::Version
131
+ version: '0'
132
+ required_rubygems_version: !ruby/object:Gem::Requirement
133
+ requirements:
134
+ - - '>='
135
+ - !ruby/object:Gem::Version
136
+ version: '0'
161
137
  requirements: []
162
-
163
138
  rubyforge_project:
164
- rubygems_version: 1.5.2
139
+ rubygems_version: 2.0.3
165
140
  signing_key:
166
- specification_version: 3
141
+ specification_version: 4
167
142
  summary: Simple memcache-based memoization library for Ruby
168
- test_files:
143
+ test_files:
169
144
  - test/method_cache_remote_test.rb
170
145
  - test/method_cache_test.rb
171
146
  - test/test_helper.rb