dragonfly 0.7.7 → 0.8.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of dragonfly might be problematic. Click here for more details.
- data/Gemfile +1 -1
- data/Gemfile.rails.2.3.5 +0 -1
- data/History.md +12 -0
- data/README.md +4 -2
- data/VERSION +1 -1
- data/config.ru +1 -1
- data/dragonfly.gemspec +256 -179
- data/extra_docs/Analysers.md +15 -6
- data/extra_docs/Configuration.md +13 -2
- data/extra_docs/Encoding.md +20 -7
- data/extra_docs/GeneralUsage.md +8 -5
- data/extra_docs/Generators.md +17 -7
- data/extra_docs/Heroku.md +1 -2
- data/extra_docs/MimeTypes.md +1 -1
- data/extra_docs/Models.md +1 -1
- data/extra_docs/Mongo.md +2 -2
- data/extra_docs/Processing.md +15 -7
- data/extra_docs/Rack.md +2 -3
- data/extra_docs/Rails2.md +2 -3
- data/extra_docs/Rails3.md +2 -3
- data/extra_docs/Sinatra.md +2 -2
- data/extra_docs/URLs.md +6 -4
- data/features/3.0.3.feature +8 -0
- data/features/steps/rails_steps.rb +2 -2
- data/features/support/env.rb +1 -1
- data/fixtures/files/app/views/albums/new.html.erb +4 -4
- data/fixtures/rails_2.3.5/template.rb +0 -1
- data/fixtures/{rails_3.0.0 → rails_3.0.3}/template.rb +0 -1
- data/irbrc.rb +1 -1
- data/lib/dragonfly/analysis/image_magick_analyser.rb +47 -0
- data/lib/dragonfly/app.rb +2 -0
- data/lib/dragonfly/config/image_magick.rb +41 -0
- data/lib/dragonfly/data_storage/file_data_store.rb +4 -2
- data/lib/dragonfly/data_storage/s3data_store.rb +7 -3
- data/lib/dragonfly/encoding/image_magick_encoder.rb +57 -0
- data/lib/dragonfly/generation/hash_with_css_style_keys.rb +23 -0
- data/lib/dragonfly/generation/image_magick_generator.rb +140 -0
- data/lib/dragonfly/generation/r_magick_generator.rb +0 -18
- data/lib/dragonfly/image_magick_utils.rb +81 -0
- data/lib/dragonfly/processing/image_magick_processor.rb +99 -0
- data/lib/dragonfly/rails/images.rb +1 -1
- data/lib/dragonfly/temp_object.rb +7 -6
- data/spec/dragonfly/analysis/image_magick_analyser_spec.rb +15 -0
- data/spec/dragonfly/analysis/r_magick_analyser_spec.rb +5 -49
- data/spec/dragonfly/analysis/shared_analyser_spec.rb +51 -0
- data/spec/dragonfly/app_spec.rb +2 -0
- data/spec/dragonfly/data_storage/data_store_spec.rb +6 -0
- data/spec/dragonfly/data_storage/file_data_store_spec.rb +1 -1
- data/spec/dragonfly/data_storage/s3_data_store_spec.rb +11 -1
- data/spec/dragonfly/deprecation_spec.rb +2 -2
- data/spec/dragonfly/encoding/image_magick_encoder_spec.rb +41 -0
- data/spec/dragonfly/encoding/r_magick_encoder_spec.rb +3 -6
- data/spec/dragonfly/generation/hash_with_css_style_keys_spec.rb +24 -0
- data/spec/dragonfly/generation/image_magick_generator_spec.rb +12 -0
- data/spec/dragonfly/generation/r_magick_generator_spec.rb +12 -123
- data/spec/dragonfly/generation/shared_generator_spec.rb +91 -0
- data/spec/dragonfly/image_magick_utils_spec.rb +16 -0
- data/spec/dragonfly/processing/image_magick_processor_spec.rb +29 -0
- data/spec/dragonfly/processing/r_magick_processor_spec.rb +2 -212
- data/spec/dragonfly/processing/shared_processing_spec.rb +215 -0
- data/spec/image_matchers.rb +6 -0
- data/spec/spec_helper.rb +11 -0
- data/yard/templates/default/fulldoc/html/css/common.css +9 -2
- data/yard/templates/default/layout/html/layout.erb +12 -1
- metadata +310 -11
- data/.gitignore +0 -15
- data/features/rails_3.0.0.feature +0 -8
@@ -0,0 +1,215 @@
|
|
1
|
+
# NEEDS:
|
2
|
+
#
|
3
|
+
# @image
|
4
|
+
# @processor
|
5
|
+
#
|
6
|
+
describe "processing methods", :shared => true do
|
7
|
+
|
8
|
+
describe "resize" do
|
9
|
+
|
10
|
+
it "should work correctly with xNN" do
|
11
|
+
image = @processor.resize(@image, 'x30')
|
12
|
+
image.should have_width(24)
|
13
|
+
image.should have_height(30)
|
14
|
+
end
|
15
|
+
|
16
|
+
it "should work correctly with NNx" do
|
17
|
+
image = @processor.resize(@image, '30x')
|
18
|
+
image.should have_width(30)
|
19
|
+
image.should have_height(38)
|
20
|
+
end
|
21
|
+
|
22
|
+
it "should work correctly with NNxNN" do
|
23
|
+
image = @processor.resize(@image, '30x30')
|
24
|
+
image.should have_width(24)
|
25
|
+
image.should have_height(30)
|
26
|
+
end
|
27
|
+
|
28
|
+
it "should work correctly with NNxNN!" do
|
29
|
+
image = @processor.resize(@image, '30x30!')
|
30
|
+
image.should have_width(30)
|
31
|
+
image.should have_height(30)
|
32
|
+
end
|
33
|
+
|
34
|
+
it "should work correctly with NNxNN%" do
|
35
|
+
image = @processor.resize(@image, '25x50%')
|
36
|
+
image.should have_width(70)
|
37
|
+
image.should have_height(178)
|
38
|
+
end
|
39
|
+
|
40
|
+
describe "NNxNN>" do
|
41
|
+
|
42
|
+
it "should not resize if the image is smaller than specified" do
|
43
|
+
image = @processor.resize(@image, '1000x1000>')
|
44
|
+
image.should have_width(280)
|
45
|
+
image.should have_height(355)
|
46
|
+
end
|
47
|
+
|
48
|
+
it "should resize if the image is larger than specified" do
|
49
|
+
image = @processor.resize(@image, '30x30>')
|
50
|
+
image.should have_width(24)
|
51
|
+
image.should have_height(30)
|
52
|
+
end
|
53
|
+
|
54
|
+
end
|
55
|
+
|
56
|
+
describe "NNxNN<" do
|
57
|
+
|
58
|
+
it "should not resize if the image is larger than specified" do
|
59
|
+
image = @processor.resize(@image, '10x10<')
|
60
|
+
image.should have_width(280)
|
61
|
+
image.should have_height(355)
|
62
|
+
end
|
63
|
+
|
64
|
+
it "should resize if the image is smaller than specified" do
|
65
|
+
image = @processor.resize(@image, '400x400<')
|
66
|
+
image.should have_width(315)
|
67
|
+
image.should have_height(400)
|
68
|
+
end
|
69
|
+
|
70
|
+
end
|
71
|
+
|
72
|
+
end
|
73
|
+
|
74
|
+
describe "crop" do # Difficult to test here other than dimensions
|
75
|
+
|
76
|
+
it "should not crop if no args given" do
|
77
|
+
image = @processor.crop(@image)
|
78
|
+
image.should have_width(280)
|
79
|
+
image.should have_height(355)
|
80
|
+
end
|
81
|
+
|
82
|
+
it "should crop using the offset given" do
|
83
|
+
image = @processor.crop(@image, :x => '7', :y => '12')
|
84
|
+
image.should have_width(273)
|
85
|
+
image.should have_height(343)
|
86
|
+
end
|
87
|
+
|
88
|
+
it "should crop using the dimensions given" do
|
89
|
+
image = @processor.crop(@image, :width => '10', :height => '20')
|
90
|
+
image.should have_width(10)
|
91
|
+
image.should have_height(20)
|
92
|
+
end
|
93
|
+
|
94
|
+
it "should crop in one dimension if given" do
|
95
|
+
image = @processor.crop(@image, :width => '10')
|
96
|
+
image.should have_width(10)
|
97
|
+
image.should have_height(355)
|
98
|
+
end
|
99
|
+
|
100
|
+
it "should take into account the gravity given" do
|
101
|
+
image1 = @processor.crop(@image, :width => '10', :height => '10', :gravity => 'nw')
|
102
|
+
image2 = @processor.crop(@image, :width => '10', :height => '10', :gravity => 'se')
|
103
|
+
image1.should_not == image2
|
104
|
+
end
|
105
|
+
|
106
|
+
it "should clip bits of the image outside of the requested crop area when not nw gravity" do
|
107
|
+
# Rmagick was previously throwing an error when the cropping area was outside the image size, when
|
108
|
+
# using a gravity other than nw
|
109
|
+
image = @processor.crop(@image, :width => '500', :height => '1000', :x => '100', :y => '200', :gravity => 'se')
|
110
|
+
image.should have_width(180)
|
111
|
+
image.should have_height(155)
|
112
|
+
end
|
113
|
+
|
114
|
+
end
|
115
|
+
|
116
|
+
describe "greyscale" do
|
117
|
+
it "should not raise an error" do
|
118
|
+
# Bit tricky to test
|
119
|
+
@processor.greyscale(@image)
|
120
|
+
end
|
121
|
+
end
|
122
|
+
|
123
|
+
describe "resize_and_crop" do
|
124
|
+
|
125
|
+
it "should do nothing if no args given" do
|
126
|
+
image = @processor.resize_and_crop(@image)
|
127
|
+
image.should have_width(280)
|
128
|
+
image.should have_height(355)
|
129
|
+
end
|
130
|
+
|
131
|
+
it "should crop to the correct dimensions" do
|
132
|
+
image = @processor.resize_and_crop(@image, :width => '100', :height => '100')
|
133
|
+
image.should have_width(100)
|
134
|
+
image.should have_height(100)
|
135
|
+
end
|
136
|
+
|
137
|
+
it "should allow cropping in one dimension" do
|
138
|
+
image = @processor.resize_and_crop(@image, :width => '100')
|
139
|
+
image.should have_width(100)
|
140
|
+
image.should have_height(355)
|
141
|
+
end
|
142
|
+
|
143
|
+
it "should take into account the gravity given" do
|
144
|
+
image1 = @processor.resize_and_crop(@image, :width => '10', :height => '10', :gravity => 'nw')
|
145
|
+
image2 = @processor.resize_and_crop(@image, :width => '10', :height => '10', :gravity => 'se')
|
146
|
+
image1.should_not == image2
|
147
|
+
end
|
148
|
+
|
149
|
+
end
|
150
|
+
|
151
|
+
describe "rotate" do
|
152
|
+
|
153
|
+
it "should rotate by 90 degrees" do
|
154
|
+
image = @processor.rotate(@image, 90)
|
155
|
+
image.should have_width(355)
|
156
|
+
image.should have_height(280)
|
157
|
+
end
|
158
|
+
|
159
|
+
it "should not rotate given a larger height and the '>' qualifier" do
|
160
|
+
image = @processor.rotate(@image, 90, :qualifier => '>')
|
161
|
+
image.should have_width(280)
|
162
|
+
image.should have_height(355)
|
163
|
+
end
|
164
|
+
|
165
|
+
it "should rotate given a larger height and the '<' qualifier" do
|
166
|
+
image = @processor.rotate(@image, 90, :qualifier => '<')
|
167
|
+
image.should have_width(355)
|
168
|
+
image.should have_height(280)
|
169
|
+
end
|
170
|
+
|
171
|
+
end
|
172
|
+
|
173
|
+
describe "thumb" do
|
174
|
+
it "should call resize if the correct string given" do
|
175
|
+
@processor.should_receive(:resize).with(@image, '30x40').and_return(image = mock)
|
176
|
+
@processor.thumb(@image, '30x40').should == image
|
177
|
+
end
|
178
|
+
it "should call resize_and_crop if the correct string given" do
|
179
|
+
@processor.should_receive(:resize_and_crop).with(@image, :width => '30', :height => '40', :gravity => 'se').and_return(image = mock)
|
180
|
+
@processor.thumb(@image, '30x40#se').should == image
|
181
|
+
end
|
182
|
+
it "should call crop if x and y given" do
|
183
|
+
@processor.should_receive(:crop).with(@image, :width => '30', :height => '40', :x => '+10', :y => '+20', :gravity => nil).and_return(image = mock)
|
184
|
+
@processor.thumb(@image, '30x40+10+20').should == image
|
185
|
+
end
|
186
|
+
it "should call crop if just gravity given" do
|
187
|
+
@processor.should_receive(:crop).with(@image, :width => '30', :height => '40', :x => nil, :y => nil, :gravity => 'sw').and_return(image = mock)
|
188
|
+
@processor.thumb(@image, '30x40sw').should == image
|
189
|
+
end
|
190
|
+
it "should call crop if x, y and gravity given" do
|
191
|
+
@processor.should_receive(:crop).with(@image, :width => '30', :height => '40', :x => '-10', :y => '-20', :gravity => 'se').and_return(image = mock)
|
192
|
+
@processor.thumb(@image, '30x40-10-20se').should == image
|
193
|
+
end
|
194
|
+
it "should raise an argument error if an unrecognized string is given" do
|
195
|
+
lambda{ @processor.thumb(@image, '30x40#ne!') }.should raise_error(ArgumentError)
|
196
|
+
end
|
197
|
+
end
|
198
|
+
|
199
|
+
describe "flip" do
|
200
|
+
it "should flip the image, leaving the same dimensions" do
|
201
|
+
image = @processor.flip(@image)
|
202
|
+
image.should have_width(280)
|
203
|
+
image.should have_height(355)
|
204
|
+
end
|
205
|
+
end
|
206
|
+
|
207
|
+
describe "flop" do
|
208
|
+
it "should flop the image, leaving the same dimensions" do
|
209
|
+
image = @processor.flop(@image)
|
210
|
+
image.should have_width(280)
|
211
|
+
image.should have_height(355)
|
212
|
+
end
|
213
|
+
end
|
214
|
+
|
215
|
+
end
|
data/spec/image_matchers.rb
CHANGED
data/spec/spec_helper.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'rubygems'
|
2
2
|
require 'spec'
|
3
3
|
require 'rack'
|
4
|
+
require 'fileutils'
|
4
5
|
|
5
6
|
require File.dirname(__FILE__) + '/../lib/dragonfly'
|
6
7
|
$:.unshift(File.dirname(__FILE__))
|
@@ -45,3 +46,13 @@ end
|
|
45
46
|
def test_app
|
46
47
|
Dragonfly::App.send(:new)
|
47
48
|
end
|
49
|
+
|
50
|
+
def suppressing_stderr
|
51
|
+
original_stderr = $stderr.dup
|
52
|
+
tempfile = Tempfile.new('stderr')
|
53
|
+
$stderr.reopen(tempfile)
|
54
|
+
yield
|
55
|
+
ensure
|
56
|
+
tempfile.close
|
57
|
+
$stderr.reopen(original_stderr)
|
58
|
+
end
|
@@ -63,9 +63,16 @@ ul.main_files li {
|
|
63
63
|
margin:0;
|
64
64
|
padding:0;
|
65
65
|
}
|
66
|
+
ul.main_files li:nth-child(odd) {
|
67
|
+
background-color:#fff;
|
68
|
+
}
|
69
|
+
ul.main_files li:nth-child(even) {
|
70
|
+
background-color:#eee;
|
71
|
+
}
|
72
|
+
|
66
73
|
ul.main_files li a {
|
67
|
-
margin:
|
68
|
-
padding:
|
74
|
+
margin: 0;
|
75
|
+
padding:7px 12px;
|
69
76
|
display:block;
|
70
77
|
}
|
71
78
|
|
@@ -3,9 +3,20 @@
|
|
3
3
|
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
4
4
|
<head>
|
5
5
|
<%= erb(:headers) %>
|
6
|
+
<script type="text/javascript" charset="utf-8">
|
7
|
+
(function($){
|
8
|
+
// YARD automatically creates a table of contents
|
9
|
+
// Let's place it inside .col1, instead of #content
|
10
|
+
$(document).ready(function(){
|
11
|
+
$('#toc').prependTo($('.col1'));
|
12
|
+
<% if options[:file] == 'extra_docs/Index.md' %>
|
13
|
+
$('#toc').hide();
|
14
|
+
<% end %>
|
15
|
+
});
|
16
|
+
})(jQuery);
|
17
|
+
</script>
|
6
18
|
</head>
|
7
19
|
<body>
|
8
|
-
|
9
20
|
<!-- GOOGLE ANALYTICS -->
|
10
21
|
<script type="text/javascript">
|
11
22
|
|
metadata
CHANGED
@@ -1,12 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dragonfly
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
+
hash: 63
|
4
5
|
prerelease: false
|
5
6
|
segments:
|
6
7
|
- 0
|
7
|
-
-
|
8
|
-
-
|
9
|
-
version: 0.
|
8
|
+
- 8
|
9
|
+
- 0
|
10
|
+
version: 0.8.0
|
10
11
|
platform: ruby
|
11
12
|
authors:
|
12
13
|
- Mark Evans
|
@@ -14,22 +15,294 @@ autorequire:
|
|
14
15
|
bindir: bin
|
15
16
|
cert_chain: []
|
16
17
|
|
17
|
-
date: 2010-
|
18
|
+
date: 2010-11-21 00:00:00 +00:00
|
18
19
|
default_executable:
|
19
20
|
dependencies:
|
20
21
|
- !ruby/object:Gem::Dependency
|
22
|
+
type: :runtime
|
23
|
+
prerelease: false
|
24
|
+
name: aws-s3
|
25
|
+
version_requirements: &id001 !ruby/object:Gem::Requirement
|
26
|
+
none: false
|
27
|
+
requirements:
|
28
|
+
- - ">="
|
29
|
+
- !ruby/object:Gem::Version
|
30
|
+
hash: 3
|
31
|
+
segments:
|
32
|
+
- 0
|
33
|
+
version: "0"
|
34
|
+
requirement: *id001
|
35
|
+
- !ruby/object:Gem::Dependency
|
36
|
+
type: :runtime
|
37
|
+
prerelease: false
|
38
|
+
name: bson_ext
|
39
|
+
version_requirements: &id002 !ruby/object:Gem::Requirement
|
40
|
+
none: false
|
41
|
+
requirements:
|
42
|
+
- - ">="
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
hash: 3
|
45
|
+
segments:
|
46
|
+
- 0
|
47
|
+
version: "0"
|
48
|
+
requirement: *id002
|
49
|
+
- !ruby/object:Gem::Dependency
|
50
|
+
type: :runtime
|
51
|
+
prerelease: false
|
52
|
+
name: capybara
|
53
|
+
version_requirements: &id003 !ruby/object:Gem::Requirement
|
54
|
+
none: false
|
55
|
+
requirements:
|
56
|
+
- - ">="
|
57
|
+
- !ruby/object:Gem::Version
|
58
|
+
hash: 3
|
59
|
+
segments:
|
60
|
+
- 0
|
61
|
+
version: "0"
|
62
|
+
requirement: *id003
|
63
|
+
- !ruby/object:Gem::Dependency
|
64
|
+
type: :runtime
|
65
|
+
prerelease: false
|
66
|
+
name: cucumber
|
67
|
+
version_requirements: &id004 !ruby/object:Gem::Requirement
|
68
|
+
none: false
|
69
|
+
requirements:
|
70
|
+
- - "="
|
71
|
+
- !ruby/object:Gem::Version
|
72
|
+
hash: 53
|
73
|
+
segments:
|
74
|
+
- 0
|
75
|
+
- 8
|
76
|
+
- 5
|
77
|
+
version: 0.8.5
|
78
|
+
requirement: *id004
|
79
|
+
- !ruby/object:Gem::Dependency
|
80
|
+
type: :runtime
|
81
|
+
prerelease: false
|
82
|
+
name: cucumber-rails
|
83
|
+
version_requirements: &id005 !ruby/object:Gem::Requirement
|
84
|
+
none: false
|
85
|
+
requirements:
|
86
|
+
- - ">="
|
87
|
+
- !ruby/object:Gem::Version
|
88
|
+
hash: 3
|
89
|
+
segments:
|
90
|
+
- 0
|
91
|
+
version: "0"
|
92
|
+
requirement: *id005
|
93
|
+
- !ruby/object:Gem::Dependency
|
94
|
+
type: :runtime
|
95
|
+
prerelease: false
|
96
|
+
name: database_cleaner
|
97
|
+
version_requirements: &id006 !ruby/object:Gem::Requirement
|
98
|
+
none: false
|
99
|
+
requirements:
|
100
|
+
- - ">="
|
101
|
+
- !ruby/object:Gem::Version
|
102
|
+
hash: 11
|
103
|
+
segments:
|
104
|
+
- 0
|
105
|
+
- 5
|
106
|
+
- 0
|
107
|
+
version: 0.5.0
|
108
|
+
requirement: *id006
|
109
|
+
- !ruby/object:Gem::Dependency
|
110
|
+
type: :runtime
|
111
|
+
prerelease: false
|
112
|
+
name: jeweler
|
113
|
+
version_requirements: &id007 !ruby/object:Gem::Requirement
|
114
|
+
none: false
|
115
|
+
requirements:
|
116
|
+
- - ~>
|
117
|
+
- !ruby/object:Gem::Version
|
118
|
+
hash: 7
|
119
|
+
segments:
|
120
|
+
- 1
|
121
|
+
- 4
|
122
|
+
version: "1.4"
|
123
|
+
requirement: *id007
|
124
|
+
- !ruby/object:Gem::Dependency
|
125
|
+
type: :runtime
|
126
|
+
prerelease: false
|
127
|
+
name: gherkin
|
128
|
+
version_requirements: &id008 !ruby/object:Gem::Requirement
|
129
|
+
none: false
|
130
|
+
requirements:
|
131
|
+
- - "="
|
132
|
+
- !ruby/object:Gem::Version
|
133
|
+
hash: 3
|
134
|
+
segments:
|
135
|
+
- 2
|
136
|
+
- 1
|
137
|
+
- 4
|
138
|
+
version: 2.1.4
|
139
|
+
requirement: *id008
|
140
|
+
- !ruby/object:Gem::Dependency
|
141
|
+
type: :runtime
|
142
|
+
prerelease: false
|
143
|
+
name: mongo
|
144
|
+
version_requirements: &id009 !ruby/object:Gem::Requirement
|
145
|
+
none: false
|
146
|
+
requirements:
|
147
|
+
- - ">="
|
148
|
+
- !ruby/object:Gem::Version
|
149
|
+
hash: 3
|
150
|
+
segments:
|
151
|
+
- 0
|
152
|
+
version: "0"
|
153
|
+
requirement: *id009
|
154
|
+
- !ruby/object:Gem::Dependency
|
155
|
+
type: :runtime
|
156
|
+
prerelease: false
|
157
|
+
name: nokogiri
|
158
|
+
version_requirements: &id010 !ruby/object:Gem::Requirement
|
159
|
+
none: false
|
160
|
+
requirements:
|
161
|
+
- - "="
|
162
|
+
- !ruby/object:Gem::Version
|
163
|
+
hash: 62196439
|
164
|
+
segments:
|
165
|
+
- 1
|
166
|
+
- 5
|
167
|
+
- 0
|
168
|
+
- beta
|
169
|
+
- 2
|
170
|
+
version: 1.5.0.beta.2
|
171
|
+
requirement: *id010
|
172
|
+
- !ruby/object:Gem::Dependency
|
173
|
+
type: :runtime
|
174
|
+
prerelease: false
|
21
175
|
name: rack
|
176
|
+
version_requirements: &id011 !ruby/object:Gem::Requirement
|
177
|
+
none: false
|
178
|
+
requirements:
|
179
|
+
- - ~>
|
180
|
+
- !ruby/object:Gem::Version
|
181
|
+
hash: 13
|
182
|
+
segments:
|
183
|
+
- 1
|
184
|
+
- 1
|
185
|
+
version: "1.1"
|
186
|
+
requirement: *id011
|
187
|
+
- !ruby/object:Gem::Dependency
|
188
|
+
type: :runtime
|
189
|
+
prerelease: false
|
190
|
+
name: rack-cache
|
191
|
+
version_requirements: &id012 !ruby/object:Gem::Requirement
|
192
|
+
none: false
|
193
|
+
requirements:
|
194
|
+
- - ">="
|
195
|
+
- !ruby/object:Gem::Version
|
196
|
+
hash: 3
|
197
|
+
segments:
|
198
|
+
- 0
|
199
|
+
version: "0"
|
200
|
+
requirement: *id012
|
201
|
+
- !ruby/object:Gem::Dependency
|
202
|
+
type: :runtime
|
203
|
+
prerelease: false
|
204
|
+
name: rails
|
205
|
+
version_requirements: &id013 !ruby/object:Gem::Requirement
|
206
|
+
none: false
|
207
|
+
requirements:
|
208
|
+
- - "="
|
209
|
+
- !ruby/object:Gem::Version
|
210
|
+
hash: 1
|
211
|
+
segments:
|
212
|
+
- 3
|
213
|
+
- 0
|
214
|
+
- 3
|
215
|
+
version: 3.0.3
|
216
|
+
requirement: *id013
|
217
|
+
- !ruby/object:Gem::Dependency
|
218
|
+
type: :runtime
|
219
|
+
prerelease: false
|
220
|
+
name: rake
|
221
|
+
version_requirements: &id014 !ruby/object:Gem::Requirement
|
222
|
+
none: false
|
223
|
+
requirements:
|
224
|
+
- - ">="
|
225
|
+
- !ruby/object:Gem::Version
|
226
|
+
hash: 3
|
227
|
+
segments:
|
228
|
+
- 0
|
229
|
+
version: "0"
|
230
|
+
requirement: *id014
|
231
|
+
- !ruby/object:Gem::Dependency
|
232
|
+
type: :runtime
|
233
|
+
prerelease: false
|
234
|
+
name: rmagick
|
235
|
+
version_requirements: &id015 !ruby/object:Gem::Requirement
|
236
|
+
none: false
|
237
|
+
requirements:
|
238
|
+
- - "="
|
239
|
+
- !ruby/object:Gem::Version
|
240
|
+
hash: 59
|
241
|
+
segments:
|
242
|
+
- 2
|
243
|
+
- 12
|
244
|
+
- 2
|
245
|
+
version: 2.12.2
|
246
|
+
requirement: *id015
|
247
|
+
- !ruby/object:Gem::Dependency
|
248
|
+
type: :runtime
|
249
|
+
prerelease: false
|
250
|
+
name: rspec
|
251
|
+
version_requirements: &id016 !ruby/object:Gem::Requirement
|
252
|
+
none: false
|
253
|
+
requirements:
|
254
|
+
- - ~>
|
255
|
+
- !ruby/object:Gem::Version
|
256
|
+
hash: 9
|
257
|
+
segments:
|
258
|
+
- 1
|
259
|
+
- 3
|
260
|
+
version: "1.3"
|
261
|
+
requirement: *id016
|
262
|
+
- !ruby/object:Gem::Dependency
|
263
|
+
type: :runtime
|
264
|
+
prerelease: false
|
265
|
+
name: sqlite3-ruby
|
266
|
+
version_requirements: &id017 !ruby/object:Gem::Requirement
|
267
|
+
none: false
|
268
|
+
requirements:
|
269
|
+
- - "="
|
270
|
+
- !ruby/object:Gem::Version
|
271
|
+
hash: 27
|
272
|
+
segments:
|
273
|
+
- 1
|
274
|
+
- 3
|
275
|
+
- 0
|
276
|
+
version: 1.3.0
|
277
|
+
requirement: *id017
|
278
|
+
- !ruby/object:Gem::Dependency
|
279
|
+
type: :runtime
|
22
280
|
prerelease: false
|
23
|
-
|
281
|
+
name: yard
|
282
|
+
version_requirements: &id018 !ruby/object:Gem::Requirement
|
24
283
|
none: false
|
25
284
|
requirements:
|
26
285
|
- - ">="
|
27
286
|
- !ruby/object:Gem::Version
|
287
|
+
hash: 3
|
28
288
|
segments:
|
29
289
|
- 0
|
30
290
|
version: "0"
|
291
|
+
requirement: *id018
|
292
|
+
- !ruby/object:Gem::Dependency
|
31
293
|
type: :runtime
|
32
|
-
|
294
|
+
prerelease: false
|
295
|
+
name: rack
|
296
|
+
version_requirements: &id019 !ruby/object:Gem::Requirement
|
297
|
+
none: false
|
298
|
+
requirements:
|
299
|
+
- - ">="
|
300
|
+
- !ruby/object:Gem::Version
|
301
|
+
hash: 3
|
302
|
+
segments:
|
303
|
+
- 0
|
304
|
+
version: "0"
|
305
|
+
requirement: *id019
|
33
306
|
description:
|
34
307
|
email: mark@new-bamboo.co.uk
|
35
308
|
executables: []
|
@@ -40,7 +313,6 @@ extra_rdoc_files:
|
|
40
313
|
- LICENSE
|
41
314
|
- README.md
|
42
315
|
files:
|
43
|
-
- .gitignore
|
44
316
|
- .specopts
|
45
317
|
- .yardopts
|
46
318
|
- Gemfile
|
@@ -71,10 +343,10 @@ files:
|
|
71
343
|
- extra_docs/Rails3.md
|
72
344
|
- extra_docs/Sinatra.md
|
73
345
|
- extra_docs/URLs.md
|
346
|
+
- features/3.0.3.feature
|
74
347
|
- features/images.feature
|
75
348
|
- features/no_processing.feature
|
76
349
|
- features/rails_2.3.5.feature
|
77
|
-
- features/rails_3.0.0.feature
|
78
350
|
- features/steps/common_steps.rb
|
79
351
|
- features/steps/dragonfly_steps.rb
|
80
352
|
- features/steps/rails_steps.rb
|
@@ -88,7 +360,7 @@ files:
|
|
88
360
|
- fixtures/files/features/support/paths.rb
|
89
361
|
- fixtures/files/features/text_images.feature
|
90
362
|
- fixtures/rails_2.3.5/template.rb
|
91
|
-
- fixtures/rails_3.0.
|
363
|
+
- fixtures/rails_3.0.3/template.rb
|
92
364
|
- irbrc.rb
|
93
365
|
- lib/dragonfly.rb
|
94
366
|
- lib/dragonfly/active_model_extensions.rb
|
@@ -98,9 +370,11 @@ files:
|
|
98
370
|
- lib/dragonfly/active_model_extensions/validations.rb
|
99
371
|
- lib/dragonfly/analyser.rb
|
100
372
|
- lib/dragonfly/analysis/file_command_analyser.rb
|
373
|
+
- lib/dragonfly/analysis/image_magick_analyser.rb
|
101
374
|
- lib/dragonfly/analysis/r_magick_analyser.rb
|
102
375
|
- lib/dragonfly/app.rb
|
103
376
|
- lib/dragonfly/config/heroku.rb
|
377
|
+
- lib/dragonfly/config/image_magick.rb
|
104
378
|
- lib/dragonfly/config/r_magick.rb
|
105
379
|
- lib/dragonfly/config/rails.rb
|
106
380
|
- lib/dragonfly/configurable.rb
|
@@ -112,16 +386,21 @@ files:
|
|
112
386
|
- lib/dragonfly/data_storage/mongo_data_store.rb
|
113
387
|
- lib/dragonfly/data_storage/s3data_store.rb
|
114
388
|
- lib/dragonfly/encoder.rb
|
389
|
+
- lib/dragonfly/encoding/image_magick_encoder.rb
|
115
390
|
- lib/dragonfly/encoding/r_magick_encoder.rb
|
116
391
|
- lib/dragonfly/function_manager.rb
|
392
|
+
- lib/dragonfly/generation/hash_with_css_style_keys.rb
|
393
|
+
- lib/dragonfly/generation/image_magick_generator.rb
|
117
394
|
- lib/dragonfly/generation/r_magick_generator.rb
|
118
395
|
- lib/dragonfly/generator.rb
|
396
|
+
- lib/dragonfly/image_magick_utils.rb
|
119
397
|
- lib/dragonfly/job.rb
|
120
398
|
- lib/dragonfly/job_builder.rb
|
121
399
|
- lib/dragonfly/job_definitions.rb
|
122
400
|
- lib/dragonfly/job_endpoint.rb
|
123
401
|
- lib/dragonfly/loggable.rb
|
124
402
|
- lib/dragonfly/middleware.rb
|
403
|
+
- lib/dragonfly/processing/image_magick_processor.rb
|
125
404
|
- lib/dragonfly/processing/r_magick_processor.rb
|
126
405
|
- lib/dragonfly/processor.rb
|
127
406
|
- lib/dragonfly/r_magick_utils.rb
|
@@ -144,7 +423,9 @@ files:
|
|
144
423
|
- spec/dragonfly/active_model_extensions/spec_helper.rb
|
145
424
|
- spec/dragonfly/analyser_spec.rb
|
146
425
|
- spec/dragonfly/analysis/file_command_analyser_spec.rb
|
426
|
+
- spec/dragonfly/analysis/image_magick_analyser_spec.rb
|
147
427
|
- spec/dragonfly/analysis/r_magick_analyser_spec.rb
|
428
|
+
- spec/dragonfly/analysis/shared_analyser_spec.rb
|
148
429
|
- spec/dragonfly/app_spec.rb
|
149
430
|
- spec/dragonfly/config/r_magick_spec.rb
|
150
431
|
- spec/dragonfly/configurable_spec.rb
|
@@ -155,16 +436,23 @@ files:
|
|
155
436
|
- spec/dragonfly/data_storage/mongo_data_store_spec.rb
|
156
437
|
- spec/dragonfly/data_storage/s3_data_store_spec.rb
|
157
438
|
- spec/dragonfly/deprecation_spec.rb
|
439
|
+
- spec/dragonfly/encoding/image_magick_encoder_spec.rb
|
158
440
|
- spec/dragonfly/encoding/r_magick_encoder_spec.rb
|
159
441
|
- spec/dragonfly/function_manager_spec.rb
|
442
|
+
- spec/dragonfly/generation/hash_with_css_style_keys_spec.rb
|
443
|
+
- spec/dragonfly/generation/image_magick_generator_spec.rb
|
160
444
|
- spec/dragonfly/generation/r_magick_generator_spec.rb
|
445
|
+
- spec/dragonfly/generation/shared_generator_spec.rb
|
446
|
+
- spec/dragonfly/image_magick_utils_spec.rb
|
161
447
|
- spec/dragonfly/job_builder_spec.rb
|
162
448
|
- spec/dragonfly/job_definitions_spec.rb
|
163
449
|
- spec/dragonfly/job_endpoint_spec.rb
|
164
450
|
- spec/dragonfly/job_spec.rb
|
165
451
|
- spec/dragonfly/loggable_spec.rb
|
166
452
|
- spec/dragonfly/middleware_spec.rb
|
453
|
+
- spec/dragonfly/processing/image_magick_processor_spec.rb
|
167
454
|
- spec/dragonfly/processing/r_magick_processor_spec.rb
|
455
|
+
- spec/dragonfly/processing/shared_processing_spec.rb
|
168
456
|
- spec/dragonfly/routed_endpoint_spec.rb
|
169
457
|
- spec/dragonfly/serializer_spec.rb
|
170
458
|
- spec/dragonfly/simple_cache_spec.rb
|
@@ -184,8 +472,8 @@ homepage: http://github.com/markevans/dragonfly
|
|
184
472
|
licenses: []
|
185
473
|
|
186
474
|
post_install_message:
|
187
|
-
rdoc_options:
|
188
|
-
|
475
|
+
rdoc_options: []
|
476
|
+
|
189
477
|
require_paths:
|
190
478
|
- lib
|
191
479
|
required_ruby_version: !ruby/object:Gem::Requirement
|
@@ -193,6 +481,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
193
481
|
requirements:
|
194
482
|
- - ">="
|
195
483
|
- !ruby/object:Gem::Version
|
484
|
+
hash: 3
|
196
485
|
segments:
|
197
486
|
- 0
|
198
487
|
version: "0"
|
@@ -201,6 +490,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
201
490
|
requirements:
|
202
491
|
- - ">="
|
203
492
|
- !ruby/object:Gem::Version
|
493
|
+
hash: 3
|
204
494
|
segments:
|
205
495
|
- 0
|
206
496
|
version: "0"
|
@@ -219,7 +509,9 @@ test_files:
|
|
219
509
|
- spec/dragonfly/active_model_extensions/spec_helper.rb
|
220
510
|
- spec/dragonfly/analyser_spec.rb
|
221
511
|
- spec/dragonfly/analysis/file_command_analyser_spec.rb
|
512
|
+
- spec/dragonfly/analysis/image_magick_analyser_spec.rb
|
222
513
|
- spec/dragonfly/analysis/r_magick_analyser_spec.rb
|
514
|
+
- spec/dragonfly/analysis/shared_analyser_spec.rb
|
223
515
|
- spec/dragonfly/app_spec.rb
|
224
516
|
- spec/dragonfly/config/r_magick_spec.rb
|
225
517
|
- spec/dragonfly/configurable_spec.rb
|
@@ -230,16 +522,23 @@ test_files:
|
|
230
522
|
- spec/dragonfly/data_storage/mongo_data_store_spec.rb
|
231
523
|
- spec/dragonfly/data_storage/s3_data_store_spec.rb
|
232
524
|
- spec/dragonfly/deprecation_spec.rb
|
525
|
+
- spec/dragonfly/encoding/image_magick_encoder_spec.rb
|
233
526
|
- spec/dragonfly/encoding/r_magick_encoder_spec.rb
|
234
527
|
- spec/dragonfly/function_manager_spec.rb
|
528
|
+
- spec/dragonfly/generation/hash_with_css_style_keys_spec.rb
|
529
|
+
- spec/dragonfly/generation/image_magick_generator_spec.rb
|
235
530
|
- spec/dragonfly/generation/r_magick_generator_spec.rb
|
531
|
+
- spec/dragonfly/generation/shared_generator_spec.rb
|
532
|
+
- spec/dragonfly/image_magick_utils_spec.rb
|
236
533
|
- spec/dragonfly/job_builder_spec.rb
|
237
534
|
- spec/dragonfly/job_definitions_spec.rb
|
238
535
|
- spec/dragonfly/job_endpoint_spec.rb
|
239
536
|
- spec/dragonfly/job_spec.rb
|
240
537
|
- spec/dragonfly/loggable_spec.rb
|
241
538
|
- spec/dragonfly/middleware_spec.rb
|
539
|
+
- spec/dragonfly/processing/image_magick_processor_spec.rb
|
242
540
|
- spec/dragonfly/processing/r_magick_processor_spec.rb
|
541
|
+
- spec/dragonfly/processing/shared_processing_spec.rb
|
243
542
|
- spec/dragonfly/routed_endpoint_spec.rb
|
244
543
|
- spec/dragonfly/serializer_spec.rb
|
245
544
|
- spec/dragonfly/simple_cache_spec.rb
|