On 1/14/21 5:21 PM, Giovanni Bechis wrote:
> On 1/14/21 5:14 PM, Jeremy Evans wrote:
>> On Thu, Jan 14, 2021 at 12:01 AM Klemens Nanni <k...@openbsd.org> wrote:
>>
>>> On Thu, Jan 14, 2021 at 08:46:26AM +0100, Giovanni Bechis wrote:
>>>> Hi,
>>>> on current (packages as of today) Puppet cannot start anymore,
>>>> the error is the following:
>>>>
>>>> [~]$ doas puppet agent -t
>>>> /usr/local/lib/ruby/site_ruby/2.7/puppet/util.rb:461: warning:
>>> URI.escape is obsolete
>>>> cannot load such file -- sync
>>> Reads like switching ruby's default version from 2.6 to 2.7 caused this.
>>>
>>> You could try building Puppet 5.5 with Ruby 2.6 altough most of its
>>> 2.6 flavored dependencies have already been unhooked, not sure how you
>>> get with this.
>>>
>>
>> Building the port for Ruby 2.6 should work fine if you manually specify
>> MODRUBY_REV:
>>
>> MODRUBY_REV=2.6 make package
>>
>> You'll want to do this for both facter and ruby-puppet/5.
>>
>>
>>> Perhaps patching `URI.escape' with whatever superseeded it is the way to
>>> go here.
>>>
>>
>> The URI.escape issue is just a warning in 2.7.  It will break in Ruby 3.0,
>> though.
>>
> URI.escape is just a warning, I think the real problem is "cannot load such 
> file -- sync".
> sync gem has been removed from Ruby 2.7, I think it should be ported.
> https://docs.ruby-lang.org/en/2.7.0/NEWS.html#label-Compatibility+issues+-28excluding+feature+bug+fixes-29
> 
Attached is a wip port of ruby-sync (created with portgen in few minutes), 
puppet 5.5 now works even if with a lot of deprecated warnings
like:
/usr/local/lib/ruby/site_ruby/2.7/puppet/util.rb:461: warning: URI.escape is 
obsolete
/usr/local/lib/ruby/site_ruby/2.7/puppet/indirector/request.rb:283: warning: 
URI.unescape is obsolete
/usr/local/lib/ruby/site_ruby/2.7/puppet/file_system/file_impl.rb:80: warning: 
Using the last argument as keyword parameters is deprecated

I do not know if it's worth to silence them or not.

 Giovanni 

Attachment: ruby-sync.tgz
Description: application/compressed-tar

Reply via email to