Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP

Comparing changes

Choose two branches to see what's changed or to start a new pull request. If you need to, you can also compare across forks.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also compare across forks.
base fork: rakudo/rakudo
...
head fork: rakudo/rakudo
Checking mergeability… Don't worry, you can still create the pull request.
This comparison is big! We're only showing the most recent 250 commits
Commits on Apr 19, 2015
@lizmat lizmat Sample code handling nqp::ops without 'use nqp' 9861648
@lizmat lizmat Some more debugging info bc7b4fa
@lizmat lizmat Don't specify "load" if there is none ecfb15c
@lizmat lizmat throws_like Str will EVAL in the scope of caller 1659550
@lizmat lizmat Eradicate 'use' from CORE settings
First step to sanitizing the 3.5 code paths to loading a compilation unit.
ee40c0e
@lizmat lizmat Hardwire the bootstrap, jnthn++ c94393f
@jnthn jnthn Missing nqp::decont on method additions.
Fixed meta-programming bug reported by tadzik++.
9890d88
@coke coke Use the correct perl6 to check for Inline::Perl5 d4a9878
@lizmat lizmat List nqp::op violations after a compunit compiled
It turned out to be pretty bad to use the standard DEPRECATED mechanism for
this.  So instead of that, it's not writing the message to STDERR after the
compunit has been compiled.
7075007
@lizmat lizmat Fix typo 5d707b6
@coke coke This isn't a Perl 6 test, don't try to run it. c14bc41
@coke coke Run these passing tests
...some of which were recently fudged
4c1ae0d
@lizmat lizmat Handle all pragmas with -M (not just "strict") 4ba4aab
Commits on Apr 20, 2015
Brent Laabs move methods from Cool.pm to Str.pm: <codes chars uc lc tc tclc ord f…
…lip>

Boost performance on all of these functions by ~25% when performed
on a Str object; roughly unchanged performance on other Cool types.
a96118d
@jnthn jnthn Add Str method to Uni.
Goes from a Uni (code point level) to an NFG string (soon!)
3ac5c31
@jnthn jnthn Implement Str.[NFC|NFD|NFKC|NFKD]. 44daca2
@jnthn jnthn Bump NQP_REVISION for Moar NFG bits so far.
Certainly we're not all the way on NFG, but enough to pass a bunch of
tests, and it's nice to get others running them for wider testing.
81fe3c3
@jnthn jnthn Run a bunch of NFG spectests on Moar.
These all should pass with the work done so far.
5cfddf5
@jnthn jnthn Bump NQP_REVISION for Moar NFG improvements. f23bc73
@jnthn jnthn Run 3 more NFG-related spectests. 958ffbf
@jnthn jnthn Toss dead code. bd046ec
@jnthn jnthn Avoid creating WVal for non-SC object.
Fixes RT #124304 (sigilless vars could work out badly in an EVAL).
6f8d283
@jnthn jnthn Make REPL tests robuster for Windows. a75917e
@jnthn jnthn Don't lower UNIT lexicals from the REPL.
Unbusts binding in the REPL, fixing RT #122914.
da0f895
@jnthn jnthn REPL tests for RT #122914. 15bb095
@jnthn jnthn Use normal todo markers in REPL tests.
It's not in spectest, so fudge don't apply here.
ee1e718
@TimToady TimToady allow ws after --> Type in signature b629299
@masak masak rename s/Can'tMeta/CannotMeta/
<jnthn> masak: Why?
<masak> because at some point we standardized that in the choice
        between "can't", "can not", and "cannot", error messages
        should choose "cannot"
c4beed6
Commits on Apr 21, 2015
@TimToady TimToady notice when a sigil can't parse what's after d26daac
@TimToady TimToady missed a Can'tMeta -> CannotMeta 2394bf2
@TimToady TimToady don't use shell where run is more better 3b80788
@TimToady TimToady Merge branch 'nom' of github.com:rakudo/rakudo into nom
Seems like I need to merge to get an amendment upstream.  I could be rwong...
013cc02
@TimToady TimToady should not have an exit method that doesn't c35aa01
@TimToady TimToady deprecate .exit now, not next month :) 71ca036
@lizmat lizmat Deprecate everything at 2015.09 at the latest 44d40c2
@coke coke Implement basic uninames on moar eb86621
@TimToady TimToady SETTING should chain outward to CORE 91156e3
@TimToady TimToady some copy/pastos on WHOness a94d687
@skids skids Add typed exception X::NYI::Available for "Please install X for Y sup…
…port."

Use it for Inline::Perl5
This is more for the ecosystem's use than internal, though.
1826173
Commits on Apr 22, 2015
@timo timo mention --profile-filename in the usage message abc3875
@perlpilot perlpilot claim the August release bd25f32
@TimToady TimToady remove silly YOU_ARE_HERE restriction
We're supposed to be able to define settings in terms of other settings
in the outer scope.  That's why they're settings, not preludes.
e0b3401
@TimToady TimToady {YOU_ARE_HERE} is reserved for settings 4bf8538
@lizmat lizmat Deprecate grep-index in favour of grep :index f1d5d0f
@lizmat lizmat Revert "Deprecate grep-index in favour of grep :index"
<TimToady>  :k, :kv, :p should follow the same policy as subscripting does

My patch only partially addresses this, and it seems inappropriate to put this
in just before the release tomorrow.
049fe61
@TimToady TimToady remove EVAL bandaid in MAKE_REGEX for now
Escaping characters obscures the actual injection attack vulnerability,
and breaks other things.  (A better solution will be to not use interpolation.)
7bef4a3
Commits on Apr 23, 2015
@TimToady TimToady do submatch with cursors, not substr and ~~
Not only is this more efficient, it also doesn't break anchors
or introduce spurious scanning.
1fb4820
@raydiak raydiak More Proc::Status.exit -> .exitcode conversions 2b6ae81
@FROGGS FROGGS Merge pull request #412 from raydiak/nom
More Proc::Status.exit -> .exitcode conversions
c8371ec
@lizmat lizmat Make List.pick(*) about 10% faster b0e7a59
@lizmat lizmat Make chop/.chop first class citizens 0c0eb13
@skids skids Hook up windows-1252 charset support. This requires changes
in moarvm an nqp to be committed first.
35ea31f
@lizmat lizmat Add some ChangeLog entries 587d309
@lizmat lizmat Mention chop (let't not forget it again :-) 7c849ec
@lizmat lizmat uniname is NYI on JVM 4f54891
@lizmat lizmat uniname(s) *is* implemented on JVM, psch++ 45c479a
@jnthn jnthn ChangeLog tweaks. 0b5f646
@jnthn jnthn Some more ChangeLog entries. 3cba43f
@TimToady TimToady shim in .rotor(Pair) for transition to gapishness
Whether we deprecate current rotor is independent of this.
a29614c
@masak masak [docs/ChangeLog] hyphen nitpickery b7087d4
@FROGGS FROGGS mention CURLI and 'is rw' c1f270d
@FROGGS FROGGS fix formatting 95a8325
@masak masak [docs/announce/2015.04.md] add early draft 0b82af4
@lizmat lizmat Elaborate on sequence fixes, TimToady++ 3b5a326
@lizmat lizmat Merge branch 'nom' of https://github.com/rakudo/rakudo into nom 9432923
@lizmat lizmat more ChangeLog tweaks c9a6766
@masak masak add lots of new ChangeLog items 6577860
@masak masak [ChangeLog] mention yet another fix ab6c252
@lizmat lizmat Remove has-substr, it's called substr-eq now 3d3bc76
@masak masak [ChangeLog] mention Int() in multi semantics change 9c2ae90
@masak masak [announce/2015.04.md] add list of contributors c65d741
@masak masak de-dupe RabidGravy++ 4fa2545
@masak masak [announce/2015.04.md] This. Is. VLADIVOSTOK. 1235a27
@masak masak [announce/2015.04.md] add a list of changes
Note that this is a subset of all the things from the ChangeLog.
This month there were a lot of things, and we show the most notable
ones.
338ad26
@masak masak [release_guide.pod] move today's release down bfe3595
@masak masak [release] bump NQP revision 5aecace
@masak masak [release] bump VERSION 897e235
Commits on Apr 24, 2015
@TimToady TimToady new rotor implementation to play with ea0b3f0
@moritz moritz Run List.rotor tests c44c52e
@FROGGS FROGGS bump nqp/moar rev for cp1252 support 9f840b7
@FROGGS FROGGS Merge pull request #415 from skids/windows-1252
Hook up windows-1252 charset support.
59f57a8
@jonathanstowe jonathanstowe Merge branch 'pr/hyphenate_test_functions' of github.com:paultcochran…
…e/rakudo into hyphenate_test_functions

Conflicts:
	lib/Test.pm
7da357d
@niner niner Mention Inline::Perl5 integration in ChangeLog and release announcement
Thanks to moritz++ for pointing me there.
9e19470
@jonathanstowe jonathanstowe Add deprecations for underscore names in Test.pm 6e278a7
@moritz moritz Merge pull request #416 from niner/nom
Mention Inline::Perl5 integration in ChangeLog and release announcement
7bc1a11
@jnthn jnthn Bump NQP_REVISION for various MoarVM fixes. de40075
@lizmat lizmat Remove unneccesary unboxing b34241d
@paultcochrane paultcochrane Merge pull request #1 from jonathanstowe/hyphenate_test_functions
Hyphenate test functions
302475c
@lizmat lizmat Maybe it was slow in 2011, it's pretty fast now b1c3101
@jnthn jnthn Implement Uni.codes. 27dfc5e
@jnthn jnthn Implement array indexing on Uni. 5615b7d
@jnthn jnthn Some missing :D on Uni methods. 7c89551
@jnthn jnthn .gist/.perl/.elems/.Numeric/.Int for Uni c7da6ce
@jnthn jnthn Implement Uni.Bool. 7b5d9a7
@jnthn jnthn Run S15-string-types/Uni.t on MoarVM. f74477c
@lizmat lizmat Make RAKUDO_MODULE_DEBUG output more consistent 5943fea
@hoelzro hoelzro Remove reference to linenoise in Moar config 46c2bc3
@hoelzro hoelzro Use new readline method from NQP for prompting
This abstracts over readline libraries, if any are available
d664a4a
@hoelzro hoelzro Use Linenoise for the REPL if it's available 1460d51
@hoelzro hoelzro Bump NQP revision 70bb2a3
@hoelzro hoelzro Add rudimentary tab completion 128fa5c
@hoelzro hoelzro Decouple completion from linenoise a74e22f
@hoelzro hoelzro Eliminate redundant loads of linenoise when setting it up 73a7523
@hoelzro hoelzro Perform completion logic in NQP 188863b
@hoelzro hoelzro Load tab completion hash from CORE fbf24c7
@hoelzro hoelzro Remove Completion.pm
Its functionality is in NQP now
7af29eb
@hoelzro hoelzro Add note about Linenoise in the README 23b358a
@hoelzro hoelzro Don't only complete method names 92f9953
@hoelzro hoelzro Offer completions for classes from imported modules e721806
@hoelzro hoelzro Add completions for imported modules ca1f563
@hoelzro hoelzro Use a list of sorted items to track completions
...instead of a hash.  The advantage here is that we can offer a sorted
list of completions, rather than providing them in seemingly random
order.
74579eb
@hoelzro hoelzro Return null string (instead of undefined) if linenoise is done 5b16e45
@hoelzro hoelzro Don't add to completions set unless linenoise is active
It doesn't make sense unless we have a tab completion facility
6c6d509
@hoelzro hoelzro use nqp; when loading Linenoise for tab completion
Otherwise we get a warning
7acef94
@hoelzro hoelzro Merge branch 'tab-completion' into nom 0914fce
@jnthn jnthn Fix .codes on Moar, in preparation for NFG. 224db5e
@lizmat lizmat Don't use no bloody intermediate
The win is in the noise range (about %1), but it simplifies the code, and that
is a good thing, no?
1905fc1
@lizmat lizmat Make List.pick about 3% faster, brrt++ 5efcae8
@lizmat lizmat Make List.pick(*) about 7% faster 7fe6f1b
@lizmat lizmat Don't need the Whatever check anymore, labster++ 0a7825f
@jnthn jnthn Bump NQP_REVISION for Moar/NQP NFG work.
With this, NFG is enabled for all Str.
e459701
@jnthn jnthn Enable a range of new S15-nfg tests on MoarVM. 14f6344
@lizmat lizmat Make a faster List.pick(*,:eager) version
Well, that was the idea.  Turns out the eager version is about 20x *slower*.
Added here for further research.

What has been ruled out:
- anything inside the loop
  That part of the code is mostly the same as the non-eager version.  If
  the code inside the while loop is reduced to just the $elems = $elems - 1,
  even then the eager variant is about 15x slower.
- something in the MMD dispatch
  If the code inside the "eager" variant is the same as the non-eager variant,
  there is no difference in execution noticeable either.
- not SPESH related
  With MVM_SPESH_DISABLE=1 the difference in execution is even larger: the
  optimizer did its best!

What *is* different?
- the number of frames in a profile
  example code: my @a = ^100; for ^500 { @a.pick(*) } # or *, :eager
  non-eager / eager: 10618 / 176614 frames
  So the difference in number of frames is in same order of magnitude as the
  difference in CPU.

So the question is really: why does the eager version create so many frames?
40a4241
Commits on Apr 25, 2015
@TimToady TimToady .map is no longer flat; use .for for flat map ecd3159
@lizmat lizmat Use eager pick(*) where it makes sense
This makes at least EARLIEST a bit faster, and hopefully more stable.
9d74227
@TimToady TimToady rotor no longer itemizes slices b8f72f5
@TimToady TimToady distinguish join from _join
for now, _join is the old flattening join, until we decide the best notation
998f019
@lizmat lizmat Don't use _join in core, does not seem necessary 0c9c252
@lizmat lizmat Eradicate _join, please use .flat.join instead 5aee9b4
@lizmat lizmat Add Supply.rotor(:partial) and deprecation 0c197cd
@FROGGS FROGGS symbolic indirect subrules in regexes d0a84bc
Commits on Apr 26, 2015
@lizmat lizmat Mark "my int %h" as NYI, jnthn++ for pointers 2da5bb2
@lizmat lizmat Merge pull request #371 from paultcochrane/pr/hyphenate_test_functions
Rename test functions to use hyphens instead of underscores
4bd8670
@lizmat lizmat Saner way to deprecate Suppl.rotor features 339917c
@lizmat lizmat Allow for positive gaps in Supply.rotor 7ac24e4
@lizmat lizmat Add some ChangeLog entries dc910b6
@peschwa peschwa Simplifiy JavaHOW.
Instead of reimplementing partial functionality from MethodContainer we might
as well just C<does> it.
265c009
@lizmat lizmat Bring same API to Supply.rotor (from List.rotor) 6a40b9f
@lizmat lizmat Merge pull request #411 from skids/xnyi
Add typed exception X::NYI::Available
df04346
@jnthn jnthn Bump NQP_REVISION to get MoarVM IO fixes. 58213db
@TimToady TimToady no flattening for .and/.all/.one/.none methods b80de35
Commits on Apr 27, 2015
@TimToady TimToady remove commented code 9f7c71f
@TimToady TimToady flattery gets .classify and .categorize nowhere 13aed01
@TimToady TimToady min/max/minmax deflatting fff887e
@TimToady TimToady deitemize combination/permutations 0a68977
@TimToady TimToady .unique and .squish don't flatten 3a2f8a5
@lizmat lizmat Move module loading logic to World
Step #1 towards making module loading more S11/S22 compatible.
34f7992
@lizmat lizmat Make 'use strict <foo bar>' give a better error 1dd95d4
@lizmat lizmat Don't use try if it's not needed 589da72
@masak masak Pointer.^parameterize made fresh puns every time
It shouldn't -- this commit fixes that, with a regression test.

Bug discovered by DrForr++. This takes care of RT #124321.
1c916bc
@masak masak CArray.^parameterize made fresh puns every time
It shouldn't -- this commit fixes that, with a regression test.

Bug discovered while working commit
1c916bc. FROGGS++ confirmed that
the code in CArray was based on Pointer, and provided the failing
test case (FROGGS++).
2ce3cda
@masak masak create RolePunning.pun method 71b0f06
@TimToady TimToady in ... don't call Regex as a closure match e6cdd26
@lizmat lizmat Nothing in speculation about Devel::Trace 735ab5f
@lizmat lizmat Check longnameness before extra parameterness 85a2654
@lizmat lizmat Simplify pragma handling further 7f49dd6
@FROGGS FROGGS bump nqp rev for uniprop improvement b6b180b
Commits on Apr 28, 2015
@jnthn jnthn Ensure Capture.perl doesn't flatten in hashes.
Fixes RT #114100.
71d6480
@TimToady TimToady pervasive changes for non-flattening for loops
(It's possible we can remove some of the .flats here or there without
damage, but I erred on the side of caution on some of them.)
04cc1d5
@FROGGS FROGGS move changes to SLICE.pm@04cc1d5 to makeSLICE.pl6 4fafbe8
@jnthn jnthn Start giving statements an ID.
Also tag blocks pushed while compiling that statement with the ID.
Will be used for fixing various thunking scoping bugs.
5774ac0
@jnthn jnthn Toss unused parameter. 0ffe68f
@jnthn jnthn Fix scoping bugs with s.m. for and given.
"try { say $_ } for ..." and "try { say $_ } given ..." did not move
the blocks into the thunk generated for for/given, so we looked up the
wrong $_.
c5d7aa0
@jnthn jnthn Make blorsts migrate blocks into thunks.
This fixes various bugs with e.g. block-less gather working wrongly
when adding a block worked.
4a8a61f
@jnthn jnthn Fix thinko in block migration predicate check. 709b77d
@jnthn jnthn Start statement ID at 1 to avoid bogus matches. cd53104
@jnthn jnthn Fix '{ say $^x } given 42'. b317d0a
@jnthn jnthn Implement bare block case of if/unless s.m. a5f38ae
@jnthn jnthn Implement <&foo: $arg> and <&foo($arg)>.
We don't parse quite so liberally as STD does here, mostly because it
seems like a great way to have to do a bunch of more fragile analysis
without obviously implementing anything else from the design.
8782513
@coke coke Bump nqp for jvm bugfix for RT #124144 feca211
@jnthn jnthn Fix regression in s.m. given/for.
We accidentally relocated blocks occurring in a statement modifier
into the thunk for given and for, rather than just the ones in the
statement. Need an extra bit of state to fix this, as we still want
to do the move when we're doing blorst thunks.
4b39cd5
@TimToady TimToady for's impl is now .FOR, remaining .for can be .map 71ff418
@moritz moritz Re-introduce a deprecated Any.for
no reason to break this particular feature right now
4372ca2
Jeffrey Goff Adding myself as the release manager for Parrot directly after Simon. 6b29e3d
@coke coke Merge pull request #420 from drforr/nom
Adding myself as the release manager for Parrot directly after Simon.
29ead06
@lizmat lizmat Move loading and symbol setup to World fa2e089
@lizmat lizmat Move the mop up and check code to World 20f5f6d
@lizmat lizmat s/\$\*W/self/ where possible in World 452504e
@lizmat lizmat Move import_EXPORTHOW to World f4ff0a8
@lizmat lizmat Move add_package_declarator to World 59b8935
Commits on Apr 29, 2015
@lizmat lizmat Simplify UNIT tagging f433a2f
@lizmat lizmat First scaffolding auth/version in module loading
This basically introduces the temporary "use cur" pragma, and the @?INC
compile time array with string representations of CompUnitRepo's to search.
9826595
@lizmat lizmat use cur should unshift, not push :-) 902c291
@lizmat lizmat Add some 'use cur^Wlib' sanity tests 1a4d47f
@lizmat lizmat Add some more sanity tests cbf849f
@timo timo try to hint at what you can't adverb (rather than just "that") bcf3f1c
@lizmat lizmat Make an evil hack a bit less evil c102326
Commits on Apr 30, 2015
@TimToady TimToady use new complex literal notation for .perl 5455ace
@TimToady TimToady implement 'is nodal' 480bd7f
@moritz moritz Fix error reporting on adverbed things whose name we cannot extract
fixes the test failure in S03-operators/ternary.t
2825467
@moritz moritz Remove debugging statement, FROGGS++ ee116a5
@lizmat lizmat Naive exposure of lexical pragmas as %?PRAGMAS
Mainly intended for debugging atm.  Its usefulness to be discussed.  If it
stays, we probably want to turn it into an immutable EnumMap.
6337a9c
@lizmat lizmat Get rid of obsolete "quit" rule
It doesn't break any spectests and doesn't break panda, so I assume it can go.
bbadad1
@lizmat lizmat Exclude all setting code from backtraces
If this is ok with everybody, we can also get rid of all

  is hidden-from-backtrace

specifications in the core settings.
a7c5b18
@lizmat lizmat Kill is hidden-from-backtrace from core
We don't need it anymore, as all settings entries are now not shown in a
standard backtrace.
7af7eb4
@lizmat lizmat Gracefully handle .gist on unthrown exceptions
Inspired by PR #405, skids++
91eaacf
@lizmat lizmat Remove unneccessary return statements
At one point, the optimizer should fix these.  Until then, this should help
a (tiny) bit in performance.
35266ad
@lizmat lizmat Introduce $?RAKUDO_MODULE_DEBUG
At least for now to facilitate module loading debugging.  Should be easily
optimizable by any optimizer.
9f5632b
@lizmat lizmat Introduce RAKUDO_BACKTRACE_SETTING env variable
If true, setting frames will be included in any stack trace.  By default, they
will not.
64b0d48
@lizmat lizmat Introduce RAKUDO_VERBOSE_STACKFRAME env variable
If specified, it should indicate the number of *extra* lines before and after
of the *code* should be shown whenever a stack frame is stringified.  This
can happen for any warning, or when an exception is thrown and not caught.
b689a84
@lizmat lizmat Fix LTA error for (^5)[Any] c03f82d
@lizmat lizmat Some preliminary work on CompUnitRepo d09e62c
Commits on May 01, 2015
@TimToady TimToady fooled myself, don't need nodal on multis c578247
@lizmat lizmat Remove some more "is nodal" from multis a073f5d
@jnthn jnthn Bump NQP_REVISION for MoarVM with string fixes. 8a7e9c4
@jnthn jnthn Make { 1 R=> 'a' } and { %*h } construst hashes. ea8c01a
@lizmat lizmat Don't force the default SHORT-ID here 0e30f48
@lizmat lizmat Move emphasis to line number 6887699
@lizmat lizmat Make $?RAKUDO_MODULE_DEBUG a proper constant 5fa3ffb
@jnthn jnthn Bump NQP_REVISION for ~/capture regex fixes. 676c250
Commits on May 02, 2015
@TimToady TimToady parcels need their own nodals till list merge f3ecf86
@lizmat lizmat Make all List.pick candidates use the same logic
There is no performance gain to be seen from using an nqp op for creating a
random number.  So revert to using higher language constructs that may be
better optimised / optimizable.
f188351
@lizmat lizmat Some List.roll improvements
General performance improved and seperate List.roll(*) candidate that returns
a list that knows it's infinite.
95411f5
@lizmat lizmat Fix List.roll(Inf), spotted by b2gills++ 179193a
@lizmat lizmat Fix use lib sanity testing, spotted by jdv79++ 56cae10
Commits on May 03, 2015
@lizmat lizmat Make deprecation more camelia friendly, timotimo++
Also mention RC-0 as a cutoff time for deprecations.
065219c
@lizmat lizmat Introduce Attribute will lazy initializer, jnthn++
Inspired by rjbs++, this will actually first wrap the Attribute composer,
and in there, wrap the accessor with code that will call the indicated
block once to set the value, then call the original accessor again.
bdc66e7
@lizmat lizmat Call lazy code until we have a defined value
Tried to fix this by introducing an "$!initialized" attribute in the role,
but couldn't get that to work, some weird scoping / capturing issues.
fd90eb6
@lizmat lizmat Fix message on Attribute will foo c72d670
@moritz moritz Test.pm: Escape # in todo() output 6a20f05
@jnthn jnthn Get MoarVM with hash improvements.
Hashes on r-m now uses (on 64-bit platforms) 8 bytes less per hash,
plus 16 bytes less per hash entry.
20e3646
@lizmat lizmat Make nqp::ops warning a bit more camelia friendly 86b1b2b
@lizmat lizmat my $a will end { say "byebye" } now works cfdf0a3
@lizmat lizmat Some code esthetics 13dc82f
@lizmat lizmat Variable will foo &block cleanup
- will init/post/compose will now throw NYI instead of silently doing nothing
- will enter/leave/keep/undo/first/pre will now set $_ correctly

jnthn++ for support and suggestions!
87b1eea
Commits on May 04, 2015
@lizmat lizmat Implement new @*INC handling
This reduces bare startup time by about 30% (.23 to .16 on my machine), and
running a spectest from 240 to 215 wallclock (1620 to 1435 CPU), again on my
machine.

List of features:
- @*INC / %*CUSTOM_LIB only contain strings, never any (other) object
- the separator between paths is now ","
- the separator between include path specification is now "#"
- all module loading code is now threadsafe (afaics)
- added RAKUDO_MODULE_DEBUG helper sub for module loading diag info
- added DISTRO.cur-sep to help with migration from older panda's
- adapted parse-include-spec sanity testing

We should now be ready to making 'use lib' a pragma and truly lexical.
3c5fe7f
@lizmat lizmat Forgot to commafy one PERL6LIB ref 31f3db1
@lizmat lizmat Make CompUnitRepo.new do something sensible 52bf35d
@jnthn jnthn Bump NQP_REVISION for Moar with concurrency fixes. 5ebbd47
@jnthn jnthn Add S17-promise/stress.t as a stress test. 66e15e5
@jnthn jnthn Don't assume time-based things won't hog threads.
Fixes RT #123520.
4ad94f3
@lizmat lizmat Only complain about non-empty specs 5708c60
@lizmat lizmat Remove some more beautiful plumage 198d9e7
Commits on May 05, 2015
@lizmat lizmat Silence backtrace generation, spotted by tony-o++ a8326d0
@jonathanstowe jonathanstowe handle "earliest @c { more $c1 { .. } more * { } }
This creates todo items for the wildcard more and done
if there are any remaining channels without specific handlers
262e08f
@lizmat lizmat Merge pull request #421 from jonathanstowe/nom
handle "earliest @c { more $c1 { .. } more * { } }
34c15da
@lizmat lizmat Make $?FILE absolute always
Relative paths are useless when debugging problems with module loading.
66b713d
@lizmat lizmat Remove CompUnitRepo::Distribution
panda apparently has migrated
0ad4607
@lizmat lizmat CURLI needs CompUnitRepo::Distribution, ugexe++ bf8aaa1
@lizmat lizmat Remove %?PRAGMAS
I hadn't realised that it only makes sense to change pragmas at compile time.
Since BEGIN blocks run in the lexical scope of the underlying nqp code, we
can simply access %*PRAGMAS there.
99786d2
@lizmat lizmat Prefix file# if needed 65cd273
@lizmat lizmat Go native 1763049
Commits on May 06, 2015
@FROGGS FROGGS RT #125038 fix smart matching against m:2x/.../ 240cf01
@TimToady TimToady Awesomeize insufficiently type-like message d7dbe15
@FROGGS FROGGS strip undefines from Match.caps we cannot sort by .from
This fixes a blowup for: say "foo" ~~ m/ $42=\w /
3434745
@FROGGS FROGGS also run S05-capture/alias.t 8dcef45
@FROGGS FROGGS optimize latest patch to Match.caps, lizmat++ 4752e70
@lizmat lizmat Show an empty sig for what it really is
Make this MMD dispatch error a bit clearer, I hope:
$ perl6 -e 'multi a() { ... }; multi a(*%twiddles) { ... }; a'
Ambiguous call to 'a'; these signatures all match:
:(*%_)
:(*%twiddles)
6640006
@lizmat lizmat It's ambiguous because named params don't matter 51ccca9
@lizmat lizmat Add some ChangeLog entries af823c9