Fire is step THREE! | github.com/perl6/toolchain-bikeshed | Channel logs: irclog.perlgeek.de/perl6-toolchain/today | useful prior art: metacpan.org/pod/CPAN::Meta::Spec
Set by moderator on 3 September 2017.
00:31 lizmat joined 01:31 lizmat joined 01:52 ilbot3 joined
moderator Fire is step THREE! | github.com/perl6/toolchain-bikeshed | Channel logs: irclog.perlgeek.de/perl6-toolchain/today | useful prior art: metacpan.org/pod/CPAN::Meta::Spec
03:51 sivoais joined 06:02 stmuk joined
nine [Coke]: so it's Test::META that's broken? 06:50
08:02 leont joined 12:14 leont joined 13:35 llfourn joined
ugexe you can uninstall the offending modules and reinstall them (or just force install probably) 16:45
irclog.perlgeek.de/perl6/2017-08-08#i_14986502 16:53
17:01 lizmat joined
ugexe basically `use XXX:ver<0.0.5..*>` -appeared- to work correctly with basic usage but really it wasnt (so you cant blame the author for using it) 17:16
[Coke] nine: if I upgrade zef, I should be able to then upgrade test:meta. I couldn't. 17:51
so maybe it's test meta, maybe it's zef. I don't know. 17:53
ugexe: the whole thing came about because I am NOT force installing stuff that doesn't work.
I'm trying to be a good citizen and report failures.
17:55 leont joined
ugexe use --force-install if you dont want to force tests 18:00
but simply uninstalling it and reinstalling it fixes it, and the bug was in rakudo not zef or test::meta 18:01
if you have other versions of rakudo installed, then you probably also have older versions of modules installed in ~/.perl6, and ~/.perl6 gets checked before site/vendor/etc. so yeah zef probably *does* see a newer version somewhere else, but that doesn't matter because the first $*REPO is ~/.perl6 and thus whatever the highest version *it* supplies is (not the highest version from *all* repos) 18:07
[Coke] so if I want to have multiple versions of rakudo around, how can I say "never use ~/.perl6" ? 18:08
ugexe not sure that you can
[Coke] OR: how am I supposed to setup my system to avoid this sort of issue, I guess is a better question. 18:09
I was running a very recent version of rakudo; if there's a bug in it, it's going to be in the next release, probably.
ugexe you can setup zef to never install to ~/.perl6 18:10
add an alias adding `--install-to=site` or change github.com/ugexe/zef/blob/master/r...ig.json#L6 to `site` 18:11
[Coke] Danke.
18:12 domidumont joined
ugexe I don't know where rakudo star ends up installing modules to, but it might be ~/.perl6 (so keep that in mind) 18:14
[Coke] ugexe: I just did "zef uninstall Test::META" 18:28
then "zef install Test::META" 18:29
leont ugexe: right, I needed you for something!
[Coke] and it's failing because "Could not find JSON::Class:ver<0.0.5..*> at" - is this a bug in test meta for not declaring these as deps, or a bug in zef for not figuring that out?
ugexe zef uninstall JSON::Class JSON::Marshal META6 Test::META then zef install Test::META 18:30
leont: go for it
leont The latest dev-version of TAP::Harness also parses subtests, but this fails on older Test.pm
[Coke] ... that's insane. I can do that as a core dev, but is that the recommended fix here for end users?
and how would I have ever figured that out? 18:31
ugexe end users shouldnt end up with multiple rakudo installs with multiple versions of modules installed
leont Everything should work fine on 2017.09 and up
Question is how zef deals with it, given Test.pm is core-only (I think) 18:32
I would propose it stays loose on older perl6s, but strict on newer ones
[Coke] OK, this is super frustrating. What is the recommended way to use zef with rakudobrew then? Or is it, not to? 18:36
I'm still trying to figure out what the particular issue is here with Test::META.
ugexe rakudobrew is not recommended unless you are a core dev / understand what you're getting yourself into 18:37
leont: zef doesn't much deal with tests besides using an adapter. it could do something like if $thisversion { TAP::Harness.foo } else { TAP::Harness.bar } if I knew what .foo and .bar would need to be 18:38
leont The only different is a :loose argument to the TAP::Harness constructor, really 18:39
ugexe [Coke]: all problems regarding zef and rakdobrew version madness can usually be solved with `zef nuke site home RootDir`
the `site` shouldnt be necesary usually but that depends on if you use rakudobrew build $already-existing-name-like-nom which upgrades an existing install 18:41
leont: ok. but its broke on old versions you say... so do you mean I need to do a if/else like above to use TAP::Harness differently depending on rakudo version, or that zef should not use the TAP::Harness adapter unless rakudo is 2017.09 18:43
18:43 eater joined
ugexe er, ok you mean add :loose to older versions 18:44
leont The working equivalent of TAP::Harness.new(:loose($rakudo-version < 2017.09))
ugexe leont: are you sure having this in zef instead of a default in TAP::Harness won't create problems trying to discover a mismatch between rakudo versions and TAP::Harness versions that accept :loose? 19:01
m: sub foo($default = $*PERL.compiler.version.Str.substr(0,8) before "2017.09" ?? 0 !! 1) { say $default }; foo() 19:03
camelia 0?
19:25 lizmat joined
ugexe e.g. anyone using prove6 command 19:26
leont Fair point 19:27