dynamic_image 3.0.2 → 3.0.4
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.
- checksums.yaml +4 -4
- data/lib/dynamic_image/belongs_to.rb +2 -2
- data/lib/dynamic_image/controller.rb +3 -3
- data/lib/dynamic_image/helper.rb +4 -7
- data/lib/dynamic_image/image_processor.rb +1 -1
- data/lib/dynamic_image/jobs/create_variant.rb +4 -0
- data/lib/dynamic_image/metadata.rb +1 -1
- data/lib/dynamic_image/model.rb +1 -1
- data/lib/dynamic_image/processed_image.rb +5 -1
- data/lib/dynamic_image/version.rb +1 -1
- data/lib/rails/generators/dynamic_image/resource/resource_generator.rb +2 -2
- metadata +4 -63
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 29045ac647420e30871365d212f63966bf829dab26f4bc9bb97bf096fae7f154
|
4
|
+
data.tar.gz: 61953910945dd403634b106dee5335f780195a8ba00f894ce86cb5aea479960c
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 6634f152e4b04da0dd65bd575d46dd862fdfe0f22c0fe0e05c8025fa4d90207db109ea262252ff01a6daa4db71a8a0a0993c6a413b5afd6a9ee691287ae09c65
|
7
|
+
data.tar.gz: 74db0d48ad670d7a2a566114e0bfd53c154e95e4c79a27388b04c7e10930bf409891cabf8cd8de67638e21f4b84f82b8d267ae36feb6d05823f308d157586512
|
@@ -7,8 +7,8 @@ module DynamicImage
|
|
7
7
|
extend ActiveSupport::Concern
|
8
8
|
|
9
9
|
module ClassMethods
|
10
|
-
def belongs_to_image(name, scope = nil, **
|
11
|
-
belongs_to(name, scope, **
|
10
|
+
def belongs_to_image(name, scope = nil, **)
|
11
|
+
belongs_to(name, scope, **)
|
12
12
|
|
13
13
|
define_method "#{name}=" do |new_image|
|
14
14
|
if new_image.present? && !new_image.is_a?(DynamicImage::Model)
|
@@ -77,7 +77,7 @@ module DynamicImage
|
|
77
77
|
respond_to do |format|
|
78
78
|
format.html do
|
79
79
|
render(template: "dynamic_image/images/show",
|
80
|
-
layout: false, locals: { options:
|
80
|
+
layout: false, locals: { options: })
|
81
81
|
end
|
82
82
|
format.any(:gif, :jpeg, :jpg, :png, :tiff, :webp) do
|
83
83
|
process_and_send(@record, options)
|
@@ -91,9 +91,9 @@ module DynamicImage
|
|
91
91
|
respond_to do |format|
|
92
92
|
format.any(:gif, :jpeg, :jpg, :png, :tiff, :webp) do
|
93
93
|
send_data(@record.data,
|
94
|
-
filename
|
94
|
+
filename:,
|
95
95
|
content_type: @record.content_type,
|
96
|
-
disposition:
|
96
|
+
disposition:)
|
97
97
|
end
|
98
98
|
end
|
99
99
|
end
|
data/lib/dynamic_image/helper.rb
CHANGED
@@ -26,16 +26,13 @@ module DynamicImage
|
|
26
26
|
#
|
27
27
|
# image = Image.find(params[:id])
|
28
28
|
# dynamic_image_tag(image)
|
29
|
-
# # => <img
|
29
|
+
# # => <img height="200" src="..." width="320" />
|
30
30
|
# dynamic_image_tag(image, size: "100x100", alt="Avatar")
|
31
31
|
# # => <img alt="Avatar" height="62" src="..." width="100" />
|
32
32
|
def dynamic_image_tag(record_or_array, options = {})
|
33
|
-
record = extract_dynamic_image_record(record_or_array)
|
34
|
-
options = { alt: filename_to_alt(record.filename) }.merge(options)
|
35
|
-
|
36
33
|
size = fit_size!(record_or_array, options)
|
37
34
|
url_options = options.extract!(*allowed_dynamic_image_url_options)
|
38
|
-
html_options = { size:
|
35
|
+
html_options = { size: }.merge(options)
|
39
36
|
|
40
37
|
image_tag(dynamic_image_path_with_size(record_or_array,
|
41
38
|
size,
|
@@ -143,7 +140,7 @@ module DynamicImage
|
|
143
140
|
routing_type: :url,
|
144
141
|
action: nil,
|
145
142
|
format: default_format_for_image(record),
|
146
|
-
size:
|
143
|
+
size:
|
147
144
|
}.merge(options)
|
148
145
|
options[:digest] =
|
149
146
|
dynamic_image_digest(record, options[:action], options[:size])
|
@@ -179,7 +176,7 @@ module DynamicImage
|
|
179
176
|
|
180
177
|
def image_sizing(record, size_opts, uncropped)
|
181
178
|
ImageSizing
|
182
|
-
.new(record, uncropped:
|
179
|
+
.new(record, uncropped:)
|
183
180
|
.fit(size_opts[:size], size_opts).floor.to_s
|
184
181
|
end
|
185
182
|
end
|
@@ -8,6 +8,10 @@ module DynamicImage
|
|
8
8
|
class CreateVariant < ActiveJob::Base
|
9
9
|
queue_as :dis
|
10
10
|
|
11
|
+
discard_on Dis::Errors::NotFoundError
|
12
|
+
|
13
|
+
retry_on StandardError, attempts: 10, wait: :polynomially_longer
|
14
|
+
|
11
15
|
def perform(record, options, size)
|
12
16
|
size_v = Vector2d.parse(size)
|
13
17
|
DynamicImage::ProcessedImage.new(record, options)
|
data/lib/dynamic_image/model.rb
CHANGED
@@ -100,7 +100,7 @@ module DynamicImage
|
|
100
100
|
# Includes a timestamp fingerprint in the URL param, so
|
101
101
|
# that rendered images can be cached indefinitely.
|
102
102
|
def to_param
|
103
|
-
[id, updated_at.utc.
|
103
|
+
[id, updated_at.utc.to_fs(cache_timestamp_format)].join("-")
|
104
104
|
end
|
105
105
|
|
106
106
|
private
|
@@ -40,7 +40,11 @@ module DynamicImage
|
|
40
40
|
def find_variant(size)
|
41
41
|
return nil unless record.persisted?
|
42
42
|
|
43
|
-
record.variants.find_by(variant_params(size))
|
43
|
+
variant = record.variants.find_by(variant_params(size))
|
44
|
+
variant&.tap(&:data)
|
45
|
+
rescue Dis::Errors::NotFoundError
|
46
|
+
variant.destroy
|
47
|
+
nil
|
44
48
|
end
|
45
49
|
|
46
50
|
def format
|
@@ -19,8 +19,8 @@ module DynamicImage
|
|
19
19
|
"#{file_name.pluralize}_controller.rb"),
|
20
20
|
after: "ApplicationController\n"
|
21
21
|
) do
|
22
|
-
" include DynamicImage::Controller\n\n private\n\n" \
|
23
|
-
"
|
22
|
+
" include DynamicImage::Controller\n\n private\n\n " \
|
23
|
+
"def model\n #{class_name}\n end\n"
|
24
24
|
end
|
25
25
|
end
|
26
26
|
|
metadata
CHANGED
@@ -1,14 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: dynamic_image
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.0.
|
4
|
+
version: 3.0.4
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Inge Jørgensen
|
8
|
-
autorequire:
|
9
8
|
bindir: bin
|
10
9
|
cert_chain: []
|
11
|
-
date:
|
10
|
+
date: 2025-04-09 00:00:00.000000000 Z
|
12
11
|
dependencies:
|
13
12
|
- !ruby/object:Gem::Dependency
|
14
13
|
name: dis
|
@@ -78,62 +77,6 @@ dependencies:
|
|
78
77
|
- - ">="
|
79
78
|
- !ruby/object:Gem::Version
|
80
79
|
version: 2.2.1
|
81
|
-
- !ruby/object:Gem::Dependency
|
82
|
-
name: rails-controller-testing
|
83
|
-
requirement: !ruby/object:Gem::Requirement
|
84
|
-
requirements:
|
85
|
-
- - ">="
|
86
|
-
- !ruby/object:Gem::Version
|
87
|
-
version: '0'
|
88
|
-
type: :development
|
89
|
-
prerelease: false
|
90
|
-
version_requirements: !ruby/object:Gem::Requirement
|
91
|
-
requirements:
|
92
|
-
- - ">="
|
93
|
-
- !ruby/object:Gem::Version
|
94
|
-
version: '0'
|
95
|
-
- !ruby/object:Gem::Dependency
|
96
|
-
name: rspec-rails
|
97
|
-
requirement: !ruby/object:Gem::Requirement
|
98
|
-
requirements:
|
99
|
-
- - ">="
|
100
|
-
- !ruby/object:Gem::Version
|
101
|
-
version: '0'
|
102
|
-
type: :development
|
103
|
-
prerelease: false
|
104
|
-
version_requirements: !ruby/object:Gem::Requirement
|
105
|
-
requirements:
|
106
|
-
- - ">="
|
107
|
-
- !ruby/object:Gem::Version
|
108
|
-
version: '0'
|
109
|
-
- !ruby/object:Gem::Dependency
|
110
|
-
name: simplecov
|
111
|
-
requirement: !ruby/object:Gem::Requirement
|
112
|
-
requirements:
|
113
|
-
- - "~>"
|
114
|
-
- !ruby/object:Gem::Version
|
115
|
-
version: 0.17.1
|
116
|
-
type: :development
|
117
|
-
prerelease: false
|
118
|
-
version_requirements: !ruby/object:Gem::Requirement
|
119
|
-
requirements:
|
120
|
-
- - "~>"
|
121
|
-
- !ruby/object:Gem::Version
|
122
|
-
version: 0.17.1
|
123
|
-
- !ruby/object:Gem::Dependency
|
124
|
-
name: sqlite3
|
125
|
-
requirement: !ruby/object:Gem::Requirement
|
126
|
-
requirements:
|
127
|
-
- - ">="
|
128
|
-
- !ruby/object:Gem::Version
|
129
|
-
version: '0'
|
130
|
-
type: :development
|
131
|
-
prerelease: false
|
132
|
-
version_requirements: !ruby/object:Gem::Requirement
|
133
|
-
requirements:
|
134
|
-
- - ">="
|
135
|
-
- !ruby/object:Gem::Version
|
136
|
-
version: '0'
|
137
80
|
description: DynamicImage is a Rails plugin that simplifies image uploading and processing
|
138
81
|
email:
|
139
82
|
- inge@elektronaut.no
|
@@ -178,7 +121,6 @@ licenses:
|
|
178
121
|
- MIT
|
179
122
|
metadata:
|
180
123
|
rubygems_mfa_required: 'true'
|
181
|
-
post_install_message:
|
182
124
|
rdoc_options: []
|
183
125
|
require_paths:
|
184
126
|
- lib
|
@@ -186,15 +128,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
186
128
|
requirements:
|
187
129
|
- - ">="
|
188
130
|
- !ruby/object:Gem::Version
|
189
|
-
version: 2.
|
131
|
+
version: 3.2.0
|
190
132
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
191
133
|
requirements:
|
192
134
|
- - ">="
|
193
135
|
- !ruby/object:Gem::Version
|
194
136
|
version: '0'
|
195
137
|
requirements: []
|
196
|
-
rubygems_version: 3.2
|
197
|
-
signing_key:
|
138
|
+
rubygems_version: 3.6.2
|
198
139
|
specification_version: 4
|
199
140
|
summary: Rails plugin that simplifies image uploading and processing
|
200
141
|
test_files: []
|