Permalink
Commits on Mar 29, 2017
  1. Merge pull request #1050 from dogbert17/fix-for-rt-131075

    Fix for RT #131075
    zoffixznet committed on GitHub Mar 29, 2017
  2. Fix for RT #131075

    It was noted by Zoffix++ that the number of tests run by harness6
    differed from the number run by harness5 when spec- or stresstesting.
    The problem turned out to be the piece of code combining the normal
    test files in spectest.data with the ones marked as being 'slow'.
    That code used the Z operator on lists that were not the same size,
    changing to roundrobin instead solves the problem. Zoffix++ for help.
    dogbert17 committed Mar 29, 2017
  3. List .extension(:parts) is proposed to take a Range

    - This was originally suggested as possible future expansion,
    but feels useful enough to include right now.
    zoffixznet committed on GitHub Mar 29, 2017
  4. Log changes to IO Plan at the top

    Remove `other issues` from bottom and log changes due to discussions
    at the top so those who reviewed the plan already can easily see the
    new changes.
    zoffixznet committed on GitHub Mar 29, 2017
Commits on Mar 28, 2017
  1. Catch useless use of 'now' now, now...

    TimToady committed Mar 28, 2017
  2. suppress useless use on INIT/ENTER/FIRST

    Would be nice to determine this in 2nd pass, but for now, it's
    better to allow false negatives than false positives.
    TimToady committed Mar 28, 2017
  3. Mark integration/eval-and-threads.t as slow

    So it won't affect the total wallclock time as much as it did before.
    lizmat committed Mar 28, 2017
  4. Move tests for is_approx to a separate file

    It's deprecated so it's tested separately.
    pmurias committed Mar 28, 2017
Commits on Mar 27, 2017
  1. Add removal of IO::Path.chdir to list

    zoffixznet committed on GitHub Mar 27, 2017
  2. Merge pull request #1047 from skids/FOREIGN_LANG

    Fix SEGV in FOREIGN_LANG after nqp fixes in nqp PR#349
    zoffixznet committed on GitHub Mar 27, 2017
  3. Bump NQP

    Brings these commits
    perl6/nqp@2017.03-12-g0adbb98...2017.03-32-g7bd72e5
    7bd72e5 Bump MoarVM
    885d2c8 Merge pull request #349 from skids/FOREIGN_LANG
    c360266 Test dividing big negative numbers
    85b8b45 [js] Fix bug when dividing big negative numbers
    51243c9 Test that bitshifts round down not to zero
    7471512 [js] Make bitshift on bignums round down
    bbbad2b [js] Remove duplicated code
    07bf3e8 [js] Make nqp::backtrace return a stack trace
    7c13010 Just use nqp::null raher than a sentinel in define_slang
    91070a8 [js] Add missing file
    4e519d2 Prevent warnings on action type objects -- use NO_VALUE sentinal
    383e75b Handle cloning/setting braids between NQPCursor and Perl6 Cursor
    bb30a4d [js] Remove unused part of a hack
    9497ebd [js] Fix style violation found by 'make js-lint'
    ad45110 [js] Refactor to avoid cloning an array
    c247728 [js] Implement nqp::getstrfromname and nqp::codepointfromname.
    e5872af Test cloning of closures that have statevars
    5cc1501 Test nqp::getlexouter with dynamic variables
    c2cea52 [js] Refactor the way lexical scopes are handled
    67a74d2 Bump MoarVM to fix bug with case insensitive regex w/ synthetics
    
    MoarVM bump brought these commits:
    MoarVM/MoarVM@2017.03-25-ga8448142...2017.03-31-g8f9325b
    
    8f9325b chr: For cp < 0x300 short circuit a unicode property test
    f2acad4 MVM_string_chr: Only allocate and normalize for cp's that require it
    ad44958 Merge pull request #557 from MasterDuke17/fix_overflow_to_negative_boundary_detection_in_mp_get_int64
    c5eb7d5 Split into mp_get_int64 and mp_get_uint64
    65f35b2 Rename `sign` to `is_signed`
    84a730f Correctly detect+handle overflow in mp_get_int64
    zoffixznet committed Mar 27, 2017
Commits on Mar 26, 2017
  1. [io grant] Make R::I::SET_LINE_ENDING_ON_HANDLE 4.1x Faster

    zoffixznet committed Mar 26, 2017
  2. Merge pull request #1049 from AlexDaniel/there-is-no-pid

    Remove $.pid from Proc
    zoffixznet committed on GitHub Mar 26, 2017
  3. Remove $.pid from Proc

    Not that we should not have it, but as of today it does nothing at
    all (making users assume that there is something wrong with their
    code).
    
    See https://irclog.perlgeek.de/perl6/2017-03-25#i_14323473
    
    Spectest clean.
    AlexDaniel committed Mar 26, 2017
  4. Use a(--> Foo) {} instead of a() { Foo } where possible

    Because it is about 20% faster.  No sure whether this will cause
    any noticeable speedups, but every little bit helps.  And I think
    it actually reads better.  And should provide some better optimization
    options.
    lizmat committed Mar 26, 2017
  5. Make .IO.slurp about 2x as fast

    If you don't specify any named parameters.  Would be 5x as fast if
    we didn't have to do self.abspath.
    lizmat committed Mar 26, 2017
  6. [io grant] Make IO::Spec::Unix.catdir 3.9x Faster

    zoffixznet committed Mar 26, 2017
  7. [io grant] Make IO::Spec::Unix.split 36x Faster

    - Affects IO::Path's .parent, .parts, .volume, .dirname, and .basename
    - Measurement of first call to .basename shows it's now 6x-10x faster
    zoffixznet committed Mar 26, 2017
  8. Merge pull request #1048 from jonathanstowe/fully-shaped-associative

    Fix the introspection of attributes with explicitly typed keys
    lizmat committed on GitHub Mar 26, 2017
  9. Fix the introspection of attributes with explicitly typed keys

    This was reported as jonathanstowe/JSON-Class#3
    
    It appears that when the "BOOTSTRAP" Associative is made for the
    attributes type it has two parameters but when it is materialised
    to call 'of' on it, it fails because the Associative only has one
    parameter:
    
    class C {
        has Str %.bla{subset :: of Str where any("ble", "blob")};
        has Str %.foo{Int};
    };
    
    for C.^attributes -> $attr {
        say $attr.type;
        say $attr.type.of;
    
    }
    
    Gives
    
    (Associative[Str,<anon>])
    No appropriate parametric role variant available for 'Associative'
      in block <unit> at tt line 13
    
    This fixes that by providing the extra parameter.
    
    Also took the opportunity to match Hash with a .keyof()
    jonathanstowe committed Mar 26, 2017
  10. Fix error message

    lizmat committed Mar 26, 2017
  11. [io grant] Make IO::Spec::Unix.rel2abs 35% faster

    zoffixznet committed Mar 26, 2017
  12. Make IO::Spec::Unix.is-absolute about 4.4x faster

    zoffixznet committed Mar 26, 2017
  13. Make IO::Path.new 7% faster when creating from Str

    Since a lot of IO::Paths are created from strings, avoiding the
    hitting the coercer gives a minor boost.
    
    Also fixes failure to detect empty path when
    using .new: :basename… form.
    zoffixznet committed Mar 26, 2017
  14. Prevent problems when $!name has not been set

    skids committed Mar 26, 2017
  15. [io grant] Improve IO::Path.child perf on *nix

    - make IO::Path.child 2.1x faster on *nix
    - make IO::Spec::Unix.join 8.5x faster
    - make IO::Spec::Unix.catpath 9x faster
    zoffixznet committed Mar 26, 2017
  16. Remove trailing whitespace

    zoffixznet committed Mar 26, 2017
  17. [io grant] Make IO::Handle.open 75% faster

    zoffixznet committed Mar 26, 2017
Commits on Mar 25, 2017
  1. Make sure sink-all at least does a value check

    lizmat committed Mar 25, 2017
  2. Make .invert about 10x faster

    - also move out of Seq, it didn't belong there
      This was found during planning the hyper/race implementation
    - add as a dedicated iterator in R:Iti: Invert
    - makes 1 test fail in S02-types/pair.t
      It expected X::TypeCheck::Binding whereas it now throws X::TypeCheck
      if you're giving it a non-Pair.  Since the name of the (internal)
      variable doesn't matter, X::TypeCheck felt more appropriate.
    - makes 1 test fail in integration/advent2011-day23.t
      The test assumes that Pair.invert returns a List, rather than a Seq.
      Also, the test seems to be pre-GLR:
        @a.pairs>>.invert is better written as: @a.pairs.invert
    lizmat committed Mar 25, 2017
  3. Add IO Action Plan to docs

    zoffixznet committed Mar 25, 2017
Commits on Mar 24, 2017
  1. Replace all Foo.CREATE by nqp::create(Foo)

    It is *at least* 14x faster.  This is caused by Mu.CREATE not being
    jitted.  By using the direct nqp::create equivalent, we completely
    remove the need to call this (currently) unoptimizable method.
    So fewer frames, and thus (I assume) lower memory pressure as well.
    lizmat committed Mar 24, 2017
  2. Bump Moar/NQP to fix bug with case insensitive regex w/ synthetics

    samcv committed Mar 24, 2017
Commits on Mar 23, 2017
  1. [io grant] Remove IO::Path.pipe

    Appears to be vestigial, functionality replaced by Proc.
    No tests. No docs. And has been broken since pre-Christmas.
    zoffixznet committed Mar 23, 2017
  2. Bump NQP revision to get \r\n fix

    moritz committed Mar 23, 2017