diff --git a/configs/components/ansicon.rb b/configs/components/ansicon.rb deleted file mode 100644 index 9c8c641b..00000000 --- a/configs/components/ansicon.rb +++ /dev/null @@ -1,22 +0,0 @@ -##### -# Component release information: https://github.com/adoxa/ansicon/releases -# Notes: -# 2025-07-23: the latest is 1.89, but none of the updates are needed -# so not bothering for now. -##### -component "ansicon" do |pkg, settings, platform| - pkg.version '1.86' - pkg.md5sum 'f2e822dc4ad69959d61b6e09d0a56a30' - pkg.url "#{settings[:buildsources_url]}/ansicon-#{pkg.get_version}.tar.gz" - - # This component should only be included on Windows - pkg.environment "PATH", "$(shell cygpath -u #{settings[:gcc_bindir]}):$(PATH)" - pkg.environment "CYGWIN", settings[:cygwin] - - pkg.build do - ["#{platform[:make]} -fmakefile.gcc"] - end - - pkg.install_file "x64/ansicon.exe", "#{settings[:windows_tools]}/ansicon.exe" - pkg.install_file "x64/ansi64.dll", "#{settings[:windows_tools]}/ansi64.dll" -end diff --git a/configs/components/augeas.rb b/configs/components/augeas.rb index 0add0e3b..9300f7ba 100644 --- a/configs/components/augeas.rb +++ b/configs/components/augeas.rb @@ -2,7 +2,6 @@ # Component release information: https://github.com/hercules-team/augeas/releases ##### component 'augeas' do |pkg, settings, platform| - # Projects may define an :augeas_version setting, or we use 1.8.1 by default: version = settings[:augeas_version] || '1.14.1' pkg.version version diff --git a/configs/components/boost.rb b/configs/components/boost.rb deleted file mode 100644 index 702e8a63..00000000 --- a/configs/components/boost.rb +++ /dev/null @@ -1,237 +0,0 @@ -##### -# Component release information: https://github.com/boostorg/boost/releases -# Notes: -# Updated to 1.82 for Windows because we have to in order to compile it -# under modern Cygwin, and el10 also has problems with the old 1.73. -# However, later versions (at least 1.87) break pxp-agent. Do not bother updating -# this component. We will remove it when we remove pxp-agent. -##### -component "boost" do |pkg, settings, platform| - pkg.version "1.82.0" - pkg.md5sum "f7050f554a65f6a42ece221eaeec1660" - - # Apparently boost doesn't use dots to version they use underscores....arg - pkg.url "http://downloads.sourceforge.net/project/boost/boost/#{pkg.get_version}/boost_#{pkg.get_version.gsub('.','_')}.tar.gz" - pkg.mirror "#{settings[:buildsources_url]}/boost_#{pkg.get_version.gsub('.','_')}.tar.gz" - - if platform.is_solaris? - pkg.apply_patch 'resources/patches/boost/0001-fix-build-for-solaris.patch' - pkg.apply_patch 'resources/patches/boost/force-SONAME-option-for-solaris.patch' - end - - if platform.name == 'aix-7.1-ppc' - pkg.apply_patch 'resources/patches/boost/no-O_CLOEXEC-on-aix71.patch' - end - - if platform.architecture == "aarch64" - #pkg.apply_patch 'resources/patches/boost/boost-aarch64-flags.patch' - end - - if platform.is_windows? - pkg.apply_patch 'resources/patches/boost/windows-thread-declare-do_try_join_until-as-inline.patch' - end - - # Build-time Configuration - - boost_libs = settings[:boost_libs] || ['atomic', 'chrono', 'container', 'date_time', 'exception', 'filesystem', - 'graph', 'graph_parallel', 'iostreams', 'locale', 'log', 'math', - 'program_options', 'random', 'regex', 'serialization', 'signals', 'system', - 'test', 'thread', 'timer', 'wave'] - cflags = settings[:cflags] + " -fPIC -std=c99" - cxxflags = settings[:cflags] + " -std=c++11 -fPIC" - - # These are all places where windows differs from *nix. These are the default *nix settings. - toolset = 'gcc' - with_toolset = "--with-toolset=#{toolset}" - boost_dir = "" - bootstrap_suffix = ".sh" - bootstrap_flags = settings[:boost_bootstrap_flags] || "" - execute = "./" - addtl_flags = "" - gpp = "#{settings[:tools_root]}/bin/g++" - b2flags = settings[:boost_b2_flags] || "" - b2installflags = settings[:boost_b2_install_flags] || "" - link_option = settings[:boost_link_option] - b2location = "#{settings[:prefix]}/bin/b2" - bjamlocation = "#{settings[:prefix]}/bin/bjam" - - if platform.is_cross_compiled_linux? - pkg.environment "PATH", "/opt/pl-build-tools/bin:$(PATH)" - linkflags = "-Wl,-rpath=#{settings[:libdir]}" - # The boost b2 build requires a c++11 compatible compiler, - # so we need to install g++ and force the b2 build to use - # the system g++ for the build of the build tool by using - # the CXX env var - # - # Once the b2 tool has finished building, the actual boost - # library build will go back to using the cross-compiled - # g++. - pkg.environment "CXX", "/usr/bin/g++" - gpp = "/opt/pl-build-tools/bin/#{settings[:platform_triple]}-g++" - elsif platform.is_macos? - # clang 16 used in Sequoia throws a warning without this. This is actually a bug in boost, which was - # fixed in 1.81. When we upgrade to 1.81+, we should remove this. - # https://github.com/llvm/llvm-project/issues/59036#issuecomment-2517829718 - cxxflags = "-Wno-enum-constexpr-conversion" - linkflags = "" - gpp = if platform.is_cross_compiled? && platform.name =~ /osx-11/ - 'clang++ -target arm64-apple-macos11' - elsif platform.is_cross_compiled? && platform.name =~ /osx-12/ - 'clang++ -target arm64-apple-macos12' - else - 'clang++' - end - toolset = 'gcc' - with_toolset = "--with-toolset=clang" - elsif platform.is_solaris? - pkg.environment 'PATH', '/opt/pl-build-tools/bin:/usr/sbin:/usr/bin:/usr/local/bin:/usr/ccs/bin:/opt/csw/bin:/usr/sfw/bin' - linkflags = "-Wl,-rpath=#{settings[:libdir]},-L/opt/pl-build-tools/#{settings[:platform_triple]}/lib,-L/usr/lib" - b2flags = "define=_XOPEN_SOURCE=600" - if platform.architecture == "sparc" - b2flags = "#{b2flags} instruction-set=v9" - end - gpp = "/opt/pl-build-tools/bin/#{settings[:platform_triple]}-g++" - with_toolset = toolset - pkg.environment("LD_LIBRARY_PATH", '/opt/pl-build-tools/lib') if platform.name =~ /solaris-10/ - elsif platform.is_windows? - arch = platform.architecture == "x64" ? "64" : "32" - pkg.environment "PATH", "#{settings[:gcc_bindir]}:$(PATH)" - pkg.environment "CYGWIN", "nodosfilewarning" - b2location = "#{settings[:prefix]}/b2.exe" - bjamlocation = "#{settings[:prefix]}/bjam.exe" - # bootstrap.bat does not take the `--with-toolset` flag - toolset = "gcc" - with_toolset = "mingw" - # we do not need to reference the .bat suffix when calling the bootstrap script - bootstrap_suffix = "" - # we need to make sure we link against non-cygwin libraries - execute = "cmd.exe /c " - - gpp = "x86_64-w64-mingw32-g++.exe" - - # Set the address model so we only build one arch - # - # By default, boost gets built with WINVER set to the value for Windows XP. - # We want it to be Vista/Server 2008 - # - # Set layout to system to avoid nasty version numbers and arches in filenames - b2flags = "address-model=#{arch} \ - define=WINVER=0x0600 \ - define=_WIN32_WINNT=0x0600 \ - --layout=system" - - # We don't have iconv available on windows yet - install_only_flags = "boost.locale.iconv=off" - elsif platform.is_aix? - pkg.environment "NO_CXX11_CHECK", "1" - if platform.name == 'aix-7.1-ppc' - pkg.environment "CXX", "/opt/freeware/bin/g++-8" - else - pkg.environment "CXX", "/opt/freeware/bin/g++-10" - gpp = "/opt/freeware/bin/g++" - end - pkg.environment "CXXFLAGS", "-pthread" - pkg.environment "PATH", "/opt/freeware/bin:/opt/pl-build-tools/bin:$(PATH)" - linkflags = "-Wl,-L#{settings[:libdir]},-L/opt/pl-build-tools/lib" - elsif platform.name =~ /el-[56]|redhatfips-7|sles-(:?11|12)/ - pkg.environment "PATH", "/opt/pl-build-tools/bin:#{settings[:bindir]}:$(PATH)" - linkflags = "-Wl,-rpath=#{settings[:libdir]},-rpath=#{settings[:libdir]}64" - elsif platform.name =~ /el-7/ - pkg.environment "PATH", "/opt/rh/devtoolset-7/root/usr/bin:$(PATH)" - # Not sure this actually does anything - pkg.environment "CMAKE_CXX_COMPILER", "/opt/rh/devtoolset-7/root/usr/bin/gcc" - - linkflags = "-Wl,-rpath=#{settings[:libdir]},-rpath=#{settings[:libdir]}64" - gpp = '/opt/rh/devtoolset-7/root/usr/bin/g++' - else - linkflags = "#{settings[:ldflags]},-rpath=#{settings[:libdir]}64" - gpp = '/usr/bin/g++' - end - - # Set user-config.jam - if platform.is_windows? - userconfigjam = %Q{using gcc : : #{gpp} ;} - else - if platform.architecture =~ /arm/ - userconfigjam = %Q{using gcc : 5.2.0 : #{gpp} : "#{linkflags}" "#{cflags}" "#{cxxflags}" ;} - elsif platform.is_aix? - if platform.name == 'aix-7.1-ppc' - userconfigjam = %Q{using gcc : 5.2.0 : #{gpp} : "#{linkflags}" "#{cflags}" "#{cxxflags}" ;} - else - userconfigjam = %Q{using gcc : 10.3.0 : #{gpp} : "#{linkflags}" "#{cflags}" "#{cxxflags}" ;} - end - else - userconfigjam = %Q{using gcc : 4.8.2 : #{gpp} : "#{linkflags}" "#{cflags}" "#{cxxflags}" ;} - end - end - - # Build Commands - - # On some platforms, we have multiple means of specifying paths. Sometimes, we need to use either one - # form or another. `special_prefix` allows us to do this. i.e., on windows, we need to have the - # windows specific path (C:/), whereas for everything else, we can default to the drive root currently - # in use (/cygdrive/c). This has to do with how the program is built, where it is expecting to find - # libraries and binaries, and how it tries to find them. - pkg.build do - [ - %Q{echo '#{userconfigjam}' > ~/user-config.jam}, - "cd tools/build", - "#{execute}bootstrap#{bootstrap_suffix} #{with_toolset} #{bootstrap_flags}", - "./b2 \ - install \ - variant=release \ - #{link_option} \ - toolset=#{toolset} \ - #{b2flags} \ - -d+2 \ - --prefix=#{settings[:prefix]} \ - --debug-configuration" - ] - end - - pkg.install do - [ - "#{b2location} \ - install \ - variant=release \ - #{link_option} \ - toolset=#{toolset} \ - #{b2flags} \ - #{b2installflags} \ - -d+2 \ - --debug-configuration \ - --prefix=#{settings[:prefix]} \ - --build-dir=. \ - #{boost_libs.map {|lib| "--with-#{lib}"}.join(" ")} \ - #{install_only_flags}", - "chmod 0644 #{settings[:includedir]}/boost/graph/vf2_sub_graph_iso.hpp", - "chmod 0644 #{settings[:includedir]}/boost/thread/v2/shared_mutex.hpp", - # Remove extraneous Boost.Build stuff: - "rm -f ~/user-config.jam", - "rm -rf #{settings[:prefix]}/share/boost-build", - "rm -f #{b2location}", - "rm -f #{bjamlocation}", - ] - end - - # Boost.Build's behavior around setting the install_name for dylibs on macOS - # is not easily configurable. By default, it will hard-code the relative build - # directory there, making the libraries unusable once they're moved to the - # puppet libdir. Instead of dealing with this in a jamfile somewhere, we'll - # use a script to manually rewrite the finshed dylibs' install_names to use - # @rpath instead of the build directory. - if platform.is_macos? - pkg.add_source("file://resources/files/boost/macos_rpath_install_names.sh") - pkg.configure do - [ - "cp ../macos_rpath_install_names.sh macos_rpath_install_names.sh", - "chmod +x macos_rpath_install_names.sh", - ] - end - pkg.install do - [ - "LIBDIR=#{settings[:libdir]} ./macos_rpath_install_names.sh", - ] - end - end -end diff --git a/configs/components/curl.rb b/configs/components/curl.rb index 6a0545cd..4741255f 100644 --- a/configs/components/curl.rb +++ b/configs/components/curl.rb @@ -1,19 +1,16 @@ ##### # Component release information: https://github.com/curl/curl/releases -# Notes: -# 2025-07-23: The latest is 8.15.0, but it contains no security fixes or -# relevant improvements for us, so waiting to update until we need to. ##### component 'curl' do |pkg, settings, platform| # Projects may define a :curl_version setting - version = settings[:curl_version] || '8.14.1' + version = settings[:curl_version] || '8.15.0' pkg.version version case version when '7.88.1' pkg.sha256sum 'cdb38b72e36bc5d33d5b8810f8018ece1baa29a8f215b4495e495ded82bbf3c7' - when '8.14.1' - pkg.sha256sum '6766ada7101d292b42b8b15681120acd68effa4a9660935853cf6d61f0d984d4' + when '8.15.0' + pkg.sha256sum 'd85cfc79dc505ff800cb1d321a320183035011fa08cb301356425d86be8fc53c' else raise "curl version #{version} has not been configured; Cannot continue." end diff --git a/configs/components/git.rb b/configs/components/git.rb deleted file mode 100644 index 364d60c2..00000000 --- a/configs/components/git.rb +++ /dev/null @@ -1,137 +0,0 @@ -##### -# Component release information: -# https://github.com/git/git/tags -# https://github.com/git/git/tree/master/Documentation/RelNotes -##### -component "git" do |pkg, settings, platform| - if platform.is_windows? - pkg.version "2.49.0" - pkg.md5sum "971cdee7c0feaa1e41369c46da88d1000a24e79a6f50191c820100338fb7eca5" - - release = "1" - pkg.url "https://github.com/git-for-windows/git/releases/download/v#{pkg.get_version.split('.')[0..2].join('.')}.windows.#{release}/MinGit-#{pkg.get_version}-64-bit.zip" - pkg.mirror "#{settings[:buildsources_url]}/MinGit-#{pkg.get_version}-64-bit.zip" - else - pkg.version "2.49.0" - pkg.sha256sum "f8047f572f665bebeb637fd5f14678f31b3ca5d2ff9a18f20bd925bd48f75d3c" - pkg.url "https://mirrors.edge.kernel.org/pub/software/scm/git/git-#{pkg.get_version}.tar.gz" - pkg.mirror "#{settings[:buildsources_url]}/git-#{pkg.get_version}.tar.gz" - end - - pkg.build_requires 'curl' unless platform.is_windows? - - build_deps = [] - - if platform.is_deb? - build_deps += [ - "dh-autoreconf", - "libexpat1-dev", - "libz-dev", - ] - elsif platform.is_sles? - build_deps += [ - "autoconf", - "libexpat-devel", - "zlib-devel", - ] - elsif platform.is_rpm? - build_deps += [ - "dh-autoreconf", - "expat-devel", - "zlib-devel", - ] - elsif platform.is_windows? - build_deps += [ - "7zip.commandline", - ] - end - - if platform.name.match(/^el\-(?:8|9)\-(?:x86_64|aarch64)/) - build_deps.reject! { |r| r == 'dh-autoreconf' } - end - - build_deps.each do |dep| - pkg.build_requires dep - end - - prefix = File.join(settings[:privatedir], 'git') - execdir = File.join(prefix, 'lib', 'git-core') - - make_flags = [ - "-j$(shell expr $(shell #{platform[:num_cores]}) + 1)", - "prefix=#{prefix}", - "gitexecdir=#{execdir}", - "libexecdir=#{execdir}", - "NO_INSTALL_HARDLINKS=1", - "BLK_SHA1=1", - "GNU_ROFF=1", - "NO_PERL=1", - "NO_PYTHON=1", - "NO_TCLTK=1", - "NO_GETTEXT=1", - "CFLAGS=\"#{settings[:cflags]}\"", - "LDFLAGS=\"#{settings[:ldflags]}\"", - "CURL_CONFIG=\"#{settings[:prefix]}/bin/curl-config\"", - ] - - if platform.is_macos? - # This lets us build/link against vendored OpenSSL instead. - make_flags << "NO_APPLE_COMMON_CRYPTO=1" - end - - if settings[:git_sysconfdir] - make_flags << "sysconfdir=#{settings[:git_sysconfdir]}" - end - - make_argv = make_flags.join(' ') - - pkg.build do - if platform.is_windows? - # We are using a pre-compiled minimal archive of Git for Windows so - # there is no build step. - "true" - else - "#{platform[:make]} #{make_argv}" - end - end - - pkg.install do - if platform.is_windows? - install_cmds = [ - "mkdir -p #{prefix}", - "cp --recursive --target-directory=#{prefix} *", - ] - else - install_cmds = [ "#{platform[:make]} #{make_argv} install" ] - - # make install includes a lot of things we don't actually need in the package, - # so we delete the stuff we don't want after install, this list is mostly based on - # the Debian maintained package build script - install_cmds += [ - "rm -f #{prefix}/bin/git-cvsserver", - "rm -f #{prefix}/bin/gitk", - "rm -f #{execdir}/git-archimport", - "rm -f #{execdir}/git-cvs", - "rm -f #{execdir}/git-p4", - "rm -f #{execdir}/git-svn", - "rm -f #{execdir}/git-send-email", - "rm -f #{execdir}/git-gui", - "rm -f #{execdir}/git-citool", - "rm -Rf #{prefix}/share/git-gui", - "rm -Rf #{prefix}/share/gitk", - "rm -Rf #{prefix}/share/gitweb", - "rm -Rf #{prefix}/share/locale", - "rm -Rf #{prefix}/share/man", - "rm -Rf #{prefix}/share/perl5/Git/SVN*", - ] - - if platform.is_deb? - install_cmds << "rm -Rf #{prefix}/lib/x86_64-linux-gnu" - elsif platform.is_rpm? - install_cmds << "rm -Rf #{prefix}/lib64" - end - end - - install_cmds - end -end diff --git a/configs/components/libffi.rb b/configs/components/libffi.rb index 7f8541cb..8b65e979 100644 --- a/configs/components/libffi.rb +++ b/configs/components/libffi.rb @@ -2,8 +2,8 @@ # Component release information: https://github.com/libffi/libffi/releases ##### component 'libffi' do |pkg, settings, platform| - pkg.version '3.4.8' - pkg.sha256sum 'bc9842a18898bfacb0ed1252c4febcc7e78fa139fd27fdc7a3e30d9d9356119b' + pkg.version '3.5.2' + pkg.sha256sum 'f3a3082a23b37c293a4fcd1053147b371f2ff91fa7ea1b2a52e335676bac82dc' pkg.url "https://github.com/libffi/libffi/releases/download/v#{pkg.get_version}/#{pkg.get_name}-#{pkg.get_version}.tar.gz" pkg.mirror "#{settings[:buildsources_url]}/#{pkg.get_name}-#{pkg.get_version}.tar.gz" diff --git a/configs/components/libicu.rb b/configs/components/libicu.rb deleted file mode 100644 index 3a6655ce..00000000 --- a/configs/components/libicu.rb +++ /dev/null @@ -1,114 +0,0 @@ -##### -# Component release information: https://github.com/unicode-org/icu/releases -# Notes: -# This is incredibly out of date. Need to investigate if we can and should -# update it. -###### -component 'libicu' do |pkg, settings, platform| - ## SOURCE METADATA - pkg.version '62.1' - underscore_version = pkg.get_version.gsub('.', '_') - dash_version = pkg.get_version.gsub('.', '-') - pkg.md5sum '490ad9d920158e0314e10ba74ae9a150' - pkg.url "https://github.com/unicode-org/icu/releases/download/release-#{dash_version}/icu4c-#{underscore_version}-src.tgz" - pkg.mirror "#{settings[:buildsources_url]}/icu4c-#{underscore_version}-src.tgz" - pkg.dirname "icu/source" - - # Instead of using the pre-built data library included in the icu source, we - # build our own custom library with certain unnecessary bits of data removed - # to reduce filesize. - pkg.add_source("#{settings[:buildsources_url]}/icu4c-#{underscore_version}-data.zip", sum: "07e03444244883ef9789a56fc25010c0") - - # These rules restrict the set of locales we build, which significantly - # reduces the size of the resulting package. - %w[curr lang locales region unit zone].each do |dir| - pkg.add_source("file://resources/files/libicu/#{dir}_reslocal.mk") - end - - if platform.is_linux? - if platform.name =~ /el-6|redhatfips-7/ - pkg.build_requires 'pl-gcc' - else - pkg.build_requires 'gcc' - end - pkg.build_requires 'unzip' - elsif platform.is_windows? - pkg.build_requires '7zip.commandline' - end - - ## BUILD CONFIGURATION - if platform.is_windows? - pkg.environment 'PATH', "$(shell cygpath -u #{settings[:gcc_bindir]}):$(shell cygpath -u #{settings[:chocolatey_bin]}):$(PATH)" - pkg.environment 'CYGWIN', settings[:cygwin] - pkg.environment 'CC', settings[:cc] - pkg.environment 'CXX', settings[:cxx] - pkg.environment 'MAKE', platform[:make] - elsif platform.is_macos? - pkg.environment 'PATH', '/opt/pl-build-tools/bin:$(PATH):/usr/local/bin' - else - pkg.environment 'PATH', '/opt/pl-build-tools/bin:$(PATH):/usr/local/bin' - end - - ## BUILD COMMANDS - pkg.configure do - if platform.is_windows? - icu_platform = 'MinGW' - icu_flags = "--host #{platform.platform_triple}" - # Workaround for http://bugs.icu-project.org/trac/ticket/12896 - cxx_flags = '-DU_USE_STRTOD_L=0' - elsif platform.is_macos? - icu_platform = 'MacOSX' - icu_flags = '--enable-rpath' - else - icu_platform = 'Linux/gcc' - end - - [# Remove the pre-built data library from the source tarball and copy in - # the data sources - "rm -rf data && mv ../../icu4c-#{underscore_version}-data/data data", - # Removing these makefiles prevents building conversion tables for - # encodings we don't need, reducing the resulting filesize - "rm data/mappings/ucmfiles.mk data/mappings/ucmebcdic.mk", - "for file in ../../*_reslocal.mk; do mv $$file data/$$(basename $$file _reslocal.mk)/reslocal.mk; done", - "LDFLAGS='#{settings[:ldflags]}' CXXFLAGS='#{cxx_flags}' ./runConfigureICU #{icu_platform} #{icu_flags} --prefix=#{settings[:prefix]}"] - end - - pkg.build do - if platform.is_macos? && platform.is_cross_compiled? - # In order to cross compile icu on macOS, we have to build twice. Once for - # the current build platform, then again for the intended host platform in - # a different directory, while passing the first directory as the - # `with-cross-build` option. - # - # The `runConfigureICU` script doesn't support cross-compiling, so copy - # the icu_flags from above and call `./configure` directly with the - # options needed to cross compile. - icu_flags = '--enable-rpath' - [ - "#{platform[:make]} -j$(shell expr $(shell #{platform[:num_cores]}) + 1) VERBOSE=1", - "mkdir build.arm64", - "cd build.arm64", - "CXX='clang++ -target arm64-apple-macos12' CC='clang -target arm64-apple-macos12' ../configure #{icu_flags} --prefix=#{settings[:prefix]} --host=arm-apple-darwin --build=x86_64-apple-darwin --with-cross-build=$$PWD/..", - "#{platform[:make]} -j$(shell expr $(shell #{platform[:num_cores]}) + 1) VERBOSE=1" - ] - else - ["#{platform[:make]} -j$(shell expr $(shell #{platform[:num_cores]}) + 1)"] - end - end - - pkg.install do - if platform.is_macos? && platform.is_cross_compiled? - install_cmds = ["cd build.arm64 && #{platform[:make]} -j$(shell expr $(shell #{platform[:num_cores]}) + 1) install"] - else - install_cmds = ["#{platform[:make]} -j$(shell expr $(shell #{platform[:num_cores]}) + 1) install"] - end - - # ICU incorrectly installs its .dlls to lib instead of bin on windows, so - # we have to move them... - if platform.is_windows? - install_cmds << "mv #{settings[:libdir]}/icu*.dll #{settings[:bindir]}" - end - install_cmds - end -end - diff --git a/configs/components/libxml2.rb b/configs/components/libxml2.rb index b34190cc..6e604a05 100644 --- a/configs/components/libxml2.rb +++ b/configs/components/libxml2.rb @@ -4,8 +4,8 @@ # https://github.com/GNOME/libxml2/tags ##### component "libxml2" do |pkg, settings, platform| - pkg.version '2.13.8' - pkg.sha256sum '277294cb33119ab71b2bc81f2f445e9bc9435b893ad15bb2cd2b0e859a0ee84a' + pkg.version '2.14.5' + pkg.sha256sum '03d006f3537616833c16c53addcdc32a0eb20e55443cba4038307e3fa7d8d44b' libxml2_version_y = pkg.get_version.gsub(/(\d+)\.(\d+)(\.\d+)?/, '\1.\2') pkg.url "https://download.gnome.org/sources/libxml2/#{libxml2_version_y}/libxml2-#{pkg.get_version}.tar.xz" diff --git a/configs/components/openssl-3.0.rb b/configs/components/openssl-3.0.rb index 7aa6f157..2bde2256 100644 --- a/configs/components/openssl-3.0.rb +++ b/configs/components/openssl-3.0.rb @@ -6,8 +6,8 @@ # need to move to the 3.5.x LTS stream in the next year. ##### component 'openssl' do |pkg, settings, platform| - pkg.version '3.0.16' - pkg.sha256sum '57e03c50feab5d31b152af2b764f10379aecd8ee92f16c985983ce4a99f7ef86' + pkg.version '3.0.17' + pkg.sha256sum 'dfdd77e4ea1b57ff3a6dbde6b0bdc3f31db5ac99e7fdd4eaf9e1fbb6ec2db8ce' pkg.url "https://github.com/openssl/openssl/releases/download/openssl-#{pkg.get_version}/openssl-#{pkg.get_version}.tar.gz" pkg.mirror "#{settings[:buildsources_url]}/openssl-#{pkg.get_version}.tar.gz" diff --git a/configs/components/post-additional-rubies.rb b/configs/components/post-additional-rubies.rb deleted file mode 100644 index f97d9c15..00000000 --- a/configs/components/post-additional-rubies.rb +++ /dev/null @@ -1,6 +0,0 @@ -component "post-additional-rubies" do |pkg, settings, platform| - pkg.build do - [ "rm -rf #{settings[:prefix]}/include/openssl", - "mv /tmp/openssl #{settings[:prefix]}/include/openssl"] - end -end diff --git a/configs/components/pre-additional-rubies.rb b/configs/components/pre-additional-rubies.rb deleted file mode 100644 index 6c6bc190..00000000 --- a/configs/components/pre-additional-rubies.rb +++ /dev/null @@ -1,5 +0,0 @@ -component "pre-additional-rubies" do |pkg, settings, platform| - pkg.build do - ["mv #{settings[:prefix]}/include/openssl /tmp/openssl"] - end -end diff --git a/configs/components/ruby-shadow.rb b/configs/components/ruby-shadow.rb index 4424bf60..1473782b 100644 --- a/configs/components/ruby-shadow.rb +++ b/configs/components/ruby-shadow.rb @@ -5,7 +5,7 @@ ##### component "ruby-shadow" do |pkg, settings, platform| pkg.url "https://github.com/apalmblad/ruby-shadow" - pkg.ref "refs/tags/2.5.0" + pkg.ref "refs/tags/2.5.1" pkg.build_requires "ruby-#{settings[:ruby_version]}" if !platform.is_cross_compiled? && platform.architecture == 'sparc' diff --git a/configs/components/rubygem-aws-eventstream.rb b/configs/components/rubygem-aws-eventstream.rb index b9029646..ddaff756 100644 --- a/configs/components/rubygem-aws-eventstream.rb +++ b/configs/components/rubygem-aws-eventstream.rb @@ -4,8 +4,8 @@ # https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-eventstream/CHANGELOG.md ##### component "rubygem-aws-eventstream" do |pkg, settings, platform| - pkg.version "1.3.0" - pkg.md5sum "e50f43c1f2d7805bbeaa155c6b52e033" + pkg.version '1.4.0' + pkg.sha256sum '116bf85c436200d1060811e6f5d2d40c88f65448f2125bc77ffce5121e6e183b' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-aws-partitions.rb b/configs/components/rubygem-aws-partitions.rb index 9a4d6a6c..8e62f917 100644 --- a/configs/components/rubygem-aws-partitions.rb +++ b/configs/components/rubygem-aws-partitions.rb @@ -4,8 +4,8 @@ # https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-partitions/CHANGELOG.md ##### component "rubygem-aws-partitions" do |pkg, settings, platform| - pkg.version "1.989.0" - pkg.md5sum "42f902bac67b87a13561d6599b0b17e3" + pkg.version '1.1154.0' + pkg.sha256sum 'be80a8e07b87ce6c936eb251a8f371a887e07ed21ca7f45e5e1b66949eb77294' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-aws-sdk-core.rb b/configs/components/rubygem-aws-sdk-core.rb index 8392d50c..4b18e834 100644 --- a/configs/components/rubygem-aws-sdk-core.rb +++ b/configs/components/rubygem-aws-sdk-core.rb @@ -4,8 +4,8 @@ # https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-sdk-core/CHANGELOG.md ##### component "rubygem-aws-sdk-core" do |pkg, settings, platform| - pkg.version "3.209.1" - pkg.md5sum "7444e5ca941b52a4487c502bf0e80bd9" + pkg.version '3.232.0' + pkg.sha256sum '05291ae0da4fb69e9b6494fcc2d839584e8345714a93cd01f0f1bf11475619f2' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-aws-sdk-ec2.rb b/configs/components/rubygem-aws-sdk-ec2.rb index fbc9681a..e2fd558e 100644 --- a/configs/components/rubygem-aws-sdk-ec2.rb +++ b/configs/components/rubygem-aws-sdk-ec2.rb @@ -4,8 +4,8 @@ # https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-sdk-ec2/CHANGELOG.md ##### component "rubygem-aws-sdk-ec2" do |pkg, settings, platform| - pkg.version "1.481.0" - pkg.md5sum "bbe900b317e117849d7a440dd1f1e12b" + pkg.version '1.555.0' + pkg.sha256sum 'e323b6a5f810b97e51fc64befc4c88dba4dfa81c8ebb841907bad4cb7969f92f' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-aws-sigv4.rb b/configs/components/rubygem-aws-sigv4.rb index 0563191c..53bfd865 100644 --- a/configs/components/rubygem-aws-sigv4.rb +++ b/configs/components/rubygem-aws-sigv4.rb @@ -4,8 +4,8 @@ # https://github.com/aws/aws-sdk-ruby/blob/version-3/gems/aws-sigv4/CHANGELOG.md ##### component "rubygem-aws-sigv4" do |pkg, settings, platform| - pkg.version "1.10.0" - pkg.md5sum "f9875621945414c4ee48113a3cb7076e" + pkg.version '1.12.1' + pkg.sha256sum '6973ff95cb0fd0dc58ba26e90e9510a2219525d07620c8babeb70ef831826c00' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-base64.rb b/configs/components/rubygem-base64.rb new file mode 100644 index 00000000..5d445eeb --- /dev/null +++ b/configs/components/rubygem-base64.rb @@ -0,0 +1,11 @@ +##### +# Component release information: +# https://rubygems.org/gems/base64 +# https://github.com/ruby/base64/releases +##### +component 'rubygem-base64' do |pkg, settings, platform| + pkg.version '0.3.0' + pkg.sha256sum '27337aeabad6ffae05c265c450490628ef3ebd4b67be58257393227588f5a97b' + + instance_eval File.read('configs/components/_base-rubygem.rb') +end diff --git a/configs/components/rubygem-bindata.rb b/configs/components/rubygem-bindata.rb index 31a57b05..fe28752a 100644 --- a/configs/components/rubygem-bindata.rb +++ b/configs/components/rubygem-bindata.rb @@ -4,8 +4,8 @@ # https://github.com/dmendel/bindata/blob/master/ChangeLog.rdoc ##### component 'rubygem-bindata' do |pkg, settings, platform| - pkg.version '2.5.0' - pkg.md5sum 'c893016c3b689893b033e12536faeeab' + pkg.version '2.5.1' + pkg.sha256sum '53186a1ec2da943d4cb413583d680644eb810aacbf8902497aac8f191fad9e58' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-bundler.rb b/configs/components/rubygem-bundler.rb deleted file mode 100644 index db560e52..00000000 --- a/configs/components/rubygem-bundler.rb +++ /dev/null @@ -1,22 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/bundler -# https://github.com/rubygems/rubygems/blob/master/bundler/CHANGELOG.md -##### -component "rubygem-bundler" do |pkg, settings, _platform| - pkg.version '2.3.26' - pkg.sha256sum '1ee53cdf61e728ad82c6dbff06cfcd8551d5422e88e86203f0e2dbe9ae999e09' - - instance_eval File.read('configs/components/_base-rubygem.rb') - - pkg.install do - install_commands = [] - install_commands << "#{settings[:gem_install]} bundler-#{pkg.get_version}.gem" - - settings[:additional_rubies].each do |_rubyver, local_settings| - install_commands << "#{local_settings[:gem_install]} bundler-#{pkg.get_version}.gem" - end - - install_commands - end -end diff --git a/configs/components/rubygem-childprocess.rb b/configs/components/rubygem-childprocess.rb deleted file mode 100644 index f84222da..00000000 --- a/configs/components/rubygem-childprocess.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/childprocess -# https://github.com/enkessler/childprocess/releases -##### -component "rubygem-childprocess" do |pkg, settings, platform| - pkg.version "5.0.0" - pkg.sha256sum '0746b7ab1d6c68156e64a3767631d7124121516192c0492929a7f0af7310d835' - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-colored2.rb b/configs/components/rubygem-colored2.rb index e7d6124f..4408f288 100644 --- a/configs/components/rubygem-colored2.rb +++ b/configs/components/rubygem-colored2.rb @@ -4,8 +4,8 @@ # https://github.com/kigster/colored2/releases ##### component 'rubygem-colored2' do |pkg, settings, platform| - pkg.version '3.1.2' - pkg.md5sum '6f63f5121c6bc7c7986288dce653ce95' + pkg.version '4.0.3' + pkg.sha256sum '63e1038183976287efc43034f5cca17fb180b4deef207da8ba78d051cbce2b37' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-concurrent-ruby.rb b/configs/components/rubygem-concurrent-ruby.rb index e681d846..2aff2e49 100644 --- a/configs/components/rubygem-concurrent-ruby.rb +++ b/configs/components/rubygem-concurrent-ruby.rb @@ -4,16 +4,8 @@ # https://github.com/ruby-concurrency/concurrent-ruby/blob/master/CHANGELOG.md ##### component 'rubygem-concurrent-ruby' do |pkg, settings, platform| - # Projects may define a :rubygem_concurrent_ruby_version setting - version = settings[:rubygem_concurrent_ruby_version] || '1.2.3' - pkg.version version - - case version - when '1.2.3' - pkg.sha256sum '82fdd3f8a0816e28d513e637bb2b90a45d7b982bdf4f3a0511722d2e495801e2' - else - raise "rubygem-concurrent-ruby #{version} has not been configured; Cannot continue." - end + pkg.version '1.3.5' + pkg.sha256sum '813b3e37aca6df2a21a3b9f1d497f8cbab24a2b94cab325bffe65ee0f6cbebc6' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-connection_pool.rb b/configs/components/rubygem-connection_pool.rb index cabebd09..a4418683 100644 --- a/configs/components/rubygem-connection_pool.rb +++ b/configs/components/rubygem-connection_pool.rb @@ -2,6 +2,10 @@ # Component release information: # https://rubygems.org/gems/connection_pool # https://github.com/mperham/connection_pool/blob/main/Changes.md +# Notes: +# 2025-09-03: 2.5.0 changes behavior to reap idle connections after 60 seconds by default. +# We need to test this before upgrading to ensure it doesn't break anything or +# affect performance. There are no security fixes between 2.4.1 and 2.5.4. ##### component 'rubygem-connection_pool' do |pkg, settings, platform| pkg.version '2.4.1' diff --git a/configs/components/rubygem-deep_merge.rb b/configs/components/rubygem-deep_merge.rb index f63d4380..e76faccc 100644 --- a/configs/components/rubygem-deep_merge.rb +++ b/configs/components/rubygem-deep_merge.rb @@ -4,20 +4,12 @@ # https://github.com/danielsdeleo/deep_merge/blob/master/CHANGELOG ##### component "rubygem-deep_merge" do |pkg, settings, platform| - # Projects may define a :rubygem_deep_merge_version setting, or we use 1.0.1 by default: - version = settings[:rubygem_deep_merge_version] || '1.0.1' - pkg.version version - - case version - when "1.0.1" - pkg.md5sum "6f30bc4727f1833410f6a508304ab3c1" - when "1.2.2" - pkg.md5sum "57447247ff4e736cb5ff9b60206f0b5e" - else - raise "rubygem-deep_merge version #{version} has not been configured; Cannot continue." - end - + pkg.version '1.2.2' + pkg.sha256sum '83ced3a3d7f95f67de958d2ce41b1874e83c8d94fe2ddbff50c8b4b82323563a' + instance_eval File.read('configs/components/_base-rubygem.rb') + # Overwrite the base rubygem's default GEM_HOME with the vendor gem directory + # shared by puppet and puppetserver. Fall-back to gem_home for other projects. pkg.environment "GEM_HOME", (settings[:puppet_gem_vendor_dir] || settings[:gem_home]) end diff --git a/configs/components/rubygem-diff-lcs.rb b/configs/components/rubygem-diff-lcs.rb deleted file mode 100644 index a41bb085..00000000 --- a/configs/components/rubygem-diff-lcs.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/diff-lcs -# https://github.com/halorgium/diff-lcs/releases -##### -component "rubygem-diff-lcs" do |pkg, settings, platform| - pkg.version "1.5.1" - pkg.sha256sum "273223dfb40685548436d32b4733aa67351769c7dea621da7d9dd4813e63ddfe" - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-ed25519.rb b/configs/components/rubygem-ed25519.rb index 0c28f5f3..056ea244 100644 --- a/configs/components/rubygem-ed25519.rb +++ b/configs/components/rubygem-ed25519.rb @@ -4,8 +4,8 @@ # https://github.com/RubyCrypto/ed25519/blob/main/CHANGES.md ##### component 'rubygem-ed25519' do |pkg, _settings, _platform| - pkg.version '1.3.0' - pkg.md5sum 'd810e3aa82d0a0fb9b9d7ca6146121e4' + pkg.version '1.4.0' + pkg.sha256sum '16e97f5198689a154247169f3453ef4cfd3f7a47481fde0ae33206cdfdcac506' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday-em_http.rb b/configs/components/rubygem-faraday-em_http.rb index c098b39c..0c08e1ed 100644 --- a/configs/components/rubygem-faraday-em_http.rb +++ b/configs/components/rubygem-faraday-em_http.rb @@ -4,8 +4,8 @@ # https://github.com/lostisland/faraday-em_http/releases ##### component 'rubygem-faraday-em_http' do |pkg, settings, platform| - pkg.version '1.0.0' - pkg.md5sum '4b14f4a6132802f235f79e8ab987e3c2' + pkg.version '2.0.1' + pkg.sha256sum '05d3845d0b298a7dfbfb8205db39d10f1bc898d455be7a678ca6f460aba71632' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday-em_synchrony.rb b/configs/components/rubygem-faraday-em_synchrony.rb index b926de82..e2ad52a3 100644 --- a/configs/components/rubygem-faraday-em_synchrony.rb +++ b/configs/components/rubygem-faraday-em_synchrony.rb @@ -4,8 +4,8 @@ # https://github.com/lostisland/faraday-em_synchrony/releases ##### component 'rubygem-faraday-em_synchrony' do |pkg, settings, platform| - pkg.version '1.0.0' - pkg.md5sum '95c919f72c9c13de42cdd19c4caebcc5' + pkg.version '1.0.1' + pkg.sha256sum 'bf3ce45dcf543088d319ab051f80985ea6d294930635b7a0b966563179f81750' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday-excon.rb b/configs/components/rubygem-faraday-excon.rb index e0dbbec4..e4756167 100644 --- a/configs/components/rubygem-faraday-excon.rb +++ b/configs/components/rubygem-faraday-excon.rb @@ -5,8 +5,8 @@ # https://github.com/excon/faraday-excon/releases ##### component 'rubygem-faraday-excon' do |pkg, settings, platform| - pkg.version '1.1.0' - pkg.md5sum '91d075ce12868a30a520af0588930927' + pkg.version '2.3.0' + pkg.sha256sum 'c5fc7175ab284b164496559e35f550587ec5b028b3cdbb40b7ebe83aa7e5b575' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday-httpclient.rb b/configs/components/rubygem-faraday-httpclient.rb index c13302ce..62e6cf97 100644 --- a/configs/components/rubygem-faraday-httpclient.rb +++ b/configs/components/rubygem-faraday-httpclient.rb @@ -4,8 +4,8 @@ # https://github.com/lostisland/faraday-httpclient/releases ##### component 'rubygem-faraday-httpclient' do |pkg, settings, platform| - pkg.version '1.0.1' - pkg.md5sum '97c44d6016b1db347252b54a57f3e424' + pkg.version '2.0.2' + pkg.sha256sum 'd95fbe60cce5a87e157957d67c539a4c22fb8b0b0611d493a939cdde19d8d67c' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday-multipart.rb b/configs/components/rubygem-faraday-multipart.rb index 91cad1f7..a90b65e0 100644 --- a/configs/components/rubygem-faraday-multipart.rb +++ b/configs/components/rubygem-faraday-multipart.rb @@ -4,8 +4,8 @@ # https://github.com/lostisland/faraday-multipart/releases ##### component 'rubygem-faraday-multipart' do |pkg, settings, platform| - pkg.version '1.0.4' - pkg.md5sum '84b6d08b9165737064b3db89c71fb422' + pkg.version '1.1.1' + pkg.sha256sum '77a18ff40149030fd1aef55bb4fc7a67ce46419a8a3fcd010e28c2526e8d8903' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday-net_http.rb b/configs/components/rubygem-faraday-net_http.rb index 1f8bdeb9..37bf660c 100644 --- a/configs/components/rubygem-faraday-net_http.rb +++ b/configs/components/rubygem-faraday-net_http.rb @@ -4,18 +4,8 @@ # https://github.com/lostisland/faraday-net_http/releases ##### component 'rubygem-faraday-net_http' do |pkg, settings, platform| - version = settings[:rubygem_faraday_net_http_version] || '1.0.2' - - case version - when '1.0.2' - pkg.version '1.0.2' - pkg.md5sum 'b8e560b8cd7c008a7fd1686143428337' - when '3.3.0' - pkg.version '3.3.0' - pkg.md5sum '7e6378aaa271587dd4109795c0a05769' - else - raise "rubygem-faraday-net_http version #{version} is not supported" - end + pkg.version '3.4.1' + pkg.sha256sum '095757fae7872b94eac839c08a1a4b8d84fd91d6886cfbe75caa2143de64ab3b' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday-net_http_persistent.rb b/configs/components/rubygem-faraday-net_http_persistent.rb index e9809511..d75eb217 100644 --- a/configs/components/rubygem-faraday-net_http_persistent.rb +++ b/configs/components/rubygem-faraday-net_http_persistent.rb @@ -4,18 +4,8 @@ # https://github.com/lostisland/faraday-net_http_persistent/releases ##### component 'rubygem-faraday-net_http_persistent' do |pkg, settings, platform| - version = settings[:rubygem_faraday_net_http_persistent_version] || '1.2.0' - - case version - when '1.2.0' - pkg.version '1.2.0' - pkg.md5sum 'e13bafd2297cbf703e0385e142c9ce62' - when '2.3.0' - pkg.version '2.3.0' - pkg.md5sum 'b8003472ed288c44021dcfed574353b2' - else - raise "rubygem-faraday-net_http_persistent version #{version} is not supported" - end + pkg.version '2.3.1' + pkg.sha256sum '23ffba37d6a27807a10f033d01918ec958aa73fa6ff0fccfbcd5ce2d2e68fca3' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday-patron.rb b/configs/components/rubygem-faraday-patron.rb index 0b6d8fbd..524f1e4a 100644 --- a/configs/components/rubygem-faraday-patron.rb +++ b/configs/components/rubygem-faraday-patron.rb @@ -4,8 +4,8 @@ # https://github.com/lostisland/faraday-patron/releases ##### component 'rubygem-faraday-patron' do |pkg, settings, platform| - pkg.version '1.0.0' - pkg.md5sum '918c3b3a432993441e083c1f37715c8d' + pkg.version '2.0.2' + pkg.sha256sum 'cd4b77d48e3c638ce25c22b6affe2714cf13af99bfa8348c1c7f6733fc5f2086' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday-rack.rb b/configs/components/rubygem-faraday-rack.rb index da3e2b89..fdaedf7c 100644 --- a/configs/components/rubygem-faraday-rack.rb +++ b/configs/components/rubygem-faraday-rack.rb @@ -4,8 +4,8 @@ # https://github.com/lostisland/faraday-rack/releases ##### component 'rubygem-faraday-rack' do |pkg, settings, platform| - pkg.version '1.0.0' - pkg.md5sum 'e1f15e1a8e72e3d38c7973550e11925e' + pkg.version '2.1.3' + pkg.sha256sum '9869993a8f1010ade286bda697dea43a8f29f0ab760877d73ec7de5d1d18faed' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday-retry.rb b/configs/components/rubygem-faraday-retry.rb index 043bf6d6..dc825ae6 100644 --- a/configs/components/rubygem-faraday-retry.rb +++ b/configs/components/rubygem-faraday-retry.rb @@ -4,8 +4,8 @@ # https://github.com/lostisland/faraday-retry/releases ##### component 'rubygem-faraday-retry' do |pkg, settings, platform| - pkg.version '1.0.3' - pkg.md5sum '77177d55f1b8df8a3dcb06aab3e03389' + pkg.version '2.3.2' + pkg.sha256sum '2402d2029032ebd238a2046221e67f6ef0da78c5a8ce8cd4f8b9c62e4d6451d1' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday.rb b/configs/components/rubygem-faraday.rb index b4d562d7..15b47a23 100644 --- a/configs/components/rubygem-faraday.rb +++ b/configs/components/rubygem-faraday.rb @@ -4,18 +4,8 @@ # https://github.com/lostisland/faraday/releases ##### component 'rubygem-faraday' do |pkg, settings, platform| - version = settings[:rubygem_faraday_version] || '1.10.3' - - case version - when '1.10.3' - pkg.version '1.10.3' - pkg.md5sum 'c7b56130721c0b055c071bec593e2446' - when '2.12.0' - pkg.version '2.12.0' - pkg.md5sum 'c0248b00a32c46b64cd2a172c96409ec' - else - raise "rubygem-faraday version #{version} is not supported" - end + pkg.version '2.13.4' + pkg.sha256sum 'c719ff52cfd0dbaeca79dd83ed3aeea3f621032abf8bc959d1c05666157cac26' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-faraday_middleware.rb b/configs/components/rubygem-faraday_middleware.rb deleted file mode 100644 index f39c8181..00000000 --- a/configs/components/rubygem-faraday_middleware.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/faraday_middleware -# https://github.com/lostisland/faraday_middleware/releases -##### -component 'rubygem-faraday_middleware' do |pkg, settings, platform| - pkg.version '1.2.1' - pkg.md5sum 'c1093335f486314a2a68757cafebdaab' - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-fast_gettext.rb b/configs/components/rubygem-fast_gettext.rb index f5442c61..40b8387f 100644 --- a/configs/components/rubygem-fast_gettext.rb +++ b/configs/components/rubygem-fast_gettext.rb @@ -4,19 +4,18 @@ # https://github.com/grosser/fast_gettext/blob/master/CHANGELOG ##### component "rubygem-fast_gettext" do |pkg, settings, platform| - version = settings[:rubygem_fast_gettext_version] || '2.4.0' - pkg.version version - - case version - when '2.4.0' - pkg.sha256sum 'fd26c4c406aa10be34f0fd2847ce3ffdc1e9d9798de87538594757bbb9175fbf' - when '1.1.2' - pkg.sha256sum 'e868f02c24af746a137f3aaf898ca3660e6611aa7f1f96ce60e9a425130f2732' + if settings[:ruby_version].to_f >= 3.0 + pkg.version '4.1.0' + pkg.sha256sum '8e6b612676d601209662d2cd793ed4a067f834c8ca65ede793bacc9bcc1c2763' else - raise "rubygem-fast_gettext version #{version} has not been configured; Cannot continue." + # Remove this when we EOL OpenVox 7.x + pkg.version '2.4.0' + pkg.sha256sum 'fd26c4c406aa10be34f0fd2847ce3ffdc1e9d9798de87538594757bbb9175fbf' end instance_eval File.read('configs/components/_base-rubygem.rb') + # Overwrite the base rubygem's default GEM_HOME with the vendor gem directory + # shared by puppet and puppetserver. Fall-back to gem_home for other projects. pkg.environment "GEM_HOME", (settings[:puppet_gem_vendor_dir] || settings[:gem_home]) end diff --git a/configs/components/rubygem-getoptlong.rb b/configs/components/rubygem-getoptlong.rb deleted file mode 100644 index 8865f946..00000000 --- a/configs/components/rubygem-getoptlong.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/getoptlong -# https://github.com/ruby/getoptlong/releases -##### -component 'rubygem-getoptlong' do |pkg, settings, platform| - pkg.version '0.2.1' - pkg.md5sum 'ded8176bd043e45b082c05872fc513c3' - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-gettext-setup.rb b/configs/components/rubygem-gettext-setup.rb index afc3c6ed..c971a3db 100644 --- a/configs/components/rubygem-gettext-setup.rb +++ b/configs/components/rubygem-gettext-setup.rb @@ -4,17 +4,8 @@ # https://github.com/puppetlabs/gettext-setup-gem/tags ##### component "rubygem-gettext-setup" do |pkg, settings, platform| - version = settings[:rubygem_gettext_setup_version] || '1.1.0' - pkg.version version - - case version - when '1.1.0' - pkg.sha256sum '2ad4fa99575d869f18056941d98dc9cb2a656abc7b991f360fbd3e32d28fd4ec' - when '0.34' - pkg.sha256sum 'ea9d6f6be56908d54af8c7bb246f133fa9f8f634011df135c0a87520be57d6ed' - else - raise "rubygem-gettext-setup version #{version} has not been configured; Cannot continue." - end + pkg.version '1.1.0' + pkg.sha256sum '2ad4fa99575d869f18056941d98dc9cb2a656abc7b991f360fbd3e32d28fd4ec' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-gettext.rb b/configs/components/rubygem-gettext.rb index 6b35608c..2c248fa0 100644 --- a/configs/components/rubygem-gettext.rb +++ b/configs/components/rubygem-gettext.rb @@ -4,27 +4,13 @@ # https://github.com/ruby-gettext/gettext/releases ##### component "rubygem-gettext" do |pkg, settings, platform| - version = settings[:rubygem_gettext_version] || '3.4.9' - pkg.version version - - case version - when '3.4.9' - pkg.sha256sum '292864fe6a15c224cee4125a4a72fab426fdbb280e4cff3cfe44935f549b009a' - when '3.2.2' - pkg.sha256sum '9d250bb79273efb4a268977f219d2daca05cdc7473eff40288b8ab8ddd0f51b4' - else - raise "rubygem-gettext version #{version} has not been configured; Cannot continue." - end + pkg.version '3.5.1' + pkg.sha256sum '03ec7f71ea7e2cf1fdcd5e08682e98b81601922fdbee890b7bc6f63b0e1a512a' instance_eval File.read('configs/components/_base-rubygem.rb') + # Overwrite the base rubygem's default GEM_HOME with the vendor gem directory + # shared by puppet and puppetserver. Fall-back to gem_home for other projects. gem_home = settings[:puppet_gem_vendor_dir] || settings[:gem_home] pkg.environment "GEM_HOME", gem_home - - case version - when '3.4.3' - install do - "rm -f #{gem_home}/gems/gettext-3.4.3/test/fixtures/gtk_builder_ui_definitions.ui~" - end - end end diff --git a/configs/components/rubygem-hiera-eyaml.rb b/configs/components/rubygem-hiera-eyaml.rb index ff939ead..aa588b38 100644 --- a/configs/components/rubygem-hiera-eyaml.rb +++ b/configs/components/rubygem-hiera-eyaml.rb @@ -4,8 +4,8 @@ # https://github.com/voxpupuli/hiera-eyaml/blob/master/CHANGELOG.md ##### component 'rubygem-hiera-eyaml' do |pkg, settings, platform| - pkg.version '4.2.0' - pkg.sha256sum '9285e71bb4861d81cb48f961330ea45126d3a9fe88e8310ddbe7bdc2161ff4b3' + pkg.version '4.3.0' + pkg.sha256sum '19eba2ea9d70b2d56de064df9e3242860d8070d47ff9c9a6348b7fe94708ab0a' instance_eval File.read('configs/components/_base-rubygem.rb') diff --git a/configs/components/rubygem-highline.rb b/configs/components/rubygem-highline.rb index ea61d9e8..3b8e6409 100644 --- a/configs/components/rubygem-highline.rb +++ b/configs/components/rubygem-highline.rb @@ -5,11 +5,11 @@ ##### component 'rubygem-highline' do |pkg, settings, _platform| if settings[:ruby_version].to_f >= 3.2 - pkg.version '3.1.0' - pkg.md5sum 'ab3fa9d21304bf9ee9403ffca3d653d0' + pkg.version '3.1.2' + pkg.sha256sum '67cbd34d19f6ef11a7ee1d82ffab5d36dfd5b3be861f450fc1716c7125f4bb4a' else pkg.version '2.1.0' - pkg.md5sum '4209083bda845d47dcc05b7ab23f25fd' + pkg.sha256sum 'd63d7f472f8ffaa143725161ae6fb06895b5cb7527e0b4dac5ad1e4902c80cb9' end instance_eval File.read('configs/components/_base-rubygem.rb') diff --git a/configs/components/rubygem-hitimes.rb b/configs/components/rubygem-hitimes.rb deleted file mode 100644 index 9337cd06..00000000 --- a/configs/components/rubygem-hitimes.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/hitimes -# https://github.com/copiousfreetime/hitimes/blob/main/HISTORY.md -##### -component "rubygem-hitimes" do |pkg, settings, platform| - pkg.version "2.0.0" - pkg.sha256sum "0e8bc5829251bb43be3a44e5510dfd4d5cc4fae5112bf1d1b091679dd3cda947" - - instance_eval File.read('configs/components/_base-rubygem.rb') - end diff --git a/configs/components/rubygem-hocon.rb b/configs/components/rubygem-hocon.rb index da21ff64..17aaa944 100644 --- a/configs/components/rubygem-hocon.rb +++ b/configs/components/rubygem-hocon.rb @@ -6,18 +6,9 @@ # (Not up to date) https://github.com/puppetlabs/ruby-hocon/releases ##### component "rubygem-hocon" do |pkg, settings, platform| - version = settings[:rubygem_hocon_version] || '1.3.1' - pkg.version version - - case version - when '1.3.1' - pkg.md5sum "9182e012c0d48d0512a1b49179616709" - when '1.4.0' - pkg.sha256sum "e71023ed7c56ae780ec34c0ce7789a233bcead08c045d50bc7b3af40f5afcd80" - else - raise "rubygem-hocon version #{version} has not been configured; Cannot continue." - end - + pkg.version '1.4.0' + pkg.sha256sum "e71023ed7c56ae780ec34c0ce7789a233bcead08c045d50bc7b3af40f5afcd80" + instance_eval File.read('configs/components/_base-rubygem.rb') # Overwrite the base rubygem's default GEM_HOME with the vendor gem directory diff --git a/configs/components/rubygem-httpclient.rb b/configs/components/rubygem-httpclient.rb index 885daf2f..5de2d92a 100644 --- a/configs/components/rubygem-httpclient.rb +++ b/configs/components/rubygem-httpclient.rb @@ -1,11 +1,11 @@ ##### # Component release information: # https://rubygems.org/gems/httpclient -# https://github.com/nahi/httpclient/tags +# https://github.com/nahi/httpclient/blob/master/CHANGELOG.md ##### component 'rubygem-httpclient' do |pkg, settings, platform| - pkg.version '2.8.3' - pkg.md5sum '0d43c4680b56547b942caa0d9fefa8ec' + pkg.version '2.9.0' + pkg.sha256sum '4b645958e494b2f86c2f8a2f304c959baa273a310e77a2931ddb986d83e498c8' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-json-schema.rb b/configs/components/rubygem-json-schema.rb deleted file mode 100644 index 8e74d020..00000000 --- a/configs/components/rubygem-json-schema.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/json-schema -# https://github.com/voxpupuli/json-schema//blob/master/CHANGELOG.md -##### -component "rubygem-json-schema" do |pkg, settings, platform| - pkg.version "5.0.1" - pkg.sha256sum "bef71a82c600a42594911553522e143f7634affc198ed507ef3ded2f920a74a9" - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-jwt.rb b/configs/components/rubygem-jwt.rb index 96ebdf2f..38eba83e 100644 --- a/configs/components/rubygem-jwt.rb +++ b/configs/components/rubygem-jwt.rb @@ -2,6 +2,11 @@ # Component release information: # https://rubygems.org/gems/jwt # https://github.com/jwt/ruby-jwt/blob/v3.1.2/CHANGELOG.md +# Notes: +# This seems to only be for the bundled gcloud_inventory module +# in Bolt, which itself has a dependency of ~> 2.2.1. So probably +# this isn't even having the effect we want. Should take a look to +# see if we should just remove this component. ##### component "rubygem-jwt" do |pkg, settings, platform| pkg.version "2.7.1" diff --git a/configs/components/rubygem-locale.rb b/configs/components/rubygem-locale.rb index 0372424f..bf3d32fa 100644 --- a/configs/components/rubygem-locale.rb +++ b/configs/components/rubygem-locale.rb @@ -10,5 +10,7 @@ instance_eval File.read('configs/components/_base-rubygem.rb') + # Overwrite the base rubygem's default GEM_HOME with the vendor gem directory + # shared by puppet and puppetserver. Fall-back to gem_home for other projects. pkg.environment "GEM_HOME", (settings[:puppet_gem_vendor_dir] || settings[:gem_home]) end diff --git a/configs/components/rubygem-logger.rb b/configs/components/rubygem-logger.rb new file mode 100644 index 00000000..5e25a4e8 --- /dev/null +++ b/configs/components/rubygem-logger.rb @@ -0,0 +1,11 @@ +##### +# Component release information: +# https://rubygems.org/gems/logger +# https://github.com/ruby/logger/releases +##### +component 'rubygem-logger' do |pkg, settings, platform| + pkg.version '1.7.0' + pkg.sha256sum '196edec7cc44b66cfb40f9755ce11b392f21f7967696af15d274dde7edff0203' + + instance_eval File.read('configs/components/_base-rubygem.rb') +end diff --git a/configs/components/rubygem-mini_portile2.rb b/configs/components/rubygem-mini_portile2.rb index f1c4c43e..f3c4d65a 100644 --- a/configs/components/rubygem-mini_portile2.rb +++ b/configs/components/rubygem-mini_portile2.rb @@ -4,8 +4,8 @@ # https://github.com/flavorjones/mini_portile/blob/main/CHANGELOG.md ##### component 'rubygem-mini_portile2' do |pkg, _settings, _platform| - pkg.version '2.8.8' - pkg.sha256sum '8e47136cdac04ce81750bb6c09733b37895bf06962554e4b4056d78168d70a75' + pkg.version '2.8.9' + pkg.sha256sum '0cd7c7f824e010c072e33f68bc02d85a00aeb6fce05bb4819c03dfd3c140c289' instance_eval File.read('configs/components/_base-rubygem.rb') diff --git a/configs/components/rubygem-minitar.rb b/configs/components/rubygem-minitar.rb index 18cb7900..d119f2a9 100644 --- a/configs/components/rubygem-minitar.rb +++ b/configs/components/rubygem-minitar.rb @@ -2,6 +2,9 @@ # Component release information: # https://rubygems.org/gems/minitar # https://github.com/halostatue/minitar/blob/main/CHANGELOG.md +# Notes: +# 2025-07-23: 1.x changes a namespace, and there are no vulnerability fixes, +# so leaving this at 0.12.1 for now. ##### component 'rubygem-minitar' do |pkg, settings, platform| pkg.version '0.12.1' diff --git a/configs/components/rubygem-multi_json.rb b/configs/components/rubygem-multi_json.rb index 6a87ab1d..e74e483e 100644 --- a/configs/components/rubygem-multi_json.rb +++ b/configs/components/rubygem-multi_json.rb @@ -4,8 +4,13 @@ # https://github.com/sferik/multi_json/blob/main/CHANGELOG.md ##### component "rubygem-multi_json" do |pkg, settings, platform| - pkg.version '1.15.0' - pkg.md5sum '06f0ae43e84ec7b9357f4095f8417cd5' + if settings[:ruby_version].to_f >= 3.0 + pkg.version '1.17.0' + pkg.sha256sum '76581f6c96aebf2e85f8a8b9854829e0988f335e8671cd1a56a1036eb75e4a1b' + else + pkg.version '1.15.0' + pkg.sha256sum '1fd04138b6e4a90017e8d1b804c039031399866ff3fbabb7822aea367c78615d' + end instance_eval File.read('configs/components/_base-rubygem.rb') diff --git a/configs/components/rubygem-net-http-persistent.rb b/configs/components/rubygem-net-http-persistent.rb index 8ca2c40d..207fd354 100644 --- a/configs/components/rubygem-net-http-persistent.rb +++ b/configs/components/rubygem-net-http-persistent.rb @@ -4,8 +4,8 @@ # https://github.com/drbrain/net-http-persistent/blob/master/History.txt ##### component 'rubygem-net-http-persistent' do |pkg, settings, platform| - pkg.version '4.0.4' - pkg.md5sum '96df0d7f9801e167827a77dbf44cabf5' + pkg.version '4.0.6' + pkg.sha256sum '2abb3a04438edf6cb9e0e7e505969605f709eda3e3c5211beadd621a2c84dd5d' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-net-scp.rb b/configs/components/rubygem-net-scp.rb index f445f996..4246a20f 100644 --- a/configs/components/rubygem-net-scp.rb +++ b/configs/components/rubygem-net-scp.rb @@ -4,8 +4,8 @@ # https://github.com/net-ssh/net-scp/tags ##### component 'rubygem-net-scp' do |pkg, settings, platform| - pkg.version '4.0.0' - pkg.md5sum 'a97dcd90f88ec481fdf81b53cfc93285' + pkg.version '4.1.0' + pkg.sha256sum 'a99b0b92a1e5d360b0de4ffbf2dc0c91531502d3d4f56c28b0139a7c093d1a5d' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-net-ssh.rb b/configs/components/rubygem-net-ssh.rb index d71239a0..758a9ee4 100644 --- a/configs/components/rubygem-net-ssh.rb +++ b/configs/components/rubygem-net-ssh.rb @@ -4,25 +4,15 @@ # https://github.com/net-ssh/net-ssh/blob/master/CHANGES.txt ##### component "rubygem-net-ssh" do |pkg, settings, platform| - # Projects may define a :rubygem_net_ssh_version setting, or we use 6.1.0 by default: - version = settings[:rubygem_net_ssh_version] || '6.1.0' if platform.is_cross_compiled? && platform.is_solaris? # Building agent-runtime-7.x on Solaris 10/11 SPARC fails with newer versions of net-ssh because those platforms # use older (<= 2.1) versions of Ruby for cross-compiling. Pin to 4.2.0, the last version of net-ssh that supports # those older Rubies, until we deprecate those platforms. - version = '4.2.0' - end - pkg.version version - - case version - when "7.2.3" - pkg.md5sum "be25f70538cb8dcde68d924f001d75df" - when "6.1.0" - pkg.md5sum "383afadb1bd66a458a5d8d2d60736b3d" - when "4.2.0" + pkg.version '4.2.0' pkg.md5sum "fec5b151d84110b95ec0056017804491" else - raise "rubygem-net-ssh version #{version} has not been configured; Cannot continue." + pkg.version '7.3.0' + pkg.sha256sum '172076c4b30ce56fb25a03961b0c4da14e1246426401b0f89cba1a3b54bf3ef0' end instance_eval File.read('configs/components/_base-rubygem.rb') diff --git a/configs/components/rubygem-nokogiri.rb b/configs/components/rubygem-nokogiri.rb index 75ebe922..50d2f97e 100644 --- a/configs/components/rubygem-nokogiri.rb +++ b/configs/components/rubygem-nokogiri.rb @@ -4,8 +4,8 @@ # https://nokogiri.org/CHANGELOG.html ##### component 'rubygem-nokogiri' do |pkg, settings, _platform| - pkg.version '1.18.7' - pkg.sha256sum '6b63ff5defe48f30d1d3b3122f65255ca91df2caf5378c6e0482ce73ff46fb31' + pkg.version '1.18.9' + pkg.sha256sum 'ac5a7d93fd0e3cef388800b037407890882413feccca79eb0272a2715a82fa33' cflags = platform.is_macos? ? settings[:cflags] + '--with-cflags="-Wno-incompatible-function-pointer-types"' : '' settings["#{pkg.get_name}_gem_install_options".to_sym] = "--platform=ruby -- \ diff --git a/configs/components/rubygem-nori.rb b/configs/components/rubygem-nori.rb index b56309d7..f9d01248 100644 --- a/configs/components/rubygem-nori.rb +++ b/configs/components/rubygem-nori.rb @@ -5,7 +5,7 @@ # https://github.com/savonrb/nori/blob/main/CHANGELOG.md ##### component 'rubygem-nori' do |pkg, settings, platform| - if settings[:ruby_version].to_f >= 3.2 + if settings[:ruby_version].to_f >= 3.0 pkg.version '2.7.1' pkg.md5sum '83952a081b5e86d5aa62943ca9ccf312' else diff --git a/configs/components/rubygem-openfact.rb b/configs/components/rubygem-openfact.rb index bd25da2e..84afad9c 100644 --- a/configs/components/rubygem-openfact.rb +++ b/configs/components/rubygem-openfact.rb @@ -4,8 +4,8 @@ # https://github.com/OpenVoxProject/openfact/releases ##### component 'rubygem-openfact' do |pkg, settings, platform| - pkg.version '5.0.0' - pkg.md5sum '90a0f4a39606f3837298308cbfa19a09' + pkg.version '5.1.0' + pkg.sha256sum '569b93bc6941f8efeef55c138577ae2e3ff4f6727657f9f48925c4a657d3f70c' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-pastel.rb b/configs/components/rubygem-pastel.rb deleted file mode 100644 index c716c30d..00000000 --- a/configs/components/rubygem-pastel.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/pastel -# https://github.com/piotrmurach/pastel/blob/master/CHANGELOG.md -##### -component "rubygem-pastel" do |pkg, settings, platform| - pkg.version "0.8.0" - pkg.sha256sum '481da9fb7d2f6e6b1a08faf11fa10363172dc40fd47848f096ae21209f805a75' - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-pathspec.rb b/configs/components/rubygem-pathspec.rb deleted file mode 100644 index c18688a7..00000000 --- a/configs/components/rubygem-pathspec.rb +++ /dev/null @@ -1,12 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/pathspec -# https://github.com/highb/pathspec-ruby/releases -# https://github.com/highb/pathspec-ruby/blob/master/CHANGELOG.md -##### -component "rubygem-pathspec" do |pkg, settings, platform| - pkg.version "1.1.3" - pkg.sha256sum "c4e7ff4c4019499488874e21c37a1e2473d5123cfce6f13ecb07f42c0f8c5d23" - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-prime.rb b/configs/components/rubygem-prime.rb index 1d78a6ff..e9c8e695 100644 --- a/configs/components/rubygem-prime.rb +++ b/configs/components/rubygem-prime.rb @@ -4,8 +4,8 @@ # https://github.com/ruby/prime/releases ##### component 'rubygem-prime' do |pkg, settings, platform| - pkg.version '0.1.3' - pkg.sha256sum 'baf031c50d6ce923594913befc8ac86a3251bffb9d6a5e8b03687962054e53e3' + pkg.version '0.1.4' + pkg.sha256sum '4d755ebf7c2994a6f3a3fee0d072063be3fff2d4042ebff6cd5eebd4747a225e' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-public_suffix.rb b/configs/components/rubygem-public_suffix.rb index 699ae025..11eb90c2 100644 --- a/configs/components/rubygem-public_suffix.rb +++ b/configs/components/rubygem-public_suffix.rb @@ -4,13 +4,8 @@ # https://github.com/weppos/publicsuffix-ruby/blob/main/CHANGELOG.md ##### component 'rubygem-public_suffix' do |pkg, settings, platform| - if settings[:ruby_version].to_f >= 3.2 - pkg.version '6.0.1' - pkg.md5sum '12ec93094a3467364c8c6ee5a6e8325a' - else - pkg.version '5.1.1' - pkg.md5sum '0895274ce1ffdadffcd979ced832b851' - end + pkg.version '6.0.2' + pkg.sha256sum 'bfa7cd5108066f8c9602e0d6d4114999a5df5839a63149d3e8b0f9c1d3558394' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-puppet-modulebuilder.rb b/configs/components/rubygem-puppet-modulebuilder.rb deleted file mode 100644 index a0ea7d0c..00000000 --- a/configs/components/rubygem-puppet-modulebuilder.rb +++ /dev/null @@ -1,12 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/puppet-modulebuilder -# https://github.com/puppetlabs/puppet-modulebuilder/releases -# https://github.com/puppetlabs/puppet-modulebuilder/blob/main/CHANGELOG.md -##### -component 'rubygem-puppet-modulebuilder' do |pkg, settings, platform| - pkg.version '1.0.0' - pkg.sha256sum 'cf9d9e8146aeae780b7c61f30847a4cb631debcf708c21281976d5ed79820cfd' - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-puppet-resource_api.rb b/configs/components/rubygem-puppet-resource_api.rb index 9d7c923f..52c21317 100644 --- a/configs/components/rubygem-puppet-resource_api.rb +++ b/configs/components/rubygem-puppet-resource_api.rb @@ -5,8 +5,8 @@ # https://github.com/puppetlabs/puppet-resource_api/blob/main/CHANGELOG.md ##### component 'rubygem-puppet-resource_api' do |pkg, settings, platform| - pkg.version '1.9.0' - pkg.md5sum '34a4d89f3241421aae2eb95e0af73cee' + pkg.version '2.0.0' + pkg.sha256sum '4649fcb5d5e5f8cbda0887f706b95be5b52a089bcf98ce8ebf0496c3266fd9c4' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-puppet-strings.rb b/configs/components/rubygem-puppet-strings.rb index 947e8fe4..24cfa7e4 100644 --- a/configs/components/rubygem-puppet-strings.rb +++ b/configs/components/rubygem-puppet-strings.rb @@ -5,20 +5,9 @@ # https://github.com/puppetlabs/puppet-strings/blob/main/CHANGELOG.md ##### component 'rubygem-puppet-strings' do |pkg, settings, platform| - # 2021.7.x LTS has a jruby that does not work with puppet-strings - # version 4.y. The 4 series requires ruby >= 2.7 - # Default to 4.x sereies but allow it to be configuratble by project. - version = settings[:rubygem_puppet_strings_version] || '4.1.2' - pkg.version(version) + pkg.version '5.0.0' + pkg.sha256sum '9f93221dab4d9c7441d0c7e4d9b5066e65dc325209487e6638b5cb3b7056fa8b' - case version - when '3.0.1' - pkg.md5sum '7c9a8936509a0434c39975a75197472c' - when '4.1.2' - pkg.md5sum 'e19f3fdc60692df346d1a348ab9facee' - else - raise "Invalid version #{version} for rubygem-puppet-strings; Cannot continue." - end instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-puppet.rb b/configs/components/rubygem-puppet.rb index 9d0d66ec..3ec9f19b 100644 --- a/configs/components/rubygem-puppet.rb +++ b/configs/components/rubygem-puppet.rb @@ -6,29 +6,8 @@ # To be replaced with openvox ##### component 'rubygem-puppet' do |pkg, settings, platform| - # Projects may define a :rubygem_puppet_version setting, or we use this - # version by default - version = settings[:rubygem_puppet_version] || '6.28.0' - pkg.version version - - # There are 4 platform-specific puppet gems for each tag: - # - # generic - # universal-darwin - # x64-mingw32 - # x86_mingw32 - # - # Always use the generic version below - case version - when '8.10.0' - pkg.md5sum '3d186db20ec581f6d6aef0b26b0e1275' - when '7.32.1' - pkg.md5sum 'e4e91fae76bb76d4e899b9cf7aafe365' - when '6.28.0' - pkg.md5sum '31520d986869f9362c88c7d6a4a5c103' - else - raise "Invalid version #{version} for rubygem-puppet; Cannot continue." - end - + pkg.version '8.10.0' + pkg.sha256sum 'f2f5de8f5a794ec49ac30f42806c9ffb5cd42c9908ab3014f9d8ea68a21c2a3a' + instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-puppet_forge.rb b/configs/components/rubygem-puppet_forge.rb index e3ba0fab..0b3b8d56 100644 --- a/configs/components/rubygem-puppet_forge.rb +++ b/configs/components/rubygem-puppet_forge.rb @@ -3,21 +3,14 @@ # https://rubygems.org/gems/puppet_forge # https://github.com/puppetlabs/forge-ruby/releases # https://github.com/puppetlabs/forge-ruby/blob/main/CHANGELOG.md +# Notes: +# 2025-07-23: Leaving this at 5.x for now since 6.x requires the new +# minitar gem, which OpenVox also uses. Need to fix it up +# in the agent before bumping this. ##### component 'rubygem-puppet_forge' do |pkg, settings, platform| - version = settings[:rubygem_puppet_forge_version] || '3.2.0' - pkg.version version - - case version - when '3.2.0' - pkg.version '3.2.0' - pkg.md5sum '501d5f9f742007504d0d60ce6cf0c27f' - when '5.0.4' - pkg.version '5.0.4' - pkg.md5sum '04a2ca2f027ed41d9142ced587b71bd7' - else - raise "rubygem-puppet_forge version #{version} is not supported" - end + pkg.version '5.0.4' + pkg.md5sum '04a2ca2f027ed41d9142ced587b71bd7' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-r10k.rb b/configs/components/rubygem-r10k.rb index 24ac11b2..a09e6924 100644 --- a/configs/components/rubygem-r10k.rb +++ b/configs/components/rubygem-r10k.rb @@ -4,18 +4,8 @@ # https://github.com/puppetlabs/r10k/blob/main/CHANGELOG.mkd ##### component 'rubygem-r10k' do |pkg, settings, platform| - version = settings[:rubygem_r10k_version] || '3.16.2' - - case version - when '3.16.2' - pkg.version '3.16.2' - pkg.sha256sum '9775a726ba94a543bf49952b10dcd23690a54f5d2a361746b78b1292abe32eb9' - when '4.1.0' - pkg.version '4.1.0' - pkg.sha256sum '64e5b9e1a6cbb4006c96477d8c34ce589fe1c278117311f452d9f30b9cc86e4c' - else - raise "rubygem-r10k version #{version} is not supported" - end + pkg.version '5.0.2' + pkg.sha256sum '48e24e2b8447cdc56b03303b741247a5255bb40f170c9d113c5d3dbd8c83e8b3' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-rexml.rb b/configs/components/rubygem-rexml.rb index 1c9e850a..607ad6a5 100644 --- a/configs/components/rubygem-rexml.rb +++ b/configs/components/rubygem-rexml.rb @@ -4,8 +4,8 @@ # https://github.com/ruby/rexml/releases ##### component 'rubygem-rexml' do |pkg, settings, platform| - pkg.version '3.4.1' - pkg.sha256sum 'c74527a9a0a04b4ec31dbe0dc4ed6004b960af943d8db42e539edde3a871abca' + pkg.version '3.4.2' + pkg.sha256sum '1384268554a37af5da5279431ca3f2f37d46f09ffdd6c95e17cc84c83ea7c417' settings["#{pkg.get_name}_remove_older_versions".to_sym] = true diff --git a/configs/components/rubygem-rgen.rb b/configs/components/rubygem-rgen.rb index 1852c6e1..aa659eb7 100644 --- a/configs/components/rubygem-rgen.rb +++ b/configs/components/rubygem-rgen.rb @@ -4,8 +4,8 @@ # https://github.com/mthiede/rgen/blob/master/CHANGELOG ##### component 'rubygem-rgen' do |pkg, settings, platform| - pkg.version '0.9.1' - pkg.md5sum 'fafb97eeb3ea5385f70b2ff83af6d8b6' + pkg.version '0.10.2' + pkg.sha256sum 'd978f84887a0b4815ff3a0e0c4d43a15cdeeac9fd4da02db8ec3ecd0f222f371' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-ruby_smb.rb b/configs/components/rubygem-ruby_smb.rb index 62a3ce7c..559566b4 100644 --- a/configs/components/rubygem-ruby_smb.rb +++ b/configs/components/rubygem-ruby_smb.rb @@ -2,6 +2,9 @@ # Component release information: # https://rubygems.org/gems/ruby_smb # https://github.com/rapid7/ruby_smb/tags +# Notes: +# This is horrifically out of date. Need to try updating it carefully +# and make sure this doesn't break Bolt SMB support. ##### component 'rubygem-ruby_smb' do |pkg, settings, platform| pkg.version '1.1.0' diff --git a/configs/components/rubygem-rubyntlm.rb b/configs/components/rubygem-rubyntlm.rb index 118354fe..c5b53c7d 100644 --- a/configs/components/rubygem-rubyntlm.rb +++ b/configs/components/rubygem-rubyntlm.rb @@ -2,7 +2,6 @@ # Component release information: # https://rubygems.org/gems/rubyntlm # https://github.com/WinRb/rubyntlm/releases -# https://github.com/WinRb/rubyntlm/releases ##### component 'rubygem-rubyntlm' do |pkg, settings, platform| # Do not update past this version without solving the jruby/ruby2.7 issue described in the commit diff --git a/configs/components/rubygem-rubyzip.rb b/configs/components/rubygem-rubyzip.rb index 11d9e16e..fe7615e3 100644 --- a/configs/components/rubygem-rubyzip.rb +++ b/configs/components/rubygem-rubyzip.rb @@ -5,8 +5,8 @@ # https://github.com/rubyzip/rubyzip/blob/master/Changelog.md ##### component 'rubygem-rubyzip' do |pkg, settings, platform| - pkg.version '2.3.2' - pkg.md5sum 'd8396c7f2cefde071353f2a09ee7d2f6' + pkg.version '3.0.2' + pkg.sha256sum '30f75c0b631e23c0891453acbcc019bc1496cd44f4a3ade4ff76bc09a595cfa6' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-scanf.rb b/configs/components/rubygem-scanf.rb index e6a98192..a5a4abec 100644 --- a/configs/components/rubygem-scanf.rb +++ b/configs/components/rubygem-scanf.rb @@ -8,5 +8,8 @@ pkg.md5sum "6a48b02b5d7109331afa8bd9d55a802e" instance_eval File.read('configs/components/_base-rubygem.rb') + + # Overwrite the base rubygem's default GEM_HOME with the vendor gem directory + # shared by puppet and puppetserver. Fall-back to gem_home for other projects. pkg.environment "GEM_HOME", (settings[:puppet_gem_vendor_dir] || settings[:gem_home]) end diff --git a/configs/components/rubygem-semantic_puppet.rb b/configs/components/rubygem-semantic_puppet.rb index f0f72134..c2326643 100644 --- a/configs/components/rubygem-semantic_puppet.rb +++ b/configs/components/rubygem-semantic_puppet.rb @@ -4,24 +4,19 @@ # https://github.com/puppetlabs/semantic_puppet/blob/main/CHANGELOG.md ##### component "rubygem-semantic_puppet" do |pkg, settings, platform| - version = settings[:rubygem_semantic_puppet_version] || '1.1.1' if platform.is_cross_compiled? && platform.is_solaris? # solaris 10/11 sparc are failing in agent-runtime-7.x installing semantic_puppet because the gem requires ruby >= 2.7.0 # when cross compiling on sparc, we use ancient pl-ruby or equivalent. For these older platforms, use older semantic_puppet - version = '1.0.4' - end - pkg.version version - - case version - when '1.0.4' - pkg.sha256sum "5d8380bf733c1552ef77e06a7c44a6d5b48def7d390ecf3bd71cad477f5ce13d" - when '1.1.1' - pkg.sha256sum "15ff5b48d7f856549eb66b927a8894d3668b211970c9d7dc07dd4db57f5c7a96" + pkg.version = '1.0.4' + pkg.sha256sum '5d8380bf733c1552ef77e06a7c44a6d5b48def7d390ecf3bd71cad477f5ce13d' else - raise "rubygem-semantic_puppet version #{version} has not been configured; Cannot continue." + pkg.version '1.1.1' + pkg.sha256sum '15ff5b48d7f856549eb66b927a8894d3668b211970c9d7dc07dd4db57f5c7a96' end - + instance_eval File.read('configs/components/_base-rubygem.rb') + # Overwrite the base rubygem's default GEM_HOME with the vendor gem directory + # shared by puppet and puppetserver. Fall-back to gem_home for other projects. pkg.environment "GEM_HOME", (settings[:puppet_gem_vendor_dir] || settings[:gem_home]) end diff --git a/configs/components/rubygem-sys-filesystem.rb b/configs/components/rubygem-sys-filesystem.rb index a83042ff..51d81f86 100644 --- a/configs/components/rubygem-sys-filesystem.rb +++ b/configs/components/rubygem-sys-filesystem.rb @@ -4,9 +4,13 @@ # https://github.com/djberg96/sys-filesystem/blob/main/CHANGES.md ##### component 'rubygem-sys-filesystem' do |pkg, settings, platform| - # 1.5.x removes support for Solaris - pkg.version '1.4.5' - pkg.sha256sum '1b61da4ace0f71fc4304126acf005fb8cd03677081bb352343199fddc9eaa56d' + if platform.is_solaris? + pkg.version '1.4.5' + pkg.sha256sum '1b61da4ace0f71fc4304126acf005fb8cd03677081bb352343199fddc9eaa56d' + else + pkg.version '1.5.3' + pkg.sha256sum '17b561d1be683c34bc53946461ea9d67012d8f395e7297db8c63b9018cb30ece' + end instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-terminal-table.rb b/configs/components/rubygem-terminal-table.rb index 3395d889..425beea4 100644 --- a/configs/components/rubygem-terminal-table.rb +++ b/configs/components/rubygem-terminal-table.rb @@ -4,8 +4,8 @@ # https://github.com/tj/terminal-table/releases ##### component 'rubygem-terminal-table' do |pkg, settings, platform| - pkg.version '3.0.2' - pkg.md5sum '3916a3147871d6421688e575d5939e12' + pkg.version '4.0.0' + pkg.sha256sum 'f504793203f8251b2ea7c7068333053f0beeea26093ec9962e62ea79f94301d2' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-text.rb b/configs/components/rubygem-text.rb index 994698df..e05fae26 100644 --- a/configs/components/rubygem-text.rb +++ b/configs/components/rubygem-text.rb @@ -9,5 +9,7 @@ instance_eval File.read('configs/components/_base-rubygem.rb') + # Overwrite the base rubygem's default GEM_HOME with the vendor gem directory + # shared by puppet and puppetserver. Fall-back to gem_home for other projects. pkg.environment "GEM_HOME", (settings[:puppet_gem_vendor_dir] || settings[:gem_home]) end diff --git a/configs/components/rubygem-thor.rb b/configs/components/rubygem-thor.rb index dbeff580..a49f5a6f 100644 --- a/configs/components/rubygem-thor.rb +++ b/configs/components/rubygem-thor.rb @@ -4,8 +4,8 @@ # https://github.com/rails/thor/releases ##### component 'rubygem-thor' do |pkg, settings, platform| - pkg.version '1.2.2' - pkg.md5sum 'cafae723e9fc9ab9bc834471cee2a906' + pkg.version '1.4.0' + pkg.sha256sum '8763e822ccb0f1d7bee88cde131b19a65606657b847cc7b7b4b82e772bcd8a3d' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-tty-color.rb b/configs/components/rubygem-tty-color.rb deleted file mode 100644 index 3b927858..00000000 --- a/configs/components/rubygem-tty-color.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/tty-color -# https://github.com/piotrmurach/tty-color/blob/master/CHANGELOG.md -##### -component "rubygem-tty-color" do |pkg, settings, platform| - pkg.version "0.6.0" - pkg.sha256sum '6f9c37ca3a4e2367fb2e6d09722762647d6f455c111f05b59f35730eeb24332a' - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-tty-cursor.rb b/configs/components/rubygem-tty-cursor.rb deleted file mode 100644 index c4a2754a..00000000 --- a/configs/components/rubygem-tty-cursor.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/tty-cursor -# https://github.com/piotrmurach/tty-cursor/blob/master/CHANGELOG.md -##### -component "rubygem-tty-cursor" do |pkg, settings, platform| - pkg.version "0.7.1" - pkg.sha256sum "79534185e6a777888d88628b14b6a1fdf5154a603f285f80b1753e1908e0bf48" - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-tty-prompt.rb b/configs/components/rubygem-tty-prompt.rb deleted file mode 100644 index b9548c4b..00000000 --- a/configs/components/rubygem-tty-prompt.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/tty-prompt -# https://github.com/piotrmurach/tty-prompt/blob/master/CHANGELOG.md -##### -component "rubygem-tty-prompt" do |pkg, settings, platform| - pkg.version "0.23.1" - pkg.sha256sum "fcdbce905238993f27eecfdf67597a636bc839d92192f6a0eef22b8166449ec8" - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-tty-reader.rb b/configs/components/rubygem-tty-reader.rb deleted file mode 100644 index 2d14bc56..00000000 --- a/configs/components/rubygem-tty-reader.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/tty-reader -# https://github.com/piotrmurach/tty-reader/blob/master/CHANGELOG.md -##### -component "rubygem-tty-reader" do |pkg, settings, platform| - pkg.version "0.9.0" - pkg.sha256sum 'c62972c985c0b1566f0e56743b6a7882f979d3dc32ff491ed490a076f899c2b1' - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-tty-screen.rb b/configs/components/rubygem-tty-screen.rb deleted file mode 100644 index 1fc9538d..00000000 --- a/configs/components/rubygem-tty-screen.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/tty-screen -# https://github.com/piotrmurach/tty-screen/blob/master/CHANGELOG.md -##### -component "rubygem-tty-screen" do |pkg, settings, platform| - pkg.version "0.8.1" - pkg.sha256sum '6508657c38f32bdca64880abe201ce237d80c94146e1f9b911cba3c7823659a2' - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-tty-spinner.rb b/configs/components/rubygem-tty-spinner.rb deleted file mode 100644 index c6b1fe43..00000000 --- a/configs/components/rubygem-tty-spinner.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/tty-spinner -# https://github.com/piotrmurach/tty-spinner/blob/master/CHANGELOG.md -##### -component "rubygem-tty-spinner" do |pkg, settings, platform| - pkg.version "0.9.3" - pkg.sha256sum "0e036f047b4ffb61f2aa45f5a770ec00b4d04130531558a94bfc5b192b570542" - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-tty-which.rb b/configs/components/rubygem-tty-which.rb deleted file mode 100644 index 3b954e41..00000000 --- a/configs/components/rubygem-tty-which.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/tty-which -# https://github.com/piotrmurach/tty-which/blob/master/CHANGELOG.md -##### -component "rubygem-tty-which" do |pkg, settings, platform| - pkg.version "0.5.0" - pkg.sha256sum "5824055f0d6744c97e7c4426544f01d519c40d1806ef2ef47d9854477993f466" - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-unicode-display_width.rb b/configs/components/rubygem-unicode-display_width.rb index aac76d2f..deb397bd 100644 --- a/configs/components/rubygem-unicode-display_width.rb +++ b/configs/components/rubygem-unicode-display_width.rb @@ -4,8 +4,8 @@ # https://github.com/janlelis/unicode-display_width/blob/main/CHANGELOG.md ##### component 'rubygem-unicode-display_width' do |pkg, settings, platform| - pkg.version '2.6.0' - pkg.md5sum '77e719750e6acdd2dbbc9ee10b8b2cbe' + pkg.version '3.1.5' + pkg.sha256sum 'bf566817855ee7ee3adcf7bace0d5906cb14401417db59193f8a5fcedf02dd4e' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-webrick.rb b/configs/components/rubygem-webrick.rb index 2d9d643b..5f9d971a 100644 --- a/configs/components/rubygem-webrick.rb +++ b/configs/components/rubygem-webrick.rb @@ -4,8 +4,8 @@ # https://github.com/ruby/webrick/releases ##### component 'rubygem-webrick' do |pkg, settings, platform| - pkg.version '1.8.2' - pkg.md5sum 'adbdcb13788330c40b54c1134bf5d7a7' + pkg.version '1.9.1' + pkg.sha256sum 'b42d3c94f166f3fb73d87e9b359def9b5836c426fc8beacf38f2184a21b2a989' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-winrm.rb b/configs/components/rubygem-winrm.rb index 13ccafd4..2baca8bf 100644 --- a/configs/components/rubygem-winrm.rb +++ b/configs/components/rubygem-winrm.rb @@ -4,13 +4,8 @@ # https://github.com/WinRb/WinRM/releases ##### component 'rubygem-winrm' do |pkg, settings, platform| - if settings[:ruby_version].to_f >= 3.2 - pkg.version '2.3.9' - pkg.md5sum '3ee81372528048b8305334ab6f36b4e9' - else - pkg.version '2.3.6' - pkg.md5sum 'a99f8e81343f61caa441eb1397a1c6ae' - end + pkg.version '2.3.9' + pkg.sha256sum 'ef6b767c5772d06e186300b506ea5e65afb849904a551f8482a5cfc2a1be5d06' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/rubygem-wisper.rb b/configs/components/rubygem-wisper.rb deleted file mode 100644 index c7775016..00000000 --- a/configs/components/rubygem-wisper.rb +++ /dev/null @@ -1,11 +0,0 @@ -##### -# Component release information: -# https://rubygems.org/gems/wisper -# https://github.com/krisleech/wisper/blob/master/CHANGELOG.md -##### -component "rubygem-wisper" do |pkg, settings, platform| - pkg.version "2.0.1" - pkg.sha256sum "ce17bc5c3a166f241a2e6613848b025c8146fce2defba505920c1d1f3f88fae6" - - instance_eval File.read('configs/components/_base-rubygem.rb') -end diff --git a/configs/components/rubygem-yard.rb b/configs/components/rubygem-yard.rb index cfc22f2d..fc7c4b20 100644 --- a/configs/components/rubygem-yard.rb +++ b/configs/components/rubygem-yard.rb @@ -4,8 +4,8 @@ # https://github.com/lsegal/yard/releases ##### component 'rubygem-yard' do |pkg, settings, platform| - pkg.version '0.9.36' - pkg.md5sum 'ffaaaaafc1257e3bb98aea44fa47c05d' + pkg.version '0.9.37' + pkg.sha256sum 'a6e910399e78e613f80ba9add9ba7c394b1a935f083cccbef82903a3d2a26992' instance_eval File.read('configs/components/_base-rubygem.rb') end diff --git a/configs/components/runtime-client-tools.rb b/configs/components/runtime-client-tools.rb deleted file mode 100644 index 3d4f049d..00000000 --- a/configs/components/runtime-client-tools.rb +++ /dev/null @@ -1,23 +0,0 @@ -# This component exists to link in the gcc and stdc++ runtime libraries. -component "runtime-client-tools" do |pkg, settings, platform| - pkg.environment "PROJECT_SHORTNAME", "client-tools" - - if platform.is_windows? - lib_type = platform.architecture == "x64" ? "seh" : "sjlj" - ["libgcc_s_#{lib_type}-1.dll", 'libstdc++-6.dll', 'libwinpthread-1.dll'].each do |dll| - pkg.install_file File.join(settings[:gcc_bindir], dll), File.join(settings[:bindir], dll) - end - - # zlib is a runtime dependency of libcurl - pkg.build_requires "pl-zlib-#{platform.architecture}" - pkg.install_file "#{settings[:tools_root]}/bin/zlib1.dll", "#{settings[:bindir]}/zlib1.dll" - elsif platform.name =~ /el-6|redhatfips-7/ - libbase = platform.architecture =~ /64/ ? 'lib64' : 'lib' - libdir = "/opt/pl-build-tools/#{libbase}" - pkg.add_source "file://resources/files/runtime/runtime.sh" - pkg.install do - "bash runtime.sh #{libdir}" - end - end - # Nothing needed for platforms without pl-build-tools -end diff --git a/configs/components/runtime-pdk.rb b/configs/components/runtime-pdk.rb deleted file mode 100644 index d3e60783..00000000 --- a/configs/components/runtime-pdk.rb +++ /dev/null @@ -1,58 +0,0 @@ -# This component exists to link in the gcc and stdc++ runtime libraries. -component "runtime-pdk" do |pkg, settings, platform| - - if platform.is_windows? - lib_type = platform.architecture == "x64" ? "seh" : "sjlj" - ["libgcc_s_#{lib_type}-1.dll", 'libstdc++-6.dll', 'libwinpthread-1.dll'].each do |dll| - pkg.install_file File.join(settings[:gcc_bindir], dll), File.join(settings[:bindir], dll) - end - - tools_bindir = File.join(settings[:tools_root], 'bin') - - # curl, openssl, etc need zlib, so install in *main* bin dir - pkg.build_requires "pl-zlib-#{platform.architecture}" - pkg.install_file "#{tools_bindir}/zlib1.dll", "#{settings[:bindir]}/zlib1.dll" - - # zlib, gdbm, yaml-cpp and iconv are all runtime dependancies of ruby, and their libraries need - # to exist inside our primary ruby's bin dir - ruby_bindir = settings[:ruby_bindir] - pkg.install_file "#{tools_bindir}/zlib1.dll", "#{ruby_bindir}/zlib1.dll" - pkg.install_file "#{tools_bindir}/libgdbm-4.dll", "#{ruby_bindir}/libgdbm-4.dll" - pkg.install_file "#{tools_bindir}/libgdbm_compat-4.dll", "#{ruby_bindir}/libgdbm_compat-4.dll" - pkg.install_file "#{tools_bindir}/libiconv-2.dll", "#{ruby_bindir}/libiconv-2.dll" - pkg.install_file "#{tools_bindir}/libffi-6.dll", "#{ruby_bindir}/libffi-6.dll" if settings[:ruby_version].start_with?('2') - - # Copy the DLLs into additional ruby install bindirs as well. - if settings.has_key?(:additional_rubies) - settings[:additional_rubies].each do |rubyver, local_settings| - local_bindir = local_settings[:ruby_bindir] - pkg.install_file "#{tools_bindir}/zlib1.dll", "#{local_bindir}/zlib1.dll" - pkg.install_file "#{tools_bindir}/libgdbm-4.dll", "#{local_bindir}/libgdbm-4.dll" - pkg.install_file "#{tools_bindir}/libgdbm_compat-4.dll", "#{local_bindir}/libgdbm_compat-4.dll" - pkg.install_file "#{tools_bindir}/libiconv-2.dll", "#{local_bindir}/libiconv-2.dll" - pkg.install_file "#{tools_bindir}/libffi-6.dll", "#{local_bindir}/libffi-6.dll" if rubyver.start_with?('2') - end - end - - elsif platform.is_macos? - - # Do nothing - - else # Linux and Solaris systems - if (platform.is_el? && platform.os_version.to_i >= 8) || - (platform.is_debian? && platform.os_version.to_i >= 10) || - (platform.is_ubuntu? && platform.os_version.split('.').first.to_i >= 20) - # On newer linux platforms we are no longer using the pl-build-tools - # package and instead relying on standard distribution versions of - # gcc, etc. - libdir = "/usr/lib64" - else - libdir = "/opt/pl-build-tools/lib64" - end - - pkg.add_source "file://resources/files/runtime/runtime.sh" - pkg.install do - "bash runtime.sh #{libdir}" - end - end -end diff --git a/configs/components/virt-what.rb b/configs/components/virt-what.rb index ed9ac33a..d45a91d2 100644 --- a/configs/components/virt-what.rb +++ b/configs/components/virt-what.rb @@ -8,8 +8,8 @@ # SHOULD NOT USE as this is a fork. ##### component "virt-what" do |pkg, settings, platform| - pkg.version "1.25" - pkg.md5sum "2345f1ec5fa0836bff4071659730ac8f" + pkg.version '1.27' + pkg.sha256sum 'd4d9bd9d4ae59095597443fac663495315c7eb4330b872aa5f062df38ac69bf1' # 2025-08-05: The upstream site was down, so using a mirror here. Revert this back to the # original URL next time we bump this. diff --git a/configs/projects/_pdk-components.rb b/configs/projects/_pdk-components.rb deleted file mode 100644 index 3f19ea66..00000000 --- a/configs/projects/_pdk-components.rb +++ /dev/null @@ -1,106 +0,0 @@ -# This file is used to define the components that make up the PDK runtime package. - -if proj.ruby_major_version >= 3 - # Ruby 3.2 does not package these two libraries so we need to add them - proj.component 'libffi' - proj.component 'libyaml' -end - -# Always build the default openssl version -proj.component "openssl-#{proj.openssl_version}" - -# Common deps -proj.component 'curl' - -# Git and deps -proj.component 'git' - -# Ruby and deps -proj.component 'runtime-pdk' -proj.component 'puppet-ca-bundle' - -proj.component 'readline' if platform.is_macos? -proj.component 'augeas' unless platform.is_windows? -proj.component 'libxml2' unless platform.is_windows? -proj.component 'libxslt' unless platform.is_windows? -proj.component "ruby-#{proj.ruby_version}" - -proj.component 'ruby-augeas' unless platform.is_windows? -# We only build ruby-selinux for EL, Fedora, Debian and Ubuntu (amd64/i386) -if platform.is_el? || platform.is_fedora? || platform.is_debian? || (platform.is_ubuntu? && platform.architecture !~ /ppc64el$/) - proj.component 'ruby-selinux' -end - -# Additional Rubies -if proj.respond_to?(:additional_rubies) - proj.additional_rubies.each_key do |rubyver| - raise "Not sure which openssl version to use for ruby #{rubyver}" unless rubyver.start_with?("2.7") - - # old ruby versions don't support openssl 3 - proj.component "pre-additional-rubies" - proj.component "openssl-1.1.1" - proj.component "ruby-#{rubyver}" - - ruby_minor = rubyver.split('.')[0, 2].join('.') - - # Added to prevent conflicts with Bolt - proj.component 'rubygem-CFPropertyList' - - proj.component "ruby-#{ruby_minor}-augeas" unless platform.is_windows? - proj.component "ruby-#{ruby_minor}-selinux" if platform.is_el? || platform.is_fedora? - proj.component "post-additional-rubies" - end -end - -# PDK Rubygems -proj.component 'rubygem-ffi' -proj.component 'rubygem-locale' -proj.component 'rubygem-text' -proj.component 'rubygem-gettext' -proj.component 'rubygem-fast_gettext' -proj.component 'rubygem-gettext-setup' -proj.component 'rubygem-minitar' -proj.component 'rubygem-faraday' -proj.component 'rubygem-faraday-follow_redirects' -proj.component 'rubygem-semantic_puppet' -proj.component 'rubygem-faraday-net_http' - -# Bundler -proj.component 'rubygem-bundler' - -# Cri and deps -proj.component 'rubygem-cri' - -# Childprocess and deps -proj.component 'rubygem-childprocess' -proj.component 'rubygem-hitimes' - -## tty-reader and deps -proj.component 'rubygem-tty-screen' -proj.component 'rubygem-tty-cursor' -proj.component 'rubygem-wisper' -proj.component 'rubygem-tty-reader' - -## pastel and deps -proj.component 'rubygem-tty-color' -proj.component 'rubygem-pastel' - -## root tty gems -proj.component 'rubygem-tty-prompt' -proj.component 'rubygem-tty-spinner' -proj.component 'rubygem-tty-which' - -# json-schema and deps -proj.component 'rubygem-public_suffix' -proj.component 'rubygem-addressable' -proj.component 'rubygem-json-schema' - -# Other deps -proj.component 'rubygem-deep_merge' -proj.component 'rubygem-diff-lcs' -proj.component 'rubygem-pathspec' -proj.component 'rubygem-puppet_forge' -# PDK build -proj.component 'rubygem-puppet-modulebuilder' - -proj.component 'ansicon' if platform.is_windows? diff --git a/configs/projects/_shared-agent-components.rb b/configs/projects/_shared-agent-components.rb index 25cc08aa..ed0ce1ef 100644 --- a/configs/projects/_shared-agent-components.rb +++ b/configs/projects/_shared-agent-components.rb @@ -62,6 +62,12 @@ proj.component 'rubygem-fast_gettext' proj.component 'rubygem-ffi' +# These gems are still included in Ruby 3.2, but we include them because +# OpenFact requires them for Ruby 3.4 support, and the agent will need to +# do the same once we get to Ruby 3.4+ in OpenVox 9. +proj.component 'rubygem-logger' +proj.component 'rubygem-base64' + # We add rexml explicitly in here because even though ruby 3 ships with rexml as its default gem, the version # of rexml it ships with contains CVE-2024-41946, CVE-2024-41123, CVE-2024-35176 and CVE-2024-39908. # So, we add it here to update to a higher version diff --git a/configs/projects/_shared-client-tools-runtime.rb b/configs/projects/_shared-client-tools-runtime.rb deleted file mode 100644 index 784dfd9b..00000000 --- a/configs/projects/_shared-client-tools-runtime.rb +++ /dev/null @@ -1,115 +0,0 @@ -# This project is designed for reuse by branch-specific client-tools-runtime configs; -# See configs/projects/client-tools-runtime-.rb -unless defined?(proj) - warn('This is the base project for the client-tools runtime.') - warn('Please choose one of the other client-tools projects instead.') - exit 1 -end - -proj.setting(:runtime_project, 'client-tools') - -proj.generate_archives true -proj.generate_packages false - -proj.description "The client-tools runtime contains third-party components needed for client-tools" -proj.license "See components" -proj.vendor "Vox Pupuli " -proj.homepage "https://github.com/OpenVoxProject" -proj.identifier "org.voxpupuli" -proj.version_from_git - -platform = proj.get_platform - -if proj.settings[:openssl_version] - # already defined in the project -elsif platform.name =~ /^redhatfips-*/ - proj.setting(:openssl_version, '1.1.1-fips') -else - proj.setting(:openssl_version, '1.1.1') -end - -if platform.is_windows? - # Windows Installer settings. - proj.setting(:company_id, "PuppetLabs") - proj.setting(:product_id, "Client") - if platform.architecture == "x64" - proj.setting(:base_dir, "ProgramFiles64Folder") - else - proj.setting(:base_dir, "ProgramFilesFolder") - end - - proj.setting(:prefix, File.join("C:", proj.base_dir, proj.company_id, proj.product_id, 'tools')) -else - proj.setting(:prefix, "/opt/puppetlabs/client-tools") -end - -proj.setting(:bindir, File.join(proj.prefix, "bin")) -proj.setting(:libdir, File.join(proj.prefix, "lib")) -proj.setting(:includedir, File.join(proj.prefix, "include")) -proj.setting(:datadir, File.join(proj.prefix, "share")) -proj.setting(:mandir, File.join(proj.datadir, "man")) - -proj.setting(:host, "--host #{platform.platform_triple}") if platform.is_windows? -proj.setting(:platform_triple, platform.platform_triple) - -# These are the boost libraries we care about for leatherman -proj.setting(:boost_libs, ["chrono", "date_time", "filesystem", "locale", "log", "program_options", - "regex", "system", "thread"]) -proj.setting(:boost_link_option, "") -proj.setting(:boost_bootstrap_flags, "--without-icu") -proj.setting(:boost_b2_flags, "--disable-icu") -proj.setting(:boost_b2_install_flags, "boost.locale.icu=off") - -if platform.is_macos? - # For macOS, we should optimize for an older architecture than Apple - # currently ships for; there's a lot of older xeon chips based on - # that architecture still in use throughout the Mac ecosystem. - # Additionally, macOS doesn't use RPATH for linking. We shouldn't - # define it or try to force it in the linker, because this might - # break gcc or clang if they try to use the RPATH values we forced. - proj.setting(:cppflags, "-I#{proj.includedir}") - proj.setting(:ldflags, "-L#{proj.libdir} ") - if platform.is_cross_compiled? - # The core2 architecture is not available on M1 Macs - proj.setting(:cflags, "#{proj.cppflags}") - proj.setting(:host, "--host aarch64-apple-darwin --build x86_64-apple-darwin --target aarch64-apple-darwin") - elsif platform.architecture == 'arm64' - proj.setting(:cflags, "#{proj.cppflags}") - else - proj.setting(:cflags, "-march=core2 -msse4 #{proj.cppflags}") - end -elsif platform.is_windows? - arch = platform.architecture == "x64" ? "64" : "32" - proj.setting(:gcc_root, "C:/tools/mingw#{arch}") - proj.setting(:gcc_bindir, "#{proj.gcc_root}/bin") - proj.setting(:tools_root, "C:/tools/pl-build-tools") - proj.setting(:chocolatey_bin, 'C:/ProgramData/chocolatey/bin') - proj.setting(:cppflags, "-I#{proj.tools_root}/include -I#{proj.gcc_root}/include -I#{proj.includedir}") - proj.setting(:cflags, "#{proj.cppflags}") - proj.setting(:ldflags, "-L#{proj.tools_root}/lib -L#{proj.gcc_root}/lib -L#{proj.libdir} -Wl,--nxcompat -Wl,--dynamicbase") - proj.setting(:cygwin, "nodosfilewarning winsymlinks:native") -else - proj.setting(:tools_root, "/opt/pl-build-tools") - proj.setting(:cppflags, "-I#{proj.includedir} -I/opt/pl-build-tools/include") - proj.setting(:cflags, "#{proj.cppflags}") - proj.setting(:ldflags, "-L#{proj.libdir} -L/opt/pl-build-tools/lib -Wl,-rpath=#{proj.libdir}") -end - -# What to build? -# -------------- - -# Common deps -proj.component "runtime-client-tools" -proj.component "openssl-#{proj.openssl_version}" -proj.component "curl" -proj.component "puppet-ca-bundle" -proj.component "libicu" -proj.component "boost" - -# What to include in package? -proj.directory proj.prefix - -# Export the settings for the current project and platform as yaml during builds -proj.publish_yaml_settings - -proj.timeout 7200 if platform.is_windows? diff --git a/configs/projects/agent-runtime-7.x.rb b/configs/projects/agent-runtime-7.x.rb index 92d09aee..c1e7e4f2 100644 --- a/configs/projects/agent-runtime-7.x.rb +++ b/configs/projects/agent-runtime-7.x.rb @@ -2,10 +2,6 @@ # Set preferred component versions if they differ from defaults: proj.setting :ruby_version, '2.7.8' - proj.setting :rubygem_deep_merge_version, '1.2.2' - proj.setting :rubygem_fast_gettext_version, '1.1.2' - proj.setting :rubygem_gettext_version, '3.2.2' - proj.setting :rubygem_gettext_setup_version, '0.34' # Solaris and AIX depend on libedit which breaks augeas compliation starting with 1.13.0 if platform.is_solaris? || platform.is_aix? diff --git a/configs/projects/agent-runtime-main.rb b/configs/projects/agent-runtime-main.rb index c201013b..af2210e3 100644 --- a/configs/projects/agent-runtime-main.rb +++ b/configs/projects/agent-runtime-main.rb @@ -3,8 +3,6 @@ # Set preferred component versions if they differ from defaults: proj.setting :ruby_version, '3.2' # Leave the .Z out for Ruby 3.2 proj.setting :rubygem_highline_version, '3.0.1' - proj.setting :rubygem_hocon_version, '1.4.0' - proj.setting :rubygem_net_ssh_version, '7.2.3' # Solaris and AIX depend on libedit which breaks augeas compliation starting with 1.13.0 if platform.is_solaris? || platform.name == 'aix-7.1-ppc' diff --git a/configs/projects/bolt-runtime.rb b/configs/projects/bolt-runtime.rb index 2a175bed..8043f44b 100644 --- a/configs/projects/bolt-runtime.rb +++ b/configs/projects/bolt-runtime.rb @@ -5,16 +5,7 @@ proj.setting(:openssl_version, '3.0') # Legacy algos must be enabled in OpenSSL >= 3.0 for Bolt's WinRM transport to work. proj.setting(:use_legacy_openssl_algos, true) - proj.setting(:rubygem_net_ssh_version, '7.2.3') proj.setting(:augeas_version, '1.14.1') - # TODO: Can runtime projects use these updated versions? - proj.setting(:rubygem_deep_merge_version, '1.2.2') - proj.setting(:rubygem_puppet_forge_version, '5.0.4') - proj.setting(:rubygem_faraday_version, '2.12.0') - proj.setting(:rubygem_faraday_net_http_version, '3.3.0') - proj.setting(:rubygem_faraday_net_http_persistent_version, '2.3.0') - proj.setting(:rubygem_r10k_version, '4.1.0') - proj.setting(:rubygem_puppet_version, '8.10.0') platform = proj.get_platform @@ -129,6 +120,12 @@ proj.component 'rubygem-bcrypt_pbkdf' proj.component 'rubygem-ed25519' + # These gems are still included in Ruby 3.2, but we include them because + # OpenFact requires them for Ruby 3.4 support, and Bolt will need to + # do the same once we get to Ruby 3.4+ support. + proj.component 'rubygem-logger' + proj.component 'rubygem-base64' + # Puppet dependencies proj.component 'rubygem-hocon' proj.component 'rubygem-deep_merge' diff --git a/configs/projects/client-tools-runtime-main.rb b/configs/projects/client-tools-runtime-main.rb deleted file mode 100644 index 3447eb01..00000000 --- a/configs/projects/client-tools-runtime-main.rb +++ /dev/null @@ -1,6 +0,0 @@ -project 'client-tools-runtime-main' do |proj| - proj.setting(:openssl_version, '3.0') - - # Common settings - instance_eval File.read(File.join(File.dirname(__FILE__), '_shared-client-tools-runtime.rb')) -end diff --git a/resources/patches/ruby_32/ruby-shadow-rbconfig.patch b/resources/patches/ruby_32/ruby-shadow-rbconfig.patch index d8205c75..08c44732 100644 --- a/resources/patches/ruby_32/ruby-shadow-rbconfig.patch +++ b/resources/patches/ruby_32/ruby-shadow-rbconfig.patch @@ -12,14 +12,15 @@ diff --git a/extconf.rb b/extconf.rb index ac54233..55dcff5 100644 --- a/extconf.rb +++ b/extconf.rb -@@ -10,10 +10,11 @@ require 'rbconfig' +@@ -10,11 +10,11 @@ require 'rbconfig' $CFLAGS = case RUBY_VERSION when /^1\.9/; '-DRUBY19' when /^2\./; '-DRUBY19' +- when /^3\./; '-DRUBY19' + when /^3\./; RUBY_PLATFORM =~ /darwin/ ? '-DRUBY19 -fms-extensions' : '-DRUBY19' else; '' end - + -implementation = case CONFIG['host_os'] +implementation = case RbConfig::CONFIG['host_os'] when /linux/i; 'shadow'