summaryrefslogtreecommitdiff
path: root/dev-ruby/activestorage
diff options
context:
space:
mode:
authorroot <root@alpha.trunkmasters.com>2026-07-27 03:04:55 -0500
committerroot <root@alpha.trunkmasters.com>2026-07-27 03:04:55 -0500
commitcae7be1ab2bd23fee3929a8e940d968ee86a78e6 (patch)
tree97cc406771ec329a0480aab0f7fad2319be66e5c /dev-ruby/activestorage
parent704373259ee68c274d8ce04949a32d64de4b6014 (diff)
downloadbaldeagleos-repo-cae7be1ab2bd23fee3929a8e940d968ee86a78e6.tar.gz
baldeagleos-repo-cae7be1ab2bd23fee3929a8e940d968ee86a78e6.tar.xz
baldeagleos-repo-cae7be1ab2bd23fee3929a8e940d968ee86a78e6.zip
Adding metadata
Diffstat (limited to 'dev-ruby/activestorage')
-rw-r--r--dev-ruby/activestorage/activestorage-7.2.3.ebuild7
-rw-r--r--dev-ruby/activestorage/activestorage-8.0.4-r1.ebuild87
-rw-r--r--dev-ruby/activestorage/activestorage-8.0.4.ebuild7
-rw-r--r--dev-ruby/activestorage/activestorage-8.1.2-r1.ebuild88
-rw-r--r--dev-ruby/activestorage/files/activestorage-7.2.3-ffmpeg-8.patch20
5 files changed, 207 insertions, 2 deletions
diff --git a/dev-ruby/activestorage/activestorage-7.2.3.ebuild b/dev-ruby/activestorage/activestorage-7.2.3.ebuild
index 2b79d25eb814..c395225742db 100644
--- a/dev-ruby/activestorage/activestorage-7.2.3.ebuild
+++ b/dev-ruby/activestorage/activestorage-7.2.3.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -50,6 +50,10 @@ ruby_add_bdepend "
>=dev-ruby/sqlite3-1.6.6
)"
+PATCHES=(
+ "${FILESDIR}"/activestorage-7.2.3-ffmpeg-8.patch
+)
+
all_ruby_prepare() {
# Remove items from the common Gemfile that we don't need for this
# test run. This also requires handling some gemspecs.
@@ -58,6 +62,7 @@ all_ruby_prepare() {
-e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|test\)/,/^end/ s:^:#:' \
-e '/sprockets-rails/ s/, require: false//' \
-e '/sqlite/ s/1.6.4/99/' \
+ -e 's/gem "minitest"/gem "minitest", "~> 5"/' \
-i ../Gemfile || die
rm ../Gemfile.lock || die
diff --git a/dev-ruby/activestorage/activestorage-8.0.4-r1.ebuild b/dev-ruby/activestorage/activestorage-8.0.4-r1.ebuild
new file mode 100644
index 000000000000..825b19272686
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-8.0.4-r1.ebuild
@@ -0,0 +1,87 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="activestorage.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app config db"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Attach cloud and local files in Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+DEPEND+=" test? ( >=app-text/mupdf-1.23.7 media-gfx/imagemagick[jpeg,png,tiff] media-video/ffmpeg app-text/poppler[utils] ) "
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}:*
+ ~dev-ruby/activejob-${PV}:*
+ ~dev-ruby/activerecord-${PV}:*
+ ~dev-ruby/activesupport-${PV}:*
+ dev-ruby/marcel:1.0
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/image_processing-1.2:0
+ dev-ruby/minitest:5
+ dev-ruby/mini_magick
+ dev-ruby/mocha
+ dev-ruby/rake
+ dev-ruby/sprockets-rails
+ >=dev-ruby/sqlite3-1.6.6
+ )"
+
+PATCHES=(
+ "${FILESDIR}"/activestorage-7.2.3-ffmpeg-8.patch
+)
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|bcrypt\|uglifier\|aws-sdk-s3\|aws-sdk-sns\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|rb-inotify\|libxml-ruby\|sass-rails\|capybara\|rack-cache\|selenium\|dalli\|listen\|connection_pool\|mysql2\|webdrivers\|webpacker\|rexml\|webmock\|webrick\|propshaft\|sprockets-export\|rack-test\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\|httpclient\|prism\|solid\|kamal\|thruster\|releaser\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|test\)/,/^end/ s:^:#:' \
+ -e '/sqlite/ s/1.6.4/99/' \
+ -e 's/gem "minitest"/gem "minitest", "~> 5"/' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Use mini_magick since vips is not packaged on Gentoo
+ sed -i -e '/mini_magick/aActiveStorage.variant_processor = :mini_magick' test/test_helper.rb || die
+ # Avoid vips-specific tests
+ sed -e '/\(resized and monochrome variation of JPEG blob\|monochrome with default variant_processor\|disabled variation of JPEG blob\)/askip "No vips support"' \
+ -i test/models/variant_test.rb || die
+
+ # Avoid test where different ffmpeg versions apply different rounding for the duration.
+ sed -i -e '/1.022000/ s:^:#:' test/analyzer/video_analyzer_test.rb || die
+
+ # Avoid failing test depending on yarn
+ rm -f test/javascript_package_test.rb || die
+
+ # Avoid unimportant asset configuration. This most likely fails due
+ # to some kind of dependency issue.
+ rm -f test/dummy/config/initializers/assets.rb || die
+
+ # Avoid test failing due to missing (and unpackaged) AzureStorage service.
+ sed -e '/azure service is deprecated/askip "Not packaged in Gentoo."' \
+ -i test/service/configurator_test.rb || die
+}
diff --git a/dev-ruby/activestorage/activestorage-8.0.4.ebuild b/dev-ruby/activestorage/activestorage-8.0.4.ebuild
index 4f63bbe6a3e0..95aef380d34e 100644
--- a/dev-ruby/activestorage/activestorage-8.0.4.ebuild
+++ b/dev-ruby/activestorage/activestorage-8.0.4.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2025 Gentoo Authors
+# Copyright 1999-2026 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -50,6 +50,10 @@ ruby_add_bdepend "
>=dev-ruby/sqlite3-1.6.6
)"
+PATCHES=(
+ "${FILESDIR}"/activestorage-7.2.3-ffmpeg-8.patch
+)
+
all_ruby_prepare() {
# Remove items from the common Gemfile that we don't need for this
# test run. This also requires handling some gemspecs.
@@ -57,6 +61,7 @@ all_ruby_prepare() {
-e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
-e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|test\)/,/^end/ s:^:#:' \
-e '/sqlite/ s/1.6.4/99/' \
+ -e 's/gem "minitest"/gem "minitest", "~> 5"/' \
-i ../Gemfile || die
rm ../Gemfile.lock || die
diff --git a/dev-ruby/activestorage/activestorage-8.1.2-r1.ebuild b/dev-ruby/activestorage/activestorage-8.1.2-r1.ebuild
new file mode 100644
index 000000000000..e597c1540b79
--- /dev/null
+++ b/dev-ruby/activestorage/activestorage-8.1.2-r1.ebuild
@@ -0,0 +1,88 @@
+# Copyright 1999-2026 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby32 ruby33 ruby34 ruby40"
+
+RUBY_FAKEGEM_RECIPE_DOC=""
+RUBY_FAKEGEM_DOCDIR=""
+RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="activestorage.gemspec"
+
+RUBY_FAKEGEM_EXTRAINSTALL="app config db"
+
+RUBY_FAKEGEM_BINWRAP=""
+
+inherit ruby-fakegem
+
+DESCRIPTION="Attach cloud and local files in Rails applications"
+HOMEPAGE="https://github.com/rails/rails"
+SRC_URI="https://github.com/rails/rails/archive/v${PV}.tar.gz -> rails-${PV}.tgz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~riscv ~x86"
+IUSE="test"
+
+RUBY_S="rails-${PV}/${PN}"
+
+DEPEND+=" test? ( >=app-text/mupdf-1.23.7 media-gfx/imagemagick[jpeg,png,tiff] media-video/ffmpeg app-text/poppler[utils] ) "
+
+ruby_add_rdepend "
+ ~dev-ruby/actionpack-${PV}:*
+ ~dev-ruby/activejob-${PV}:*
+ ~dev-ruby/activerecord-${PV}:*
+ ~dev-ruby/activesupport-${PV}:*
+ dev-ruby/marcel:1.0
+"
+
+ruby_add_bdepend "
+ test? (
+ ~dev-ruby/railties-${PV}
+ >=dev-ruby/image_processing-1.2:0
+ dev-ruby/minitest:6
+ dev-ruby/mini_magick
+ dev-ruby/mocha
+ dev-ruby/rake
+ dev-ruby/sprockets-rails
+ >=dev-ruby/sqlite3-2.1.0
+ dev-ruby/webmock
+ )"
+
+all_ruby_prepare() {
+ # Remove items from the common Gemfile that we don't need for this
+ # test run. This also requires handling some gemspecs.
+ sed -e "/\(system_timer\|pg\|execjs\|jquery-rails\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|bcrypt\|uglifier\|aws-sdk-s3\|aws-sdk-sns\|google-cloud-storage\|azure-storage\|blade\|bootsnap\|hiredis\|qunit-selenium\|chromedriver-helper\|rb-inotify\|libxml-ruby\|sass-rails\|capybara\|rack-cache\|selenium\|dalli\|listen\|connection_pool\|mysql2\|webdrivers\|webpacker\|rexml\|webrick\|propshaft\|sprockets-export\|rack-test\|terser\|cookiejar\|cgi\|web-console\|trilogy\|error_highlight\|jbuilder\|httpclient\|prism\|solid\|kamal\|thruster\|releaser\)/ s:^:#:" \
+ -e '/stimulus-rails/,/tailwindcss-rails/ s:^:#:' \
+ -e '/group :\(cable\|doc\|job\|lint\|mdl\|rubocop\|test\)/,/^end/ s:^:#:' \
+ -i ../Gemfile || die
+ rm ../Gemfile.lock || die
+
+ # Use mini_magick since vips is not packaged on Gentoo
+ sed -e '/mini_magick/aActiveStorage.variant_processor = :mini_magick' \
+ -i test/test_helper.rb || die
+ # Avoid vips-specific tests
+ sed -e '/\(resized and monochrome variation of JPEG blob\|monochrome with default variant_processor\|disabled variation of JPEG blob\)/askip "No vips support"' \
+ -i test/models/variant_test.rb || die
+ sed -e '/analyzing with ruby-vips unavailable/askip "No vips support"' \
+ -i test/analyzer/image_analyzer/image_magick_test.rb || die
+ rm -f test/analyzer/image_analyzer/vips_test.rb || die
+ sed -e '/Rails.application.configure/aconfig.active_storage.variant_processor = :mini_magick' \
+ -i test/dummy/config/environments/*.rb || die
+
+ # Avoid test where different ffmpeg versions apply different rounding for the duration.
+ sed -i -e '/1.022000/ s:^:#:' test/analyzer/video_analyzer_test.rb || die
+
+ # Avoid failing test depending on yarn
+ rm -f test/javascript_package_test.rb || die
+
+ # Avoid unimportant asset configuration. This most likely fails due
+ # to some kind of dependency issue.
+ rm -f test/dummy/config/initializers/assets.rb || die
+
+ # Avoid test failing due to missing (and unpackaged) AzureStorage service.
+ sed -e '/azure service is deprecated/askip "Not packaged in Gentoo."' \
+ -i test/service/configurator_test.rb || die
+}
diff --git a/dev-ruby/activestorage/files/activestorage-7.2.3-ffmpeg-8.patch b/dev-ruby/activestorage/files/activestorage-7.2.3-ffmpeg-8.patch
new file mode 100644
index 000000000000..eb58ae710d55
--- /dev/null
+++ b/dev-ruby/activestorage/files/activestorage-7.2.3-ffmpeg-8.patch
@@ -0,0 +1,20 @@
+https://github.com/rails/rails/issues/56069
+https://github.com/rails/rails/pull/56125
+
+From 92cee4cd5eb0f0dc2412b6ac9e4169c49ee52733 Mon Sep 17 00:00:00 2001
+From: zzak <zzak@hey.com>
+Date: Mon, 10 Nov 2025 15:00:25 +0900
+Subject: [PATCH] Fix AudioAnalyzerTest for ffmpeg 7 and ffmpeg 8
+
+--- a/test/analyzer/audio_analyzer_test.rb
++++ b/test/analyzer/audio_analyzer_test.rb
+@@ -10,7 +10,8 @@ class ActiveStorage::Analyzer::AudioAnalyzerTest < ActiveSupport::TestCase
+ blob = create_file_blob(filename: "audio.mp3", content_type: "audio/mp3")
+ metadata = extract_metadata_from(blob)
+
+- assert_equal 0.914286, metadata[:duration]
++ assert (0.863379..0.914286).include?(metadata[:duration])
++
+ assert_equal 128000, metadata[:bit_rate]
+ assert_equal 44100, metadata[:sample_rate]
+ assert_not_nil metadata[:tags]