Created
December 9, 2016 19:15
-
-
Save Whateverable/a7b60bcf6fb4ab9fea6d3c468dc531e6 to your computer and use it in GitHub Desktop.
bisectable6
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
old=2016.10 new=HEAD die if 'foo'.match(/d/, :g) ~~ Slip |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Bisecting: 243 revisions left to test after this (roughly 8 steps) | |
[f5bf6c19f48e50ba0b70422f61aeca3744354d8f] Make creation of typed shaped arrays 15% faster | |
»»»»» Testing f5bf6c19f48e50ba0b70422f61aeca3744354d8f | |
»»»»» Script output: | |
Died | |
in block <unit> at /tmp/YWkmru2SlN line 1 | |
»»»»» Script exit code: 1 | |
»»»»» Bisecting by exit code | |
»»»»» Current exit code is 1, exit code on “old” revision is 0 | |
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new” | |
»»»»» Therefore, marking this revision as “new” | |
»»»»» ------------------------------------------------------------------------- | |
»»»»» Testing 07eeea8084cd58c1132ee8fabd4572d5c3aa7a2d | |
»»»»» Script output: | |
Died | |
in block <unit> at /tmp/YWkmru2SlN line 1 | |
»»»»» Script exit code: 1 | |
»»»»» Bisecting by exit code | |
»»»»» Current exit code is 1, exit code on “old” revision is 0 | |
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new” | |
»»»»» Therefore, marking this revision as “new” | |
»»»»» ------------------------------------------------------------------------- | |
»»»»» Testing ab11e6a9707432fee313358b81355bc763b8e009 | |
»»»»» Script output: | |
Died | |
in block <unit> at /tmp/YWkmru2SlN line 1 | |
»»»»» Script exit code: 1 | |
»»»»» Bisecting by exit code | |
»»»»» Current exit code is 1, exit code on “old” revision is 0 | |
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new” | |
»»»»» Therefore, marking this revision as “new” | |
»»»»» ------------------------------------------------------------------------- | |
»»»»» Testing 6319b5573cb4b3c074d081facb1cf912234b11f9 | |
»»»»» Script output: | |
»»»»» Script exit code: 0 | |
»»»»» Bisecting by exit code | |
»»»»» Current exit code is 0, exit code on “old” revision is 0 | |
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new” | |
»»»»» Therefore, marking this revision as “old” | |
»»»»» ------------------------------------------------------------------------- | |
»»»»» Testing f09b8b7b8a0412c43a384f7b9c53be35ff35176a | |
»»»»» Script output: | |
Died | |
in block <unit> at /tmp/YWkmru2SlN line 1 | |
»»»»» Script exit code: 1 | |
»»»»» Bisecting by exit code | |
»»»»» Current exit code is 1, exit code on “old” revision is 0 | |
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new” | |
»»»»» Therefore, marking this revision as “new” | |
»»»»» ------------------------------------------------------------------------- | |
»»»»» Testing c9425931ba8c5622c03e1bf88747c69e54092280 | |
»»»»» Script output: | |
»»»»» Script exit code: 0 | |
»»»»» Bisecting by exit code | |
»»»»» Current exit code is 0, exit code on “old” revision is 0 | |
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new” | |
»»»»» Therefore, marking this revision as “old” | |
»»»»» ------------------------------------------------------------------------- | |
»»»»» Testing 41e2572051967dc391de33ea6339b2389bd5728e | |
»»»»» Script output: | |
Died | |
in block <unit> at /tmp/YWkmru2SlN line 1 | |
»»»»» Script exit code: 1 | |
»»»»» Bisecting by exit code | |
»»»»» Current exit code is 1, exit code on “old” revision is 0 | |
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new” | |
»»»»» Therefore, marking this revision as “new” | |
»»»»» ------------------------------------------------------------------------- | |
»»»»» Testing 127b3be424e3119ac6f1aed4673ad0fc1c50fb10 | |
»»»»» Script output: | |
»»»»» Script exit code: 0 | |
»»»»» Bisecting by exit code | |
»»»»» Current exit code is 0, exit code on “old” revision is 0 | |
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new” | |
»»»»» Therefore, marking this revision as “old” | |
»»»»» ------------------------------------------------------------------------- | |
»»»»» Testing b7201a8f22338a906f2d8027a21387e8f5c77f41 | |
»»»»» Script output: | |
Died | |
in block <unit> at /tmp/YWkmru2SlN line 1 | |
»»»»» Script exit code: 1 | |
»»»»» Bisecting by exit code | |
»»»»» Current exit code is 1, exit code on “old” revision is 0 | |
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new” | |
»»»»» Therefore, marking this revision as “new” | |
»»»»» ------------------------------------------------------------------------- | |
b7201a8f22338a906f2d8027a21387e8f5c77f41 is the first new commit | |
commit b7201a8f22338a906f2d8027a21387e8f5c77f41 | |
Author: Elizabeth Mattijsen <liz@dijkmat.nl> | |
Date: Sun Oct 23 21:52:51 2016 +0200 | |
Completely re-imagine Str.match internals | |
Simple matches without any modifying adverbs is about 1.5x faster. | |
Complicated setups like with :nth(1,3..*), :3x are about 14x faster. | |
Other mixes of parameters are generally in the 2x to 3x faster range. | |
Two semantic changes: (see RT #129945): the family of :nth (as in :st, | |
:nd, :rd and :th) are now lazy and will return whatever they can find. | |
Before all matches would be cached to find out if enough matches were | |
found and none would be returned if not enough were found. Please | |
use an additional :x for that if you want that behaviour. Also, when | |
using .nth with an iterator using non-monotonically increasing index | |
values, it will now die, instead of silently not producing the Matchi | |
object associated with the non-monotonically increasing index value. | |
How this was done: | |
- use MMD for handling single adverb calls faster | |
- rewrite all (private) methods using nqp | |
- use iterators instead of gather/take combo's | |
- use new "skip-one" iterator methods wherever possible | |
- don't use signatures for multiple named variables | |
- pass $/ to be set around as a parameter | |
:040000 040000 310922caf347317b45596f65c9a108c5b4ef6836 898eea463f82db6215203f8380e2753429a1a439 M src |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment