carrierwave 2.2.2 → 2.2.6

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: b815c0a48b4df1ed7a3c3ea6f0d3cf4748b9197d5507b7b99ba262bcf703f8de
4
- data.tar.gz: b162ccab7c487c367702310819a3e14a05f014abed916a79112520550877a477
3
+ metadata.gz: 188b2d0a4b8e09fcfadd3e5066a1dabe2d6ad178ba26384ea1dbe7da2b9f5eb9
4
+ data.tar.gz: a5a76814bdcb877f75a059a5a0746e8dfb07755dcd5cfea80a7f9a3382dd4af1
5
5
  SHA512:
6
- metadata.gz: a6341493e822abeaa770f1c202e3ca62c43b54a2dcf1768e7d485208f825a546354d66b9c45d1169c2636d32a39b36312a8029729009504b87ab2ff6b8500187
7
- data.tar.gz: 9a8f6b9f5c2ba84f500a051f1ad9f7da603af42a746422f5a727fe79c02eb1cd9063c5b082fd7a051f263b52918d76a1abeb16ee4bb2dd8ecaea73d4a9f732fe
6
+ metadata.gz: 88a7f9a0fb94488b1b28c842def1b527781b1c7dcefc5c3e3010481b682b5175fc76172f4ac5d77f103dae99fcfbdfc7c61b69737d353f9bcc22a45b0b9cde01
7
+ data.tar.gz: f1c14065946dcaa080e45b5221f39b7da3886b659fe27f4755edf8df72234c1e3aafeb73ccdc0adac5d1ef1cdbdf98adc98f1a2853610b442efe9d1526907eee
@@ -29,8 +29,14 @@ module CarrierWave
29
29
  response = OpenURI.open_uri(process_uri(url.to_s), headers)
30
30
  else
31
31
  request = nil
32
- response = SsrfFilter.get(uri, headers: headers) do |req|
33
- request = req
32
+ if ::SsrfFilter::VERSION.to_f < 1.1
33
+ response = SsrfFilter.get(uri, headers: headers) do |req|
34
+ request = req
35
+ end
36
+ else
37
+ response = SsrfFilter.get(uri, headers: headers, request_proc: ->(req) { request = req }) do |res|
38
+ res.body # ensure to read body
39
+ end
34
40
  end
35
41
  response.uri = request.uri
36
42
  response.value
@@ -324,7 +324,7 @@ module CarrierWave
324
324
 
325
325
  def existing_content_type
326
326
  if @file.respond_to?(:content_type) && @file.content_type
327
- @file.content_type.to_s.chomp
327
+ Marcel::MimeType.for(declared_type: @file.content_type.to_s.chomp)
328
328
  end
329
329
  end
330
330
 
@@ -51,7 +51,7 @@ module CarrierWave
51
51
  def whitelisted_content_type?(content_type)
52
52
  Array(content_type_allowlist).any? do |item|
53
53
  item = Regexp.quote(item) if item.class != Regexp
54
- content_type =~ /#{item}/
54
+ content_type =~ /\A#{item}/
55
55
  end
56
56
  end
57
57
 
@@ -80,7 +80,17 @@ module CarrierWave
80
80
  next unless self.send(condition, new_file)
81
81
  end
82
82
  end
83
- self.send(method, *args)
83
+
84
+ if args.is_a? Array
85
+ kwargs, args = args.partition { |arg| arg.is_a? Hash }
86
+ end
87
+
88
+ if kwargs.present?
89
+ kwargs = kwargs.reduce(:merge)
90
+ self.send(method, *args, **kwargs)
91
+ else
92
+ self.send(method, *args)
93
+ end
84
94
  end
85
95
  end
86
96
  end
@@ -1,3 +1,3 @@
1
1
  module CarrierWave
2
- VERSION = "2.2.2"
2
+ VERSION = "2.2.6"
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: carrierwave
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.2.2
4
+ version: 2.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Jonas Nicklas
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2021-05-28 00:00:00.000000000 Z
11
+ date: 2024-03-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -396,7 +396,7 @@ homepage: https://github.com/carrierwaveuploader/carrierwave
396
396
  licenses:
397
397
  - MIT
398
398
  metadata: {}
399
- post_install_message:
399
+ post_install_message:
400
400
  rdoc_options:
401
401
  - "--main"
402
402
  require_paths:
@@ -412,8 +412,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
412
412
  - !ruby/object:Gem::Version
413
413
  version: '0'
414
414
  requirements: []
415
- rubygems_version: 3.1.4
416
- signing_key:
415
+ rubygems_version: 3.4.10
416
+ signing_key:
417
417
  specification_version: 4
418
418
  summary: Ruby file upload library
419
419
  test_files: []