amee 4.3.0 → 4.3.1
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.txt +6 -0
- data/VERSION +1 -1
- data/amee.gemspec +2 -2
- data/lib/amee/connection.rb +2 -3
- data/spec/cache_spec.rb +17 -2
- metadata +4 -4
data/CHANGELOG.txt
CHANGED
@@ -1,5 +1,11 @@
|
|
1
1
|
= Changelog
|
2
2
|
|
3
|
+
== 4.3.1
|
4
|
+
* Bugfix to make caching Rails 3 compatible
|
5
|
+
|
6
|
+
== 4.3.0
|
7
|
+
* Numerous fixes for compatibility with Ruby 1.9.2 and Rails 3.1
|
8
|
+
|
3
9
|
== 4.2.0 (also 3.2.0/3.2.1 for Rails 2)
|
4
10
|
* Add algorithm details to ItemDefinitions
|
5
11
|
* Bugfix when using AMEE::Rails.connection from locations other than Rails.root
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
4.3.
|
1
|
+
4.3.1
|
data/amee.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "amee"
|
8
|
-
s.version = "4.3.
|
8
|
+
s.version = "4.3.1"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["James Smith", "James Hetherington", "Andrew Hill", "Andrew Berkeley"]
|
12
|
-
s.date = "
|
12
|
+
s.date = "2012-01-04"
|
13
13
|
s.email = "james@floppy.org.uk"
|
14
14
|
s.executables = ["ameesh"]
|
15
15
|
s.extra_rdoc_files = [
|
data/lib/amee/connection.rb
CHANGED
@@ -298,9 +298,8 @@ module AMEE
|
|
298
298
|
def cache_key(path)
|
299
299
|
# We have to make sure cache keys don't get too long for the filesystem,
|
300
300
|
# so we cut them off if they're too long and add a digest for uniqueness.
|
301
|
-
newpath = path.gsub(/[^0-9a-z\/]/i, '')
|
302
|
-
newpath = (newpath.length < 255) ? newpath : newpath.first(
|
303
|
-
(@server+newpath)
|
301
|
+
newpath = @server + path.gsub(/[^0-9a-z\/]/i, '').gsub(/\//i, '_')
|
302
|
+
newpath = (newpath.length < 255) ? newpath : newpath.first(218)+Digest::MD5.hexdigest(newpath)
|
304
303
|
end
|
305
304
|
|
306
305
|
public
|
data/spec/cache_spec.rb
CHANGED
@@ -76,10 +76,25 @@ describe AMEE::Connection do
|
|
76
76
|
i = c.item :label => 'biodiesel'
|
77
77
|
end
|
78
78
|
|
79
|
-
it "removes special characters from cache keys" do
|
79
|
+
it "removes special characters from cache keys, include slashes" do
|
80
80
|
setup_connection
|
81
|
-
@connection.send(:cache_key, "/%cache/$4/%20test").should eql 'server.example.
|
81
|
+
@connection.send(:cache_key, "/%cache/$4/%20test").should eql 'server.example.com_cache_4_20test'
|
82
82
|
end
|
83
|
+
|
84
|
+
it "trims cache keys to correct length for filenames, allowing for lock extension" do
|
85
|
+
setup_connection
|
86
|
+
step = '/123456789'
|
87
|
+
test_str = step
|
88
|
+
# test lots of string lengths
|
89
|
+
while (test_str.length < 300)
|
90
|
+
key = @connection.send(:cache_key, test_str)
|
91
|
+
key.starts_with?(@connection.server).should be_true
|
92
|
+
key.length.should <= 250
|
93
|
+
# next
|
94
|
+
test_str += step
|
95
|
+
end
|
96
|
+
end
|
97
|
+
|
83
98
|
|
84
99
|
describe 'and automatic invalidation' do
|
85
100
|
|
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: amee
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
hash:
|
4
|
+
hash: 49
|
5
5
|
prerelease:
|
6
6
|
segments:
|
7
7
|
- 4
|
8
8
|
- 3
|
9
|
-
-
|
10
|
-
version: 4.3.
|
9
|
+
- 1
|
10
|
+
version: 4.3.1
|
11
11
|
platform: ruby
|
12
12
|
authors:
|
13
13
|
- James Smith
|
@@ -18,7 +18,7 @@ autorequire:
|
|
18
18
|
bindir: bin
|
19
19
|
cert_chain: []
|
20
20
|
|
21
|
-
date:
|
21
|
+
date: 2012-01-04 00:00:00 Z
|
22
22
|
dependencies:
|
23
23
|
- !ruby/object:Gem::Dependency
|
24
24
|
requirement: &id001 !ruby/object:Gem::Requirement
|