summaryrefslogtreecommitdiff
path: root/dev-ruby
diff options
context:
space:
mode:
Diffstat (limited to 'dev-ruby')
-rw-r--r--dev-ruby/mysql2/Manifest1
-rw-r--r--dev-ruby/mysql2/mysql2-0.5.6.ebuild139
-rw-r--r--dev-ruby/rake/rake-13.1.0.ebuild4
-rw-r--r--dev-ruby/request_store/Manifest1
-rw-r--r--dev-ruby/request_store/request_store-1.6.0.ebuild22
-rw-r--r--dev-ruby/roadie/Manifest1
-rw-r--r--dev-ruby/roadie/roadie-5.2.1.ebuild34
-rw-r--r--dev-ruby/rspec-rails/Manifest1
-rw-r--r--dev-ruby/rspec-rails/rspec-rails-6.1.1.ebuild59
9 files changed, 260 insertions, 2 deletions
diff --git a/dev-ruby/mysql2/Manifest b/dev-ruby/mysql2/Manifest
index b9c4c9d64e1a..465817ce280c 100644
--- a/dev-ruby/mysql2/Manifest
+++ b/dev-ruby/mysql2/Manifest
@@ -1 +1,2 @@
DIST mysql2-0.5.5.tar.gz 124769 BLAKE2B 698b18434691b2b7734c6fa314c931a38e973813a1912166838541f35c181813bff2db2c0967df72e8d9108b9ea71a030af09f39354a9c902674fab287b82331 SHA512 fa43e464bfd495d335c6f95b1897009813b7d6fbfeebe8d9c533c4f88c664a61a140227df73eb892c0314f76ebb5d0f2e06265284512dd35950bbab78d20e0fc
+DIST mysql2-0.5.6.tar.gz 125108 BLAKE2B cdecc8912a5cd1c1cb9ea1a428c930cf0acad8832db3c8fcee93c8a3ef898fff47f09735d7b646e782e4a908e555c704a11e68ffc10ef735705438d0090e2883 SHA512 44b6e0bfe819d9a9ce056d4cd99b547dbb2bebe512a00eadf030885a8b7b147bc08a334dc583585bddf36998d46242aa0aadc9dc159f2296d6f3640a74362de9
diff --git a/dev-ruby/mysql2/mysql2-0.5.6.ebuild b/dev-ruby/mysql2/mysql2-0.5.6.ebuild
new file mode 100644
index 000000000000..380f6a06f03d
--- /dev/null
+++ b/dev-ruby/mysql2/mysql2-0.5.6.ebuild
@@ -0,0 +1,139 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+RUBY_FAKEGEM_TASK_DOC=""
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+RUBY_FAKEGEM_EXTENSIONS=(ext/mysql2/extconf.rb)
+RUBY_FAKEGEM_EXTENSION_LIBDIR=lib/mysql2
+
+RUBY_FAKEGEM_GEMSPEC="mysql2.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="A modern, simple and very fast Mysql library for Ruby - binding to libmysql"
+HOMEPAGE="https://github.com/brianmario/mysql2"
+SRC_URI="https://github.com/brianmario/mysql2/archive/${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1-2)"
+KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86"
+IUSE="mysql mariadb"
+REQUIRED_USE="^^ ( mariadb mysql )"
+
+SQL_DEPEND="mysql? ( dev-db/mysql-connector-c:= ) mariadb? ( dev-db/mariadb-connector-c:= )"
+DEPEND="${DEPEND} ${SQL_DEPEND}"
+RDEPEND="${RDEPEND} ${SQL_DEPEND}"
+BDEPEND="
+ test? (
+ mariadb? ( dev-db/mariadb:* )
+ mysql? ( >=dev-db/mysql-8:* )
+ )
+"
+
+all_ruby_prepare() {
+ sed -i -e '/s.version/ s/Mysql2::VERSION/"'${PV}'"/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
+
+each_ruby_configure() {
+ local config
+ if use mysql ; then
+ config="${EPREFIX}/usr/bin/mysql_config"
+ fi
+ if use mariadb ; then
+ config="${EPREFIX}/usr/bin/mariadb_config"
+ fi
+
+ ${RUBY} -Cext/mysql2 extconf.rb --with-mysql-config="${config}" || die
+}
+
+each_ruby_test() {
+ local -x USER=$(whoami)
+
+ einfo "Creating mysql test instance ..."
+ mkdir -p "${T}"/mysql || die
+ if use mariadb ; then
+ local -x PATH="${BROOT}/usr/share/mariadb/scripts:${PATH}"
+
+ mysql_install_db \
+ --no-defaults \
+ --auth-root-authentication-method=normal \
+ --basedir="${EPREFIX}/usr" \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld_install.log || die
+ else
+ mysqld \
+ --no-defaults \
+ --initialize-insecure \
+ --user ${USER} \
+ --basedir="${EPREFIX}/usr" \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld_install.log || die
+ fi
+
+ einfo "Starting mysql test instance ..."
+ mysqld \
+ --no-defaults \
+ --character-set-server=utf8 \
+ --bind-address=127.0.0.1 \
+ --pid-file="${T}"/mysqld.pid \
+ --socket="${T}"/mysqld.sock \
+ --datadir="${T}"/mysql 1>"${T}"/mysqld.log 2>&1 &
+
+ # wait for it to start
+ local i
+ for (( i = 0; i < 10; i++ )); do
+ [[ -S ${T}/mysqld.sock ]] && break
+ sleep 1
+ done
+ [[ ! -S ${T}/mysqld.sock ]] && die "mysqld failed to start"
+
+ einfo "Configuring test mysql instance ..."
+
+ mysql -u root --socket="${T}"/mysqld.sock -s -e '
+ CREATE DATABASE test1 DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;
+ ' || die "Failed to create test databases"
+
+ # https://github.com/brianmario/mysql2/blob/master/ci/setup.sh
+ mysql -u root \
+ -e 'CREATE DATABASE /*M!50701 IF NOT EXISTS */ test' \
+ -S "${T}"/mysqld.sock || die
+
+ # https://github.com/brianmario/mysql2/blob/master/tasks/rspec.rake
+ cat <<-EOF > spec/configuration.yml || die
+ root:
+ host: localhost
+ username: root
+ password:
+ database: test
+ socket: ${T}/mysqld.sock
+
+ user:
+ host: localhost
+ username: root
+ password:
+ database: mysql2_test
+ socket: ${T}/mysqld.sock
+ EOF
+
+ nonfatal each_fakegem_test
+ local ret=${?}
+
+ einfo "Stopping mysql test instance ..."
+ pkill -F "${T}"/mysqld.pid || die
+ # wait for it to stop
+ local i
+ for (( i = 0; i < 10; i++ )); do
+ [[ -S ${T}/mysqld.sock ]] || break
+ sleep 1
+ done
+
+ rm -rf "${T}"/mysql || die
+
+ [[ ${ret} -ne 0 ]] && die
+}
diff --git a/dev-ruby/rake/rake-13.1.0.ebuild b/dev-ruby/rake/rake-13.1.0.ebuild
index 4ce7d447e2c7..2b254de6cfb7 100644
--- a/dev-ruby/rake/rake-13.1.0.ebuild
+++ b/dev-ruby/rake/rake-13.1.0.ebuild
@@ -1,4 +1,4 @@
-# Copyright 1999-2023 Gentoo Authors
+# Copyright 1999-2024 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=8
@@ -43,7 +43,7 @@ all_ruby_compile() {
}
each_ruby_test() {
- ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
+ MT_NO_PLUGINS=true RUBYLIB="$(pwd)/lib" ${RUBY} -Ilib:test:. -e 'Dir["test/test_*.rb"].each{|f| require f}' || die
}
all_ruby_install() {
diff --git a/dev-ruby/request_store/Manifest b/dev-ruby/request_store/Manifest
index b3f238b59dd8..a266786179f9 100644
--- a/dev-ruby/request_store/Manifest
+++ b/dev-ruby/request_store/Manifest
@@ -1 +1,2 @@
DIST request_store-1.5.1.gem 9728 BLAKE2B df83be1ecdb8b6158133925167df19cff59eab3cdb2ea1b5f970359a19a79dcd114f9c8d42856a1bf0173bb69df8f89efe54c29f5c6a9dd58d4b8bb7ccfa76d2 SHA512 89ba2df4169a23c60546081c5d872c26f09ce6edbb6bfdb9bb03ba3e194ca36b7f588e3f77deaa82ae6465e2ab8c372c9199fd49232ba37bd8e5d0cdcac785f1
+DIST request_store-1.6.0.gem 9728 BLAKE2B a7b4beae76bb7704bd02cd1a64d4e53579b8fab23e70a59dc7f241ca80b86f43c0bc0827ead56320a40a6041ccc61144e15ece26f4897e523eb902f845e2b072 SHA512 7c18d3e7164837ab7e538f5a5e243f24650f70cb801e108381b46da5122217d959371a439b8359dfc39950efcd1941c5d9cde9121fdb3350b16a36e59101338c
diff --git a/dev-ruby/request_store/request_store-1.6.0.ebuild b/dev-ruby/request_store/request_store-1.6.0.ebuild
new file mode 100644
index 000000000000..405c3fc00680
--- /dev/null
+++ b/dev-ruby/request_store/request_store-1.6.0.ebuild
@@ -0,0 +1,22 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+USE_RUBY="ruby31 ruby32 ruby33"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Per-request global storage for Rack"
+HOMEPAGE="https://github.com/steveklabnik/request_store"
+
+LICENSE="MIT"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+ruby_add_rdepend ">=dev-ruby/rack-1.4:*"
+
+all_ruby_prepare() {
+ sed -i -e "/bundler/ s:^:#:" Rakefile || die
+}
diff --git a/dev-ruby/roadie/Manifest b/dev-ruby/roadie/Manifest
index 9d19aac73ee9..b7cf0b01988e 100644
--- a/dev-ruby/roadie/Manifest
+++ b/dev-ruby/roadie/Manifest
@@ -1,2 +1,3 @@
DIST roadie-5.1.0.tar.gz 50866 BLAKE2B efab67901951f36877cf5f4a41e604e69f672f4ba3b774a26992de947d52b8e1f1c1bf10b4d36212b80542942d29be066184fe4237ac31895ac5bbb2ca27ae80 SHA512 490a5def87bd2a33eff732fc144881fc23e8838ccbd7392a0ecabcde2eb7736445a94eb0580080d616f7c6594c63da6455f1b55636dd542372569bee4a70de78
DIST roadie-5.2.0.tar.gz 50870 BLAKE2B ba78087e07d9135341dbe6cee3b4ff2c9a54ae8a98315447ac38b4af1f0a19b61151c209f28e5c279d87d0de97de8da517aa8313fb867babfa400e6c8f3f07cd SHA512 76123aa4d01fe847693358ceae26048510fa5c18a1489a09f09ffeffcc021baf156330a5d75fc1326936b9605a034dfa8987bb29deaa11c1e8b7bd0493054e5e
+DIST roadie-5.2.1.tar.gz 50799 BLAKE2B 9a3a228a5242d6260604ddf44fb3d804c65bf391091b3b54ff63f19b794a46cce6a963490afe497b0bb0c763204d47f33e30d0e86954d1ef50c09bc28773b764 SHA512 3cbd7026f2a4712ff1541c9584590d5bd9f1a45f18d5275ecd16b8300ae87acab47756626f9eb4b6dba200d57e040f38e0ae9e6a3bac6a0fdf3815605d2ded80
diff --git a/dev-ruby/roadie/roadie-5.2.1.ebuild b/dev-ruby/roadie/roadie-5.2.1.ebuild
new file mode 100644
index 000000000000..734e616ccebc
--- /dev/null
+++ b/dev-ruby/roadie/roadie-5.2.1.ebuild
@@ -0,0 +1,34 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_EXTRADOC="README.md"
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+RUBY_FAKEGEM_RECIPE_DOC="yard"
+
+RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="Making HTML emails comfortable for the Rails rockstars"
+HOMEPAGE="https://github.com/Mange/roadie"
+SRC_URI="https://github.com/Mange/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend ">=dev-ruby/nokogiri-1.15:0
+ >=dev-ruby/css_parser-1.4.5 =dev-ruby/css_parser-1*"
+ruby_add_bdepend "test? ( dev-ruby/rspec-collection_matchers dev-ruby/webmock )"
+
+all_ruby_prepare() {
+ sed -i -e "/[Bb]undler/d" Rakefile || die
+ sed -i -e 's/git ls-files/find * -type f -print/' \
+ -e '/test_files/d' \
+ -e '/css_parser/ s/~>/>=/' ${RUBY_FAKEGEM_GEMSPEC} || die
+}
diff --git a/dev-ruby/rspec-rails/Manifest b/dev-ruby/rspec-rails/Manifest
index 54251ac406f0..ecc3360f94da 100644
--- a/dev-ruby/rspec-rails/Manifest
+++ b/dev-ruby/rspec-rails/Manifest
@@ -1,3 +1,4 @@
DIST rspec-rails-5.1.2.tar.gz 157523 BLAKE2B b500aa53f8bd965f7b95e90403d46096073780fa4e318295bffba44211cfb9d5eab36549e6fc3afc144700a8224ebe808489959a172f1d9e76c43320b7022979 SHA512 f9ef3a3812590a7cd50bd34e9e6cd9669fab24736ac7693b3fffe3f8be9b8313e31b0c7b7571a735f20bc5d9194a94c2f447e69f6491190536b6534211e1b070
DIST rspec-rails-6.0.3.tar.gz 161663 BLAKE2B 02fdd54524e469387264013e5da9035014533b01ba1164ffe8e3038679585af0943ad82c074f987230b98f837395e57817134466ad33e02c42650dd3ebafb707 SHA512 cf0e34fbc8f653713dd1ba184f01c9ad33ea8739b8c46d5e377387b7c6fc0ebc7999d1a7abbb0581735297ff8a3aa9c665d13616a1eefd6abd4a85cd657203d5
DIST rspec-rails-6.0.4.tar.gz 163654 BLAKE2B d8680bc410a63b746d568b3a71a1eb4cdac4b620740fe87e898187855e2340fb0fc0dd9e12d02ae738e2c4f68e085e75b58640c77dca0221901104ad8a6de40d SHA512 1090a76fcad4deeb2a9b8a4895dbe3a884887768f607e26e1b8903a2968c187dcf3361492cfa19a2638b1516948a94e5b0a6688a02041d94357ebe0f724f7039
+DIST rspec-rails-6.1.1.tar.gz 165310 BLAKE2B a8c40c203a756a23344c480afd59a9fbd626a6ba4de3716510797269d51d2060d3a719182a174d6225ceb18581f74cde2ad3cc5b71553e71634dbb0894500c55 SHA512 063de268b98aede351437829ecf27151b6015943bc27aa32b01968713a365f75036f357b0516c33a452c2ba5f35c7629de602774054e455eb642a7c67bd57441
diff --git a/dev-ruby/rspec-rails/rspec-rails-6.1.1.ebuild b/dev-ruby/rspec-rails/rspec-rails-6.1.1.ebuild
new file mode 100644
index 000000000000..97a54c4cf41b
--- /dev/null
+++ b/dev-ruby/rspec-rails/rspec-rails-6.1.1.ebuild
@@ -0,0 +1,59 @@
+# Copyright 1999-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+USE_RUBY="ruby31 ruby32"
+
+RUBY_FAKEGEM_RECIPE_TEST="rspec3"
+
+#RUBY_FAKEGEM_TASK_DOC=""
+RUBY_FAKEGEM_EXTRADOC="Changelog.md README.md"
+
+RUBY_FAKEGEM_GEMSPEC="rspec-rails.gemspec"
+
+inherit ruby-fakegem
+
+DESCRIPTION="RSpec's official Ruby on Rails plugin"
+HOMEPAGE="https://rspec.info/"
+SRC_URI="https://github.com/rspec/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+
+LICENSE="MIT"
+SLOT="$(ver_cut 1)"
+KEYWORDS="~amd64"
+IUSE="test"
+
+ruby_add_rdepend "
+ || ( dev-ruby/activesupport:7.1 dev-ruby/activesupport:7.0 dev-ruby/activesupport:6.1 )
+ || ( dev-ruby/actionpack:7.1 dev-ruby/actionpack:7.0 dev-ruby/actionpack:6.1 )
+ || ( dev-ruby/railties:7.1 dev-ruby/railties:7.0 dev-ruby/railties:6.1 )
+ >=dev-ruby/rspec-3.12:3"
+
+# Depend on the package being already installed for tests, because
+# requiring ammeter will load it, and we need a consistent set of rspec
+# and rspec-rails for that to work.
+ruby_add_bdepend "test? (
+ || ( dev-ruby/activerecord:7.1[sqlite] dev-ruby/activerecord:7.0[sqlite] dev-ruby/activerecord:6.1[sqlite] )
+ >=dev-ruby/capybara-2.2.0
+ >=dev-ruby/ammeter-1.1.5
+ ~dev-ruby/rspec-rails-${PV}
+)"
+
+all_ruby_prepare() {
+ # Remove .rspec options to avoid dependency on newer rspec when
+ # bootstrapping.
+ echo "--require spec_helper" > .rspec || die
+
+ # Avoid bundler-specific specs.
+ rm -f spec/sanity_check_spec.rb || die
+
+ # Avoid broken controller generator specs for now.
+ rm -fr spec/generators/rspec || die
+
+ # Test with a compatible rails version
+ #sed -i -e '1igem "rails", "<7.0"' spec/spec_helper.rb || die
+
+ # Fix gemspec.
+ sed -e 's/git ls-files --/find */' \
+ -i ${RUBY_FAKEGEM_GEMSPEC} || die
+}