On 1/15/21 11:52 AM, Stuart Henderson wrote:
> On 2021/01/14 18:39, Giovanni Bechis wrote:
>> 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.
> 
> This is a good hint that users should be looking at updating to newer
> puppet ;)
> 
Puppet6 agent works but there is no Puppet6 master port atm.
I think that similar warnings will be emitted if starting puppetmaster 5.5 on 
Ruby2.7.

 Giovanni

Reply via email to