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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 97e9d1fe6e9eca656b2f800ff782b1e74e9f86dd0cf75da272470a2b92ee77c3
4
- data.tar.gz: 66c3cc61cdb78a845b13fa43101ac0235b5b72df2d5397cdf6e29033632be4bd
3
+ metadata.gz: 29045ac647420e30871365d212f63966bf829dab26f4bc9bb97bf096fae7f154
4
+ data.tar.gz: 61953910945dd403634b106dee5335f780195a8ba00f894ce86cb5aea479960c
5
5
  SHA512:
6
- metadata.gz: '04423593c2dcc2f6797e37cb4d8a732f189d617632099cd81c8a56f7b10d5fd3f6b2c110527cd7c44ec5f91208c2f73d1a865d89e779a839db1834f4f3f7340d'
7
- data.tar.gz: 734fc7820ddd5b55c95cfe7311a1f449892dfb81eae9fc264393ec4d36e08982e11df89dfc56b2ff3c32a48dcc738623ff6062a173d0d931b6b24932951aaf93
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, **options)
11
- belongs_to(name, scope, **options)
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: 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: filename,
94
+ filename:,
95
95
  content_type: @record.content_type,
96
- disposition: disposition)
96
+ disposition:)
97
97
  end
98
98
  end
99
99
  end
@@ -26,16 +26,13 @@ module DynamicImage
26
26
  #
27
27
  # image = Image.find(params[:id])
28
28
  # dynamic_image_tag(image)
29
- # # => <img alt="My file" height="200" src="..." width="320" />
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: size }.merge(options)
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: 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: uncropped)
179
+ .new(record, uncropped:)
183
180
  .fit(size_opts[:size], size_opts).floor.to_s
184
181
  end
185
182
  end
@@ -77,7 +77,7 @@ module DynamicImage
77
77
  private
78
78
 
79
79
  def apply(new_image)
80
- self.class.new(new_image, target_format: target_format)
80
+ self.class.new(new_image, target_format:)
81
81
  end
82
82
 
83
83
  def blank_image
@@ -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)
@@ -77,7 +77,7 @@ module DynamicImage
77
77
  end
78
78
 
79
79
  { width: image.get("width"),
80
- height: height,
80
+ height:,
81
81
  colorspace: image.get("interpretation") }
82
82
  end
83
83
  end
@@ -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.to_formatted_s(cache_timestamp_format)].join("-")
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
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module DynamicImage
4
- VERSION = "3.0.2"
4
+ VERSION = "3.0.4"
5
5
  end
@@ -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
- " def model\n #{class_name}\n end\n"
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.2
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: 2022-01-18 00:00:00.000000000 Z
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.7.0
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.32
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: []