Description
tl;dr: For historical reasons 'zef install IO::String' may fail,
reporting problems with Text::CSV:ver<0.015>.
Workaround: 'zef install IO::String:ver<0.2.0>'
or a more recent version, if any.
Details:
I'm upgrading my Rakudo from moar-2023.02 to
moar-2024.04. I'm having problems obtaining the
IO::String distribution. raku.land proposes:
P6C: IO::String:ver<0.1.1>
ZEF: IO::String:ver<0.2.0>:auth<zef:jjmerelo>
Now, in a shell having moar-2024.04 active, please
observe:
▸ zef --dry install 'IO::String:ver<0.1.1>'
===> Searching for: IO::String:ver<0.1.1>
===> Staging IO::String:ver<0.1.1>
===> Staging [OK] for IO::String:ver<0.1.1>
===> Testing: IO::String:ver<0.1.1>
===> Testing [OK] for IO::String:ver<0.1.1>
▸ zef --dry install 'IO::String:ver<0.2.0>'
===> Searching for: IO::String:ver<0.2.0>
===> Staging IO::String:ver<0.2.0>:auth<zef:jjmerelo>
===> Staging [OK] for IO::String:ver<0.2.0>:auth<zef:jjmerelo>
===> Testing: IO::String:ver<0.2.0>:auth<zef:jjmerelo>
===> Testing [OK] for IO::String:ver<0.2.0>:auth<zef:jjmerelo>
So both of those are good. But:
▸ zef --dry install 'IO::String'
===> Searching for: IO::String
===> Staging Text::CSV:ver<0.015>:auth<zef:Tux>
===> Staging [OK] for Text::CSV:ver<0.015>:auth<zef:Tux>
===> Testing: Text::CSV:ver<0.015>:auth<zef:Tux>
===> Testing [FAIL]: Text::CSV:ver<0.015>:auth<zef:Tux>
Aborting due to test failure: Text::CSV:ver<0.015>:auth<zef:Tux> (use --force-test to override)
Yet:
▸ zef --dry install 'Text::CSV'
===> Searching for: Text::CSV
===> Staging Text::CSV:ver<0.022>:auth<zef:Tux>
===> Staging [OK] for Text::CSV:ver<0.022>:auth<zef:Tux>
===> Testing: Text::CSV:ver<0.022>:auth<zef:Tux>
===> Testing [OK] for Text::CSV:ver<0.022>:auth<zef:Tux>
I believe that in the past (versions 0.015 and
preceding) Text::CSV supplied an IO::String and that
somehow confuses things. Note that since version 0.016
(was fixed in commit 348a68c) it supplies a
Text::IO::String instead and does not use IO::String
anymore.
So I know that simply installing ver<0.2.0> solves my
problem, but I figured I should mention it so zef's
understanding could be fixed somehow.