dev-ruby/activerecord: add 6.0.0
authorHans de Graaff <graaff@gentoo.org>
Sat, 24 Aug 2019 07:36:09 +0000 (09:36 +0200)
committerHans de Graaff <graaff@gentoo.org>
Sat, 24 Aug 2019 07:36:29 +0000 (09:36 +0200)
Package-Manager: Portage-2.3.69, Repoman-2.3.16
Signed-off-by: Hans de Graaff <graaff@gentoo.org>
dev-ruby/activerecord/Manifest
dev-ruby/activerecord/activerecord-6.0.0.ebuild [new file with mode: 0644]

index b46f17038b99d6729db3f8dc27121f38b627687b..e3b53c8c81504a68bab860bf5a1977d3c2f5703b 100644 (file)
@@ -1,3 +1,4 @@
 DIST rails-4.2.11.1.tgz 4081006 BLAKE2B 7db84961963f529a9b6c06011bb6e32b56f4beb064de31c811a092d27e93156669ade4dcceb7d8abcdba4845d42258d904f8ecaf79198af1c0e2afcb33fe3fe3 SHA512 198fa072f3f09a9893377439ddd1803effdf04a33ae7b609234464e7de9ad960439d1b80ae62e1f9b223b3173839be7233c314a72057933b43672f390d96a8df
 DIST rails-5.1.7.tgz 6146668 BLAKE2B 494a12d79037010333c06d14573474f0d0c1e62ce5252e8fbe4eb4c6935dc660614c2ff29fd168bbc66d74bfa64b92abb84d02645cb3b2950db5c166111b7b19 SHA512 6595eb19f174c9e46a937d6028d9bb2bfdcda06f35ec2a0499bc5deff05d8cfc8f8fc725e664496d3b431c8724141a1410201b57945b98ca211aea15c990d621
 DIST rails-5.2.3.tgz 8802794 BLAKE2B 786f94bcd9528ffc664c39caef0e7d2d3c15da95497044504082999a435c2a877d73d40b68b5237dc07ae6cf9b8f6f99f12ae68527c5f4005b1a648038e507c0 SHA512 6a41f7564679263b4a16a245d13271b12e97a55cdd77b5ebe63bd86c3a80e4f447b4c0567a4a40ed8e97a2307522f6dad368b1beeb362136bdf1856f6dffeb60
+DIST rails-6.0.0.tgz 18543484 BLAKE2B 614e71481a3a5ece629f49d0ef623b5352e165b5d46a736ccb747614d6c1fd56d4aaba2f2f32d48d81772cfd4db671d94a67cd3ffa395f29bf2de1f148fa57ed SHA512 3a2259fe2b3ffd0ddc9128e1aa58af57006b8410120a3629926b95fbe60b8658edab77929e26d9323c61a1855a4379e73f1ddbe875324b068a9e8bdde6ca55e6
diff --git a/dev-ruby/activerecord/activerecord-6.0.0.ebuild b/dev-ruby/activerecord/activerecord-6.0.0.ebuild
new file mode 100644 (file)
index 0000000..541ae5e
--- /dev/null
@@ -0,0 +1,84 @@
+# Copyright 1999-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+USE_RUBY="ruby25 ruby26"
+
+# 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 ~arm64"
+IUSE="mysql postgres sqlite"
+
+RUBY_S="rails-${PV}/${PN}"
+
+ruby_add_rdepend "~dev-ruby/activesupport-${PV}
+       ~dev-ruby/activemodel-${PV}
+       dev-ruby/arel:9.0
+       sqlite? ( >=dev-ruby/sqlite3-1.4 )
+       mysql? ( || ( dev-ruby/mysql2:0.5 >=dev-ruby/mysql2-0.4.4:0.4 ) )
+       postgres? ( || ( dev-ruby/pg:1 >=dev-ruby/pg-0.18.0:0 ) )"
+
+ruby_add_bdepend "
+       test? (
+               dev-ruby/bundler
+               ~dev-ruby/actionpack-${PV}
+               >=dev-ruby/sqlite3-1.3.6
+               dev-ruby/mocha
+               dev-ruby/minitest:5
+       )"
+
+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
+
+       # Add back json in the Gemfile because we dropped some dependencies
+       # earlier that implicitly required it.
+       sed -i -e '$agem "json"' ../Gemfile || die
+
+       # Avoid test depending on mysql adapter which we don't support for
+       # this Rails version to simplify our dependencies.
+       rm test/cases/connection_specification/resolver_test.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/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 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
+}
+
+each_ruby_test() {
+       if use sqlite; then
+               ${RUBY} -S rake test_sqlite3 || die "sqlite3 tests failed"
+       fi
+}