paperclip_duplicate_check 1.0.0 → 1.0.1

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.
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA1:
3
+ metadata.gz: 0631aa88da306fb726076cd5c7c0cd8c1d8b437d
4
+ data.tar.gz: 36c68dc63130870a5326bdf280bf40290aef36bb
5
+ SHA512:
6
+ metadata.gz: 635ed2beb96676a6a119940e519d1e0a59ba31d2e237330a8cf015ab166b1fc788eb72742fb10c09e5289b9abdfe0571d267b267b74eec14091301e4a184b547
7
+ data.tar.gz: 245461793b165783226ae92f83816e522adabe38ca1f5c9d3e0b02b34bca362ce41dfeff17821e345bb599646234b0ca5c0e60e71d9b357166305099105b792b
@@ -0,0 +1 @@
1
+ paperclip_dup
@@ -0,0 +1 @@
1
+ ruby-2.3.1
data/Gemfile CHANGED
@@ -1,4 +1,4 @@
1
- source :rubygems
1
+ source 'https://rubygems.org'
2
2
 
3
3
  gem 'paperclip'
4
4
 
@@ -6,7 +6,7 @@ group :development do
6
6
  # TESTS
7
7
  gem 'rspec'
8
8
  gem 'sqlite3'
9
- gem 'rails'
9
+ gem 'rails', '>= 5.0'
10
10
 
11
11
  # DOCS
12
12
  gem 'yard'
@@ -14,5 +14,5 @@ group :development do
14
14
 
15
15
  # DEVELOPMENT
16
16
  gem 'bundler'
17
- gem 'jeweler'
17
+ gem 'juwelier'
18
18
  end
@@ -1,117 +1,185 @@
1
1
  GEM
2
- remote: http://rubygems.org/
2
+ remote: https://rubygems.org/
3
3
  specs:
4
- actionmailer (3.2.3)
5
- actionpack (= 3.2.3)
6
- mail (~> 2.4.4)
7
- actionpack (3.2.3)
8
- activemodel (= 3.2.3)
9
- activesupport (= 3.2.3)
10
- builder (~> 3.0.0)
4
+ actioncable (5.0.0)
5
+ actionpack (= 5.0.0)
6
+ nio4r (~> 1.2)
7
+ websocket-driver (~> 0.6.1)
8
+ actionmailer (5.0.0)
9
+ actionpack (= 5.0.0)
10
+ actionview (= 5.0.0)
11
+ activejob (= 5.0.0)
12
+ mail (~> 2.5, >= 2.5.4)
13
+ rails-dom-testing (~> 2.0)
14
+ actionpack (5.0.0)
15
+ actionview (= 5.0.0)
16
+ activesupport (= 5.0.0)
17
+ rack (~> 2.0)
18
+ rack-test (~> 0.6.3)
19
+ rails-dom-testing (~> 2.0)
20
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
21
+ actionview (5.0.0)
22
+ activesupport (= 5.0.0)
23
+ builder (~> 3.1)
11
24
  erubis (~> 2.7.0)
12
- journey (~> 1.0.1)
13
- rack (~> 1.4.0)
14
- rack-cache (~> 1.2)
15
- rack-test (~> 0.6.1)
16
- sprockets (~> 2.1.2)
17
- activemodel (3.2.3)
18
- activesupport (= 3.2.3)
19
- builder (~> 3.0.0)
20
- activerecord (3.2.3)
21
- activemodel (= 3.2.3)
22
- activesupport (= 3.2.3)
23
- arel (~> 3.0.2)
24
- tzinfo (~> 0.3.29)
25
- activeresource (3.2.3)
26
- activemodel (= 3.2.3)
27
- activesupport (= 3.2.3)
28
- activesupport (3.2.3)
29
- i18n (~> 0.6)
30
- multi_json (~> 1.0)
31
- arel (3.0.2)
32
- builder (3.0.0)
33
- cocaine (0.2.1)
34
- diff-lcs (1.1.3)
25
+ rails-dom-testing (~> 2.0)
26
+ rails-html-sanitizer (~> 1.0, >= 1.0.2)
27
+ activejob (5.0.0)
28
+ activesupport (= 5.0.0)
29
+ globalid (>= 0.3.6)
30
+ activemodel (5.0.0)
31
+ activesupport (= 5.0.0)
32
+ activerecord (5.0.0)
33
+ activemodel (= 5.0.0)
34
+ activesupport (= 5.0.0)
35
+ arel (~> 7.0)
36
+ activesupport (5.0.0)
37
+ concurrent-ruby (~> 1.0, >= 1.0.2)
38
+ i18n (~> 0.7)
39
+ minitest (~> 5.1)
40
+ tzinfo (~> 1.1)
41
+ addressable (2.4.0)
42
+ arel (7.0.0)
43
+ builder (3.2.2)
44
+ climate_control (0.0.3)
45
+ activesupport (>= 3.0)
46
+ cocaine (0.5.8)
47
+ climate_control (>= 0.0.3, < 1.0)
48
+ concurrent-ruby (1.0.2)
49
+ descendants_tracker (0.0.4)
50
+ thread_safe (~> 0.3, >= 0.3.1)
51
+ diff-lcs (1.2.5)
35
52
  erubis (2.7.0)
36
- git (1.2.5)
37
- hike (1.2.1)
38
- i18n (0.6.0)
39
- jeweler (1.8.3)
40
- bundler (~> 1.0)
53
+ faraday (0.9.2)
54
+ multipart-post (>= 1.2, < 3)
55
+ git (1.3.0)
56
+ github_api (0.14.2)
57
+ addressable (~> 2.4.0)
58
+ descendants_tracker (~> 0.0.4)
59
+ faraday (~> 0.8, < 0.10)
60
+ hashie (>= 3.4)
61
+ oauth2
62
+ globalid (0.3.6)
63
+ activesupport (>= 4.1.0)
64
+ hashie (3.4.4)
65
+ highline (1.7.8)
66
+ i18n (0.7.0)
67
+ json (1.8.3)
68
+ juwelier (2.1.2)
69
+ builder
70
+ bundler (>= 1.0)
41
71
  git (>= 1.2.5)
72
+ github_api
73
+ highline (>= 1.6.15)
74
+ nokogiri (>= 1.5.10)
42
75
  rake
43
76
  rdoc
44
- journey (1.0.3)
45
- json (1.6.6)
46
- mail (2.4.4)
47
- i18n (>= 0.4.0)
48
- mime-types (~> 1.16)
49
- treetop (~> 1.4.8)
50
- mime-types (1.18)
51
- multi_json (1.3.2)
52
- paperclip (3.0.2)
53
- activemodel (>= 3.0.0)
54
- activerecord (>= 3.0.0)
55
- activesupport (>= 3.0.0)
56
- cocaine (>= 0.0.2)
77
+ semver
78
+ jwt (1.5.4)
79
+ loofah (2.0.3)
80
+ nokogiri (>= 1.5.9)
81
+ mail (2.6.4)
82
+ mime-types (>= 1.16, < 4)
83
+ method_source (0.8.2)
84
+ mime-types (3.1)
85
+ mime-types-data (~> 3.2015)
86
+ mime-types-data (3.2016.0521)
87
+ mimemagic (0.3.1)
88
+ mini_portile2 (2.1.0)
89
+ minitest (5.9.0)
90
+ multi_json (1.12.1)
91
+ multi_xml (0.5.5)
92
+ multipart-post (2.0.0)
93
+ nio4r (1.2.1)
94
+ nokogiri (1.6.8)
95
+ mini_portile2 (~> 2.1.0)
96
+ pkg-config (~> 1.1.7)
97
+ oauth2 (1.2.0)
98
+ faraday (>= 0.8, < 0.10)
99
+ jwt (~> 1.0)
100
+ multi_json (~> 1.3)
101
+ multi_xml (~> 0.5)
102
+ rack (>= 1.2, < 3)
103
+ paperclip (5.0.0)
104
+ activemodel (>= 4.2.0)
105
+ activesupport (>= 4.2.0)
106
+ cocaine (~> 0.5.5)
57
107
  mime-types
58
- polyglot (0.3.3)
59
- rack (1.4.1)
60
- rack-cache (1.2)
61
- rack (>= 0.4)
62
- rack-ssl (1.3.2)
63
- rack
64
- rack-test (0.6.1)
108
+ mimemagic (~> 0.3.0)
109
+ pkg-config (1.1.7)
110
+ rack (2.0.1)
111
+ rack-test (0.6.3)
65
112
  rack (>= 1.0)
66
- rails (3.2.3)
67
- actionmailer (= 3.2.3)
68
- actionpack (= 3.2.3)
69
- activerecord (= 3.2.3)
70
- activeresource (= 3.2.3)
71
- activesupport (= 3.2.3)
72
- bundler (~> 1.0)
73
- railties (= 3.2.3)
74
- railties (3.2.3)
75
- actionpack (= 3.2.3)
76
- activesupport (= 3.2.3)
77
- rack-ssl (~> 1.3.2)
113
+ rails (5.0.0)
114
+ actioncable (= 5.0.0)
115
+ actionmailer (= 5.0.0)
116
+ actionpack (= 5.0.0)
117
+ actionview (= 5.0.0)
118
+ activejob (= 5.0.0)
119
+ activemodel (= 5.0.0)
120
+ activerecord (= 5.0.0)
121
+ activesupport (= 5.0.0)
122
+ bundler (>= 1.3.0, < 2.0)
123
+ railties (= 5.0.0)
124
+ sprockets-rails (>= 2.0.0)
125
+ rails-dom-testing (2.0.1)
126
+ activesupport (>= 4.2.0, < 6.0)
127
+ nokogiri (~> 1.6.0)
128
+ rails-html-sanitizer (1.0.3)
129
+ loofah (~> 2.0)
130
+ railties (5.0.0)
131
+ actionpack (= 5.0.0)
132
+ activesupport (= 5.0.0)
133
+ method_source
78
134
  rake (>= 0.8.7)
79
- rdoc (~> 3.4)
80
- thor (~> 0.14.6)
81
- rake (0.9.2.2)
82
- rdoc (3.12)
135
+ thor (>= 0.18.1, < 2.0)
136
+ rake (11.2.2)
137
+ rdoc (4.2.2)
83
138
  json (~> 1.4)
84
- redcarpet (2.1.1)
85
- rspec (2.9.0)
86
- rspec-core (~> 2.9.0)
87
- rspec-expectations (~> 2.9.0)
88
- rspec-mocks (~> 2.9.0)
89
- rspec-core (2.9.0)
90
- rspec-expectations (2.9.1)
91
- diff-lcs (~> 1.1.3)
92
- rspec-mocks (2.9.0)
93
- sprockets (2.1.2)
94
- hike (~> 1.2)
95
- rack (~> 1.0)
96
- tilt (~> 1.1, != 1.3.0)
97
- sqlite3 (1.3.6)
98
- thor (0.14.6)
99
- tilt (1.3.3)
100
- treetop (1.4.10)
101
- polyglot
102
- polyglot (>= 0.3.1)
103
- tzinfo (0.3.33)
104
- yard (0.7.5)
139
+ redcarpet (3.3.4)
140
+ rspec (3.5.0)
141
+ rspec-core (~> 3.5.0)
142
+ rspec-expectations (~> 3.5.0)
143
+ rspec-mocks (~> 3.5.0)
144
+ rspec-core (3.5.0)
145
+ rspec-support (~> 3.5.0)
146
+ rspec-expectations (3.5.0)
147
+ diff-lcs (>= 1.2.0, < 2.0)
148
+ rspec-support (~> 3.5.0)
149
+ rspec-mocks (3.5.0)
150
+ diff-lcs (>= 1.2.0, < 2.0)
151
+ rspec-support (~> 3.5.0)
152
+ rspec-support (3.5.0)
153
+ semver (1.0.1)
154
+ sprockets (3.6.3)
155
+ concurrent-ruby (~> 1.0)
156
+ rack (> 1, < 3)
157
+ sprockets-rails (3.1.1)
158
+ actionpack (>= 4.0)
159
+ activesupport (>= 4.0)
160
+ sprockets (>= 3.0.0)
161
+ sqlite3 (1.3.11)
162
+ thor (0.19.1)
163
+ thread_safe (0.3.5)
164
+ tzinfo (1.2.2)
165
+ thread_safe (~> 0.1)
166
+ websocket-driver (0.6.4)
167
+ websocket-extensions (>= 0.1.0)
168
+ websocket-extensions (0.1.2)
169
+ yard (0.8.7.6)
105
170
 
106
171
  PLATFORMS
107
172
  ruby
108
173
 
109
174
  DEPENDENCIES
110
175
  bundler
111
- jeweler
176
+ juwelier
112
177
  paperclip
113
- rails
178
+ rails (>= 5.0)
114
179
  redcarpet
115
180
  rspec
116
181
  sqlite3
117
182
  yard
183
+
184
+ BUNDLED WITH
185
+ 1.12.5
data/Rakefile CHANGED
@@ -11,8 +11,8 @@ rescue Bundler::BundlerError => e
11
11
  end
12
12
  require 'rake'
13
13
 
14
- require 'jeweler'
15
- Jeweler::Tasks.new do |gem|
14
+ require 'juwelier'
15
+ Juwelier::Tasks.new do |gem|
16
16
  # gem is a Gem::Specification... see http://docs.rubygems.org/read/chapter/20 for more options
17
17
  gem.name = "paperclip_duplicate_check"
18
18
  gem.homepage = "http://github.com/RISCfuture/paperclip_duplicate_check"
@@ -23,7 +23,7 @@ Jeweler::Tasks.new do |gem|
23
23
  gem.authors = ["Tim Morgan"]
24
24
  # dependencies defined in Gemfile
25
25
  end
26
- Jeweler::RubygemsDotOrgTasks.new
26
+ Juwelier::RubygemsDotOrgTasks.new
27
27
 
28
28
  require 'rspec/core'
29
29
  require 'rspec/core/rake_task'
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.0.0
1
+ 1.0.1
@@ -19,11 +19,13 @@ module CheckForDuplicateAttachedFile
19
19
  # @param [Symbol] name An attachment name.
20
20
 
21
21
  def check_for_duplicate_attached_file(*names)
22
+ extensions = Module.new
23
+
22
24
  names.each do |name|
23
- define_method :"#{name}_with_dup_check=" do |file|
25
+ extensions.send :define_method, :"#{name}=" do |file|
24
26
  attachment = send(name)
25
27
  old_fingerprint = attachment.fingerprint
26
- send :"#{name}_without_dup_check=", file
28
+ super(file)
27
29
  if attachment.fingerprint == old_fingerprint then
28
30
  # restore to saved state
29
31
  attachment.instance_variable_set :@queued_for_delete, []
@@ -32,8 +34,9 @@ module CheckForDuplicateAttachedFile
32
34
  attachment.instance_variable_set :@dirty, false
33
35
  end
34
36
  end
35
- alias_method_chain :"#{name}=", :dup_check
36
37
  end
38
+
39
+ prepend extensions
37
40
  end
38
41
  end
39
42
  end
@@ -1,74 +1,78 @@
1
- # Generated by jeweler
1
+ # Generated by juwelier
2
2
  # DO NOT EDIT THIS FILE DIRECTLY
3
- # Instead, edit Jeweler::Tasks in Rakefile, and run 'rake gemspec'
3
+ # Instead, edit Juwelier::Tasks in Rakefile, and run 'rake gemspec'
4
4
  # -*- encoding: utf-8 -*-
5
+ # stub: paperclip_duplicate_check 1.0.1 ruby lib
5
6
 
6
7
  Gem::Specification.new do |s|
7
- s.name = "paperclip_duplicate_check"
8
- s.version = "1.0.0"
8
+ s.name = "paperclip_duplicate_check".freeze
9
+ s.version = "1.0.1"
9
10
 
10
- s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
11
- s.authors = ["Tim Morgan"]
12
- s.date = "2012-04-21"
13
- s.description = "TODO: longer description of your gem"
14
- s.email = "tim@squareup.com"
11
+ s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
12
+ s.require_paths = ["lib".freeze]
13
+ s.authors = ["Tim Morgan".freeze]
14
+ s.date = "2016-07-04"
15
+ s.description = "This gem adds a mixin allowing you to forgo uploading a replacement Paperclip attachment if it's identical to the current attachment.".freeze
16
+ s.email = "git@timothymorgan.info".freeze
15
17
  s.extra_rdoc_files = [
16
18
  "LICENSE.txt",
17
- "README.rdoc"
19
+ "README.md"
18
20
  ]
19
21
  s.files = [
20
22
  ".document",
21
23
  ".rspec",
22
- ".rvmrc",
24
+ ".ruby-gemset",
25
+ ".ruby-version",
23
26
  "Gemfile",
24
27
  "Gemfile.lock",
25
28
  "LICENSE.txt",
26
- "README.rdoc",
29
+ "README.md",
27
30
  "Rakefile",
28
31
  "VERSION",
29
32
  "lib/paperclip_duplicate_check.rb",
33
+ "paperclip_duplicate_check.gemspec",
30
34
  "spec/fixtures/image.jpg",
31
35
  "spec/fixtures/image2.png",
32
36
  "spec/paperclip_duplicate_check_spec.rb",
33
- "spec/spec_helper.rb"
37
+ "spec/spec_helper.rb",
38
+ "tmp/.gitignore"
34
39
  ]
35
- s.homepage = "http://github.com/RISCfuture/paperclip_duplicate_check"
36
- s.licenses = ["MIT"]
37
- s.require_paths = ["lib"]
38
- s.rubygems_version = "1.8.23"
39
- s.summary = "TODO: one-line summary of your gem"
40
+ s.homepage = "http://github.com/RISCfuture/paperclip_duplicate_check".freeze
41
+ s.licenses = ["MIT".freeze]
42
+ s.rubygems_version = "2.6.6".freeze
43
+ s.summary = "Skips uploading a Paperclip attachment if it's identical to the one already uploaded".freeze
40
44
 
41
45
  if s.respond_to? :specification_version then
42
- s.specification_version = 3
46
+ s.specification_version = 4
43
47
 
44
48
  if Gem::Version.new(Gem::VERSION) >= Gem::Version.new('1.2.0') then
45
- s.add_runtime_dependency(%q<paperclip>, [">= 0"])
46
- s.add_development_dependency(%q<rspec>, [">= 0"])
47
- s.add_development_dependency(%q<sqlite3>, [">= 0"])
48
- s.add_development_dependency(%q<rails>, [">= 0"])
49
- s.add_development_dependency(%q<yard>, [">= 0"])
50
- s.add_development_dependency(%q<redcarpet>, [">= 0"])
51
- s.add_development_dependency(%q<bundler>, [">= 0"])
52
- s.add_development_dependency(%q<jeweler>, [">= 0"])
49
+ s.add_runtime_dependency(%q<paperclip>.freeze, [">= 0"])
50
+ s.add_development_dependency(%q<rspec>.freeze, [">= 0"])
51
+ s.add_development_dependency(%q<sqlite3>.freeze, [">= 0"])
52
+ s.add_development_dependency(%q<rails>.freeze, [">= 5.0"])
53
+ s.add_development_dependency(%q<yard>.freeze, [">= 0"])
54
+ s.add_development_dependency(%q<redcarpet>.freeze, [">= 0"])
55
+ s.add_development_dependency(%q<bundler>.freeze, [">= 0"])
56
+ s.add_development_dependency(%q<juwelier>.freeze, [">= 0"])
53
57
  else
54
- s.add_dependency(%q<paperclip>, [">= 0"])
55
- s.add_dependency(%q<rspec>, [">= 0"])
56
- s.add_dependency(%q<sqlite3>, [">= 0"])
57
- s.add_dependency(%q<rails>, [">= 0"])
58
- s.add_dependency(%q<yard>, [">= 0"])
59
- s.add_dependency(%q<redcarpet>, [">= 0"])
60
- s.add_dependency(%q<bundler>, [">= 0"])
61
- s.add_dependency(%q<jeweler>, [">= 0"])
58
+ s.add_dependency(%q<paperclip>.freeze, [">= 0"])
59
+ s.add_dependency(%q<rspec>.freeze, [">= 0"])
60
+ s.add_dependency(%q<sqlite3>.freeze, [">= 0"])
61
+ s.add_dependency(%q<rails>.freeze, [">= 5.0"])
62
+ s.add_dependency(%q<yard>.freeze, [">= 0"])
63
+ s.add_dependency(%q<redcarpet>.freeze, [">= 0"])
64
+ s.add_dependency(%q<bundler>.freeze, [">= 0"])
65
+ s.add_dependency(%q<juwelier>.freeze, [">= 0"])
62
66
  end
63
67
  else
64
- s.add_dependency(%q<paperclip>, [">= 0"])
65
- s.add_dependency(%q<rspec>, [">= 0"])
66
- s.add_dependency(%q<sqlite3>, [">= 0"])
67
- s.add_dependency(%q<rails>, [">= 0"])
68
- s.add_dependency(%q<yard>, [">= 0"])
69
- s.add_dependency(%q<redcarpet>, [">= 0"])
70
- s.add_dependency(%q<bundler>, [">= 0"])
71
- s.add_dependency(%q<jeweler>, [">= 0"])
68
+ s.add_dependency(%q<paperclip>.freeze, [">= 0"])
69
+ s.add_dependency(%q<rspec>.freeze, [">= 0"])
70
+ s.add_dependency(%q<sqlite3>.freeze, [">= 0"])
71
+ s.add_dependency(%q<rails>.freeze, [">= 5.0"])
72
+ s.add_dependency(%q<yard>.freeze, [">= 0"])
73
+ s.add_dependency(%q<redcarpet>.freeze, [">= 0"])
74
+ s.add_dependency(%q<bundler>.freeze, [">= 0"])
75
+ s.add_dependency(%q<juwelier>.freeze, [">= 0"])
72
76
  end
73
77
  end
74
78
 
@@ -5,18 +5,17 @@ describe CheckForDuplicateAttachedFile do
5
5
  it "should save an attachment if it's different from the current attachment" do
6
6
  person = Person.create!(photo: Rack::Test::UploadedFile.new("#{Dir.getwd}/spec/fixtures/image.jpg", 'image/jpeg'))
7
7
  person.photo = Rack::Test::UploadedFile.new("#{Dir.getwd}/spec/fixtures/image2.png", 'image/png')
8
- person.photo.should be_dirty
8
+ expect(person.photo).to be_dirty
9
9
  person.save!
10
- `md5 #{person.photo.path}`.split(' ').last.should eql(`md5 #{"#{Dir.getwd}/spec/fixtures/image2.png"}`.split(' ').last)
10
+ expect(`md5 #{person.photo.path}`.split(' ').last).to eql(`md5 #{"#{Dir.getwd}/spec/fixtures/image2.png"}`.split(' ').last)
11
11
  end
12
12
 
13
13
  it "should not re-save an attachment if it's the same as the current attachment" do
14
14
  person = Person.create!(photo: Rack::Test::UploadedFile.new("#{Dir.getwd}/spec/fixtures/image.jpg", 'image/jpeg'))
15
15
  person.photo = Rack::Test::UploadedFile.new("#{Dir.getwd}/spec/fixtures/image.jpg", 'image/jpeg')
16
- person.photo.should_not be_dirty
16
+ expect(person.photo).not_to be_dirty
17
17
  person.save!
18
- p person.photo.path
19
- `md5 #{person.photo.path}`.split(' ').last.should eql(`md5 #{"#{Dir.getwd}/spec/fixtures/image.jpg"}`.split(' ').last)
18
+ expect(`md5 #{person.photo.path}`.split(' ').last).to eql(`md5 #{"#{Dir.getwd}/spec/fixtures/image.jpg"}`.split(' ').last)
20
19
  end
21
20
  end
22
21
  end
@@ -5,16 +5,18 @@ require 'bundler'
5
5
  Bundler.require :development
6
6
  Bundler.require
7
7
 
8
- require 'active_record'
8
+ require 'rails/all'
9
9
  require 'paperclip_duplicate_check'
10
+ require 'rack'
11
+ require 'rack/test'
10
12
 
11
- Paperclip::Railtie.insert
12
13
  ActiveRecord::Base.establish_connection(
13
14
  adapter: 'sqlite3',
14
15
  database: 'test.sqlite'
15
16
  )
16
17
 
17
18
  class Person < ActiveRecord::Base
19
+ include Paperclip::Glue
18
20
  include CheckForDuplicateAttachedFile
19
21
 
20
22
  has_attached_file :photo,
@@ -23,7 +25,9 @@ class Person < ActiveRecord::Base
23
25
  logbook: '32x32#',
24
26
  stat: '64x64#',
25
27
  },
26
- storage: :filesystem
28
+ storage: :filesystem,
29
+ path: './tmp/:attachment/:style.:extension'
30
+ validates_attachment_content_type :photo, content_type: /^image\//
27
31
  check_for_duplicate_attached_file :photo
28
32
  end
29
33
 
@@ -44,7 +48,5 @@ RSpec.configure do |config|
44
48
  photo_fingerprint VARCHAR(64)
45
49
  )
46
50
  SQL
47
-
48
- Rails.stub!(:root).and_return(Pathname(Dir.getwd))
49
51
  end
50
52
  end
metadata CHANGED
@@ -1,142 +1,125 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: paperclip_duplicate_check
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
5
- prerelease:
4
+ version: 1.0.1
6
5
  platform: ruby
7
6
  authors:
8
7
  - Tim Morgan
9
8
  autorequire:
10
9
  bindir: bin
11
10
  cert_chain: []
12
- date: 2012-04-21 00:00:00.000000000 Z
11
+ date: 2016-07-04 00:00:00.000000000 Z
13
12
  dependencies:
14
13
  - !ruby/object:Gem::Dependency
15
14
  name: paperclip
16
15
  requirement: !ruby/object:Gem::Requirement
17
- none: false
18
16
  requirements:
19
- - - ! '>='
17
+ - - ">="
20
18
  - !ruby/object:Gem::Version
21
19
  version: '0'
22
20
  type: :runtime
23
21
  prerelease: false
24
22
  version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
23
  requirements:
27
- - - ! '>='
24
+ - - ">="
28
25
  - !ruby/object:Gem::Version
29
26
  version: '0'
30
27
  - !ruby/object:Gem::Dependency
31
28
  name: rspec
32
29
  requirement: !ruby/object:Gem::Requirement
33
- none: false
34
30
  requirements:
35
- - - ! '>='
31
+ - - ">="
36
32
  - !ruby/object:Gem::Version
37
33
  version: '0'
38
34
  type: :development
39
35
  prerelease: false
40
36
  version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
37
  requirements:
43
- - - ! '>='
38
+ - - ">="
44
39
  - !ruby/object:Gem::Version
45
40
  version: '0'
46
41
  - !ruby/object:Gem::Dependency
47
42
  name: sqlite3
48
43
  requirement: !ruby/object:Gem::Requirement
49
- none: false
50
44
  requirements:
51
- - - ! '>='
45
+ - - ">="
52
46
  - !ruby/object:Gem::Version
53
47
  version: '0'
54
48
  type: :development
55
49
  prerelease: false
56
50
  version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
51
  requirements:
59
- - - ! '>='
52
+ - - ">="
60
53
  - !ruby/object:Gem::Version
61
54
  version: '0'
62
55
  - !ruby/object:Gem::Dependency
63
56
  name: rails
64
57
  requirement: !ruby/object:Gem::Requirement
65
- none: false
66
58
  requirements:
67
- - - ! '>='
59
+ - - ">="
68
60
  - !ruby/object:Gem::Version
69
- version: '0'
61
+ version: '5.0'
70
62
  type: :development
71
63
  prerelease: false
72
64
  version_requirements: !ruby/object:Gem::Requirement
73
- none: false
74
65
  requirements:
75
- - - ! '>='
66
+ - - ">="
76
67
  - !ruby/object:Gem::Version
77
- version: '0'
68
+ version: '5.0'
78
69
  - !ruby/object:Gem::Dependency
79
70
  name: yard
80
71
  requirement: !ruby/object:Gem::Requirement
81
- none: false
82
72
  requirements:
83
- - - ! '>='
73
+ - - ">="
84
74
  - !ruby/object:Gem::Version
85
75
  version: '0'
86
76
  type: :development
87
77
  prerelease: false
88
78
  version_requirements: !ruby/object:Gem::Requirement
89
- none: false
90
79
  requirements:
91
- - - ! '>='
80
+ - - ">="
92
81
  - !ruby/object:Gem::Version
93
82
  version: '0'
94
83
  - !ruby/object:Gem::Dependency
95
84
  name: redcarpet
96
85
  requirement: !ruby/object:Gem::Requirement
97
- none: false
98
86
  requirements:
99
- - - ! '>='
87
+ - - ">="
100
88
  - !ruby/object:Gem::Version
101
89
  version: '0'
102
90
  type: :development
103
91
  prerelease: false
104
92
  version_requirements: !ruby/object:Gem::Requirement
105
- none: false
106
93
  requirements:
107
- - - ! '>='
94
+ - - ">="
108
95
  - !ruby/object:Gem::Version
109
96
  version: '0'
110
97
  - !ruby/object:Gem::Dependency
111
98
  name: bundler
112
99
  requirement: !ruby/object:Gem::Requirement
113
- none: false
114
100
  requirements:
115
- - - ! '>='
101
+ - - ">="
116
102
  - !ruby/object:Gem::Version
117
103
  version: '0'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
- none: false
122
107
  requirements:
123
- - - ! '>='
108
+ - - ">="
124
109
  - !ruby/object:Gem::Version
125
110
  version: '0'
126
111
  - !ruby/object:Gem::Dependency
127
- name: jeweler
112
+ name: juwelier
128
113
  requirement: !ruby/object:Gem::Requirement
129
- none: false
130
114
  requirements:
131
- - - ! '>='
115
+ - - ">="
132
116
  - !ruby/object:Gem::Version
133
117
  version: '0'
134
118
  type: :development
135
119
  prerelease: false
136
120
  version_requirements: !ruby/object:Gem::Requirement
137
- none: false
138
121
  requirements:
139
- - - ! '>='
122
+ - - ">="
140
123
  - !ruby/object:Gem::Version
141
124
  version: '0'
142
125
  description: This gem adds a mixin allowing you to forgo uploading a replacement Paperclip
@@ -148,9 +131,10 @@ extra_rdoc_files:
148
131
  - LICENSE.txt
149
132
  - README.md
150
133
  files:
151
- - .document
152
- - .rspec
153
- - .rvmrc
134
+ - ".document"
135
+ - ".rspec"
136
+ - ".ruby-gemset"
137
+ - ".ruby-version"
154
138
  - Gemfile
155
139
  - Gemfile.lock
156
140
  - LICENSE.txt
@@ -163,33 +147,30 @@ files:
163
147
  - spec/fixtures/image2.png
164
148
  - spec/paperclip_duplicate_check_spec.rb
165
149
  - spec/spec_helper.rb
150
+ - tmp/.gitignore
166
151
  homepage: http://github.com/RISCfuture/paperclip_duplicate_check
167
152
  licenses:
168
153
  - MIT
154
+ metadata: {}
169
155
  post_install_message:
170
156
  rdoc_options: []
171
157
  require_paths:
172
158
  - lib
173
159
  required_ruby_version: !ruby/object:Gem::Requirement
174
- none: false
175
160
  requirements:
176
- - - ! '>='
161
+ - - ">="
177
162
  - !ruby/object:Gem::Version
178
163
  version: '0'
179
- segments:
180
- - 0
181
- hash: -2227327769610888350
182
164
  required_rubygems_version: !ruby/object:Gem::Requirement
183
- none: false
184
165
  requirements:
185
- - - ! '>='
166
+ - - ">="
186
167
  - !ruby/object:Gem::Version
187
168
  version: '0'
188
169
  requirements: []
189
170
  rubyforge_project:
190
- rubygems_version: 1.8.23
171
+ rubygems_version: 2.6.6
191
172
  signing_key:
192
- specification_version: 3
173
+ specification_version: 4
193
174
  summary: Skips uploading a Paperclip attachment if it's identical to the one already
194
175
  uploaded
195
176
  test_files: []
data/.rvmrc DELETED
@@ -1 +0,0 @@
1
- rvm 1.9.3@paperclip_dup --create