activestorage 7.0.4.3 → 7.0.6

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of activestorage might be problematic. Click here for more details.

checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: e167e1cb996ff132df4a94ef036859a3efc17451dabe6fba7b67623787e7f422
4
- data.tar.gz: a90dadd45607a0d693eadf4b200edf070d11d6ead1109352d0353e1accec27ae
3
+ metadata.gz: 5e1f03d34e4a15967b60c668e71894d42539fbf0fb02279e66c78b7fcdec1a32
4
+ data.tar.gz: '080f412cdd6a8b2f71492b9b3f37a0b0c5ca684ab1b33f1e3042e4493a4fe3ae'
5
5
  SHA512:
6
- metadata.gz: 84327eb85ff274184a43766cf4a9b2bd751b49abef5d274bb084c9e094e136069b81f4cab01a3d392f873c0d0c224e17afda83d5b10a7146f758fc9375bf8743
7
- data.tar.gz: 05753d710610746c7646e5e0fd7e28cfcfce7cc7fd951847808f2bc64fb0dab31882e18af46f8ff3883f2ee04b5b0ecb0bf86c311f23bb588882676e27504ab0
6
+ metadata.gz: 90ceefcc3bed54ef29409ae64ea023eed36190ad986633b990614541945d8a045ba6e724451f5376fa3018d612ab3f0e205a8991aeb9852b258bef1df426db58
7
+ data.tar.gz: 759f5bf6704a4a94abec338564447b6cc39d7a9e8018f154c31f7c01a56a59c86d44f99a146c2dae570eb000dcc0fe35cdcdd93ff27faa540934dae3c4ee9438
data/CHANGELOG.md CHANGED
@@ -1,3 +1,25 @@
1
+ ## Rails 7.0.6 (June 29, 2023) ##
2
+
3
+ * Fix retrieving rotation value from FFmpeg on version 5.0+.
4
+
5
+ In FFmpeg version 5.0+ the rotation value has been removed from tags.
6
+ Instead the value can be found in side_data_list. Along with
7
+ this update it's possible to have values of -90, -270 to denote the video
8
+ has been rotated.
9
+
10
+ *Haroon Ahmed*
11
+
12
+
13
+ ## Rails 7.0.5.1 (June 26, 2023) ##
14
+
15
+ * No changes.
16
+
17
+
18
+ ## Rails 7.0.5 (May 24, 2023) ##
19
+
20
+ * No changes.
21
+
22
+
1
23
  ## Rails 7.0.4.3 (March 13, 2023) ##
2
24
 
3
25
  * No changes.
@@ -52,10 +74,10 @@
52
74
  ## Rails 7.0.2.3 (March 08, 2022) ##
53
75
 
54
76
  * Added image transformation validation via configurable allow-list.
55
-
77
+
56
78
  Variant now offers a configurable allow-list for
57
79
  transformation methods in addition to a configurable deny-list for arguments.
58
-
80
+
59
81
  [CVE-2022-21831]
60
82
 
61
83
 
data/README.md CHANGED
@@ -199,7 +199,7 @@ API documentation is at:
199
199
 
200
200
  * https://api.rubyonrails.org
201
201
 
202
- Bug reports for the Ruby on Rails project can be filed here:
202
+ Bug reports for the Ruby on \Rails project can be filed here:
203
203
 
204
204
  * https://github.com/rails/rails/issues
205
205
 
@@ -6,7 +6,7 @@ require "active_support/core_ext/module/delegation"
6
6
  # but it is possible to associate many different records with the same blob. A foreign-key constraint
7
7
  # on the attachments table prevents blobs from being purged if they’re still attached to any records.
8
8
  #
9
- # Attachments also have access to all methods from {ActiveStorage::Blob}[rdoc-ref:ActiveStorage::Blob].
9
+ # Attachments also have access to all methods from ActiveStorage::Blob.
10
10
  #
11
11
  # If you wish to preload attachments or blobs, you can use these scopes:
12
12
  #
@@ -120,7 +120,7 @@ class ActiveStorage::Blob < ActiveStorage::Record
120
120
  # To prevent problems with case-insensitive filesystems, especially in combination
121
121
  # with databases which treat indices as case-sensitive, all blob keys generated are going
122
122
  # to only contain the base-36 character alphabet and will therefore be lowercase. To maintain
123
- # the same or higher amount of entropy as in the base-58 encoding used by `has_secure_token`
123
+ # the same or higher amount of entropy as in the base-58 encoding used by +has_secure_token+
124
124
  # the number of bytes used is increased to 28 from the standard 24
125
125
  def generate_unique_secure_token(length: MINIMUM_TOKEN_LENGTH)
126
126
  SecureRandom.base36(length)
@@ -16,7 +16,7 @@ module ActiveStorage
16
16
  # ActiveStorage::Analyzer::VideoAnalyzer.new(blob).metadata
17
17
  # # => { width: 640.0, height: 480.0, duration: 5.0, angle: 0, display_aspect_ratio: [4, 3], audio: true, video: true }
18
18
  #
19
- # When a video's angle is 90 or 270 degrees, its width and height are automatically swapped for convenience.
19
+ # When a video's angle is 90, -90, 270 or -270 degrees, its width and height are automatically swapped for convenience.
20
20
  #
21
21
  # This analyzer requires the {FFmpeg}[https://www.ffmpeg.org] system library, which is not provided by Rails.
22
22
  class Analyzer::VideoAnalyzer < Analyzer
@@ -51,7 +51,11 @@ module ActiveStorage
51
51
  end
52
52
 
53
53
  def angle
54
- Integer(tags["rotate"]) if tags["rotate"]
54
+ if tags["rotate"]
55
+ Integer(tags["rotate"])
56
+ elsif side_data && side_data[0] && side_data[0]["rotation"]
57
+ Integer(side_data[0]["rotation"])
58
+ end
55
59
  end
56
60
 
57
61
  def display_aspect_ratio
@@ -66,7 +70,7 @@ module ActiveStorage
66
70
  end
67
71
 
68
72
  def rotated?
69
- angle == 90 || angle == 270
73
+ angle == 90 || angle == 270 || angle == -90 || angle == -270
70
74
  end
71
75
 
72
76
  def audio?
@@ -95,11 +99,14 @@ module ActiveStorage
95
99
  @display_height_scale ||= Float(display_aspect_ratio.last) / display_aspect_ratio.first if display_aspect_ratio
96
100
  end
97
101
 
98
-
99
102
  def tags
100
103
  @tags ||= video_stream["tags"] || {}
101
104
  end
102
105
 
106
+ def side_data
107
+ @side_data ||= video_stream["side_data_list"] || {}
108
+ end
109
+
103
110
  def video_stream
104
111
  @video_stream ||= streams.detect { |stream| stream["codec_type"] == "video" } || {}
105
112
  end
@@ -7,16 +7,13 @@ module ActiveStorage
7
7
  # Fixtures are a way of organizing data that you want to test against; in
8
8
  # short, sample data.
9
9
  #
10
- # To learn more about fixtures, read the
11
- # {ActiveRecord::FixtureSet}[rdoc-ref:ActiveRecord::FixtureSet] documentation.
10
+ # To learn more about fixtures, read the ActiveRecord::FixtureSet documentation.
12
11
  #
13
12
  # === YAML
14
13
  #
15
- # Like other Active Record-backed models,
16
- # {ActiveStorage::Attachment}[rdoc-ref:ActiveStorage::Attachment] and
17
- # {ActiveStorage::Blob}[rdoc-ref:ActiveStorage::Blob] records inherit from
18
- # {ActiveRecord::Base}[rdoc-ref:ActiveRecord::Base] instances and therefore
19
- # can be populated by fixtures.
14
+ # Like other Active Record-backed models, ActiveStorage::Attachment and
15
+ # ActiveStorage::Blob records inherit from ActiveRecord::Base instances and
16
+ # therefore can be populated by fixtures.
20
17
  #
21
18
  # Consider a hypothetical <tt>Article</tt> model class, its related
22
19
  # fixture data, as well as fixture data for related ActiveStorage::Attachment
@@ -44,7 +41,7 @@ module ActiveStorage
44
41
 
45
42
  # Generate a YAML-encoded representation of an ActiveStorage::Blob
46
43
  # instance's attributes, resolve the file relative to the directory mentioned
47
- # by <tt>ActiveSupport::Testing::FileFixtures.file_fixture</tt>, and upload
44
+ # by ActiveSupport::Testing::FileFixtures.file_fixture, and upload
48
45
  # the file to the Service
49
46
  #
50
47
  # === Examples
@@ -9,8 +9,8 @@ module ActiveStorage
9
9
  module VERSION
10
10
  MAJOR = 7
11
11
  MINOR = 0
12
- TINY = 4
13
- PRE = "3"
12
+ TINY = 6
13
+ PRE = nil
14
14
 
15
15
  STRING = [MAJOR, MINOR, TINY, PRE].compact.join(".")
16
16
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: activestorage
3
3
  version: !ruby/object:Gem::Version
4
- version: 7.0.4.3
4
+ version: 7.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-03-13 00:00:00.000000000 Z
11
+ date: 2023-06-29 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -16,56 +16,56 @@ dependencies:
16
16
  requirements:
17
17
  - - '='
18
18
  - !ruby/object:Gem::Version
19
- version: 7.0.4.3
19
+ version: 7.0.6
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - '='
25
25
  - !ruby/object:Gem::Version
26
- version: 7.0.4.3
26
+ version: 7.0.6
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: actionpack
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
31
  - - '='
32
32
  - !ruby/object:Gem::Version
33
- version: 7.0.4.3
33
+ version: 7.0.6
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - '='
39
39
  - !ruby/object:Gem::Version
40
- version: 7.0.4.3
40
+ version: 7.0.6
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: activejob
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
45
  - - '='
46
46
  - !ruby/object:Gem::Version
47
- version: 7.0.4.3
47
+ version: 7.0.6
48
48
  type: :runtime
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
52
  - - '='
53
53
  - !ruby/object:Gem::Version
54
- version: 7.0.4.3
54
+ version: 7.0.6
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: activerecord
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
59
  - - '='
60
60
  - !ruby/object:Gem::Version
61
- version: 7.0.4.3
61
+ version: 7.0.6
62
62
  type: :runtime
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
66
  - - '='
67
67
  - !ruby/object:Gem::Version
68
- version: 7.0.4.3
68
+ version: 7.0.6
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: marcel
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -198,12 +198,12 @@ licenses:
198
198
  - MIT
199
199
  metadata:
200
200
  bug_tracker_uri: https://github.com/rails/rails/issues
201
- changelog_uri: https://github.com/rails/rails/blob/v7.0.4.3/activestorage/CHANGELOG.md
202
- documentation_uri: https://api.rubyonrails.org/v7.0.4.3/
201
+ changelog_uri: https://github.com/rails/rails/blob/v7.0.6/activestorage/CHANGELOG.md
202
+ documentation_uri: https://api.rubyonrails.org/v7.0.6/
203
203
  mailing_list_uri: https://discuss.rubyonrails.org/c/rubyonrails-talk
204
- source_code_uri: https://github.com/rails/rails/tree/v7.0.4.3/activestorage
204
+ source_code_uri: https://github.com/rails/rails/tree/v7.0.6/activestorage
205
205
  rubygems_mfa_required: 'true'
206
- post_install_message:
206
+ post_install_message:
207
207
  rdoc_options: []
208
208
  require_paths:
209
209
  - lib
@@ -218,8 +218,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
218
218
  - !ruby/object:Gem::Version
219
219
  version: '0'
220
220
  requirements: []
221
- rubygems_version: 3.4.3
222
- signing_key:
221
+ rubygems_version: 3.4.13
222
+ signing_key:
223
223
  specification_version: 4
224
224
  summary: Local and cloud file storage framework.
225
225
  test_files: []