|Subject:||[LTA] $*PERL.compiler.version produces different versions on different OSes even if built from same commit|
Last night, I fixed a bug and used RakudoPrereq.pm6 to lock my module to latest and greatest. I obtained the wanted version from camelia: m: say $*PERL.compiler.version rakudo-moar 0a1008: OUTPUT: «v2017.05.380.g.0.a.100825.d␤» With the same commit built on my pristine Debian Jessie. My module failed, telling me my perl6 is not new enough. Looking closer at the version, turns out my Debian box uses fewer chars: perl6 -e 'say $*PERL.compiler.version' v2017.05.380.g.0.a.10082 Which makes the resultant Version object to be "before" the version string I got from camelia. Commitable bot also runs on Debian jesse, but surprisingly, it gives different result from mine: 19:47 c: 0a10082 say $*PERL.compiler.version 19:47 committable6 eveo, ¦0a10082: «v2017.05.380.g.0.a.100825.d» I first noticed this with rakudobrewed perl6, so I grabbed a checkout of Rakudo and compiled a copy manually, yet, it still gives a different, abridged version: $ ./perl6 -e 'say $*PERL.compiler.version' v2017.05.380.g.0.a.10082 There might be other cases where similar issues will occur due to strings of different lengths being used. Would be nice to guarantee the same commit always produces the same $*PERL.compiler.version Version object.