[gentoo-commits] repo/gentoo:master commit in: dev-ruby/facter/files/, dev-ruby/facter/
commit: 058c1ba90d789566374dca91b3d4c64218f156ee Author: Robin H. Johnson gentoo org> AuthorDate: Sun Sep 10 04:35:04 2023 + Commit: Robin H. Johnson gentoo org> CommitDate: Sun Sep 10 04:42:34 2023 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=058c1ba9 dev-ruby/facter: bring testsuite back Get testsuite working again, to catch bugs like the missing sys-filesystem dependency added by upstream. Temporarily drop keywords back to ~amd64 ~x86 until deps can be keyworded. Signed-off-by: Robin H. Johnson gentoo.org> dev-ruby/facter/facter-4.4.3-r1.ebuild | 55 ++ .../files/facter-4.4.3-rspec-gentoo-tweak.patch| 53 + 2 files changed, 108 insertions(+) diff --git a/dev-ruby/facter/facter-4.4.3-r1.ebuild b/dev-ruby/facter/facter-4.4.3-r1.ebuild new file mode 100644 index ..1020d9528957 --- /dev/null +++ b/dev-ruby/facter/facter-4.4.3-r1.ebuild @@ -0,0 +1,55 @@ +# Copyright 1999-2023 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=8 +USE_RUBY="ruby27 ruby30 ruby31" +RUBY_FAKEGEM_GEMSPEC="facter.gemspec" +RUBY_FAKEGEM_RECIPE_TEST="rspec3" +RUBY_FAKEGEM_RECIPE_DOC="yard" + +inherit ruby-ng ruby-fakegem + +DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems" +HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/; + +LICENSE="Apache-2.0" +SLOT="0" +#IUSE="test" +if [[ ${PV} == ]] ; then + inherit git-r3 + EGIT_REPO_URI="https://github.com/puppetlabs/facter.git; + EGIT_BRANCH="master" +else + [[ "${PV}" = *_rc* ]] || \ + KEYWORDS="~amd64 ~x86" + #KEYWORDS="~amd64 ~arm ~arm64 ~hppa ~ppc ~ppc64 ~riscv ~sparc ~x86" + SRC_URI="https://github.com/puppetlabs/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz" +fi + +#RESTRICT="!test? ( test )" + +ruby_add_rdepend "dev-ruby/hocon "/bin/bash", ..., "_"=>"/usr/bin/rspec", "RACK_ENV"=>"test", + "resolution_test_foo"=>"foo"} received :[] with unexpected arguments + expected: ("PATH") + got: ("GEM_SKIP") +Please stub a default value first if message might be received with other args as well. + # ./spec/mocks/kernel.rb:7:in `require' + # ./lib/facter/custom_facts/core/execution/base.rb:74:in `execute_command' + # ./lib/facter/custom_facts/core/execution/base.rb:63:in `execute' + # ./spec/custom_facts/core/execution/fact_manager_spec.rb:106:in `block (4 levels) in ' + + + 2) Facter::Core::Execution::Posix when calling execute_command executes a command + # False positive on Gentoo due to environment, returns "" instead of ["", ""] + Failure/Error: expect(posix_executor.execute_command('/usr/bin/true', nil, logger)).to eq(['', '']) + + expected: ["", ""] +got: "" + + (compared using ==) + # ./spec/custom_facts/core/execution/posix_spec.rb:112:in `block (3 levels) in ' +``` + +Signed-off-by: Robin H. Johnson + +diff -NuarwbB --exclude '*swp' facter-4.4.3.orig/spec/custom_facts/core/execution/fact_manager_spec.rb facter-4.4.3/spec/custom_facts/core/execution/fact_manager_spec.rb +--- facter-4.4.3.orig/spec/custom_facts/core/execution/fact_manager_spec.rb 2023-08-24 10:49:03.0 -0700 facter-4.4.3/spec/custom_facts/core/execution/fact_manager_spec.rb 2023-09-09 21:25:03.428326009 -0700 +@@ -99,6 +99,7 @@ + end + + it 'does not expant builtin command' do ++pending('False positive on Gentoo due to environment, returns GEM_SKIP instead of PATH') + allow(Facter::Core::Execution::Popen3).to receive(:popen3e).with({ 'LC_ALL' => 'C', 'LANG' => 'C' }, '/bin/foo') + .and_return('') + allow(Open3).to receive(:capture2).with('type /bin/foo').and_return('builtin') +diff -NuarwbB --exclude '*swp' facter-4.4.3.orig/spec/custom_facts/core/execution/posix_spec.rb facter-4.4.3/spec/custom_facts/core/execution/posix_spec.rb +--- facter-4.4.3.orig/spec/custom_facts/core/execution/posix_spec.rb 2023-08-24 10:49:03.0 -0700 facter-4.4.3/spec/custom_facts/core/execution/posix_spec.rb 2023-09-09 21:24:39.484374593 -0700 +@@ -108,6 +108,7 @@ + let(:logger) { instance_spy(Logger) } + + it 'executes a command' do ++ pending('False positive on Gentoo due to environment, returns "" instead of ["", ""]') + expect(posix_executor.execute_command('/usr/bin/true', nil, logger)).to eq(['', '']) + end +
[gentoo-commits] repo/gentoo:master commit in: dev-ruby/facter/files/, dev-ruby/facter/
commit: 1ca73aff9416bdaf4960ad351a54f723a1083fcd Author: Sam James gentoo org> AuthorDate: Fri Jun 10 02:16:03 2022 + Commit: Sam James gentoo org> CommitDate: Fri Jun 10 02:27:01 2022 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1ca73aff dev-ruby/facter: fix build with GCC 12 Closes: https://bugs.gentoo.org/840116 Signed-off-by: Sam James gentoo.org> dev-ruby/facter/facter-3.14.23.ebuild| 1 + dev-ruby/facter/files/facter-3.14.23-gcc12.patch | 10 ++ 2 files changed, 11 insertions(+) diff --git a/dev-ruby/facter/facter-3.14.23.ebuild b/dev-ruby/facter/facter-3.14.23.ebuild index a8b3fb88f65b..0eeddc26c2f1 100644 --- a/dev-ruby/facter/facter-3.14.23.ebuild +++ b/dev-ruby/facter/facter-3.14.23.ebuild @@ -46,6 +46,7 @@ PATCHES=( "${FILESDIR}"/${PN}-3.14.6-fix-static-libcpp-hocon.patch # be explicit about the version of rspec we test with "${FILESDIR}"/${PN}-3.14.8-explicit-rspec-2.patch + "${FILESDIR}"/${PN}-3.14.23-gcc12.patch ) pkg_setup() { diff --git a/dev-ruby/facter/files/facter-3.14.23-gcc12.patch b/dev-ruby/facter/files/facter-3.14.23-gcc12.patch new file mode 100644 index ..671b085a15b5 --- /dev/null +++ b/dev-ruby/facter/files/facter-3.14.23-gcc12.patch @@ -0,0 +1,10 @@ +https://bugs.gentoo.org/840116 +--- a/lib/src/facts/glib/load_average_resolver.cc b/lib/src/facts/glib/load_average_resolver.cc +@@ -1,5 +1,6 @@ + #include + #include ++#include + #include + + #ifdef __sun
[gentoo-commits] repo/gentoo:master commit in: dev-ruby/facter/files/, dev-ruby/facter/
commit: 5624d85c41eb5d8db26a56d521702ea5d56710dd Author: Matthew Thode gentoo org> AuthorDate: Tue Feb 18 16:39:22 2020 + Commit: Matthew Thode gentoo org> CommitDate: Tue Feb 18 16:39:55 2020 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5624d85c dev-ruby/facter: fix 3.14.8 patch Closes: https://bugs.gentoo.org/710066 Package-Manager: Portage-2.3.84, Repoman-2.3.20 Signed-off-by: Matthew Thode gentoo.org> dev-ruby/facter/facter-3.14.8.ebuild | 2 +- dev-ruby/facter/files/facter-3.14.8-explicit-rspec-2.patch | 10 ++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/dev-ruby/facter/facter-3.14.8.ebuild b/dev-ruby/facter/facter-3.14.8.ebuild index 9eddae0a3f5..dbf805620b4 100644 --- a/dev-ruby/facter/facter-3.14.8.ebuild +++ b/dev-ruby/facter/facter-3.14.8.ebuild @@ -45,7 +45,7 @@ S="${WORKDIR}/${P}" PATCHES=( "${FILESDIR}"/${PN}-3.14.6-fix-static-libcpp-hocon.patch # be explicit about the version of rspec we test with - "${FILESDIR}"/${PN}-3.14.6-explicit-rspec-2.patch + "${FILESDIR}"/${PN}-3.14.8-explicit-rspec-2.patch ) pkg_setup() { diff --git a/dev-ruby/facter/files/facter-3.14.8-explicit-rspec-2.patch b/dev-ruby/facter/files/facter-3.14.8-explicit-rspec-2.patch new file mode 100644 index 000..bca424be1b8 --- /dev/null +++ b/dev-ruby/facter/files/facter-3.14.8-explicit-rspec-2.patch @@ -0,0 +1,10 @@ +--- a/CMakeLists.txt b/CMakeLists.txt +@@ -205,7 +205,7 @@ + if (BUNDLER_PATH) + message(STATUS "Bundler found, installing dependencies for Ruby tests...") + execute_process(COMMAND ${BUNDLER_PATH} install --retry 2 --path=vendor/bundle WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}/lib") +-add_test(NAME "libfacter\\ specs" COMMAND ${BUNDLER_PATH} exec rspec WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}/lib") ++add_test(NAME "libfacter\\ specs" COMMAND ${BUNDLER_PATH} exec rspec-2 WORKING_DIRECTORY "${PROJECT_SOURCE_DIR}/lib") + endif() + endif()
[gentoo-commits] repo/gentoo:master commit in: dev-ruby/facter/files/, dev-ruby/facter/
commit: 33214a8b309b90f280b40816e5b84c14d13b74a7 Author: Matthew Thode gentoo org> AuthorDate: Tue Jun 27 15:53:25 2017 + Commit: Matt Thode gentoo org> CommitDate: Tue Jun 27 15:53:57 2017 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=33214a8b dev-ruby/facter: fix building with leatherman-1.0.0 Package-Manager: Portage-2.3.6, Repoman-2.3.2 dev-ruby/facter/facter-3.6.5.ebuild| 3 +- .../facter/files/is-integer_fact-1624_3.6.5.patch | 58 ++ 2 files changed, 60 insertions(+), 1 deletion(-) diff --git a/dev-ruby/facter/facter-3.6.5.ebuild b/dev-ruby/facter/facter-3.6.5.ebuild index 47f77c3cc1a..c4b3000acb2 100644 --- a/dev-ruby/facter/facter-3.6.5.ebuild +++ b/dev-ruby/facter/facter-3.6.5.ebuild @@ -4,7 +4,7 @@ EAPI=5 USE_RUBY="ruby21 ruby22" -inherit cmake-utils multilib ruby-ng +inherit cmake-utils eutils multilib ruby-ng DESCRIPTION="A cross-platform ruby library for retrieving facts from operating systems" HOMEPAGE="http://www.puppetlabs.com/puppet/related-projects/facter/; @@ -43,6 +43,7 @@ src_prepare() { # make the require work sed -i 's/\${LIBFACTER_INSTALL_DESTINATION}\///g' lib/facter.rb.in || die # patches + epatch "${FILESDIR}/is-integer_fact-1624_3.6.5.patch" epatch_user } diff --git a/dev-ruby/facter/files/is-integer_fact-1624_3.6.5.patch b/dev-ruby/facter/files/is-integer_fact-1624_3.6.5.patch new file mode 100644 index 000..c7b8d80b2c7 --- /dev/null +++ b/dev-ruby/facter/files/is-integer_fact-1624_3.6.5.patch @@ -0,0 +1,58 @@ +From 9cb17d9fdffabab3693f6548f6bfc54ed2251325 Mon Sep 17 00:00:00 2001 +From: Maggie Dreyer+Date: Tue, 2 May 2017 10:21:06 -0700 +Subject: [PATCH] (FACT-1624) Use `is_integer` instead of `is_fixednum` and + `is_bignum` + +Ruby 2.4 unified Fixnum and Bignum into Integer. We updated the +Leatherman API to match this. This commit updates Facter to use the new +API. +--- + lib/src/ruby/module.cc | 2 +- + lib/src/ruby/ruby_value.cc | 6 +++--- + 2 files changed, 4 insertions(+), 4 deletions(-) + +diff --git a/lib/src/ruby/module.cc b/lib/src/ruby/module.cc +index 2d7223e0f..b8aeeed09 100644 +--- a/lib/src/ruby/module.cc b/lib/src/ruby/module.cc +@@ -866,7 +866,7 @@ namespace facter { namespace ruby { + // Unfortunately we have to call to_sym rather than using ID2SYM, which is Ruby version dependent + uint32_t timeout = 0; + volatile VALUE timeout_option = ruby.rb_hash_lookup(argv[1], ruby.to_symbol("timeout")); +-if (ruby.is_fixednum(timeout_option)) { ++if (ruby.is_integer(timeout_option)) { + timeout = ruby.num2size_t(timeout_option); + } + +diff --git a/lib/src/ruby/ruby_value.cc b/lib/src/ruby/ruby_value.cc +index d8ea20ce6..645472a3f 100644 +--- a/lib/src/ruby/ruby_value.cc b/lib/src/ruby/ruby_value.cc +@@ -86,7 +86,7 @@ namespace facter { namespace ruby { + json.SetString(str, size, allocator); + return; + } +-if (ruby.is_fixednum(value) || ruby.is_bignum(value)) { ++if (ruby.is_integer(value)) { + json.SetInt64(ruby.rb_num2ll(value)); + return; + } +@@ -155,7 +155,7 @@ namespace facter { namespace ruby { + } + return; + } +-if (ruby.is_fixednum(value) || ruby.is_bignum(value)) { ++if (ruby.is_integer(value)) { + os << ruby.rb_num2ll(value); + return; + } +@@ -241,7 +241,7 @@ namespace facter { namespace ruby { + emitter << str; + return; + } +-if (ruby.is_fixednum(value) || ruby.is_bignum(value)) { ++if (ruby.is_integer(value)) { + emitter << ruby.rb_num2ll(value); + return; + }
[gentoo-commits] repo/gentoo:master commit in: dev-ruby/facter/files/, dev-ruby/facter/
commit: 9a5e23a882489d5ada36690e05a77382e630b398 Author: Robin H. Johnson gentoo org> AuthorDate: Tue Nov 29 07:49:33 2016 + Commit: Robin H. Johnson gentoo org> CommitDate: Tue Nov 29 07:49:33 2016 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=9a5e23a8 dev-ruby/facter: fix icedtea compile. Package-Manager: portage-2.3.2 dev-ruby/facter/facter-3.5.0.ebuild | 1 + dev-ruby/facter/facter-.ebuild | 1 + dev-ruby/facter/files/facter-3.5.0-jar.patch | 34 3 files changed, 36 insertions(+) diff --git a/dev-ruby/facter/facter-3.5.0.ebuild b/dev-ruby/facter/facter-3.5.0.ebuild index 693d798..2e5cfca 100644 --- a/dev-ruby/facter/facter-3.5.0.ebuild +++ b/dev-ruby/facter/facter-3.5.0.ebuild @@ -41,6 +41,7 @@ src_prepare() { sed -i "s/lib\")/$(get_libdir)\")/g" CMakeLists.txt || die # patches epatch "${FILESDIR}/facter-3.5.0-collection-fix.patch" + epatch "${FILESDIR}/facter-3.5.0-jar.patch" } src_configure() { diff --git a/dev-ruby/facter/facter-.ebuild b/dev-ruby/facter/facter-.ebuild index a313d53..08f66b7 100644 --- a/dev-ruby/facter/facter-.ebuild +++ b/dev-ruby/facter/facter-.ebuild @@ -43,6 +43,7 @@ src_prepare() { sed -i "s/\ lib)/\ $(get_libdir))/g" lib/CMakeLists.txt || die sed -i "s/lib\")/$(get_libdir)\")/g" CMakeLists.txt || die default + epatch "${FILESDIR}/facter-3.5.0-jar.patch" } src_configure() { diff --git a/dev-ruby/facter/files/facter-3.5.0-jar.patch b/dev-ruby/facter/files/facter-3.5.0-jar.patch new file mode 100644 index ..36b5279 --- /dev/null +++ b/dev-ruby/facter/files/facter-3.5.0-jar.patch @@ -0,0 +1,34 @@ +Fix javah for strict javah & ordering. + +* javah on some JDKs is strict about sourcing, and no classpath entry + referencing the jar was present for the javah command, either as an argument + or in the environment. +* javah was chained as a post-build of the jar creation. This caused breakage + if src/java/*.cc tried to use the javah-generated .h file before it was + generated. + +Fixes: https://tickets.puppetlabs.com/browse/FACT-1541 +Fixes: https://bugs.gentoo.org/show_bug.cgi?id=600942 +Signed-off-by: Robin H. Johnson+ +diff -Nuar facter-.orig/lib/CMakeLists.txt facter-/lib/CMakeLists.txt +--- facter-.orig/lib/CMakeLists.txt2016-11-28 22:18:29.366271544 -0800 facter-/lib/CMakeLists.txt 2016-11-28 22:28:36.244894899 -0800 +@@ -267,7 +267,15 @@ + include(UseJava) +-add_jar(facter-jruby "${CMAKE_BINARY_DIR}/lib/com/puppetlabs/Facter.java" OUTPUT_NAME facter OUTPUT_DIR "${CMAKE_BINARY_DIR}/lib" ENTRY_POINT com/puppetlabs/Facter) ++add_jar(facter-jruby-jar "${CMAKE_BINARY_DIR}/lib/com/puppetlabs/Facter.java" OUTPUT_NAME facter OUTPUT_DIR "${CMAKE_BINARY_DIR}/lib" ENTRY_POINT com/puppetlabs/Facter) + +-add_custom_command(TARGET facter-jruby POST_BUILD COMMAND javah ARGS -d "${CMAKE_CURRENT_LIST_DIR}/src/java" com.puppetlabs.Facter WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/lib") ++# javah does not atomically write the header file, so parallel builds can ++# read it before it finishes writing if not careful. ++add_custom_command(OUTPUT "${CMAKE_CURRENT_LIST_DIR}/src/java/com_puppetlabs_Facter.h" ++ COMMAND javah ARGS -classpath facter.jar -d "${CMAKE_CURRENT_LIST_DIR}/src/java" com.puppetlabs.Facter ++ WORKING_DIRECTORY "${CMAKE_BINARY_DIR}/lib" ++ DEPENDS facter-jruby-jar) ++# Anything that depends on facter-jruby wants both the jar AND the completely written header. ++add_custom_target(facter-jruby DEPENDS facter-jruby-jar "${CMAKE_CURRENT_LIST_DIR}/src/java/com_puppetlabs_Facter.h") ++set(LIBFACTER_COMMON_SOURCES ${LIBFACTER_COMMON_SOURCES} src/java/com_puppetlabs_Facter.h) + endif() + + # Set include directories
[gentoo-commits] repo/gentoo:master commit in: dev-ruby/facter/files/, dev-ruby/facter/
commit: 736ebfa5d58509c9806e5f035e96427314a6f4ee Author: Matthew Thode gentoo org> AuthorDate: Sun May 1 01:36:27 2016 + Commit: Matt Thode gentoo org> CommitDate: Sun May 1 01:36:27 2016 + URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=736ebfa5 dev-ruby/facter: fix puppet use of facter and facterdir Package-Manager: portage-2.2.26 dev-ruby/facter/{facter-3.1.6-r1.ebuild => facter-3.1.6-r2.ebuild} | 1 + dev-ruby/facter/files/00facterdir | 1 + 2 files changed, 2 insertions(+) diff --git a/dev-ruby/facter/facter-3.1.6-r1.ebuild b/dev-ruby/facter/facter-3.1.6-r2.ebuild similarity index 98% rename from dev-ruby/facter/facter-3.1.6-r1.ebuild rename to dev-ruby/facter/facter-3.1.6-r2.ebuild index 49e34b7..034eedb 100644 --- a/dev-ruby/facter/facter-3.1.6-r1.ebuild +++ b/dev-ruby/facter/facter-3.1.6-r2.ebuild @@ -70,4 +70,5 @@ src_install() { mv "${D}/usr/lib/"* "${D}/usr/lib64/" rmdir "${D}/usr/lib" fi + doenvd "${FILESDIR}"/00facterdir } diff --git a/dev-ruby/facter/files/00facterdir b/dev-ruby/facter/files/00facterdir new file mode 100644 index 000..45e29a2 --- /dev/null +++ b/dev-ruby/facter/files/00facterdir @@ -0,0 +1 @@ +FACTERDIR=/usr