diff options
author | 2023-06-28 07:53:24 +0200 | |
---|---|---|
committer | 2023-06-28 07:54:55 +0200 | |
commit | ea580ba69dfe9556d9f528c7e7f4a5a348923d81 (patch) | |
tree | dc3fda54df50093b7157dc79eb63a6ca99a34cec /dev-ruby/activerecord | |
parent | dev-ruby/actionmailer: add 6.1.7.4 (diff) | |
download | gentoo-ea580ba69dfe9556d9f528c7e7f4a5a348923d81.tar.gz gentoo-ea580ba69dfe9556d9f528c7e7f4a5a348923d81.tar.bz2 gentoo-ea580ba69dfe9556d9f528c7e7f4a5a348923d81.zip |
dev-ruby/activerecord: add 6.1.7.4
Signed-off-by: Hans de Graaff <graaff@gentoo.org>
Diffstat (limited to 'dev-ruby/activerecord')
-rw-r--r-- | dev-ruby/activerecord/Manifest | 1 | ||||
-rw-r--r-- | dev-ruby/activerecord/activerecord-6.1.7.4.ebuild | 95 | ||||
-rw-r--r-- | dev-ruby/activerecord/files/activerecord-6.1.7.4-ruby32-keywords.patch | 38 |
3 files changed, 134 insertions, 0 deletions
diff --git a/dev-ruby/activerecord/Manifest b/dev-ruby/activerecord/Manifest index 720e4b642efc..5e0cc13b7435 100644 --- a/dev-ruby/activerecord/Manifest +++ b/dev-ruby/activerecord/Manifest @@ -1,6 +1,7 @@ DIST rails-6.0.6.1.tgz 18608328 BLAKE2B 10e6cb2d23acb75c95c25e2e6cc62de05c9c89f249c6cb9abffdd3a6ed83eb1dca996e6ef56a92cf77dddd3f8f9373ad947690015fb7966ddc599c995cea1121 SHA512 6873354fe2f8b9bf8bc12c7e6affda4300c158ee825f996eea6032a70f9532009d8f626d2736af22a452c8a3b331d1252ff19666e021150bfae2a8d575890c27 DIST rails-6.1.7.2.tgz 11037081 BLAKE2B 0004f4bc8b2370119cbe0f6a9133278ae78b1d274f040f08d18edd06696e6fcc609154a042c68b77e11893fbef83ec8eabd9f1e2c28920269189ee1352a0695a SHA512 f667904b0d3ffda3579e5046da3b36c242581bacf140966bf1dc59fc7ea91f34f4affc76b0d6cfad4b80f0332aeec5fc8ab35fb793fc935f1d1b4fe6d18ce1de DIST rails-6.1.7.3.tgz 11038169 BLAKE2B 7e379b9ae3b63cb78638c1e0817ff40dc8aad79ba76b6d82310fbb4d6f5ef3dab4f252de9e49766143b828bfbce2ef7c9db3f108b5406708b61a83aeda47ea74 SHA512 fb84516a6cf370109bf45f2162161d23f375d7dc10249ed10200c74ec402129b07ac0e59bcde98a74eb499769a0cdd937af691edaabe44e061262d5510adc02e +DIST rails-6.1.7.4.tgz 11038583 BLAKE2B 737044b6f92f2555fd9374e0b0fef7e26e53e2ac2103f1e3d89124929416aeda1295adfa7493471472c6ff0fbb057dea0bd9c184bbb45ae572185b98c399177f SHA512 caa7e2a79f747befb5f6f17adec1cc43530dbb35741775b2ebdcf59476efecd277dad025073a4b519a35754367cca04290c24bb8d8ae4235fda696ead531a94f DIST rails-7.0.4.3.tgz 11063764 BLAKE2B 389fd3a00bfff4ebda70cf5ec473942883048783b716ede1787a510d3b7b91f4e844dce4dde5ef643cb9611b1b3aa712f1ba5ebefb9e5a84e307a151b2e40bcf SHA512 2c817a0a58ae52f99686d8cd0de84f01e3d7ec05afc95d07910b3b5bf86d8162b06102893b2cbc14859b95a07eca6882a707956c87d437794697df7a18fa3c16 DIST rails-7.0.5.1.tgz 11077848 BLAKE2B 17dc2527b762d242c1cc141b5480c0917c8eafb53c55d3034d5af272e9be5760f6c3e16ce1a60041f11af4f99da23e79ff46e9f9fe88412932f2524bf057c478 SHA512 5053ed666cede0bfeb7a534f248538406a1bf5afe0d5ee9e285b4eeb3158566fdd665c7a20012833e6927e7dbb3d881361a5d7f8ce7e326f8e3faf5d571da3e7 DIST rails-7.0.5.tgz 11057290 BLAKE2B c9a2c34cc57f71a45023465796d18f769363713b3222dc67040e9d731055fe60856c4969a0fae305f99722e8f3a1aaee0f6cc0cc5e3e57949b756786f44560f9 SHA512 93f5d2f0e23ac318370ac15fdb4db935b9082232308fdc7bb99bca1b00e1b5127ddc805dd19512a2304921ff7b8a584c7b3d3ceb7cbd4cfd8dca31f518430448 diff --git a/dev-ruby/activerecord/activerecord-6.1.7.4.ebuild b/dev-ruby/activerecord/activerecord-6.1.7.4.ebuild new file mode 100644 index 000000000000..727b783fb208 --- /dev/null +++ b/dev-ruby/activerecord/activerecord-6.1.7.4.ebuild @@ -0,0 +1,95 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +USE_RUBY="ruby30 ruby31 ruby32" + +# this is not null so that the dependencies will actually be filled +RUBY_FAKEGEM_TASK_TEST="test" + +RUBY_FAKEGEM_RECIPE_DOC="none" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.rdoc" + +RUBY_FAKEGEM_GEMSPEC="activerecord.gemspec" + +RUBY_FAKEGEM_BINWRAP="" + +inherit ruby-fakegem + +DESCRIPTION="Implements the ActiveRecord pattern (Fowler, PoEAA) for ORM" +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 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" +IUSE="mysql postgres sqlite" + +RUBY_S="rails-${PV}/${PN}" + +PATCHES=( + "${FILESDIR}"/${P}-ruby32-keywords.patch +) + +ruby_add_rdepend "~dev-ruby/activesupport-${PV} + ~dev-ruby/activemodel-${PV} + sqlite? ( >=dev-ruby/sqlite3-1.4 ) + mysql? ( dev-ruby/mysql2:0.5 ) + postgres? ( >=dev-ruby/pg-1.1:1 )" + +ruby_add_bdepend " + test? ( + dev-ruby/bundler + ~dev-ruby/actionpack-${PV} + ~dev-ruby/railties-${PV} + >=dev-ruby/sqlite3-1.4.0 + dev-ruby/mocha + <dev-ruby/minitest-5.16:* + )" + +DEPEND+=" test? ( >=dev-db/sqlite-3.12.1 )" + +all_ruby_prepare() { + # Remove items from the common Gemfile that we don't need for this + # test run. This also requires handling some gemspecs. + rm ../Gemfile.lock || die + sed -i -e "/\(uglifier\|system_timer\|sdoc\|w3c_validators\|pg\|jquery-rails\|execjs\|'mysql'\|journey\|ruby-prof\|stackprof\|benchmark-ips\|kindlerb\|turbolinks\|coffee-rails\|debugger\|redcarpet\|minitest\|sprockets\|stackprof\)/ s:^:#:" \ + -e '/:job/,/end/ s:^:#:' \ + -e '/group :doc/,/^end/ s:^:#:' ../Gemfile || die + sed -i -e '/rack-ssl/d' -e 's/~> 3.4/>= 3.4/' ../railties/railties.gemspec || die + sed -e '/bcrypt/ s/3.0.0/3.0/' \ + -i ../Gemfile || die + sed -i -e '/byebug/ s:^:#:' test/cases/base_prevent_writes_test.rb || die + + # Add back json in the Gemfile because we dropped some dependencies + # earlier that implicitly required it. + sed -i -e '$agem "json"' ../Gemfile || die + + # Load correct rails version + sed -i -e '2igem "activemodel", "~> 6.1.0"; gem "activejob", "~> 6.1.0"; gem "railties", "~> 6.1.0"; gem "minitest", "<5.16"' test/cases/helper.rb || die + + # Avoid single tests using mysql or postgres dependencies. + rm test/cases/invalid_connection_test.rb || die + sed -e '/test_switching_connections_with_database_url/askip "postgres"' \ + -i test/cases/connection_adapters/{,legacy_}connection_handlers_multi_db_test.rb || die + + # Avoid failing test that makes bad assumptions on database state. + sed -i -e '/test_do_not_call_callbacks_for_delete_all/,/^ end/ s:^:#:' \ + test/cases/associations/has_many_associations_test.rb + + # Avoid tests that no longer work with newer sqlite versions + rm -f test/cases/adapters/sqlite3/explain_test.rb || die + sed -i -e '/test_references_stays_as_integer_column/askip "Fails on case difference"' test/cases/migration/compatibility_test.rb || die + + # Avoid test failing to bind limit length in favor of security release + sed -i -e '/test_too_many_binds/askip "Fails on Gentoo"' test/cases/bind_parameter_test.rb || die + + # Avoid test failing related to rubygems + sed -i -e '/test_generates_absolute_path_with_given_root/askip "rubygems actiovation monitor"' test/cases/tasks/sqlite_rake_test.rb || die +} + +each_ruby_test() { + if use sqlite; then + ${RUBY} -S rake test_sqlite3 || die "sqlite3 tests failed" + fi +} diff --git a/dev-ruby/activerecord/files/activerecord-6.1.7.4-ruby32-keywords.patch b/dev-ruby/activerecord/files/activerecord-6.1.7.4-ruby32-keywords.patch new file mode 100644 index 000000000000..4a82e18aaba1 --- /dev/null +++ b/dev-ruby/activerecord/files/activerecord-6.1.7.4-ruby32-keywords.patch @@ -0,0 +1,38 @@ +From 67bdba4e63cad218c02dbb3171ddd53353cc0b48 Mon Sep 17 00:00:00 2001 +From: Javier Jimenez <javiyu7@gmail.com> +Date: Thu, 5 Jan 2023 21:34:37 +0100 +Subject: [PATCH] Backports ruby 3.2 compatibility fixes for rails 6.1 + +--- + actionmailer/lib/action_mailer/base.rb | 2 +- + actionmailer/lib/action_mailer/rescuable.rb | 12 ++++++++---- + actionpack/lib/abstract_controller/base.rb | 10 +++++++--- + actionpack/lib/abstract_controller/callbacks.rb | 6 +++++- + actionview/lib/action_view/rendering.rb | 6 +++++- + activemodel/lib/active_model/attribute_methods.rb | 2 +- + activerecord/lib/active_record/relation.rb | 8 ++++++-- + 7 files changed, 33 insertions(+), 13 deletions(-) + +diff --git a/activerecord/lib/active_record/relation.rb b/activerecord/lib/active_record/relation.rb +index 6ea5876eda1b8..9c0efb800efd0 100644 +--- a/lib/active_record/relation.rb ++++ b/lib/active_record/relation.rb +@@ -406,12 +406,16 @@ def scoping + already_in_scope? ? yield : _scoping(self) { yield } + end + +- def _exec_scope(*args, &block) # :nodoc: ++ all_args = RUBY_VERSION < "2.7" ? "*args, &block" : "..." ++ ++ class_eval <<-RUBY ++ def _exec_scope(#{all_args}) # :nodoc: + @delegate_to_klass = true +- _scoping(nil) { instance_exec(*args, &block) || self } ++ _scoping(nil) { instance_exec(#{all_args}) || self } + ensure + @delegate_to_klass = false + end ++ RUBY + + # Updates all records in the current relation with details given. This method constructs a single SQL UPDATE + # statement and sends it straight to the database. It does not instantiate the involved models and it does not |