Skip to content

Commit 5d6eb3d

Browse files
committed
(PA-4815) Updates fast_gettext gem to 2.2.0
Puppet projects will soon be using Ruby 3.2, which is not compatible with versions of fast_gettext earlier than 2.1 because of the deprecated taint checking features. This commit updates fast_gettext and related dependencies (gettext, gettext-setup) and r10k, whose gemspec was recently updated to allow for newer versions of the gettext stack as well. Newer versions of gettext introduce new dependencies on erubi and prime, which this commit adds as new components.
1 parent 17e00ee commit 5d6eb3d

11 files changed

+49
-19
lines changed

configs/components/rubygem-fast_gettext.rb

+7-7
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,14 @@
11
component "rubygem-fast_gettext" do |pkg, settings, platform|
2-
version = settings[:rubygem_fast_gettext_version] || '1.1.2'
2+
version = settings[:rubygem_fast_gettext_version] || '2.2.0'
33
pkg.version version
44

55
case version
6-
when '1.1.0'
7-
pkg.md5sum "fc0597bd4d84b749c579cc39c7ceda0f"
8-
when '1.1.2'
9-
pkg.md5sum "df5a2462d0e1d2e5d49bb233b841f4d6"
10-
else
11-
raise "rubygem-fast_gettext version #{version} has not been configured; Cannot continue."
6+
when '2.2.0'
7+
pkg.sha256sum '01804331afce7b7c918e7ebe1951a3507b24b3a0c0617429725dbd4a2f234ad8'
8+
when '1.1.2'
9+
pkg.sha256sum 'e868f02c24af746a137f3aaf898ca3660e6611aa7f1f96ce60e9a425130f2732'
10+
else
11+
raise "rubygem-fast_gettext version #{version} has not been configured; Cannot continue."
1212
end
1313

1414
instance_eval File.read('configs/components/_base-rubygem.rb')
+11-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,15 @@
11
component "rubygem-gettext-setup" do |pkg, settings, platform|
2-
pkg.version "0.34"
3-
pkg.md5sum "72e511431d138a7c3e062d5e06989a40"
2+
version = settings[:rubygem_gettext_setup_version] || '1.1.0'
3+
pkg.version version
4+
5+
case version
6+
when '1.1.0'
7+
pkg.sha256sum '2ad4fa99575d869f18056941d98dc9cb2a656abc7b991f360fbd3e32d28fd4ec'
8+
when '0.34'
9+
pkg.sha256sum 'ea9d6f6be56908d54af8c7bb246f133fa9f8f634011df135c0a87520be57d6ed'
10+
else
11+
raise "rubygem-gettext-setup version #{version} has not been configured; Cannot continue."
12+
end
413

514
instance_eval File.read('configs/components/_base-rubygem.rb')
615
end

configs/components/rubygem-gettext.rb

+5-6
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,12 @@
11
component "rubygem-gettext" do |pkg, settings, platform|
2-
# Projects may define a :rubygem_gettext_version setting, or we use 3.2.2 by default:
3-
version = settings[:rubygem_gettext_version] || '3.2.2'
2+
version = settings[:rubygem_gettext_version] || '3.4.3'
43
pkg.version version
54

65
case version
7-
when "3.2.2"
8-
pkg.md5sum "4cbb125f8d8206e9a8f3a90f6488e4da"
9-
when "3.2.9"
10-
pkg.md5sum "09a755cd03ab617835e20a2e910581f4"
6+
when '3.4.3'
7+
pkg.sha256sum '1b98e1272d0f55a56f519ee86d24e0fcd114b94c9d10b26e72512d65f9174251'
8+
when '3.2.2'
9+
pkg.sha256sum '9d250bb79273efb4a268977f219d2daca05cdc7473eff40288b8ab8ddd0f51b4'
1110
else
1211
raise "rubygem-gettext version #{version} has not been configured; Cannot continue."
1312
end

configs/components/rubygem-prime.rb

+7
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
component 'rubygem-prime' do |pkg, settings, platform|
2+
pkg.version '0.1.2'
3+
pkg.sha256sum 'd4e956cadfaf04de036dc7dc74f95bf6a285a62cc509b28b7a66b245d19fe3a4'
4+
5+
instance_eval File.read('configs/components/_base-rubygem.rb')
6+
end
7+

configs/components/rubygem-r10k.rb

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
component 'rubygem-r10k' do |pkg, settings, platform|
2-
pkg.version '3.15.0'
3-
pkg.md5sum 'e8ed305a7f2aa130c8be2e42a397a923'
2+
pkg.version '3.15.3'
3+
pkg.sha256sum '2b9cbdab2d52ae6572043978c71cc8b925d937253fa3e7c04613b914ee59d4b2'
44

55
instance_eval File.read('configs/components/_base-rubygem.rb')
66
end

configs/projects/_shared-pe-bolt-server.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@
3535

3636
# Set desired versions for gem components that offer multiple versions:
3737
# TODO: Can runtime projects use these updated versions?
38-
proj.setting(:rubygem_gettext_version, '3.2.9')
3938
proj.setting(:rubygem_deep_merge_version, '1.2.2')
4039
proj.setting(:rubygem_net_ssh_version, '6.1.0')
4140

@@ -81,6 +80,7 @@
8180
proj.component 'rubygem-text'
8281
proj.component 'rubygem-locale'
8382
proj.component 'rubygem-gettext'
83+
proj.component 'rubygem-prime'
8484
proj.component 'rubygem-fast_gettext'
8585
proj.component 'rubygem-semantic_puppet'
8686

configs/projects/agent-runtime-6.x.rb

+3
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,9 @@
22
# Set preferred component versions if they differ from defaults:
33
proj.setting :ruby_version, '2.5.9'
44
proj.setting :augeas_version, '1.12.0'
5+
proj.setting :rubygem_fast_gettext_version, '1.1.2'
6+
proj.setting :rubygem_gettext_version, '3.2.2'
7+
proj.setting :rubygem_gettext_setup_version, '0.34'
58

69
########
710
# Load shared agent settings

configs/projects/agent-runtime-7.x.rb

+4
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@
33
# Set preferred component versions if they differ from defaults:
44
proj.setting :ruby_version, '2.7.7'
55
proj.setting :rubygem_deep_merge_version, '1.2.2'
6+
proj.setting :rubygem_fast_gettext_version, '1.1.2'
7+
proj.setting :rubygem_gettext_version, '3.2.2'
8+
proj.setting :rubygem_gettext_setup_version, '0.34'
9+
610
# Solaris and AIX depend on libedit which breaks augeas compliation starting with 1.13.0
711
if platform.is_solaris? || platform.is_aix?
812
proj.setting :augeas_version, '1.12.0'

configs/projects/agent-runtime-main_ruby_32.rb

+4
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,10 @@
7373
proj.component 'rubygem-mini_portile2'
7474
end
7575

76+
# Dependencies for gettext for Ruby >= 3.2 (PA-4815)
77+
proj.component 'rubygem-erubi'
78+
proj.component 'rubygem-prime'
79+
7680
proj.component 'boost' if ENV['NO_PXP_AGENT'].to_s.empty?
7781
proj.component 'yaml-cpp' if ENV['NO_PXP_AGENT'].to_s.empty?
7882
end

configs/projects/bolt-runtime.rb

+1-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@
66
proj.setting(:rubygem_net_ssh_version, '6.1.0')
77
proj.setting(:augeas_version, '1.11.0')
88
# TODO: Can runtime projects use these updated versions?
9-
proj.setting(:rubygem_gettext_version, '3.2.9')
109
proj.setting(:rubygem_deep_merge_version, '1.2.2')
1110
proj.setting(:rubygem_puppet_version, '7.18.0')
1211

@@ -129,6 +128,7 @@
129128
proj.component 'rubygem-text'
130129
proj.component 'rubygem-locale'
131130
proj.component 'rubygem-gettext'
131+
proj.component 'rubygem-prime'
132132
proj.component 'rubygem-fast_gettext'
133133
proj.component 'rubygem-scanf'
134134
proj.component 'rubygem-semantic_puppet'

configs/projects/pdk-runtime.rb

+4
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,10 @@
33
proj.setting(:runtime_project, "pdk")
44
proj.setting(:openssl_version, '1.1.1')
55
proj.setting(:augeas_version, '1.13.0')
6+
proj.setting(:rubygem_fast_gettext_version, '1.1.2')
7+
proj.setting(:rubygem_gettext_version, '3.2.2')
8+
proj.setting(:rubygem_gettext_setup_version, '0.34')
9+
610
platform = proj.get_platform
711

812
proj.version_from_git

0 commit comments

Comments
 (0)