Geth rakudo/nom: cef41b2487 | (Samantha McVey)++ | 2 files
Simplify JVM code now that nqp::getstrfromname has been impl. on JVM

We no longer need to have ifdef's in places where we use getstrfromname.
01:57
rakudo/nom: 5b6e0fb26a | (Samantha McVey)++ | src/core/Cursor.pm
Use foldcase for ignorecase in Cursor.pm

When comparing text case-insensitively the correct way is to fold case, instead of just lowercasing the string. Otherwise things like ligatures and other characters who may have special upper and lowercase forms will not be put in an easily comparable format.
MasterDuke samcv: any todo'd tests now pass? 02:01
yoleaux2 7 Mar 2017 14:36Z <IOninja> MasterDuke: any ideas on why this fails to match now? irclog.perlgeek.de/perl6-dev/2017-...i_14219666 Bisectable points to a version bump that brought this commit: github.com/MoarVM/MoarVM/commit/ab...2ab7623d9e
samcv MasterDuke, not yet. working on nqp side now
MasterDuke cool, samcv++
samcv :) 02:02
sometimes i have to delete my moar installation files manually. it doesn't always update the versioning 03:17
not sure wtf is going on with that. but it's happened tons of times
doing a clean or realclean of MoarVM still won't update version even though it is the latest 03:18
if i manually delete moar binary and the .so file and install it again then it's fine
MasterDuke, got distracted, but running spectest after making some changes to nqp now. do we already have a test for this bug in roast that is `todo`'d? 03:34
oh god what am i looking at 03:54
github.com/perl6/nqp/blob/master/s...#L163-L165 looks like for character ranges it does a range between lowercase versions and a range between uppercase versions 03:55
i guess it's ok since it's the P5Regex... i guess 03:58
naxieAlDle, you may be interested in this 04:00
naxieAlDle me? :) 04:01
samcv yeah about the casefolding things
naxieAlDle samcv: that's interesting but you were looking for someone else, I think ×D 04:04
samcv maybe 04:06
MasterDuke,
Geth rakudo/nom: 127338a9dc | TimToady++ | src/Perl6/Optimizer.nqp
Report useless use of $_ in my $x = 1,$_

The optimizer was not properly propagating void context to comma's args.
04:27
rakudo/nom: 1934a565a3 | TimToady++ | src/Perl6/Actions.nqp
mark require's import list as wanted
MasterDuke samcv: there aren't any tests for what IOninja pointed out 04:44
samcv ok well i'm adding one for nqp at least. then after perl 6
working on the nqp side atm
yay I fixed it on nqp
MasterDuke those places i pointed out? where there others? 04:45
samcv i'm about to push commit
but it at least fixes it when running nqp test
MasterDuke *were
but no todo'd test passing? that's too bad 04:46
samcv i haven't run rakudo
i mean roast
i'm working on nqp right now.
llfourn .botsnack 04:57
synopsebot6 om nom nom
yoleaux2 :D
7 Mar 2017 22:10Z <nine> llfourn: I've made some progress...I think? gist.github.com/niner/349fd7432e5c...af5111532c
samcv m: say 'st' ~~ m:i/s/ 05:36
camelia 「st」
samcv bisectable6: say 'st' ~~ m:i/s/
bisectable6 samcv, Bisecting by output (old=2015.12 new=1934a56) because on both starting points the exit code is 0
samcv, bisect log: gist.github.com/a317185d00ee00b1b8...7265179b38
samcv, (2017-02-28) github.com/rakudo/rakudo/commit/26...2c543a7d95
samcv m: say 'st' ~~ m:i/st/ 05:37
camelia 「s」
samcv m: say 'st' ~~ m:i/st/ 05:38
camelia 「st」
samcv bisectable6, say 'st' ~~ m:i/st/
bisectable6 samcv, Bisecting by output (old=2015.12 new=1934a56) because on both starting points the exit code is 0
samcv, bisect log: gist.github.com/b1787df402db79b325...354c504586 05:39
samcv, (2017-02-28) github.com/rakudo/rakudo/commit/26...2c543a7d95
travis-ci Rakudo build failed. Samantha McVey 'Use foldcase for ignorecase in Cursor.pm 05:40
travis-ci.org/rakudo/rakudo/builds/208818675 github.com/rakudo/rakudo/compare/e...6e0fb26ab4
buggable [travis build above] ☠ Did not recognize some failures. Check results manually.
samcv looks like nativecall flapping 05:43
m: say 'st' ~~ m:i/st/ 05:58
camelia 「s」
samcv so this is still broken
m: say 'st' ~~ m:i/st/ 05:59
camelia 「st」
samcv this works fine though
m: say 'sto' ~~ m:i/sto/
camelia 「sto」
samcv m: say 'st' ~~ m:i:m/st/ 06:11
camelia False
samcv ok that's broken
Geth roast: 60670004d7 | usev6++ | 2 files
Fudge failing tests for JVM
06:23
nqp: 2189077da7 | (Samantha McVey)++ | src/QRegex/P6Regex/Actions.nqp
Use foldcase instead of lowercase for case-insensitive P6Regex

When comparing text case-insensitively the correct way is to fold case, instead of just lowercasing the string. Otherwise things like ligatures and other characters who may have special upper and lowercase forms will not be put in an easily comparable format.
06:28
nqp: ccb5490016 | (Samantha McVey)++ | 2 files
Use nqp::fc instead of nqp::lc and add a test

Added test did not pass before this and the previous commit had been made.
nqp: 9ab92d5ae0 | (Samantha McVey)++ | t/qregex/rx_modifiers
Add some more ignorecase tests
samcv MasterDuke, despite these commits i don't think i've fixed anything in rakudo. but at least fixed some nqp bugs
samcv though i could have fixed a bug I do not know about currently. so at least it made it more correct 06:29
travis-ci NQP build failed. Samantha McVey 'Add some more ignorecase tests' 06:31
travis-ci.org/perl6/nqp/builds/208865943 github.com/perl6/nqp/compare/3d694...b92d5ae0d0
samcv all seems fine there except for div_i JIT failed on one of the travis' 06:34
[Tux] This is Rakudo version 2017.02-199-g1934a565a built on MoarVM version 2017.02-26-gbe37105f 07:18
csv-ip5xs 2.791
test 12.757
test-t 5.095 - 5.129
csv-parser 12.993
travis-ci Rakudo build failed. TimToady 'mark require's import list as wanted'
travis-ci.org/rakudo/rakudo/builds/208845690 github.com/rakudo/rakudo/compare/5...34a565a37d
buggable [travis build above] ☠ Did not recognize some failures. Check results manually.
llfourn nine: I've been making progress from your patch. I think I'm almost there. The key is to .merge-symbols into the stub/existing pkg rather than trying to lexically replace. 07:49
nine llfourn: sooo...who of us is the night shift and who's the day shift? :) 07:51
llfourn nine: I'm in australia so we it's subjective :D 07:52
so it's*
nine Global distribution FTW :)
llfourn yep, round the clock bugfixing! 07:53
(assuming we fix it) 07:54
taking a break & 07:55
nine Yeah, I hope we can make it today. I was pretty drained yesterday. Took me some sweet long time to realize that I already had the information of where the existing scopes and and the stubs begin.
Before that I ran into this weird issue that the stub was no longer a PackageHOW but a ClassHOW. No idea how that could happen. 07:56
llfourn nine: I know. This kind of thing is very muddling and draining. The above issue sounds like you where getting the package and it's stash confused which I do all the time. 09:02
Geth rakudo/nom: 44b60a560d | TimToady++ | src/Perl6/Grammar.nqp
all use of .define_slang without setting %*LANG

Only check for mismatches if %*LANG<MAIN> changed without $*LANG changing.
  (The reverse is okay, since someone may use only .define_slang without
maintaining the old %*LANG entries.)
09:24
llfourn nine: but actually it might also be that the lexically installed packages we are installing from Actions.nqp turn out to be Mu at runtime. I changed to useing install_lexical_symbol and they are there now :)
TimToady *allow
TimToady should obviously go to bed, if he can't even type straight... 09:27
jnthn got a failure in t/spec/S11-modules/require.t on HEAD 10:50
"Lexical 'Cool' already declared"
IOninja m: say "st T" ~~ m:i/T/ 10:51
camelia False
jnthn .u st 10:53
yoleaux2 U+FB06 LATIN SMALL LIGATURE ST [Ll] (st)
jnthn m: say "st".fc 10:54
camelia st
jnthn m: say "st".fc.chars
camelia 2
jnthn m: say "st".lc.chars
camelia 1
jnthn It's probably something to do with the foldcase of it expanding the char count 10:55
Exactly how, I'm not sure
IOninja Filed it as rt.perl.org/Ticket/Display.html?id=130953 10:57
Also gonna mark as release blocker.
m: say "stT" ~~ m:i/T/ 10:58
camelia 「T」
IOninja ^ goes away if you remove the space
(can be any letter instead of space)
I think you're onto something with char count...
m: say "ststT" ~~ m:i/T/ 10:59
camelia False
IOninja m: say "stststT" ~~ m:i/T/
camelia 「T」
IOninja m: say "ststststT" ~~ m:i/T/
camelia False
IOninja m: say "stststststT" ~~ m:i/T/
camelia 「T」
jnthn We can revert the patch if needed, though that'd just mean we have to fudge different spectests
NeuralAnomaly: stats
NeuralAnomaly jnthn, [✘] Next release will be in 1 week and 3 days. Since last release, there are 40 new still-open tickets (11 unreviewed and 0 blockers) and 36 unreviewed commits. See perl6.fail/release/stats for details
jnthn Ah, we've some time to look into a fix
IOninja Yeah :)
samcv m: say "st T" ~~ m:i/T/ 11:00
camelia False
samcv bisectable6, say "st T" ~~ m:i/T/
bisectable6 samcv, Bisecting by output (old=2015.12 new=44b60a5) because on both starting points the exit code is 0
samcv, bisect log: gist.github.com/1d180cd8f09e1dbccd...a62f84bd0c
samcv, (2017-02-28) github.com/rakudo/rakudo/commit/26...2c543a7d95
Geth roast: 1994ec2a04 | (Jonathan Worthington)++ | S17-procasync/nonexistent.t
Add tests for Proc::Async and non-existent process
11:03
travis-ci Rakudo build passed. TimToady 'all use of .define_slang without setting %*LANG 11:20
travis-ci.org/rakudo/rakudo/builds/208901865 github.com/rakudo/rakudo/compare/1...b60a560d63
IOninja samcv: yo 11:38
samcv hey
IOninja samcv: I wanna tweet something. Does this sound normal: "Did you know one of the reasons for #Perl6's logo being so colourful is to fight any misogyny in community? Happy #InternationalWomensDay"
Referencing one of the points discussed in the emails about the logo: raw.githubusercontent.com/perl6/mu...amelia.txt 11:39
"In addition, you can extend just about anything by attaching "P6" wings to it. I also take it as a given that we want to discourage misogyny in our community. You of the masculine persuasion should consider it an opportunity to show off your sensitive side. :) Hence, Camelia." 11:40
samcv ok could be better. i'm working on rephrasing 11:41
IOninja \o/
samcv how does this sound IOninja 11:45
#Perl6's logo was designed to be colorful to embrace women and fight misogyny within the community. Happy #InternationalWomensDay"
IOninja samcv++ thanks
samcv :)
also maybe add exclaimation mark at the end 11:46
#Perl6's logo was designed to be colorful to embrace women and fight misogyny within the community. Happy #InternationalWomensDay!
moritz samcv++ 11:47
lizmat samcv++ IOninja++ 11:49
Geth roast: aaa8c0d6d6 | (Jonathan Worthington)++ | S17-procasync/nonexistent.t
Test Proc::Async stdout/stderr on spawn failure.
11:59
llfourn m: require Pod::To::Text; Pod::To::Text.new 12:12
camelia You cannot create an instance of this type (Text)
in block <unit> at <tmp> line 1
llfourn nine: If it wasn't for this I think I could fix everything
but it seems we simply can't make stubs and replace them at runtime 12:13
because they get their identity at compile time
the fact that you change them in the lexpad doesn't matter
or at least this is my interpretation of the matter
the way stubs are done at compile time is to leave the package uncomposed until the definition comes up 12:14
but this is impossible with with require with to my knowledge 12:15
nine Have you also noticed the QAST::WVal(Text) in the AST? 12:16
llfourn nope
nine I wonder where that is even coming from?
- QAST::Op(callmethod new) new
- QAST::WVal(Text) <wanted> Pod::To::Text
Seems like the Perl6::World is keeping the reference to the stub somewhere. 12:17
llfourn right. It puts the WVal there at compile time after it does the lookup is my interpretation of that. 12:18
(I didn't think to look at the dump nine++)
nine If we could defer the lookup till runtime, we'd have won 12:19
llfourn mmm it works for require <&sub> because &sub is lookup up at runtime I guess. 12:22
I think I'll change the tests to indirect lookups for now because that's at least working now with multiple requires etc... 12:27
lizmat $ perl6 t/spec/S11-modules/require.t 12:49
===SORRY!===
Lexical 'Cool' already declared
Am I the only one seeing this? ^^^
llfourn no I knew those tests weren't passing and you merged that last night :O
lizmat I did ?
oops
llfourn I think so lol
I thought it was intentional but yeah you can revert that :) 12:50
lizmat Ah, so you mean it's a test that *should* get fixed in rakudo
llfourn the fix is proving more
difficult that I first thought 12:51
yes :)
lizmat ok, then I'll leave it for now :-)
I thought I had broken rakudo by the merge, but the merge just shows that rakudo was broken already, right ?
llfourn yes, I'm going to change them in a sec anyway :) 12:52
Geth rakudo/nom: fc86084f06 | (Elizabeth Mattijsen)++ | src/core/Str.pm
Fix for RT #130955
13:02
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130955
Geth rakudo/nom: d6c95ea452 | (Elizabeth Mattijsen)++ | src/core/Parameter.pm
Presumably allow Parameter.set_default

Haven't tested all of the ramifications of this, so please consider this experimental.
13:13
nqp: 4c0f69840b | (Jonathan Worthington)++ | tools/build/MOAR_REVISION
Get MoarVM with async proc error handling fixes
¦ nqp: version bump brought these changes: github.com/MoarVM/MoarVM/compare/2...1-g91aab71
IOninja More on the ligature front: 13:14
m: "ststT".match(m:i/T/)
(hangs)
camelia (timeout)Use of uninitialized value of type Any in string context.
Methods .^name, .perl, .gist, or .say can be used to stringify it to something meaningful.
in block <unit> at <tmp> line 1
Geth rakudo/nom: c4a4c848c2 | (Jonathan Worthington)++ | src/core/Proc/Async.pm
Clean up Proc::Async exit handling

  * Don't duplicately .done/.quit the stdout and stderr channels
  * A level less wrapping up of errors, fixing error reporting
13:16
rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....5-g4c0f698
f73d984738 | (Jonathan Worthington)++ | tools/build/NQP_REVISION

  * Fix issues around error handling when writing to or reading from a
   Proc::Async when the process could not be spawned (for example, if
   the thing to spawn does not exist)
rakudo/nom: version bump brought these changes: github.com/perl6/nqp/compare/2017....5-g4c0f698
8c777b1123 | (Jonathan Worthington)++ | t/spectest.data
travis-ci NQP build passed. Jonathan Worthington 'Get MoarVM with async proc error handling fixes'
travis-ci.org/perl6/nqp/builds/208964886 github.com/perl6/nqp/compare/9ab92...0f69840b8e
IOninja oh wait, the .match hand I think is due to candidate dispatch 13:28
*hang
s: "ststT", 'match', \(m:i/T/) 13:29
SourceBaby IOninja, Sauce is at github.com/rakudo/rakudo/blob/8c77...ol.pm#L179
IOninja yeah
lizmat fwiw, I'm still not understanding (or I forgot) what all that .Stringy / Str business is about :-( 13:30
IOninja I don't get the point of Stringy either 13:32
Geth roast: 2fa32e11eb | (Zoffix Znet)++ | S05-substitution/match.t
[fudge] Test ligatures do not break :i regex match

RT#130953: rt.perl.org/Ticket/Display.html?id=130953
13:35
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130953
lizmat it feels overengineered to me, but maybe moritz masak jnthn TimToady can enlighten us? :-)
hmmm... do we actually have the opposite of ($a is rw) in signatures (aka, only accept if it's not a container?) 13:37
jnthn It's to Str what Numeric is to Int
IOninja m: -> $ is readonly {}($ = 42)
camelia ( no output )
jnthn lizmat: No, though multi-dispatch treats the is rw case more narrowly
IOninja jnthn: that doesn't really explain it. There's just one Str, while Numeric is used by Int, Num, Rat, and Complex 13:38
jnthn IOninja: Yeah, but you might add your own types that you wish to be treated string-like (I did one in a private project recently)
IOninja: And in Perl 6 itself we intend to add Cat (lazy string)
IOninja Oh ok, I see Blob uses it as well.
jnthn Which would be stringy, but not Str 13:39
IOninja OK. Thanks.
jnthn m: say Blob.^roles
camelia ((Positional[T]) (Stringy))
jnthn Hah, yes
lizmat hmmm... my fix for RT #130954 causes severe spectest breakage :-( 13:50
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130954
Geth roast: 81c9ff59e8 | (Zoffix Znet)++ | S32-str/split.t
Minor formatting fix
roast: a8a7ff148e | (Zoffix Znet)++ | S32-str/split.t
Test split skip-empty skips all empty chunks

RT#130955: rt.perl.org/Ticket/Display.html?id=130955
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130955
lizmat $ 6 'dd (my $ = 42).WHICH'
ObjAt.new("Scalar|Int|42")
$ 6 'dd 42.WHICH'
ObjAt.new("Int|42")
jnthn: comments ^^^ ?
jnthn Looks weird 13:52
.WHAT, .HOW, .WHERE, etc. all look through the Scalar container
Why should .WHICH be different?
lizmat rt.perl.org/rt3//Public/Bug/Displa...?id=130954
jnthn Will have to look after language class; bbiah 13:54
lizmat okidoki
IOninja ZOFVM: Files=1227, Tests=132791, 117 wallclock secs (20.86 usr 3.17 sys + 2346.55 cusr 259.61 csys = 2630.19 CPU) 13:59
This check looks pointless: github.com/rakudo/rakudo/blob/d6c9...er.pm#L165 as $!default_value is already type-constrained to be Code: github.com/rakudo/rakudo/blob/d6c9...ter.pm#L12 14:05
lizmat is it type constrained ? I mean, it comes from nqp land 14:06
ah, looks like in BOOTSTRAP line 1477 14:07
IOninja m: use nqp; dd nqp::getattr(Parameter.new, Parameter, '$!default_value').^name
camelia "VMNull"
lizmat m: use nqp; dd nqp::attrinited(Parameter.new, Parameter, '$!default_value') 14:08
camelia 0
IOninja tries tossing it
Geth roast: 0336dea1a8 | LLFourn++ | 2 files
Changed require tests to indirect lookups

We can't get importing a class and calling methods directly on it to work yet:
  ```
require Some::Class; Some::Class.new
  ```
So change the tests to indirect lookups for now.
14:10
IOninja :/ 14:11
"for now"?
m: use nqp; my \x = Parameter.new; nqp::bindattr(x, Parameter, '$!default_value', 42); dd nqp::getattr(x, Parameter, '$!default_value')
camelia 42
llfourn ^ the above never work fwiw
Geth rakudo/nom: 0633f0370e | (Elizabeth Mattijsen)++ | src/core/List.pm
Make cross() and zip() better optimizable
IOninja Seems bindin g an attribute with nqp bypasses the typecheck...
m: use nqp; my \x = class Foo { has Code $!default_value }.new; nqp::bindattr(x, Foo, '$!default_value', 42); dd nqp::getattr(x, Foo, '$!default_value')
camelia 42
llfourn IOninja: I am just modifying tests I added yesterday :) 14:12
lizmat and which I merged :-)
IOninja m: use nqp; my \x = class Foo { has Code $!default_value; method wat { dd $!default_value.^name} }.new; nqp::bindattr(x, Foo, '$!default_value', 42); dd nqp::getattr(x, Foo, '$!default_value'); x.wat
camelia 42
"Int"
IOninja llfourn: OK
Geth rakudo: LLFourn++ created pull request #1034:
Fix multiple requires & require clobbering pre-existing pacakges
14:13
llfourn ^ Oh and there are a few annoying warnings about "Unhandled failure detected in destroy" 14:15
in the tests but I think they were there before
leme check before merging
nine: github.com/rakudo/rakudo/pull/1034 # This is the best I can do for now 14:17
I can confirm the annoying "unhandled Failure detected in destroy" warnings were the before fwiw 14:19
sleep & 14:21
lizmat good night, llfourn 14:22
IOninja removing that parameter $!default_value type check breaks spectest: gist.github.com/zoffixznet/e3d9c0a...9696b03b97
lizmat m: dd ((42,666).Seq xx *)[^10] # this feels off
camelia ((42, 666), (42, 666), (42, 666), (42, 666), (42, 666), (42, 666), (42, 666), (42, 666), (42, 666), (42, 666))
IOninja Because of same Seq iteration? 14:23
lizmat well, I sorta expected (42,666,42,666 etc.)
IOninja Awhile back, jnthn++ commited a fix to make Seq contants not to exhaust or something... 14:24
Ah, you need to slip to get that
m: dd (|(42,666).Seq xx *)[^10]
camelia (42, 666, 42, 666, 42, 666, 42, 666, 42, 666)
lizmat m: dd (-> { $++ ?? 42 !! |() } xx *)[^5] # also not quite what I was expecting, am I missing something ? 14:36
camelia (-> { #`(Block|56626312) ... }, -> { #`(Block|56626384) ... }, -> { #`(Block|56626456) ... }, -> { #`(Block|56626528) ... }, -> { #`(Block|56626600) ... })
lizmat m: dd (-> { Empty } xx *).iterator.pull-one # shorter 14:37
camelia -> { #`(Block|78067808) ... }
IOninja makes sense to me... 14:38
m: dd &say xx 3
camelia (sub say (| is raw) { #`(Sub|65079208) ... }, sub say (| is raw) { #`(Sub|65079208) ... }, sub say (| is raw) { #`(Sub|65079208) ... })
IOninja Same as that.
m: dd (-> { $++ ?? 42 !! rand.substr: 0, 5 }() xx *)[^5]
camelia ("0.432", "0.094", "0.275", "0.750", "0.465")
lizmat could it be it codegens a block into a block? 14:40
IOninja m: my &b =-> { $++ ?? 42 !! rand.substr: 0, 5 }; dd (b() xx *)[^5]
camelia ("0.021", 42, 42, 42, 42)
lizmat m: dd (-> { rand.substr: 0,5 } xx *)[^5]
camelia (-> { #`(Block|69520088) ... }, -> { #`(Block|69520160) ... }, -> { #`(Block|69520232) ... }, -> { #`(Block|69520304) ... }, -> { #`(Block|69520376) ... })
lizmat m: dd ( rand.substr: 0,5 xx *)[^5]
camelia Earlier failure:
Cannot .elems a lazy list
in block <unit> at <tmp> line 1

Final error:
Type check failed in assignment to $chars; expected Int but got Failure (Failure.new(exception...)
in block <unit> at <tmp> line 1
lizmat m: dd ( rand.substr(0,5) xx *)[^5]
camelia ("0.133", "0.900", "0.078", "0.567", "0.007")
IOninja It thunks it and each thunk produces a new block that is seen in the output unexecuted. If you execute the block, you get the results, but because each thunk makes a new block the state var doesn't get kept. And if you store the block in a var and executed in `xx`, it thunks and executes the same block so state var is kept. That's my interpretation of it. 14:42
lizmat m: dd (($++ ?? |() !! 42) xx *)[^3] # this feels wrong 15:00
camelia (42, Nil, Nil)
lizmat m: dd (($++ ?? 42 !! |()) xx *)[^3] # this feels wrong 15:01
camelia (Nil, Nil, Nil)
lizmat an empty slip should not indicate the end
or should it ? 15:04
IOninja I may have added that... to prevent @!slipped.shift crashing, but I did not consider the case you show above 15:07
star: m: dd (($++ ?? 42 !! |()) xx *)[^3]
camelia (Failure.new(exception => X::Cannot::Empty.new(action => "shift", what => "Array"), backtrace => Backtrace.new), 42, 42)
IOninja Yeah, I did.
or did i... 15:08
bisect: old=2016.10 new=HEAD m: dd (($++ ?? 42 !! |()) xx *)[^3]
bisectable6 IOninja, Bisecting by output (old=2016.10 new=0633f03) because on both starting points the exit code is 0
IOninja, bisect log: gist.github.com/137094bde350259bcb...cc691679e0
IOninja, (2017-01-22) github.com/rakudo/rakudo/commit/4e...6139c2bef7
lizmat anyways, supporting this would make things significantly more complicated, so I'm inclined to make it rest as a DIHWIDT
IOninja m: dd (($++ ?? 42 !! Nil) xx *)[^3] 15:09
camelia (Nil, 42, 42)
IOninja DIHWIDT to me too...
lizmat afk& 15:10
IOninja The behaviour is way different in non Whatever version tho: 15:11
m: dd (($++ ?? 42 !! |()) xx 4)[^4]
camelia (42, 42, 42, Nil)
IOninja tries something 15:12
timotimo does it change when you iterate the thing differently? 15:13
naxieAlDle m: say ‘ẍ̃’ ~~ m:ignoremark/ x / 15:18
camelia False
naxieAlDle why not?
if I get rid of the combiner, then it's True 15:21
m: say ‘ẍ’ ~~ m:ignoremark/ x /
camelia 「ẍ」
naxieAlDle m: say ‘=̃’ ~~ m:ignoremark/ x / 15:24
camelia False
naxieAlDle m: say ‘R̃’ ~~ m:ignoremark/ x / 15:26
camelia False
naxieAlDle so if it is synthetic, then it's not ignored
IOninja Well, my trying something didn't work 15:32
In the concrete case it looks to be eager, so we can process all the empty slips and flatten them, but in the xx * case we try to make a value in a pull-one... so if we try to continue pulling to find somethign that isn't a slip, we'd hang. And we could return a `Nil` or a slip, but that won't match the `xx 4` variant :/ 15:33
like (|() xx *) would hang 15:36
m: dd (($++ ?? 42 !! |()) xx 9999999999999999999)[^4] 15:53
camelia (Nil, Nil, Nil, Nil)
IOninja m: dd (($++ ?? 42 !! |()) xx 999)[^4]
camelia (42, 42, 42, 42)
IOninja something's busted up somewhere....
timotimo ugh
a problem with big/small ints?
IOninja likely
lizmat yeah, I was looking into that because xx needs to return a Seq always
please rakudobug, and I'll look at that as well
moritz bisectable6: say "st T" ~~ m:i/T/ 15:54
bisectable6 moritz, Bisecting by output (old=2015.12 new=0633f03) because on both starting points the exit code is 0
moritz, bisect log: gist.github.com/7fb433eb30a8a8f6d9...7be9f98f61
moritz, (2017-02-28) github.com/rakudo/rakudo/commit/26...2c543a7d95
IOninja moritz: it's this commit: github.com/MoarVM/MoarVM/commit/ab...2ab7623d9e
lizmat: ticketed: rt.perl.org/Ticket/Display.html?id...xn-1453059 15:57
lizmat IOninja: thanks 16:01
Geth rakudo/nom: 9a5401ee17 | (Zoffix Znet)++ | t/05-messages/01-errors.t
Test chr with huge codepoints throws useful error

RT#130913: rt.perl.org/Ticket/Display.html?id=130913
16:25
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130913
Geth roast: fbdb818077 | (Zoffix Znet)++ | S29-conversions/ord_and_chr.t
Test chr with huge codepoints throws useful error

RT#130913: rt.perl.org/Ticket/Display.html?id=130913
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130913
Geth roast: 2af473f7e7 | (Zoffix Znet)++ | S29-conversions/ord_and_chr.t
Fix typo; MasterDuke++
17:26
rakudo/nom: 3046d57eef | (Zoffix Znet)++ | t/05-messages/01-errors.t
Fix typo; MasterDuke++
jnthn Hm, the fix for RT 17:39
Hm, the fix for RT #130919 is a little trickier than I thought...
synopsebot6 Link: rt.perl.org/rt3//Public/Bug/Displa...?id=130919
jnthn will take a break and maybe give it another look later 17:40
(I've got a fix for it, but it busts something else.)
nine .tell llfourn Tried to find out where the QAST::WVal(Cat( is coming from, without success :/ 20:41
yoleaux2 nine: I'll pass your message to llfourn.
Geth nqp: 4495083d01 | (Samantha McVey)++ | 2 files
Add eqatic op for MoarVM to allow us to do testing

Is like eqat except it is case-insensitive.
21:01
lizmat samcv: is that part of the work wrt to the ligature bug ? 21:02
samcv yeah. the op already existed on the MVM side
lizmat ah, cool
samcv so without adding it in nqp can't write tests for it
just gotta run spectest now then will commit a mostly fixed version. as far as i've tested at least 21:12
Geth rakudo/nom: 14928630d1 | (Samantha McVey)++ | src/vm/moar/ops/container.c
[moar] Add braces to avoid dangling else and fix compiler warning
21:24
lizmat IOninja: 21:32
[22:32:16] dct (~dct@unaffiliated/dct) left62ffab662b6865a814741913 #
github.com/rakudo/rakudo/commit/62...a814741913
IOninja: Rangeint ^^^ 21:33
IOninja Heh :) 21:35
m: (1..*).is-int.say
camelia False
IOninja lizmat: how come it didn't stick?
lizmat Not sure anymore :-) 21:36
mists of time and GLR happening after that
IOninja Also ZofBot++ # love this bot!
Geth rakudo/nom: 07c5d339d1 | (Elizabeth Mattijsen)++ | src/core/Rakudo/Iterator.pm
Make sure OneValueTimes handles pulling after exhausted correctly
22:08
rakudo/nom: 1eb7b1f796 | (Elizabeth Mattijsen)++ | src/core/List.pm
Make sure infix:<xx> always returns a Seq
samcv bisectable6, say so 'st' ~~ m:i/st/ 22:49
bisectable6 samcv, Bisecting by output (old=2015.12 new=1eb7b1f) because on both starting points the exit code is 0
samcv, bisect log: gist.github.com/cb3a945e0484799198...c2e1a72efb
samcv, (2017-02-28) github.com/rakudo/rakudo/commit/26...2c543a7d95
Geth rakudo/nom: 995869857c | (Elizabeth Mattijsen)++ | src/core/List.pm
Remove the XX-Whatever role

It was only used once anymore, so no need to put it into a role
22:58
roast: bafc4b3b3f | (Samantha McVey)++ | S05-substitution/match.t
Fix fudging of :i regex

Fudging didn't work when it was declared as a subtest with its own plan. It now fudges correctly and no longer gives a false positive when the test is actually not succeeding.
23:02
samcv IOninja, for some reason that test you wrote the fudging wasn't working and it said it succeeded even when it did not. i changed it to not be a subtest anymore with the last roast commit 23:03
IOninja samcv, the fudges were working fine. You just need to run prove in verbose to enable full out and there you'd see which tests are todo-ed and which aren'r 23:16
or with t/fudgeandrun
samcv oh
well with my patch all but one of them pass so isn't it better to make it more visible? 23:17
or should i always run with verbose or what?
IOninja samcv: ¯\_(ツ)_/¯ Neither is visible during normal spectest and were TODOs passing, it'd tell you at teh end (or I hope it does). I use subtests so I don't have to write mile-long test descriptions for each test. For example, with your patch, descriptions of each test are kinda meaningless without the contet the subtest's description added. So the reader would need to go to the ticket and then wade 23:21
through a handful of replies to figure out what that test is actually testing.
samcv what options do you run prove with? 23:22
err i mean are we talking about `make spectest` how do i set prove options when running that?
IOninja I wasn't and my options are `prove -e './perl6' -vlr `; though I just use t/fudgeandrun if I need to run a single test file in verbose mode.
samcv hmm well it wasn't showing me the test was fudged period when i ran make t/spec/whatever 23:24
so i had no way of knowing that things changed
IOninja You can run `make -n spectest` to see the command it's running; then stick it into an alias and I think just add --verbose=3 or whatever
samcv alright
IOninja Right `make t/spec/whatever` doesn't use verbose mode; t/fudgeandrun t/spec/whatever uses verbose mode 23:25
IOninja &
samcv ack this fix i made to moarvm only works if the letters preceeding the st are lowercase. this is gonna be annoying to fix this fully 23:32
u: { .fc.chars > 1 }
unicodable6 samcv, U+000A <control-000A> [Cc] (control character) 23:33
samcv, U+000B <control-000B> [Cc] (control character)
samcv thank for unicodable6 :)
looks like i did that wrong wat
ah
unicodable6, { .chr.fc.chars > 1 }
u: { .chr.fc.chars > 1 } 23:34
Geth rakudo/nom: b86e6b05e7 | (Elizabeth Mattijsen)++ | src/core/Rakudo/Iterator.pm
Introducing R:It.Callable-xx-Whatever

Basically the functionality of 'rand xx *' abstracted, for easier usage.
23:35
rakudo/nom: cb41476247 | (Elizabeth Mattijsen)++ | src/core/List.pm
Make infix:<xx>(&x, Whatever) use R:It.Callable-xx-Whatever
japhb Any active regressions since the last release right now? I'm thinking of upgrading all my machines because of jnthn++'s MoarVM fixes that might clear up some of my flakey failures. 23:47
lizmat japhb: only with regards to matching ligatures in :i mode, I believe 23:49
samcv i'm probably gonna actually write a new mvm function that can do case folding with an offset 23:50
and only case fold x characters down or something
since atm it casefolds the whole string and then the offset is off because there's more graphemes than before (if the change was before the needle) 23:51
japhb lizmat: OK, thanks. Pretty sure nothing I'm working with is counting on that, so I'm good. :-)
samcv if i do a specific number of characters and with an offset, won't have to have any offset problems,
IOninja m: class Test::Foo { }; Test::Bar {}; { require Test::Foo; require Test::Bar; } 23:54
camelia ===SORRY!===
Lexical 'Test' already declared
IOninja japhb: ^ that is also broken ATM. And with regexes it's not just ligatures... Any char whose .fc is not 1-char long looks like.
I don't recommend upgrading right now...
m: ^0x110000 .grep({.chr.fc.chars > 1}).elems.say 23:55
camelia 80
IOninja m: ^0x110000 .grep({.chr.fc.chars > 1}).say 23:56
camelia (223 329 1415 7834 7838 8064 8065 8066 8067 8068 8069 8070 8071 8072 8073 8074 8075 8076 8077 8078 8079 8080 8081 8082 8083 8084 8085 8086 8087 8088 8089 8090 8091 8092 8093 8094 8095 8096 8097 8098 8099 8100 8101 8102 8103 8104 8105 8106 8107 8108 8109 …
IOninja So 80 chars in input has the potential to break your case-insensitive regex match.