Backport(v1.19): command/fluentd: load win32/registry when edit registry for Ruby 4.0 (#5213) #5221
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Which issue(s) this PR fixes:
Backport #5213
Fixes #
What this PR does / why we need it:
When edit Windows registry like
ruby bin/fluentd --reg-winsvc-fluentdopt "-c '$current_path/duplicated_id.conf' -o '$log_path'",Ruby 4.0 causes
uninitialized constant Win32::Registry (NameError).Ref. https://github.com/fluent/fluentd/actions/runs/20650937408/job/59296698869
Ruby 3.4 has bundled resolv v0.6.2, which loads
win32/registry.https://github.com/ruby/resolv/blob/a28aaed4cb700303227f0e81178baf93d6221621/ext/win32/resolv/lib/resolv.rb#L46C15-L46C31
Therefore, we can use
Win32::Registryimplicitly after loading resolv.It has been removed in the latest version of resolv gem.
Docs Changes:
Release Note: