|
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 | |