Permalink
Switch branches/tags
Commits on Sep 15, 2011
  1. Use test.pl miniperl check rather than by-hand in t/io/shm.t

    Doing the miniperl check by hand didn't exit() so the test script would die
    as soon as it got down to the "use IPC::SysV" line.
    George Greer committed Sep 15, 2011
  2. Tests in "t/io" aren't supposed to use Test::More yet, so use test.pl…

    … instead.
    George Greer committed Sep 15, 2011
  3. shm.t: Skip under miniperl

    Father Chrysostomos committed Sep 15, 2011
  4. shm.t: Don’t call shmctl in END when undefined

    The skip was not inside a BEGIN block, so the END block ended up
    getting compiled and running.
    Father Chrysostomos committed Sep 14, 2011
Commits on Sep 14, 2011
  1. Be more precise in the wording of how // works.

    See the discussion starting with mail:9879.1315954489@chthon
    This rephrasing should avoid people getting the impression // is a
    source filter, translating 'A // B' into 'defined(A) ? A : B', and
    reparsing the result.
    Abigail committed Sep 14, 2011
  2. [perl #92436] Make Filter::Simple match variables better

    (This is the second bug reported in ticket #92436.)
    
    Filter::Simple was using Text::Balanced’s extract_variable, which
    
           ...extracts any valid Perl variable or variable-
           involved expression, including scalars, arrays, hashes, array
           accesses, hash look-ups, method calls through objects, subrou-
           tine calls through subroutine references, etc.
    
    So it extracts things like $x->foo("blah lbah blah").  That means
    that, when the user of Filter::Simple asks for everything except
    strings, "blah lbah blah" is passed through anyway, because
    Filter::Simple things it’s part of a variable name.  That obviously
    doesn’t work.
    
    This commit makes Filter::Simple use a regular expression for varia-
    bles, as it does for other things.  It’s certainly not foolproof, but
    Filter::Simple in general is not foolproof, and this regular expres-
    sion is actually less foolproof than most parts of Filter::Simple.  So
    it’s a step in the right direction (unless you consider deletion to be
    the right direction).
    Father Chrysostomos committed Sep 14, 2011
  3. Dear CoreList: Please note that 5.12.3 included VMS::Filespec.

    Father Chrysostomos committed Sep 14, 2011
  4. Fix #98480 math when reading shared memory

    shmread didn't unset SvIOK properly, causing a read into a SVIV to have
    an incorrect numeric value. This patch fixes that and adds tests.
    Leont committed with Father Chrysostomos Sep 13, 2011
  5. Added SysV shared memory tests

    Tests are based on IPC-SysV's tests, though I had to remove a lot for it
    not to rely on IPC::SharedMem.
    Leont committed with Father Chrysostomos Sep 13, 2011
  6. Dear CoreList: FYI, Errno was included in 5.6.0 and .1.

    Father Chrysostomos committed Sep 14, 2011
  7. Dear CoreList: 5.8.2 *did* include DB_File.

    Father Chrysostomos committed Sep 14, 2011
  8. Missing word in release managers’ guide

    Father Chrysostomos committed Sep 13, 2011
  9. Note Storable changes in perldelta.

    Nicholas Clark committed Sep 14, 2011
  10. Simplify Storable.xs by providing a fallback definition of HvTOTALKEY…

    …S().
    
    Longer term this should be added to ppport.h
    Nicholas Clark committed Sep 13, 2011
  11. Change Storable's code.t to serialise a subroutine under our control.

    The test originally testing serialising and deserialising \&Test::ok. When
    the test was converted from Test.pm to Test::More in 2009, it was changed to
    use \&Test::More::ok. However, this turns out to be "works on my machine".
    Test::More::ok from Test::Simple 0.61 onwards (2005, b1ddf16) will
    deserialise correctly. The previous implementation of Test::More::ok uses a
    lexical from an outer scope. Hence the textual representation of the
    subroutine (in isolation) fails to deserialise, because it's not valid under
    strict, because there is no visible declaration of the lexical.
    
    Hence switch to testing a large subroutine under our control, _store(), to
    avoid unpleasant surprises from dependencies we were not even aware of.
    
    The comment "large scalar" dates from the original test using \&Test::ok.
    It's not clear which large scalar it refers to.
    Nicholas Clark committed Sep 10, 2011
  12. Remove from Storable.xs all compatibility code that duplicates ppport.h

    The rest should probably be migrated to Devel::PPPort.
    Nicholas Clark committed Sep 10, 2011
  13. Restore 5.004 and 5.005 support in Storable.

    Add XSLoader as a prerequisite.
    Use parentheses for the call to XSLoader::load().
    Don't pass parameters that old ExtUtil::MakeMaker doesn't understand.
    
    Avoid the T_BOOL typemap, as xsubpp will always mortalise the SV generated
    by processing RETVAL, T_BOOL generates the SV using boolSV() which returns
    PL_sv_yes or PL_sv_no, and on 5.004 Perl_sv_2mortal() will croak if passed
    a readonly scalar. This is actually a small optimisation on later perls, as
    the call to Perl_sv_2mortal() isn't actually needed.
    
    Avoid repeating the PPCODE by merging last_op_in_netorder() with
    is_storing() and is_retrieving(). (Which I didn't spot was easy to do
    when commit 7cb18e1 merged is_storing() and is_retrieving().)
    
    Together these reduce the size of the shared object by about 200 bytes on
    this platform. Small, but in the right direction.
    Nicholas Clark committed Sep 10, 2011
  14. Remove Symbian compatibility macros from Storable, now supplied by pp…

    …port.h
    
    ppport.h provides default definitions for PERL_UNUSED_DECL, dNOOP and dVAR,
    so no need to duplicate this in Storable.xs
    Nicholas Clark committed Sep 10, 2011
  15. Simplify S_set_caret_X() by returning early if we set caret_x.

    This avoids duplicating the fallback code to set caret_x to PL_origargv[0].
    Nicholas Clark committed Sep 13, 2011
  16. Inline S_procself_val() into S_set_caret_x().

    Possibly this should have been done as part of commit 3aa90d2,
    which broke S_set_caret_X() out from S_init_postdump_symbols().
    [S_procself_val() was not inlined into S_init_postdump_symbols() because
    Nick Ing-Simmons thought it unwise to hold on to MAXPATHLEN bytes of stack
    longer than necessary.]
    Nicholas Clark committed Sep 13, 2011
Commits on Sep 13, 2011
  1. In S_set_caret_X(), use GvSV() consistently in all conditional code.

    Commit c69033f was inconsistent, in that it changed two instances
    of GvSV() to GvSVn(), but not the third. The expansion of GvSV() is simpler,
    and is appropriate here. Hoist the call to GvSV() out of the conditional
    code.
    Nicholas Clark committed Sep 13, 2011
  2. Bump $Module::CoreList::VERSION after 77cc041.

    Nicholas Clark committed Sep 13, 2011
  3. Change POSIX::Termios::setattr() to default to TCASNOW, not 0.

    0 isn't valid on all operating systems. TCASNOW has the value 0 on most
    operating systems, but on Solaris (at least) TCASNOW, TCSADRAIN and
    TCSAFLUSH have the same values as the equivalent ioctls, TCSETS, TCSETSW and
    TCSETSF. Solaris faults 0, setting errno to EINVAL. This isn't useful as a
    default behaviour.
    Nicholas Clark committed Sep 12, 2011
  4. Remove unneeded fallback definitions of dNOOP, dVAR etc from POSIX.xs

    As POSIX.xs is not dual life, we can always rely on these macros being
    defined for us in perl.h. (And these days, dual life XS code should let
    Devel::PPPort take care of this sort of thing.)
    Nicholas Clark committed Sep 10, 2011
  5. Update perldelta to note that POSIX.so is now 12% smaller.

    Also record that there are more tests.
    Nicholas Clark committed Sep 10, 2011
  6. Merge the implementations of POSIX::{asctime,mktime} using ALIAS.

    This shares identical code marshaling 6 to 9 input arguments into a
    struct tm. However, as the return types differ we have to explicitly code
    pushing the return value onto perl's stack.
    Nicholas Clark committed Sep 9, 2011
  7. Merge the implementations of POSIX::{close,dup,tcdrain} using ALIAS.

    On this platform, this reduces the shared object size by about .5K.
    Nicholas Clark committed Sep 9, 2011
  8. Add tests for POSIX::{access,close,dup,dup2}.

    Nicholas Clark committed Sep 9, 2011
  9. In ext/POSIX/t/sysconf.t, make the tests more strict.

    $! should always be 0 after each call, so test this whether the result is
    defined or undefined. Match a defined result against a regex to ensure that
    it is an integer, and give better diagnostics if it is not.
    Nicholas Clark committed Sep 9, 2011