Skip to content

Instantly share code, notes, and snippets.

@Whateverable
Created June 18, 2020 10:25
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save Whateverable/926101df8715d71f84de1f340145f23f to your computer and use it in GitHub Desktop.
Save Whateverable/926101df8715d71f84de1f340145f23f to your computer and use it in GitHub Desktop.
bisectable6
say "/usr".IO.cloned-with-path("local")
Bisecting: 146 revisions left to test after this (roughly 7 steps)
[2eec62feef03d2c0b498926920d99a91f5fbaae6] Reduce overhead of Code.ACCEPTS(value) by 20%
»»»»» Testing 2eec62feef03d2c0b498926920d99a91f5fbaae6
»»»»» Script output:
No such method 'cloned-with-path' for invocant of type 'IO::Path'
in block <unit> at /tmp/1Q_PuS2_AN line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 4ee0f6a0a8d290045ab85a24bcf3b5963d08439c
»»»»» Script output:
"local".IO
»»»»» Script exit code: 0
»»»»» Bisecting by exit code
»»»»» Current exit code is 0, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 84ff64cf9033123e5842434fc44502fe6d4db087
»»»»» Script output:
"local".IO
»»»»» Script exit code: 0
»»»»» Bisecting by exit code
»»»»» Current exit code is 0, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 f5b2c24055fb90b485ba931c3144fc5ba6c54cf4
»»»»» Script output:
"local".IO
»»»»» Script exit code: 0
»»»»» Bisecting by exit code
»»»»» Current exit code is 0, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 c68d4fc49269afdf5b5e67043abebf24b7eaba1c
»»»»» Script output:
No such method 'cloned-with-path' for invocant of type 'IO::Path'
in block <unit> at /tmp/1Q_PuS2_AN line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 853e62277a16f563668e8c43a75544e6f206bcad
»»»»» Script output:
"local".IO
»»»»» Script exit code: 0
»»»»» Bisecting by exit code
»»»»» Current exit code is 0, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 8e4e23ab644e70e8c9cd7a7cc0df32359a3b770b
»»»»» Script output:
No such method 'cloned-with-path' for invocant of type 'IO::Path'
in block <unit> at /tmp/1Q_PuS2_AN line 1
»»»»» Script exit code: 1
»»»»» Bisecting by exit code
»»»»» Current exit code is 1, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» 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 b63976a8f19e650fe3533562a5fa040d84535de8
»»»»» Script output:
"local".IO
»»»»» Script exit code: 0
»»»»» Bisecting by exit code
»»»»» Current exit code is 0, exit code on “old” revision is 1
»»»»» Note that on “old” revision exit code is normally 0, you are probably trying to find when something was fixed
»»»»» If exit code is not the same as on “old” revision, this revision will be marked as “new”
»»»»» Therefore, marking this revision as “new”
b63976a8f19e650fe3533562a5fa040d84535de8 is the first new commit
commit b63976a8f19e650fe3533562a5fa040d84535de8
Author: Elizabeth Mattijsen <liz@wenzperl.nl>
Date: Thu May 21 18:43:56 2020 +0200
Make IO::Path.dir between 1.5x and 2.2x as fast
- 2.2x without explicit condition, 1.5x with explicit condition
- replaced the gather / take logic by true iterators in Rakudo::Iterator
- introduced "cloned-from-path" method for faster similar IO::Path creation
which is marked as an implementation detail
- abstracted prefix logic in "prefix-for-dir" method
which is marked as an implementation detail
:040000 040000 d0301a3436c37d09b2576c2bd78b67235f8e44be e6a07402dc0440efc535de5b67073f4f285ac758 M src
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment