paperclip 3.4.0 → 6.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (220) hide show
  1. checksums.yaml +7 -0
  2. data/.codeclimate.yml +17 -0
  3. data/.github/issue_template.md +3 -0
  4. data/.gitignore +0 -6
  5. data/.hound.yml +1055 -0
  6. data/.rubocop.yml +1 -0
  7. data/.travis.yml +19 -12
  8. data/Appraisals +4 -11
  9. data/CONTRIBUTING.md +29 -13
  10. data/Gemfile +13 -4
  11. data/LICENSE +1 -3
  12. data/MIGRATING-ES.md +317 -0
  13. data/MIGRATING.md +375 -0
  14. data/NEWS +390 -71
  15. data/README.md +607 -152
  16. data/RELEASING.md +17 -0
  17. data/Rakefile +6 -8
  18. data/UPGRADING +12 -9
  19. data/features/basic_integration.feature +34 -21
  20. data/features/migration.feature +0 -24
  21. data/features/rake_tasks.feature +2 -3
  22. data/features/step_definitions/attachment_steps.rb +44 -36
  23. data/features/step_definitions/html_steps.rb +2 -2
  24. data/features/step_definitions/rails_steps.rb +125 -26
  25. data/features/step_definitions/s3_steps.rb +3 -3
  26. data/features/step_definitions/web_steps.rb +1 -103
  27. data/features/support/env.rb +3 -2
  28. data/features/support/fakeweb.rb +4 -1
  29. data/features/support/file_helpers.rb +12 -2
  30. data/features/support/fixtures/gemfile.txt +1 -1
  31. data/features/support/paths.rb +1 -1
  32. data/features/support/rails.rb +4 -11
  33. data/gemfiles/4.2.gemfile +17 -0
  34. data/gemfiles/5.0.gemfile +17 -0
  35. data/lib/generators/paperclip/paperclip_generator.rb +9 -3
  36. data/lib/generators/paperclip/templates/paperclip_migration.rb.erb +2 -2
  37. data/lib/paperclip/attachment.rb +215 -82
  38. data/lib/paperclip/attachment_registry.rb +60 -0
  39. data/lib/paperclip/callbacks.rb +13 -1
  40. data/lib/paperclip/content_type_detector.rb +48 -24
  41. data/lib/paperclip/errors.rb +8 -1
  42. data/lib/paperclip/file_command_content_type_detector.rb +6 -8
  43. data/lib/paperclip/filename_cleaner.rb +15 -0
  44. data/lib/paperclip/geometry_detector_factory.rb +12 -5
  45. data/lib/paperclip/geometry_parser_factory.rb +1 -1
  46. data/lib/paperclip/glue.rb +1 -2
  47. data/lib/paperclip/has_attached_file.rb +115 -0
  48. data/lib/paperclip/helpers.rb +15 -20
  49. data/lib/paperclip/interpolations/plural_cache.rb +18 -0
  50. data/lib/paperclip/interpolations.rb +36 -14
  51. data/lib/paperclip/io_adapters/abstract_adapter.rb +42 -5
  52. data/lib/paperclip/io_adapters/attachment_adapter.rb +20 -9
  53. data/lib/paperclip/io_adapters/data_uri_adapter.rb +22 -0
  54. data/lib/paperclip/io_adapters/empty_string_adapter.rb +19 -0
  55. data/lib/paperclip/io_adapters/file_adapter.rb +13 -7
  56. data/lib/paperclip/io_adapters/http_url_proxy_adapter.rb +16 -0
  57. data/lib/paperclip/io_adapters/identity_adapter.rb +12 -6
  58. data/lib/paperclip/io_adapters/nil_adapter.rb +8 -5
  59. data/lib/paperclip/io_adapters/registry.rb +6 -2
  60. data/lib/paperclip/io_adapters/stringio_adapter.rb +15 -16
  61. data/lib/paperclip/io_adapters/uploaded_file_adapter.rb +11 -7
  62. data/lib/paperclip/io_adapters/uri_adapter.rb +43 -19
  63. data/lib/paperclip/locales/en.yml +1 -0
  64. data/lib/paperclip/logger.rb +1 -1
  65. data/lib/paperclip/matchers/have_attached_file_matcher.rb +3 -6
  66. data/lib/paperclip/matchers/validate_attachment_content_type_matcher.rb +4 -4
  67. data/lib/paperclip/matchers/validate_attachment_presence_matcher.rb +7 -2
  68. data/lib/paperclip/matchers/validate_attachment_size_matcher.rb +2 -1
  69. data/lib/paperclip/matchers.rb +1 -1
  70. data/lib/paperclip/media_type_spoof_detector.rb +93 -0
  71. data/lib/paperclip/missing_attachment_styles.rb +11 -16
  72. data/lib/paperclip/processor.rb +15 -43
  73. data/lib/paperclip/processor_helpers.rb +50 -0
  74. data/lib/paperclip/rails_environment.rb +25 -0
  75. data/lib/paperclip/schema.rb +10 -8
  76. data/lib/paperclip/storage/filesystem.rb +20 -5
  77. data/lib/paperclip/storage/fog.rb +49 -23
  78. data/lib/paperclip/storage/s3.rb +153 -82
  79. data/lib/paperclip/style.rb +8 -3
  80. data/lib/paperclip/tempfile_factory.rb +6 -4
  81. data/lib/paperclip/thumbnail.rb +35 -19
  82. data/lib/paperclip/url_generator.rb +26 -14
  83. data/lib/paperclip/validators/attachment_content_type_validator.rb +15 -2
  84. data/lib/paperclip/validators/attachment_file_name_validator.rb +80 -0
  85. data/lib/paperclip/validators/attachment_file_type_ignorance_validator.rb +29 -0
  86. data/lib/paperclip/validators/attachment_presence_validator.rb +12 -8
  87. data/lib/paperclip/validators/attachment_size_validator.rb +17 -10
  88. data/lib/paperclip/validators/media_type_spoof_detection_validator.rb +31 -0
  89. data/lib/paperclip/validators.rb +31 -3
  90. data/lib/paperclip/version.rb +3 -1
  91. data/lib/paperclip.rb +41 -55
  92. data/lib/tasks/paperclip.rake +56 -9
  93. data/paperclip.gemspec +18 -17
  94. data/shoulda_macros/paperclip.rb +13 -3
  95. data/spec/paperclip/attachment_definitions_spec.rb +13 -0
  96. data/spec/paperclip/attachment_processing_spec.rb +79 -0
  97. data/spec/paperclip/attachment_registry_spec.rb +158 -0
  98. data/{test/attachment_test.rb → spec/paperclip/attachment_spec.rb} +597 -389
  99. data/spec/paperclip/content_type_detector_spec.rb +48 -0
  100. data/spec/paperclip/file_command_content_type_detector_spec.rb +40 -0
  101. data/spec/paperclip/filename_cleaner_spec.rb +13 -0
  102. data/spec/paperclip/geometry_detector_spec.rb +39 -0
  103. data/{test/geometry_parser_test.rb → spec/paperclip/geometry_parser_spec.rb} +27 -27
  104. data/{test/geometry_test.rb → spec/paperclip/geometry_spec.rb} +50 -52
  105. data/spec/paperclip/glue_spec.rb +44 -0
  106. data/spec/paperclip/has_attached_file_spec.rb +158 -0
  107. data/{test/integration_test.rb → spec/paperclip/integration_spec.rb} +179 -199
  108. data/{test/interpolations_test.rb → spec/paperclip/interpolations_spec.rb} +79 -46
  109. data/spec/paperclip/io_adapters/abstract_adapter_spec.rb +160 -0
  110. data/{test/io_adapters/attachment_adapter_test.rb → spec/paperclip/io_adapters/attachment_adapter_spec.rb} +54 -25
  111. data/spec/paperclip/io_adapters/data_uri_adapter_spec.rb +89 -0
  112. data/spec/paperclip/io_adapters/empty_string_adapter_spec.rb +17 -0
  113. data/spec/paperclip/io_adapters/file_adapter_spec.rb +131 -0
  114. data/spec/paperclip/io_adapters/http_url_proxy_adapter_spec.rb +138 -0
  115. data/spec/paperclip/io_adapters/identity_adapter_spec.rb +8 -0
  116. data/{test/io_adapters/nil_adapter_test.rb → spec/paperclip/io_adapters/nil_adapter_spec.rb} +7 -7
  117. data/{test/io_adapters/registry_test.rb → spec/paperclip/io_adapters/registry_spec.rb} +12 -9
  118. data/spec/paperclip/io_adapters/stringio_adapter_spec.rb +64 -0
  119. data/spec/paperclip/io_adapters/uploaded_file_adapter_spec.rb +146 -0
  120. data/spec/paperclip/io_adapters/uri_adapter_spec.rb +220 -0
  121. data/spec/paperclip/matchers/have_attached_file_matcher_spec.rb +19 -0
  122. data/spec/paperclip/matchers/validate_attachment_content_type_matcher_spec.rb +109 -0
  123. data/spec/paperclip/matchers/validate_attachment_presence_matcher_spec.rb +69 -0
  124. data/spec/paperclip/matchers/validate_attachment_size_matcher_spec.rb +88 -0
  125. data/spec/paperclip/media_type_spoof_detector_spec.rb +120 -0
  126. data/spec/paperclip/meta_class_spec.rb +30 -0
  127. data/spec/paperclip/paperclip_missing_attachment_styles_spec.rb +84 -0
  128. data/spec/paperclip/paperclip_spec.rb +192 -0
  129. data/spec/paperclip/plural_cache_spec.rb +37 -0
  130. data/spec/paperclip/processor_helpers_spec.rb +57 -0
  131. data/{test/processor_test.rb → spec/paperclip/processor_spec.rb} +7 -7
  132. data/spec/paperclip/rails_environment_spec.rb +33 -0
  133. data/spec/paperclip/rake_spec.rb +103 -0
  134. data/spec/paperclip/schema_spec.rb +248 -0
  135. data/{test/storage/filesystem_test.rb → spec/paperclip/storage/filesystem_spec.rb} +18 -18
  136. data/spec/paperclip/storage/fog_spec.rb +566 -0
  137. data/spec/paperclip/storage/s3_live_spec.rb +188 -0
  138. data/spec/paperclip/storage/s3_spec.rb +1693 -0
  139. data/spec/paperclip/style_spec.rb +254 -0
  140. data/spec/paperclip/tempfile_factory_spec.rb +33 -0
  141. data/spec/paperclip/tempfile_spec.rb +35 -0
  142. data/{test/thumbnail_test.rb → spec/paperclip/thumbnail_spec.rb} +186 -141
  143. data/spec/paperclip/url_generator_spec.rb +221 -0
  144. data/spec/paperclip/validators/attachment_content_type_validator_spec.rb +322 -0
  145. data/spec/paperclip/validators/attachment_file_name_validator_spec.rb +160 -0
  146. data/{test/validators/attachment_presence_validator_test.rb → spec/paperclip/validators/attachment_presence_validator_spec.rb} +20 -20
  147. data/{test/validators/attachment_size_validator_test.rb → spec/paperclip/validators/attachment_size_validator_spec.rb} +87 -59
  148. data/spec/paperclip/validators/media_type_spoof_detection_validator_spec.rb +52 -0
  149. data/spec/paperclip/validators_spec.rb +164 -0
  150. data/spec/spec_helper.rb +46 -0
  151. data/spec/support/assertions.rb +82 -0
  152. data/spec/support/fake_model.rb +25 -0
  153. data/spec/support/fake_rails.rb +12 -0
  154. data/spec/support/fixtures/empty.html +1 -0
  155. data/spec/support/fixtures/empty.xlsx +0 -0
  156. data/spec/support/fixtures/spaced file.jpg +0 -0
  157. data/spec/support/matchers/accept.rb +5 -0
  158. data/spec/support/matchers/exist.rb +5 -0
  159. data/spec/support/matchers/have_column.rb +23 -0
  160. data/{test → spec}/support/mock_attachment.rb +2 -0
  161. data/{test → spec}/support/mock_url_generator_builder.rb +2 -2
  162. data/spec/support/model_reconstruction.rb +68 -0
  163. data/spec/support/reporting.rb +11 -0
  164. data/spec/support/test_data.rb +13 -0
  165. data/spec/support/version_helper.rb +9 -0
  166. metadata +395 -346
  167. data/Gemfile.lock +0 -200
  168. data/RUNNING_TESTS.md +0 -4
  169. data/cucumber/paperclip_steps.rb +0 -6
  170. data/gemfiles/3.0.gemfile +0 -11
  171. data/gemfiles/3.1.gemfile +0 -11
  172. data/gemfiles/3.2.gemfile +0 -11
  173. data/lib/paperclip/attachment_options.rb +0 -9
  174. data/lib/paperclip/instance_methods.rb +0 -35
  175. data/test/attachment_options_test.rb +0 -27
  176. data/test/attachment_processing_test.rb +0 -29
  177. data/test/content_type_detector_test.rb +0 -40
  178. data/test/file_command_content_type_detector_test.rb +0 -25
  179. data/test/generator_test.rb +0 -80
  180. data/test/geometry_detector_test.rb +0 -24
  181. data/test/helper.rb +0 -199
  182. data/test/io_adapters/abstract_adapter_test.rb +0 -50
  183. data/test/io_adapters/file_adapter_test.rb +0 -100
  184. data/test/io_adapters/identity_adapter_test.rb +0 -8
  185. data/test/io_adapters/stringio_adapter_test.rb +0 -51
  186. data/test/io_adapters/uploaded_file_adapter_test.rb +0 -123
  187. data/test/io_adapters/uri_adapter_test.rb +0 -86
  188. data/test/matchers/have_attached_file_matcher_test.rb +0 -24
  189. data/test/matchers/validate_attachment_content_type_matcher_test.rb +0 -110
  190. data/test/matchers/validate_attachment_presence_matcher_test.rb +0 -47
  191. data/test/matchers/validate_attachment_size_matcher_test.rb +0 -86
  192. data/test/meta_class_test.rb +0 -32
  193. data/test/paperclip_missing_attachment_styles_test.rb +0 -94
  194. data/test/paperclip_test.rb +0 -259
  195. data/test/schema_test.rb +0 -200
  196. data/test/storage/fog_test.rb +0 -453
  197. data/test/storage/s3_live_test.rb +0 -179
  198. data/test/storage/s3_test.rb +0 -1236
  199. data/test/style_test.rb +0 -213
  200. data/test/support/mock_model.rb +0 -2
  201. data/test/tempfile_factory_test.rb +0 -13
  202. data/test/url_generator_test.rb +0 -187
  203. data/test/validators/attachment_content_type_validator_test.rb +0 -292
  204. data/test/validators_test.rb +0 -25
  205. /data/{test → spec}/database.yml +0 -0
  206. /data/{test → spec/support}/fixtures/12k.png +0 -0
  207. /data/{test → spec/support}/fixtures/50x50.png +0 -0
  208. /data/{test → spec/support}/fixtures/5k.png +0 -0
  209. /data/{test → spec/support}/fixtures/animated +0 -0
  210. /data/{test → spec/support}/fixtures/animated.gif +0 -0
  211. /data/{test → spec/support}/fixtures/animated.unknown +0 -0
  212. /data/{test → spec/support}/fixtures/bad.png +0 -0
  213. /data/{test → spec/support}/fixtures/fog.yml +0 -0
  214. /data/{test → spec/support}/fixtures/rotated.jpg +0 -0
  215. /data/{test → spec/support}/fixtures/s3.yml +0 -0
  216. /data/{test → spec/support}/fixtures/spaced file.png +0 -0
  217. /data/{test → spec/support}/fixtures/text.txt +0 -0
  218. /data/{test → spec/support}/fixtures/twopage.pdf +0 -0
  219. /data/{test → spec/support}/fixtures/uppercase.PNG +0 -0
  220. /data/{test → spec}/support/mock_interpolator.rb +0 -0
metadata CHANGED
@@ -1,406 +1,379 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: paperclip
3
3
  version: !ruby/object:Gem::Version
4
- prerelease:
5
- version: 3.4.0
4
+ version: 6.1.0
6
5
  platform: ruby
7
6
  authors:
8
7
  - Jon Yurek
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-12-21 00:00:00.000000000 Z
11
+ date: 2018-07-27 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
- version_requirements: !ruby/object:Gem::Requirement
14
+ name: activemodel
15
+ requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - ! '>='
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 3.0.0
20
- none: false
21
- name: activerecord
19
+ version: 4.2.0
22
20
  type: :runtime
23
21
  prerelease: false
24
- requirement: !ruby/object:Gem::Requirement
22
+ version_requirements: !ruby/object:Gem::Requirement
25
23
  requirements:
26
- - - ! '>='
24
+ - - ">="
27
25
  - !ruby/object:Gem::Version
28
- version: 3.0.0
29
- none: false
26
+ version: 4.2.0
30
27
  - !ruby/object:Gem::Dependency
31
- version_requirements: !ruby/object:Gem::Requirement
28
+ name: activesupport
29
+ requirement: !ruby/object:Gem::Requirement
32
30
  requirements:
33
- - - ! '>='
31
+ - - ">="
34
32
  - !ruby/object:Gem::Version
35
- version: 3.0.0
36
- none: false
37
- name: activemodel
33
+ version: 4.2.0
38
34
  type: :runtime
39
35
  prerelease: false
40
- requirement: !ruby/object:Gem::Requirement
36
+ version_requirements: !ruby/object:Gem::Requirement
41
37
  requirements:
42
- - - ! '>='
38
+ - - ">="
43
39
  - !ruby/object:Gem::Version
44
- version: 3.0.0
45
- none: false
40
+ version: 4.2.0
46
41
  - !ruby/object:Gem::Dependency
47
- version_requirements: !ruby/object:Gem::Requirement
42
+ name: terrapin
43
+ requirement: !ruby/object:Gem::Requirement
48
44
  requirements:
49
- - - ! '>='
45
+ - - "~>"
50
46
  - !ruby/object:Gem::Version
51
- version: 3.0.0
52
- none: false
53
- name: activesupport
47
+ version: 0.6.0
54
48
  type: :runtime
55
49
  prerelease: false
56
- requirement: !ruby/object:Gem::Requirement
50
+ version_requirements: !ruby/object:Gem::Requirement
57
51
  requirements:
58
- - - ! '>='
52
+ - - "~>"
59
53
  - !ruby/object:Gem::Version
60
- version: 3.0.0
61
- none: false
54
+ version: 0.6.0
62
55
  - !ruby/object:Gem::Dependency
63
- version_requirements: !ruby/object:Gem::Requirement
56
+ name: mime-types
57
+ requirement: !ruby/object:Gem::Requirement
64
58
  requirements:
65
- - - ~>
59
+ - - ">="
66
60
  - !ruby/object:Gem::Version
67
- version: 0.4.0
68
- none: false
69
- name: cocaine
61
+ version: '0'
70
62
  type: :runtime
71
63
  prerelease: false
72
- requirement: !ruby/object:Gem::Requirement
64
+ version_requirements: !ruby/object:Gem::Requirement
73
65
  requirements:
74
- - - ~>
66
+ - - ">="
75
67
  - !ruby/object:Gem::Version
76
- version: 0.4.0
77
- none: false
68
+ version: '0'
78
69
  - !ruby/object:Gem::Dependency
79
- version_requirements: !ruby/object:Gem::Requirement
70
+ name: mimemagic
71
+ requirement: !ruby/object:Gem::Requirement
80
72
  requirements:
81
- - - ! '>='
73
+ - - "~>"
82
74
  - !ruby/object:Gem::Version
83
- version: '0'
84
- none: false
85
- name: mime-types
75
+ version: 0.3.0
86
76
  type: :runtime
87
77
  prerelease: false
88
- requirement: !ruby/object:Gem::Requirement
78
+ version_requirements: !ruby/object:Gem::Requirement
89
79
  requirements:
90
- - - ! '>='
80
+ - - "~>"
91
81
  - !ruby/object:Gem::Version
92
- version: '0'
93
- none: false
82
+ version: 0.3.0
94
83
  - !ruby/object:Gem::Dependency
95
- version_requirements: !ruby/object:Gem::Requirement
84
+ name: activerecord
85
+ requirement: !ruby/object:Gem::Requirement
96
86
  requirements:
97
- - - ! '>='
87
+ - - ">="
98
88
  - !ruby/object:Gem::Version
99
- version: '0'
100
- none: false
101
- name: shoulda
89
+ version: 4.2.0
102
90
  type: :development
103
91
  prerelease: false
92
+ version_requirements: !ruby/object:Gem::Requirement
93
+ requirements:
94
+ - - ">="
95
+ - !ruby/object:Gem::Version
96
+ version: 4.2.0
97
+ - !ruby/object:Gem::Dependency
98
+ name: shoulda
104
99
  requirement: !ruby/object:Gem::Requirement
105
100
  requirements:
106
- - - ! '>='
101
+ - - ">="
107
102
  - !ruby/object:Gem::Version
108
103
  version: '0'
109
- none: false
110
- - !ruby/object:Gem::Dependency
104
+ type: :development
105
+ prerelease: false
111
106
  version_requirements: !ruby/object:Gem::Requirement
112
107
  requirements:
113
- - - ! '>='
108
+ - - ">="
114
109
  - !ruby/object:Gem::Version
115
110
  version: '0'
116
- none: false
117
- name: appraisal
111
+ - !ruby/object:Gem::Dependency
112
+ name: rspec
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - "~>"
116
+ - !ruby/object:Gem::Version
117
+ version: '3.0'
118
118
  type: :development
119
119
  prerelease: false
120
+ version_requirements: !ruby/object:Gem::Requirement
121
+ requirements:
122
+ - - "~>"
123
+ - !ruby/object:Gem::Version
124
+ version: '3.0'
125
+ - !ruby/object:Gem::Dependency
126
+ name: appraisal
120
127
  requirement: !ruby/object:Gem::Requirement
121
128
  requirements:
122
- - - ! '>='
129
+ - - ">="
123
130
  - !ruby/object:Gem::Version
124
131
  version: '0'
125
- none: false
126
- - !ruby/object:Gem::Dependency
132
+ type: :development
133
+ prerelease: false
127
134
  version_requirements: !ruby/object:Gem::Requirement
128
135
  requirements:
129
- - - ! '>='
136
+ - - ">="
130
137
  - !ruby/object:Gem::Version
131
138
  version: '0'
132
- none: false
139
+ - !ruby/object:Gem::Dependency
133
140
  name: mocha
141
+ requirement: !ruby/object:Gem::Requirement
142
+ requirements:
143
+ - - ">="
144
+ - !ruby/object:Gem::Version
145
+ version: '0'
134
146
  type: :development
135
147
  prerelease: false
136
- requirement: !ruby/object:Gem::Requirement
148
+ version_requirements: !ruby/object:Gem::Requirement
137
149
  requirements:
138
- - - ! '>='
150
+ - - ">="
139
151
  - !ruby/object:Gem::Version
140
152
  version: '0'
141
- none: false
142
153
  - !ruby/object:Gem::Dependency
143
- version_requirements: !ruby/object:Gem::Requirement
154
+ name: aws-sdk-s3
155
+ requirement: !ruby/object:Gem::Requirement
144
156
  requirements:
145
- - - ! '>='
157
+ - - ">="
146
158
  - !ruby/object:Gem::Version
147
- version: 1.2.0
148
- none: false
149
- name: aws-sdk
159
+ version: '0'
150
160
  type: :development
151
161
  prerelease: false
152
- requirement: !ruby/object:Gem::Requirement
162
+ version_requirements: !ruby/object:Gem::Requirement
153
163
  requirements:
154
- - - ! '>='
164
+ - - ">="
155
165
  - !ruby/object:Gem::Version
156
- version: 1.2.0
157
- none: false
166
+ version: '0'
158
167
  - !ruby/object:Gem::Dependency
159
- version_requirements: !ruby/object:Gem::Requirement
168
+ name: bourne
169
+ requirement: !ruby/object:Gem::Requirement
160
170
  requirements:
161
- - - ! '>='
171
+ - - ">="
162
172
  - !ruby/object:Gem::Version
163
173
  version: '0'
164
- none: false
165
- name: bourne
166
174
  type: :development
167
175
  prerelease: false
168
- requirement: !ruby/object:Gem::Requirement
176
+ version_requirements: !ruby/object:Gem::Requirement
169
177
  requirements:
170
- - - ! '>='
178
+ - - ">="
171
179
  - !ruby/object:Gem::Version
172
180
  version: '0'
173
- none: false
174
181
  - !ruby/object:Gem::Dependency
175
- version_requirements: !ruby/object:Gem::Requirement
182
+ name: cucumber-rails
183
+ requirement: !ruby/object:Gem::Requirement
176
184
  requirements:
177
- - - ~>
185
+ - - ">="
178
186
  - !ruby/object:Gem::Version
179
- version: 1.3.4
180
- none: false
181
- name: sqlite3
187
+ version: '0'
182
188
  type: :development
183
189
  prerelease: false
184
- requirement: !ruby/object:Gem::Requirement
190
+ version_requirements: !ruby/object:Gem::Requirement
185
191
  requirements:
186
- - - ~>
192
+ - - ">="
187
193
  - !ruby/object:Gem::Version
188
- version: 1.3.4
189
- none: false
194
+ version: '0'
190
195
  - !ruby/object:Gem::Dependency
191
- version_requirements: !ruby/object:Gem::Requirement
196
+ name: cucumber-expressions
197
+ requirement: !ruby/object:Gem::Requirement
192
198
  requirements:
193
- - - ~>
199
+ - - '='
194
200
  - !ruby/object:Gem::Version
195
- version: 1.2.1
196
- none: false
197
- name: cucumber
201
+ version: 4.0.3
198
202
  type: :development
199
203
  prerelease: false
200
- requirement: !ruby/object:Gem::Requirement
204
+ version_requirements: !ruby/object:Gem::Requirement
201
205
  requirements:
202
- - - ~>
206
+ - - '='
203
207
  - !ruby/object:Gem::Version
204
- version: 1.2.1
205
- none: false
208
+ version: 4.0.3
206
209
  - !ruby/object:Gem::Dependency
207
- version_requirements: !ruby/object:Gem::Requirement
210
+ name: aruba
211
+ requirement: !ruby/object:Gem::Requirement
208
212
  requirements:
209
- - - ! '>='
213
+ - - "~>"
210
214
  - !ruby/object:Gem::Version
211
- version: '0'
212
- none: false
213
- name: aruba
215
+ version: 0.9.0
214
216
  type: :development
215
217
  prerelease: false
216
- requirement: !ruby/object:Gem::Requirement
218
+ version_requirements: !ruby/object:Gem::Requirement
217
219
  requirements:
218
- - - ! '>='
220
+ - - "~>"
219
221
  - !ruby/object:Gem::Version
220
- version: '0'
221
- none: false
222
+ version: 0.9.0
222
223
  - !ruby/object:Gem::Dependency
223
- version_requirements: !ruby/object:Gem::Requirement
224
+ name: nokogiri
225
+ requirement: !ruby/object:Gem::Requirement
224
226
  requirements:
225
- - - ! '>='
227
+ - - ">="
226
228
  - !ruby/object:Gem::Version
227
229
  version: '0'
228
- none: false
229
- name: nokogiri
230
230
  type: :development
231
231
  prerelease: false
232
- requirement: !ruby/object:Gem::Requirement
232
+ version_requirements: !ruby/object:Gem::Requirement
233
233
  requirements:
234
- - - ! '>='
234
+ - - ">="
235
235
  - !ruby/object:Gem::Version
236
236
  version: '0'
237
- none: false
238
237
  - !ruby/object:Gem::Dependency
239
- version_requirements: !ruby/object:Gem::Requirement
238
+ name: capybara
239
+ requirement: !ruby/object:Gem::Requirement
240
240
  requirements:
241
- - - ! '>='
241
+ - - ">="
242
242
  - !ruby/object:Gem::Version
243
243
  version: '0'
244
- none: false
245
- name: capybara
246
244
  type: :development
247
245
  prerelease: false
248
- requirement: !ruby/object:Gem::Requirement
246
+ version_requirements: !ruby/object:Gem::Requirement
249
247
  requirements:
250
- - - ! '>='
248
+ - - ">="
251
249
  - !ruby/object:Gem::Version
252
250
  version: '0'
253
- none: false
254
251
  - !ruby/object:Gem::Dependency
255
- version_requirements: !ruby/object:Gem::Requirement
252
+ name: bundler
253
+ requirement: !ruby/object:Gem::Requirement
256
254
  requirements:
257
- - - ! '>='
255
+ - - ">="
258
256
  - !ruby/object:Gem::Version
259
257
  version: '0'
260
- none: false
261
- name: bundler
262
258
  type: :development
263
259
  prerelease: false
264
- requirement: !ruby/object:Gem::Requirement
260
+ version_requirements: !ruby/object:Gem::Requirement
265
261
  requirements:
266
- - - ! '>='
262
+ - - ">="
267
263
  - !ruby/object:Gem::Version
268
264
  version: '0'
269
- none: false
270
265
  - !ruby/object:Gem::Dependency
271
- version_requirements: !ruby/object:Gem::Requirement
266
+ name: fog-aws
267
+ requirement: !ruby/object:Gem::Requirement
272
268
  requirements:
273
- - - ~>
269
+ - - ">="
274
270
  - !ruby/object:Gem::Version
275
- version: '0.2'
276
- none: false
277
- name: cocaine
271
+ version: '0'
278
272
  type: :development
279
273
  prerelease: false
280
- requirement: !ruby/object:Gem::Requirement
274
+ version_requirements: !ruby/object:Gem::Requirement
281
275
  requirements:
282
- - - ~>
276
+ - - ">="
283
277
  - !ruby/object:Gem::Version
284
- version: '0.2'
285
- none: false
278
+ version: '0'
286
279
  - !ruby/object:Gem::Dependency
287
- version_requirements: !ruby/object:Gem::Requirement
280
+ name: fog-local
281
+ requirement: !ruby/object:Gem::Requirement
288
282
  requirements:
289
- - - ! '>='
290
- - !ruby/object:Gem::Version
291
- version: 1.4.0
292
- - - <
283
+ - - ">="
293
284
  - !ruby/object:Gem::Version
294
- version: 1.7.0
295
- none: false
296
- name: fog
285
+ version: '0'
297
286
  type: :development
298
287
  prerelease: false
299
- requirement: !ruby/object:Gem::Requirement
288
+ version_requirements: !ruby/object:Gem::Requirement
300
289
  requirements:
301
- - - ! '>='
290
+ - - ">="
302
291
  - !ruby/object:Gem::Version
303
- version: 1.4.0
304
- - - <
305
- - !ruby/object:Gem::Version
306
- version: 1.7.0
307
- none: false
292
+ version: '0'
308
293
  - !ruby/object:Gem::Dependency
309
- version_requirements: !ruby/object:Gem::Requirement
294
+ name: launchy
295
+ requirement: !ruby/object:Gem::Requirement
310
296
  requirements:
311
- - - ! '>='
297
+ - - ">="
312
298
  - !ruby/object:Gem::Version
313
299
  version: '0'
314
- none: false
315
- name: pry
316
300
  type: :development
317
301
  prerelease: false
318
- requirement: !ruby/object:Gem::Requirement
302
+ version_requirements: !ruby/object:Gem::Requirement
319
303
  requirements:
320
- - - ! '>='
304
+ - - ">="
321
305
  - !ruby/object:Gem::Version
322
306
  version: '0'
323
- none: false
324
307
  - !ruby/object:Gem::Dependency
325
- version_requirements: !ruby/object:Gem::Requirement
308
+ name: rake
309
+ requirement: !ruby/object:Gem::Requirement
326
310
  requirements:
327
- - - ! '>='
311
+ - - ">="
328
312
  - !ruby/object:Gem::Version
329
313
  version: '0'
330
- none: false
331
- name: launchy
332
314
  type: :development
333
315
  prerelease: false
334
- requirement: !ruby/object:Gem::Requirement
316
+ version_requirements: !ruby/object:Gem::Requirement
335
317
  requirements:
336
- - - ! '>='
318
+ - - ">="
337
319
  - !ruby/object:Gem::Version
338
320
  version: '0'
339
- none: false
340
321
  - !ruby/object:Gem::Dependency
341
- version_requirements: !ruby/object:Gem::Requirement
322
+ name: fakeweb
323
+ requirement: !ruby/object:Gem::Requirement
342
324
  requirements:
343
- - - ! '>='
325
+ - - ">="
344
326
  - !ruby/object:Gem::Version
345
327
  version: '0'
346
- none: false
347
- name: rake
348
328
  type: :development
349
329
  prerelease: false
350
- requirement: !ruby/object:Gem::Requirement
330
+ version_requirements: !ruby/object:Gem::Requirement
351
331
  requirements:
352
- - - ! '>='
332
+ - - ">="
353
333
  - !ruby/object:Gem::Version
354
334
  version: '0'
355
- none: false
356
335
  - !ruby/object:Gem::Dependency
357
- version_requirements: !ruby/object:Gem::Requirement
336
+ name: railties
337
+ requirement: !ruby/object:Gem::Requirement
358
338
  requirements:
359
- - - ! '>='
339
+ - - ">="
360
340
  - !ruby/object:Gem::Version
361
341
  version: '0'
362
- none: false
363
- name: fakeweb
364
342
  type: :development
365
343
  prerelease: false
366
- requirement: !ruby/object:Gem::Requirement
344
+ version_requirements: !ruby/object:Gem::Requirement
367
345
  requirements:
368
- - - ! '>='
346
+ - - ">="
369
347
  - !ruby/object:Gem::Version
370
348
  version: '0'
371
- none: false
372
349
  - !ruby/object:Gem::Dependency
373
- version_requirements: !ruby/object:Gem::Requirement
350
+ name: generator_spec
351
+ requirement: !ruby/object:Gem::Requirement
374
352
  requirements:
375
- - - ! '>='
353
+ - - ">="
376
354
  - !ruby/object:Gem::Version
377
355
  version: '0'
378
- none: false
379
- name: railties
380
356
  type: :development
381
357
  prerelease: false
382
- requirement: !ruby/object:Gem::Requirement
358
+ version_requirements: !ruby/object:Gem::Requirement
383
359
  requirements:
384
- - - ! '>='
360
+ - - ">="
385
361
  - !ruby/object:Gem::Version
386
362
  version: '0'
387
- none: false
388
363
  - !ruby/object:Gem::Dependency
389
- version_requirements: !ruby/object:Gem::Requirement
364
+ name: timecop
365
+ requirement: !ruby/object:Gem::Requirement
390
366
  requirements:
391
- - - ! '>='
367
+ - - ">="
392
368
  - !ruby/object:Gem::Version
393
369
  version: '0'
394
- none: false
395
- name: actionmailer
396
370
  type: :development
397
371
  prerelease: false
398
- requirement: !ruby/object:Gem::Requirement
372
+ version_requirements: !ruby/object:Gem::Requirement
399
373
  requirements:
400
- - - ! '>='
374
+ - - ">="
401
375
  - !ruby/object:Gem::Version
402
376
  version: '0'
403
- none: false
404
377
  description: Easy upload management for ActiveRecord
405
378
  email:
406
379
  - jyurek@thoughtbot.com
@@ -408,19 +381,23 @@ executables: []
408
381
  extensions: []
409
382
  extra_rdoc_files: []
410
383
  files:
411
- - .gitignore
412
- - .travis.yml
384
+ - ".codeclimate.yml"
385
+ - ".github/issue_template.md"
386
+ - ".gitignore"
387
+ - ".hound.yml"
388
+ - ".rubocop.yml"
389
+ - ".travis.yml"
413
390
  - Appraisals
414
391
  - CONTRIBUTING.md
415
392
  - Gemfile
416
- - Gemfile.lock
417
393
  - LICENSE
394
+ - MIGRATING-ES.md
395
+ - MIGRATING.md
418
396
  - NEWS
419
397
  - README.md
420
- - RUNNING_TESTS.md
398
+ - RELEASING.md
421
399
  - Rakefile
422
400
  - UPGRADING
423
- - cucumber/paperclip_steps.rb
424
401
  - features/basic_integration.feature
425
402
  - features/migration.feature
426
403
  - features/rake_tasks.feature
@@ -438,29 +415,33 @@ files:
438
415
  - features/support/paths.rb
439
416
  - features/support/rails.rb
440
417
  - features/support/selectors.rb
441
- - gemfiles/3.0.gemfile
442
- - gemfiles/3.1.gemfile
443
- - gemfiles/3.2.gemfile
418
+ - gemfiles/4.2.gemfile
419
+ - gemfiles/5.0.gemfile
444
420
  - lib/generators/paperclip/USAGE
445
421
  - lib/generators/paperclip/paperclip_generator.rb
446
422
  - lib/generators/paperclip/templates/paperclip_migration.rb.erb
447
423
  - lib/paperclip.rb
448
424
  - lib/paperclip/attachment.rb
449
- - lib/paperclip/attachment_options.rb
425
+ - lib/paperclip/attachment_registry.rb
450
426
  - lib/paperclip/callbacks.rb
451
427
  - lib/paperclip/content_type_detector.rb
452
428
  - lib/paperclip/errors.rb
453
429
  - lib/paperclip/file_command_content_type_detector.rb
430
+ - lib/paperclip/filename_cleaner.rb
454
431
  - lib/paperclip/geometry.rb
455
432
  - lib/paperclip/geometry_detector_factory.rb
456
433
  - lib/paperclip/geometry_parser_factory.rb
457
434
  - lib/paperclip/glue.rb
435
+ - lib/paperclip/has_attached_file.rb
458
436
  - lib/paperclip/helpers.rb
459
- - lib/paperclip/instance_methods.rb
460
437
  - lib/paperclip/interpolations.rb
438
+ - lib/paperclip/interpolations/plural_cache.rb
461
439
  - lib/paperclip/io_adapters/abstract_adapter.rb
462
440
  - lib/paperclip/io_adapters/attachment_adapter.rb
441
+ - lib/paperclip/io_adapters/data_uri_adapter.rb
442
+ - lib/paperclip/io_adapters/empty_string_adapter.rb
463
443
  - lib/paperclip/io_adapters/file_adapter.rb
444
+ - lib/paperclip/io_adapters/http_url_proxy_adapter.rb
464
445
  - lib/paperclip/io_adapters/identity_adapter.rb
465
446
  - lib/paperclip/io_adapters/nil_adapter.rb
466
447
  - lib/paperclip/io_adapters/registry.rb
@@ -474,8 +455,11 @@ files:
474
455
  - lib/paperclip/matchers/validate_attachment_content_type_matcher.rb
475
456
  - lib/paperclip/matchers/validate_attachment_presence_matcher.rb
476
457
  - lib/paperclip/matchers/validate_attachment_size_matcher.rb
458
+ - lib/paperclip/media_type_spoof_detector.rb
477
459
  - lib/paperclip/missing_attachment_styles.rb
478
460
  - lib/paperclip/processor.rb
461
+ - lib/paperclip/processor_helpers.rb
462
+ - lib/paperclip/rails_environment.rb
479
463
  - lib/paperclip/railtie.rb
480
464
  - lib/paperclip/schema.rb
481
465
  - lib/paperclip/storage.rb
@@ -489,104 +473,143 @@ files:
489
473
  - lib/paperclip/url_generator.rb
490
474
  - lib/paperclip/validators.rb
491
475
  - lib/paperclip/validators/attachment_content_type_validator.rb
476
+ - lib/paperclip/validators/attachment_file_name_validator.rb
477
+ - lib/paperclip/validators/attachment_file_type_ignorance_validator.rb
492
478
  - lib/paperclip/validators/attachment_presence_validator.rb
493
479
  - lib/paperclip/validators/attachment_size_validator.rb
480
+ - lib/paperclip/validators/media_type_spoof_detection_validator.rb
494
481
  - lib/paperclip/version.rb
495
482
  - lib/tasks/paperclip.rake
496
483
  - paperclip.gemspec
497
484
  - shoulda_macros/paperclip.rb
498
- - test/attachment_options_test.rb
499
- - test/attachment_processing_test.rb
500
- - test/attachment_test.rb
501
- - test/content_type_detector_test.rb
502
- - test/database.yml
503
- - test/file_command_content_type_detector_test.rb
504
- - test/fixtures/12k.png
505
- - test/fixtures/50x50.png
506
- - test/fixtures/5k.png
507
- - test/fixtures/animated
508
- - test/fixtures/animated.gif
509
- - test/fixtures/animated.unknown
510
- - test/fixtures/bad.png
511
- - test/fixtures/fog.yml
512
- - test/fixtures/rotated.jpg
513
- - test/fixtures/s3.yml
514
- - test/fixtures/spaced file.png
515
- - test/fixtures/text.txt
516
- - test/fixtures/twopage.pdf
517
- - test/fixtures/uppercase.PNG
518
- - test/generator_test.rb
519
- - test/geometry_detector_test.rb
520
- - test/geometry_parser_test.rb
521
- - test/geometry_test.rb
522
- - test/helper.rb
523
- - test/integration_test.rb
524
- - test/interpolations_test.rb
525
- - test/io_adapters/abstract_adapter_test.rb
526
- - test/io_adapters/attachment_adapter_test.rb
527
- - test/io_adapters/file_adapter_test.rb
528
- - test/io_adapters/identity_adapter_test.rb
529
- - test/io_adapters/nil_adapter_test.rb
530
- - test/io_adapters/registry_test.rb
531
- - test/io_adapters/stringio_adapter_test.rb
532
- - test/io_adapters/uploaded_file_adapter_test.rb
533
- - test/io_adapters/uri_adapter_test.rb
534
- - test/matchers/have_attached_file_matcher_test.rb
535
- - test/matchers/validate_attachment_content_type_matcher_test.rb
536
- - test/matchers/validate_attachment_presence_matcher_test.rb
537
- - test/matchers/validate_attachment_size_matcher_test.rb
538
- - test/meta_class_test.rb
539
- - test/paperclip_missing_attachment_styles_test.rb
540
- - test/paperclip_test.rb
541
- - test/processor_test.rb
542
- - test/schema_test.rb
543
- - test/storage/filesystem_test.rb
544
- - test/storage/fog_test.rb
545
- - test/storage/s3_live_test.rb
546
- - test/storage/s3_test.rb
547
- - test/style_test.rb
548
- - test/support/mock_attachment.rb
549
- - test/support/mock_interpolator.rb
550
- - test/support/mock_model.rb
551
- - test/support/mock_url_generator_builder.rb
552
- - test/tempfile_factory_test.rb
553
- - test/thumbnail_test.rb
554
- - test/url_generator_test.rb
555
- - test/validators/attachment_content_type_validator_test.rb
556
- - test/validators/attachment_presence_validator_test.rb
557
- - test/validators/attachment_size_validator_test.rb
558
- - test/validators_test.rb
485
+ - spec/database.yml
486
+ - spec/paperclip/attachment_definitions_spec.rb
487
+ - spec/paperclip/attachment_processing_spec.rb
488
+ - spec/paperclip/attachment_registry_spec.rb
489
+ - spec/paperclip/attachment_spec.rb
490
+ - spec/paperclip/content_type_detector_spec.rb
491
+ - spec/paperclip/file_command_content_type_detector_spec.rb
492
+ - spec/paperclip/filename_cleaner_spec.rb
493
+ - spec/paperclip/geometry_detector_spec.rb
494
+ - spec/paperclip/geometry_parser_spec.rb
495
+ - spec/paperclip/geometry_spec.rb
496
+ - spec/paperclip/glue_spec.rb
497
+ - spec/paperclip/has_attached_file_spec.rb
498
+ - spec/paperclip/integration_spec.rb
499
+ - spec/paperclip/interpolations_spec.rb
500
+ - spec/paperclip/io_adapters/abstract_adapter_spec.rb
501
+ - spec/paperclip/io_adapters/attachment_adapter_spec.rb
502
+ - spec/paperclip/io_adapters/data_uri_adapter_spec.rb
503
+ - spec/paperclip/io_adapters/empty_string_adapter_spec.rb
504
+ - spec/paperclip/io_adapters/file_adapter_spec.rb
505
+ - spec/paperclip/io_adapters/http_url_proxy_adapter_spec.rb
506
+ - spec/paperclip/io_adapters/identity_adapter_spec.rb
507
+ - spec/paperclip/io_adapters/nil_adapter_spec.rb
508
+ - spec/paperclip/io_adapters/registry_spec.rb
509
+ - spec/paperclip/io_adapters/stringio_adapter_spec.rb
510
+ - spec/paperclip/io_adapters/uploaded_file_adapter_spec.rb
511
+ - spec/paperclip/io_adapters/uri_adapter_spec.rb
512
+ - spec/paperclip/matchers/have_attached_file_matcher_spec.rb
513
+ - spec/paperclip/matchers/validate_attachment_content_type_matcher_spec.rb
514
+ - spec/paperclip/matchers/validate_attachment_presence_matcher_spec.rb
515
+ - spec/paperclip/matchers/validate_attachment_size_matcher_spec.rb
516
+ - spec/paperclip/media_type_spoof_detector_spec.rb
517
+ - spec/paperclip/meta_class_spec.rb
518
+ - spec/paperclip/paperclip_missing_attachment_styles_spec.rb
519
+ - spec/paperclip/paperclip_spec.rb
520
+ - spec/paperclip/plural_cache_spec.rb
521
+ - spec/paperclip/processor_helpers_spec.rb
522
+ - spec/paperclip/processor_spec.rb
523
+ - spec/paperclip/rails_environment_spec.rb
524
+ - spec/paperclip/rake_spec.rb
525
+ - spec/paperclip/schema_spec.rb
526
+ - spec/paperclip/storage/filesystem_spec.rb
527
+ - spec/paperclip/storage/fog_spec.rb
528
+ - spec/paperclip/storage/s3_live_spec.rb
529
+ - spec/paperclip/storage/s3_spec.rb
530
+ - spec/paperclip/style_spec.rb
531
+ - spec/paperclip/tempfile_factory_spec.rb
532
+ - spec/paperclip/tempfile_spec.rb
533
+ - spec/paperclip/thumbnail_spec.rb
534
+ - spec/paperclip/url_generator_spec.rb
535
+ - spec/paperclip/validators/attachment_content_type_validator_spec.rb
536
+ - spec/paperclip/validators/attachment_file_name_validator_spec.rb
537
+ - spec/paperclip/validators/attachment_presence_validator_spec.rb
538
+ - spec/paperclip/validators/attachment_size_validator_spec.rb
539
+ - spec/paperclip/validators/media_type_spoof_detection_validator_spec.rb
540
+ - spec/paperclip/validators_spec.rb
541
+ - spec/spec_helper.rb
542
+ - spec/support/assertions.rb
543
+ - spec/support/fake_model.rb
544
+ - spec/support/fake_rails.rb
545
+ - spec/support/fixtures/12k.png
546
+ - spec/support/fixtures/50x50.png
547
+ - spec/support/fixtures/5k.png
548
+ - spec/support/fixtures/animated
549
+ - spec/support/fixtures/animated.gif
550
+ - spec/support/fixtures/animated.unknown
551
+ - spec/support/fixtures/bad.png
552
+ - spec/support/fixtures/empty.html
553
+ - spec/support/fixtures/empty.xlsx
554
+ - spec/support/fixtures/fog.yml
555
+ - spec/support/fixtures/rotated.jpg
556
+ - spec/support/fixtures/s3.yml
557
+ - spec/support/fixtures/spaced file.jpg
558
+ - spec/support/fixtures/spaced file.png
559
+ - spec/support/fixtures/text.txt
560
+ - spec/support/fixtures/twopage.pdf
561
+ - spec/support/fixtures/uppercase.PNG
562
+ - spec/support/matchers/accept.rb
563
+ - spec/support/matchers/exist.rb
564
+ - spec/support/matchers/have_column.rb
565
+ - spec/support/mock_attachment.rb
566
+ - spec/support/mock_interpolator.rb
567
+ - spec/support/mock_url_generator_builder.rb
568
+ - spec/support/model_reconstruction.rb
569
+ - spec/support/reporting.rb
570
+ - spec/support/test_data.rb
571
+ - spec/support/version_helper.rb
559
572
  homepage: https://github.com/thoughtbot/paperclip
560
- licenses: []
561
- post_install_message: ! "##################################################\n# NOTE
562
- FOR UPGRADING FROM PRE-3.0 VERSION #\n##################################################\n\nPaperclip
563
- 3.0 introduces a non-backward compatible change in your attachment\npath. This will
564
- help to prevent attachment name clashes when you have\nmultiple attachments with
565
- the same name. If you didn't alter your\nattachment's path and are using Paperclip's
566
- default, you'll have to add\n`:path` and `:url` to your `has_attached_file` definition.
567
- For example:\n\n has_attached_file :avatar,\n :path => \":rails_root/public/system/:attachment/:id/:style/:filename\",\n
568
- \ :url => \"/system/:attachment/:id/:style/:filename\"\n\n"
573
+ licenses:
574
+ - MIT
575
+ metadata: {}
576
+ post_install_message: |
577
+ ##################################################
578
+ # NOTE FOR UPGRADING FROM 4.3.0 OR EARLIER #
579
+ ##################################################
580
+
581
+ Paperclip is now compatible with aws-sdk-s3.
582
+
583
+ If you are using S3 storage, aws-sdk-s3 requires you to make a few small
584
+ changes:
585
+
586
+ * You must set the `s3_region`
587
+ * If you are explicitly setting permissions anywhere, such as in an initializer,
588
+ note that the format of the permissions changed from using an underscore to
589
+ using a hyphen. For example, `:public_read` needs to be changed to
590
+ `public-read`.
591
+
592
+ For a walkthrough of upgrading from 4 to *5* (not 6) and aws-sdk >= 2.0 you can watch
593
+ http://rubythursday.com/episodes/ruby-snack-27-upgrade-paperclip-and-aws-sdk-in-prep-for-rails-5
569
594
  rdoc_options: []
570
595
  require_paths:
571
596
  - lib
572
597
  required_ruby_version: !ruby/object:Gem::Requirement
573
598
  requirements:
574
- - - ! '>='
599
+ - - ">="
575
600
  - !ruby/object:Gem::Version
576
- version: 1.9.2
577
- none: false
601
+ version: 2.1.0
578
602
  required_rubygems_version: !ruby/object:Gem::Requirement
579
603
  requirements:
580
- - - ! '>='
604
+ - - ">="
581
605
  - !ruby/object:Gem::Version
582
606
  version: '0'
583
- none: false
584
607
  requirements:
585
608
  - ImageMagick
586
- rubyforge_project: paperclip
587
- rubygems_version: 1.8.24
609
+ rubyforge_project:
610
+ rubygems_version: 2.7.4
588
611
  signing_key:
589
- specification_version: 3
612
+ specification_version: 4
590
613
  summary: File attachments as attributes for ActiveRecord
591
614
  test_files:
592
615
  - features/basic_integration.feature
@@ -606,64 +629,90 @@ test_files:
606
629
  - features/support/paths.rb
607
630
  - features/support/rails.rb
608
631
  - features/support/selectors.rb
609
- - test/attachment_options_test.rb
610
- - test/attachment_processing_test.rb
611
- - test/attachment_test.rb
612
- - test/content_type_detector_test.rb
613
- - test/database.yml
614
- - test/file_command_content_type_detector_test.rb
615
- - test/fixtures/12k.png
616
- - test/fixtures/50x50.png
617
- - test/fixtures/5k.png
618
- - test/fixtures/animated
619
- - test/fixtures/animated.gif
620
- - test/fixtures/animated.unknown
621
- - test/fixtures/bad.png
622
- - test/fixtures/fog.yml
623
- - test/fixtures/rotated.jpg
624
- - test/fixtures/s3.yml
625
- - test/fixtures/spaced file.png
626
- - test/fixtures/text.txt
627
- - test/fixtures/twopage.pdf
628
- - test/fixtures/uppercase.PNG
629
- - test/generator_test.rb
630
- - test/geometry_detector_test.rb
631
- - test/geometry_parser_test.rb
632
- - test/geometry_test.rb
633
- - test/helper.rb
634
- - test/integration_test.rb
635
- - test/interpolations_test.rb
636
- - test/io_adapters/abstract_adapter_test.rb
637
- - test/io_adapters/attachment_adapter_test.rb
638
- - test/io_adapters/file_adapter_test.rb
639
- - test/io_adapters/identity_adapter_test.rb
640
- - test/io_adapters/nil_adapter_test.rb
641
- - test/io_adapters/registry_test.rb
642
- - test/io_adapters/stringio_adapter_test.rb
643
- - test/io_adapters/uploaded_file_adapter_test.rb
644
- - test/io_adapters/uri_adapter_test.rb
645
- - test/matchers/have_attached_file_matcher_test.rb
646
- - test/matchers/validate_attachment_content_type_matcher_test.rb
647
- - test/matchers/validate_attachment_presence_matcher_test.rb
648
- - test/matchers/validate_attachment_size_matcher_test.rb
649
- - test/meta_class_test.rb
650
- - test/paperclip_missing_attachment_styles_test.rb
651
- - test/paperclip_test.rb
652
- - test/processor_test.rb
653
- - test/schema_test.rb
654
- - test/storage/filesystem_test.rb
655
- - test/storage/fog_test.rb
656
- - test/storage/s3_live_test.rb
657
- - test/storage/s3_test.rb
658
- - test/style_test.rb
659
- - test/support/mock_attachment.rb
660
- - test/support/mock_interpolator.rb
661
- - test/support/mock_model.rb
662
- - test/support/mock_url_generator_builder.rb
663
- - test/tempfile_factory_test.rb
664
- - test/thumbnail_test.rb
665
- - test/url_generator_test.rb
666
- - test/validators/attachment_content_type_validator_test.rb
667
- - test/validators/attachment_presence_validator_test.rb
668
- - test/validators/attachment_size_validator_test.rb
669
- - test/validators_test.rb
632
+ - spec/database.yml
633
+ - spec/paperclip/attachment_definitions_spec.rb
634
+ - spec/paperclip/attachment_processing_spec.rb
635
+ - spec/paperclip/attachment_registry_spec.rb
636
+ - spec/paperclip/attachment_spec.rb
637
+ - spec/paperclip/content_type_detector_spec.rb
638
+ - spec/paperclip/file_command_content_type_detector_spec.rb
639
+ - spec/paperclip/filename_cleaner_spec.rb
640
+ - spec/paperclip/geometry_detector_spec.rb
641
+ - spec/paperclip/geometry_parser_spec.rb
642
+ - spec/paperclip/geometry_spec.rb
643
+ - spec/paperclip/glue_spec.rb
644
+ - spec/paperclip/has_attached_file_spec.rb
645
+ - spec/paperclip/integration_spec.rb
646
+ - spec/paperclip/interpolations_spec.rb
647
+ - spec/paperclip/io_adapters/abstract_adapter_spec.rb
648
+ - spec/paperclip/io_adapters/attachment_adapter_spec.rb
649
+ - spec/paperclip/io_adapters/data_uri_adapter_spec.rb
650
+ - spec/paperclip/io_adapters/empty_string_adapter_spec.rb
651
+ - spec/paperclip/io_adapters/file_adapter_spec.rb
652
+ - spec/paperclip/io_adapters/http_url_proxy_adapter_spec.rb
653
+ - spec/paperclip/io_adapters/identity_adapter_spec.rb
654
+ - spec/paperclip/io_adapters/nil_adapter_spec.rb
655
+ - spec/paperclip/io_adapters/registry_spec.rb
656
+ - spec/paperclip/io_adapters/stringio_adapter_spec.rb
657
+ - spec/paperclip/io_adapters/uploaded_file_adapter_spec.rb
658
+ - spec/paperclip/io_adapters/uri_adapter_spec.rb
659
+ - spec/paperclip/matchers/have_attached_file_matcher_spec.rb
660
+ - spec/paperclip/matchers/validate_attachment_content_type_matcher_spec.rb
661
+ - spec/paperclip/matchers/validate_attachment_presence_matcher_spec.rb
662
+ - spec/paperclip/matchers/validate_attachment_size_matcher_spec.rb
663
+ - spec/paperclip/media_type_spoof_detector_spec.rb
664
+ - spec/paperclip/meta_class_spec.rb
665
+ - spec/paperclip/paperclip_missing_attachment_styles_spec.rb
666
+ - spec/paperclip/paperclip_spec.rb
667
+ - spec/paperclip/plural_cache_spec.rb
668
+ - spec/paperclip/processor_helpers_spec.rb
669
+ - spec/paperclip/processor_spec.rb
670
+ - spec/paperclip/rails_environment_spec.rb
671
+ - spec/paperclip/rake_spec.rb
672
+ - spec/paperclip/schema_spec.rb
673
+ - spec/paperclip/storage/filesystem_spec.rb
674
+ - spec/paperclip/storage/fog_spec.rb
675
+ - spec/paperclip/storage/s3_live_spec.rb
676
+ - spec/paperclip/storage/s3_spec.rb
677
+ - spec/paperclip/style_spec.rb
678
+ - spec/paperclip/tempfile_factory_spec.rb
679
+ - spec/paperclip/tempfile_spec.rb
680
+ - spec/paperclip/thumbnail_spec.rb
681
+ - spec/paperclip/url_generator_spec.rb
682
+ - spec/paperclip/validators/attachment_content_type_validator_spec.rb
683
+ - spec/paperclip/validators/attachment_file_name_validator_spec.rb
684
+ - spec/paperclip/validators/attachment_presence_validator_spec.rb
685
+ - spec/paperclip/validators/attachment_size_validator_spec.rb
686
+ - spec/paperclip/validators/media_type_spoof_detection_validator_spec.rb
687
+ - spec/paperclip/validators_spec.rb
688
+ - spec/spec_helper.rb
689
+ - spec/support/assertions.rb
690
+ - spec/support/fake_model.rb
691
+ - spec/support/fake_rails.rb
692
+ - spec/support/fixtures/12k.png
693
+ - spec/support/fixtures/50x50.png
694
+ - spec/support/fixtures/5k.png
695
+ - spec/support/fixtures/animated
696
+ - spec/support/fixtures/animated.gif
697
+ - spec/support/fixtures/animated.unknown
698
+ - spec/support/fixtures/bad.png
699
+ - spec/support/fixtures/empty.html
700
+ - spec/support/fixtures/empty.xlsx
701
+ - spec/support/fixtures/fog.yml
702
+ - spec/support/fixtures/rotated.jpg
703
+ - spec/support/fixtures/s3.yml
704
+ - spec/support/fixtures/spaced file.jpg
705
+ - spec/support/fixtures/spaced file.png
706
+ - spec/support/fixtures/text.txt
707
+ - spec/support/fixtures/twopage.pdf
708
+ - spec/support/fixtures/uppercase.PNG
709
+ - spec/support/matchers/accept.rb
710
+ - spec/support/matchers/exist.rb
711
+ - spec/support/matchers/have_column.rb
712
+ - spec/support/mock_attachment.rb
713
+ - spec/support/mock_interpolator.rb
714
+ - spec/support/mock_url_generator_builder.rb
715
+ - spec/support/model_reconstruction.rb
716
+ - spec/support/reporting.rb
717
+ - spec/support/test_data.rb
718
+ - spec/support/version_helper.rb