activestorage 7.0.5 → 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: 0cd9e59b1903cec8f474961635a3f09ab7d1a124d25a6b774c9254a03eb565ff
4
- data.tar.gz: be977461559007cd545f8f7426e6be5cea00a4747509db2ee754729a31ab6183
3
+ metadata.gz: 5e1f03d34e4a15967b60c668e71894d42539fbf0fb02279e66c78b7fcdec1a32
4
+ data.tar.gz: '080f412cdd6a8b2f71492b9b3f37a0b0c5ca684ab1b33f1e3042e4493a4fe3ae'
5
5
  SHA512:
6
- metadata.gz: 9de90c576b095732c952ac95f682966a3174346970176acb9064ec6e57a4786ca7031de034307ec21a6b8698d1d17d9cd35e92c8cfa37833808885f6a5989ec1
7
- data.tar.gz: a3c255d4680a7bad330c8356f55693a953ed6e708df4b13a427e78d0d5f8fa33c9820a8d6b1b36c1e160523bbabacca76f5c996c80d3f9759ff66915da75152e
6
+ metadata.gz: 90ceefcc3bed54ef29409ae64ea023eed36190ad986633b990614541945d8a045ba6e724451f5376fa3018d612ab3f0e205a8991aeb9852b258bef1df426db58
7
+ data.tar.gz: 759f5bf6704a4a94abec338564447b6cc39d7a9e8018f154c31f7c01a56a59c86d44f99a146c2dae570eb000dcc0fe35cdcdd93ff27faa540934dae3c4ee9438
data/CHANGELOG.md CHANGED
@@ -1,3 +1,20 @@
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
+
1
18
  ## Rails 7.0.5 (May 24, 2023) ##
2
19
 
3
20
  * No changes.
@@ -57,10 +74,10 @@
57
74
  ## Rails 7.0.2.3 (March 08, 2022) ##
58
75
 
59
76
  * Added image transformation validation via configurable allow-list.
60
-
77
+
61
78
  Variant now offers a configurable allow-list for
62
79
  transformation methods in addition to a configurable deny-list for arguments.
63
-
80
+
64
81
  [CVE-2022-21831]
65
82
 
66
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
 
@@ -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
@@ -9,7 +9,7 @@ module ActiveStorage
9
9
  module VERSION
10
10
  MAJOR = 7
11
11
  MINOR = 0
12
- TINY = 5
12
+ TINY = 6
13
13
  PRE = nil
14
14
 
15
15
  STRING = [MAJOR, MINOR, TINY, PRE].compact.join(".")
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.5
4
+ version: 7.0.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Heinemeier Hansson
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2023-05-24 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.5
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.5
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.5
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.5
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.5
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.5
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.5
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.5
68
+ version: 7.0.6
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: marcel
71
71
  requirement: !ruby/object:Gem::Requirement
@@ -198,10 +198,10 @@ 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.5/activestorage/CHANGELOG.md
202
- documentation_uri: https://api.rubyonrails.org/v7.0.5/
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.5/activestorage
204
+ source_code_uri: https://github.com/rails/rails/tree/v7.0.6/activestorage
205
205
  rubygems_mfa_required: 'true'
206
206
  post_install_message:
207
207
  rdoc_options: []
@@ -218,7 +218,7 @@ 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.10
221
+ rubygems_version: 3.4.13
222
222
  signing_key:
223
223
  specification_version: 4
224
224
  summary: Local and cloud file storage framework.