Nicholas Clark [Thu, 21 May 2009 08:55:37 +0000]
Remove all the 5005threads specific mutex macros, which are now vestigial.
Nicholas Clark [Thu, 21 May 2009 07:02:38 +0000]
Use only one block of memory for both PL_psig_name and PL_psig_ptr.
Nicholas Clark [Thu, 21 May 2009 06:08:53 +0000]
Cache the signal number or -1 in mg_private, to reduce calls to Perl_whichsig().
It doesn't matter that 0 isn't cacheable, as the logic in Perl_magic_setsig()
is such that we already can't "set" $SIG{ZERO}. Without this we make thousands
of failing calls to Perl_whichsig() from Perl_magic_getsig() for "__WARN__".
Nicholas Clark [Wed, 20 May 2009 22:02:07 +0000]
Perl_mg_clear() did not cope with the called magic deleting itself - fix this.
Should all routines that iterate over the magic chain be hardened against this?
David Mitchell [Wed, 20 May 2009 21:57:52 +0000]
run dos2unix on lib/Parse/CPAN/Meta.pm
(for some reaon
de044c3605bd12a0b679b024ec9c16b44093c54b added ^M's)
Nicholas Clark [Wed, 20 May 2009 21:49:03 +0000]
Add new files from Parse::CPAN::Meta 1.38 to the MANIFEST.
Nicholas Clark [Wed, 20 May 2009 21:33:30 +0000]
In Perl_magic_setsig(), don't discard and then recreate the signal name SV.
Nicholas Clark [Wed, 20 May 2009 20:53:31 +0000]
Refactor Perl_magic_setsig() to remove duplication in the function exit logic.
(With a lot of re-indenting, which vanishes with a whitespace ignoring diff)
Nicholas Clark [Wed, 20 May 2009 19:52:58 +0000]
Merge the bulk of Perl_magic_clearsig() into Perl_magic_setsig().
The comment at the top of Perl_magic_clearsig() said:
XXX Some of this code was copied from Perl_magic_setsig. A little
refactoring might be in order.
and it was not wrong.
Perl_magic_clearsig() is almost equivalent to Perl_magic_setsig() with the new
signal handler as "DEFAULT". Externally, the sv parameter to Perl_magic_setsig()
was Not NULL, so use a NULL sv to signal that the code is being called as
Perl_magic_clearsig(), for the places where the behaviour of the two diverges.
Nicholas Clark [Wed, 20 May 2009 14:17:19 +0000]
Perl_magic_clearsig() needs to remove magic, else delete $SIG{INT} returns undef
instead of the now-removed INT handler.
H.Merijn Brand [Wed, 20 May 2009 14:45:36 +0000]
fix glob-assign for FORMAT
H.Merijn Brand [Wed, 20 May 2009 13:36:42 +0000]
Update bisect notes
Nicholas Clark [Wed, 20 May 2009 13:17:11 +0000]
Convert t/op/magic.t to use test.pl
Nicholas Clark [Wed, 20 May 2009 11:00:37 +0000]
Tests for calls to Perl_croak() in the C source. Starting with "No such hook".
Nicholas Clark [Wed, 20 May 2009 09:46:51 +0000]
Ignore bitcount.h
Nicholas Clark [Wed, 20 May 2009 09:32:25 +0000]
Remove binary compatibility scaffolding for the change to PL_bitcount.
Nicholas Clark [Wed, 20 May 2009 06:30:48 +0000]
Replace run-time on-demand initialisation of PL_bitcount with a constant table.
(The table is 256 bytes; the run-time initialisation code is larger than this!)
Adapt generate_uudmap.c to generate the initalisation block for PL_bitcount,
writing the code to bitcount.h, using the same approach as uudmap.h.
To preserve binary compatibility:
for MULTIPLICITY:
keep Ibitcount in the interpreter structure, but remove all the macros that
access it. PL_bitcount is a new symbol in the object file, which won't clash
with anything as that name wasn't used before.
otherwise:
keep PL_bitcount as a char *, but initialise it at compile time to a new
constant array PL_bitcount array. Remove the code that attempts to Safefree()
it at interpreter destruction time.
Nicholas Clark [Wed, 20 May 2009 05:53:20 +0000]
Break out the file output code from generate_uudmap's main() to allow re-use.
Nicholas Clark [Wed, 20 May 2009 05:19:07 +0000]
In Perl_magic_clearsig(), only call LEAVE if we call ENTER.
(
2d4fcd5e8be8d83efa948a259c49b56fc6c27ee5, reported and fixed by RT #20613,
would ENTER but not LEAVE when HAS_SIGPROCMASK was not defined.)
Nicholas Clark [Tue, 19 May 2009 15:54:13 +0000]
In Perl_magic_setsig(), clarify the scope of a block that interacts with #ifdef.
Nicholas Clark [Tue, 19 May 2009 15:26:53 +0000]
Document the purpose of PL_psig_ptr and PL_psig_name.
Chris 'BinGOs' Williams [Tue, 19 May 2009 12:21:45 +0000]
Re: [PATCH] Update CPANPLUS::Dist::Build to CPAN version 0.30
Erratum: Avoid creating .output files
Nicholas Clark [Tue, 19 May 2009 11:49:07 +0000]
Pass the output file name to generate_uudmap, and open it within the code,
instead of having the calling Makefile redirect stdout.
Nicholas Clark [Tue, 19 May 2009 10:27:37 +0000]
In Perl_yylex(), no need to Newxz() a buffer we immediately write to.
Nicholas Clark [Tue, 19 May 2009 08:39:43 +0000]
In Perl_gv_fetchpvn_flags(), don't re-zero memory from Newxz().
Explicitly zero the memory for PL_psig_ptr, PL_psig_name and PL_psig_pend if we
didn't need to allocate it this time round.
Nicholas Clark [Tue, 19 May 2009 08:15:46 +0000]
In perl_clone_using(), use sv_dup_inc_multiple() to clone the temps stack.
Avoid using Newxz() to zero allocate memory we will immediately overwrite.
Rafael Garcia-Suarez [Tue, 19 May 2009 07:35:29 +0000]
Ignore ".output" files, that might be generated by some tests, apparently
Chris 'BinGOs' Williams [Tue, 19 May 2009 07:33:16 +0000]
Update CPANPLUS::Dist::Build to CPAN version 0.30
Nicholas Clark [Mon, 18 May 2009 15:12:21 +0000]
Add S_sv_dup_inc_multiple(), used in place of loops that call sv_dup_inc().
Just 4 uses already give a size saving with gcc -Os.
Rafael Garcia-Suarez [Mon, 18 May 2009 13:52:39 +0000]
Remove old version of Fatal.t test, now moved under lib/autodie/t
Nicholas Clark [Mon, 18 May 2009 12:48:51 +0000]
In perl_clone_using(), don't use Newxz() for arrays we immediately assign to.
Nicholas Clark [Mon, 18 May 2009 12:08:36 +0000]
In Perl_ptr_table_new(), fight back against the cult of Newxz().
(There's no need to zero-allocate memory for a structure when you're about to
explicitly allocate every member.)
Nicholas Clark [Mon, 18 May 2009 11:50:06 +0000]
Tidy the implementation of Perl_mg_dup().
As all the structure elements are directly assigned to, use Newx() rather than
Newxz(). Replace the explicit assignments with a direct structure copy. When
reading values from the parent, read from those copied to the new structure,
rather than the identical value in the old structure, to recduce CPU cache
pressure.
Nicholas Clark [Mon, 18 May 2009 10:57:38 +0000]
In Perl_mg_dup(), remove a branch by tracking the address to write to instead of
the address of the structure, with a special case for the first time round.
Nicholas Clark [Mon, 18 May 2009 10:42:01 +0000]
In Perl_mg_dup(), the while loop does the NULL check for us already.
Nicholas Clark [Mon, 18 May 2009 10:27:16 +0000]
In Perl_mg_dup(), don't call ptr_table_fetch, as we never call ptr_table_store.
Abhijit Menon-Sen [Mon, 18 May 2009 04:13:41 +0000]
Note 2.20 in the changelog.
David Mitchell [Sun, 17 May 2009 21:54:20 +0000]
fix typo in Porting/Maintainers.pl
David Mitchell [Sun, 17 May 2009 20:06:38 +0000]
add _PERLLIB pseudo-module to Maintainers.pl and update Maintainers.pm
to allow !foo* in the file lists to represent a lits of files to be
exluded
David Mitchell [Sun, 17 May 2009 14:46:46 +0000]
add --checkmani option to Porting/Maintainers
This will only report unclaimed files if they are listed in the MANIFEST
(but it checks all files, not just *.[chty] etc)
Steffen Mueller [Sun, 17 May 2009 09:55:50 +0000]
Upgrade to Parse::CPAN::Meta 1.38
David Mitchell [Sun, 17 May 2009 00:41:06 +0000]
make Porting/corecpan.pl handle versions hidden in *_pm.PL files
(ie scripts that generate .pm files)
David Mitchell [Sun, 17 May 2009 00:31:56 +0000]
update Porting/corecpan.pl to handle new ext/ structure better
(better filename -> module name conversion results in less failed
CPAN version lookups)
David Mitchell [Sun, 17 May 2009 00:30:53 +0000]
Maintainers.pl: most Compress stuff is now under ext/IO-Compress
David Mitchell [Sat, 16 May 2009 23:35:03 +0000]
make Porting/corecpan.pl use the MANIFEST file of every source tree it
examines, rather than just the first one
David Mitchell [Sat, 16 May 2009 23:31:43 +0000]
add reload_manifest() function to Porting/maintainers.pm
to allow the MANIFEST file to be read more than once.
Also be more liberal in parsing the MANIFEST file (it now handles
lines with no second column), and warn on bad lines .
David Mitchell [Sat, 16 May 2009 16:22:56 +0000]
resort Maintainers.pl module list
David Mitchell [Sat, 16 May 2009 16:02:55 +0000]
make corecpan.pl sort case insensitively, so that the module order
is the the same as in Maintainers.pl
Craig A. Berry [Sat, 16 May 2009 21:03:13 +0000]
tt is a reserved device name on VMS
Its full name is _TTA0: (but TT for short) and it specifies the
controlling terminal of the current process, so you really can't
use it as the name of a temp directory. Follow-up to:
36f064bc37569629cfa8ffed15497f849ae8ccfa
David Mitchell [Fri, 15 May 2009 16:28:00 +0000]
update the head comments in makedef.pl
David Mitchell [Fri, 15 May 2009 15:13:29 +0000]
make script execution order in regen.pl mostly alphabetical
David Mitchell [Fri, 15 May 2009 15:12:01 +0000]
add lib/overload/numbers.pm to (unused) output file list in regen.pl
David Mitchell [Fri, 15 May 2009 15:11:26 +0000]
tidy up regen.pl (no functional changes)
David Mitchell [Fri, 15 May 2009 14:59:25 +0000]
make regcomp.pl use the standard foo.h-new naming scheme for tmp files
David Mitchell [Fri, 15 May 2009 14:51:26 +0000]
Add some documentation to the heads of the various *.pl build scripts
Jan Dubois [Thu, 14 May 2009 16:55:15 +0000]
WIN32 preprocessor symbols is usually tested with #ifdef, not #if
Doesn't really make a difference as WIN32 is defined as '1' when
it is defined, but there is something to be said for consistent
usage.
Claes Jakobsson [Thu, 14 May 2009 14:10:06 +0000]
Amelioration of the error message "Unrecognized character %s in column %d"
Changes the error message to "Unrecognized character %s; marked by <--
HERE after %s<-- HERE near column %d". This should make it a little
simpler to spot and correct the suspicious character.
Rafael Garcia-Suarez [Thu, 14 May 2009 13:14:42 +0000]
Fix failing autodie test with new smartmatch semantics.
This is because ~~ overloading is now only taken into account
when the object is on the right of the operator.
Rafael Garcia-Suarez [Thu, 14 May 2009 13:06:08 +0000]
Move autodie tests in lib/autodie/t, so they are picked up by t/harness
Vincent Pit [Thu, 14 May 2009 07:43:18 +0000]
pp.c and time64.c don't need to be executable
Ricardo SIGNES [Thu, 14 May 2009 07:17:18 +0000]
document Git_Data
Vincent Pit [Thu, 14 May 2009 07:05:36 +0000]
Remove remaining POD tags in verbatim paragraphs
Christoph Lamprecht [Mon, 11 May 2009 21:00:11 +0000]
do/require don't treat '.\foo' or '..\foo' as "absolute paths" on Windows.
Both 'do' and 'require' treat paths *explicitly* relative to the
current directory (starting with './' or '../') as a special form of
absolute path. That means they can be loaded directly and don't need
to be resolved via @INC, so they don't rely on '.' being in @INC
(unless running in taint mode). This behavior is "documented" in the P5P
thread "Coderefs in @INC" from 2002.
The code is missing special treatment of backslashes on Windows
so that '.\\' and '..\\' are handled in the same manner.
This change fixes
http://rt.perl.org/rt3/Public/Bug/Display.html?id=63492
(Note that the references to taint mode in the bug report are only
relevant as far as taint mode removes '.' from @INC).
This change also fixes the following Scalar-List-Utils bug report:
http://rt.cpan.org/Public/Bug/Display.html?id=25430
The Scalar::Util test failure in t/p_tainted.t only manifests itself
under Test::Harness 3, and only outside the Perl core:
* Test::Harness 2 (erroneously) puts '-I.' on the commandline in taint
mode and runs something like this:
`perl -I. t/p_tainted.t`
so '.\t\tainted.t' can be found via '.' in @INC.
* Core Perl runs something like this from the t/ directory:
`..\perl.exe -I../lib ../ext/List-Util/t/p_tainted.t`
so '.\..\ext\List-Util\t\tained.t' can be found via '../lib' in @INC.
Signed-off-by: Jan Dubois <jand@activestate.com>
Rafael Garcia-Suarez [Wed, 13 May 2009 13:05:49 +0000]
Merge branch 'smartmatch' into blead
Rafael Garcia-Suarez [Wed, 13 May 2009 08:30:07 +0000]
Enable more warnings in smart match tests
Jan Dubois [Mon, 11 May 2009 22:21:27 +0000]
select() generates "Invalid parameter" messages on Windows Vista.
The messages are generated by OutputDebugString() so are only visible
inside a debugger, or other debugger viewer applications.
The messages are generated by the _get_osfhandle() calls with invalid
file ids. This change makes sure it is only called when the corresponding
bit in the select() arguments has been set.
Related bug reports:
http://bugs.activestate.com/show_bug.cgi?id=82995
http://bugs.slimdevices.com/show_bug.cgi?id=11896
http://getpopfile.org/ticket/45
Even with this patch there are still residual "Invalid parameter" messages
in the debug output while building Perl itself. They are generated by
miniperl in the win32_fclose() function, again calling _get_osfhandle()
with an invalid handle. The same messages can be observed when Perl
is built *without* USE_PERLIO (just like miniperl).
Nicholas Clark [Tue, 12 May 2009 22:48:01 +0000]
Inline S_glob_2pv() into Perl_sv_2pv_flags(). (Existing bugs included.)
Change 27942 missed this. (
675c862fe1d4abfd048dce5f1958cca54b16c501)
Nicholas Clark [Tue, 12 May 2009 17:48:15 +0000]
Add perl589delta.pod to pod.lst, and run pod/buildtoc --build-all.
Steve Hay [Tue, 12 May 2009 17:02:15 +0000]
Skip test for changing TZ if running in a pseudo-fork (on Win32)
Changing $ENV{TZ} and calling tzset() is documented not to work on Win32
in any thread other than the main thread, which includes the emulated
fork() on Win32 (used by cpantesters?). Mention fork() in the caveats and
skip the test in this case.
Steve Hay [Tue, 12 May 2009 16:57:35 +0000]
Upgrade to Time-Piece-1.14
David Mitchell [Tue, 12 May 2009 13:43:08 +0000]
add perl589delta.pod to blead
Rafael Garcia-Suarez [Tue, 12 May 2009 12:09:02 +0000]
Register ~~ operator overloading in its own category in %overload::ops
(This category might get reused later if we manage to overload =~)
Rafael Garcia-Suarez [Tue, 12 May 2009 11:43:23 +0000]
Smart matching is to-done.
David Mitchell [Tue, 12 May 2009 11:37:17 +0000]
Resurrect the Changes file as a simple guide to finding changes
David Mitchell [Tue, 12 May 2009 11:21:37 +0000]
remove all Changes* files
Rafael Garcia-Suarez [Tue, 12 May 2009 07:38:29 +0000]
Remove proposed (but unimplemented) $foo ~~ Range smart matching.
The reasons for that are :
- $_ ~~ 1..42 actually parses as ($_ ~~ 1) .. 42
- in when(), a range 1..42 will be expanded, and not treated as a
boolean flip-flop operator
- It will not distribute properly with array smart-matching, as
in $foo ~~ [1, 2, [4..5]] (that won't match for $foo = 4.2 for
example.)
Graham Barr [Mon, 11 May 2009 19:20:34 +0000]
Update IO to CPAN 1.24 release
Vincent Pit [Sat, 9 May 2009 12:19:19 +0000]
Allow typed arrays and hashes
David Mitchell [Sun, 10 May 2009 23:04:09 +0000]
bump Storage version to 2.20 to distinguish it from the 2.19 that was
bundled with 5.8.9
Nicholas Clark [Sun, 10 May 2009 15:40:37 +0000]
Replacing dump.c's use of SVs as temporaries is TODO.
Nicholas Clark [Sun, 10 May 2009 15:31:11 +0000]
Making ExtUtils::ParseXS use strict; is TODO.
Steffen Mueller [Sun, 10 May 2009 11:20:17 +0000]
Update info on number of magic types\n\nRemove mention of overloading being optional
Steffen Mueller [Sun, 10 May 2009 09:01:13 +0000]
Pull PathTools 3.30 (which was just a blead sync.)
David Mitchell [Sat, 9 May 2009 17:17:36 +0000]
Revert "Bump version of File::Copy"
This reverts commit
216e7dec1076aa94d5b8331c187c135e4952955a.
(File::Copy version had already been bumped, so no need to bump again)
Rafael Garcia-Suarez [Sat, 9 May 2009 15:47:31 +0000]
Implement Hash/Array ~~ Regex (with tests)
Rafael Garcia-Suarez [Sat, 9 May 2009 13:50:25 +0000]
Add a test for object ~~ string, with stringification overload
Rafael Garcia-Suarez [Sat, 9 May 2009 13:37:11 +0000]
Add tests for object ~~ regexp
Rafael Garcia-Suarez [Sat, 9 May 2009 13:25:41 +0000]
Treat blessed references on the left of C<~~> as scalars
Rafael Garcia-Suarez [Sat, 9 May 2009 13:09:39 +0000]
Implement distributivity in $scalar ~~ @array
Note that undef ~~ @array is not distributive, it only tests for
definedness of array elements.
Rafael Garcia-Suarez [Fri, 8 May 2009 21:01:18 +0000]
Document what to do with object on the left and add some TODO tests for that
Rafael Garcia-Suarez [Fri, 8 May 2009 20:40:09 +0000]
Inline macros used only once
Rafael Garcia-Suarez [Fri, 8 May 2009 20:37:03 +0000]
Make ~~ overloading only be invoked on the right argument
Rafael Garcia-Suarez [Fri, 8 May 2009 14:08:24 +0000]
More tests for ~~
Steve Hay [Fri, 8 May 2009 10:08:02 +0000]
Silence Win32 compiler warning in IO.xs
The ioctl() function on Win32 is really win32_ioctl(), the third argument
of which is a char*.
Chris 'BinGOs' Williams [Fri, 8 May 2009 10:50:33 +0000]
Upgrade CPANPLUS::Dist::Build to 0.28
Chris 'BinGOs' Williams [Fri, 8 May 2009 10:49:40 +0000]
git checkout in add-package.pl, not git co
Andreas J Koenig [Thu, 7 May 2009 20:25:16 +0000]
Update CPAN.pm to 1.93_54
Steffen Mueller [Thu, 7 May 2009 17:58:11 +0000]
Bring PathTools changes file in sync with... PathTools
Chris 'BinGOs' Williams [Thu, 7 May 2009 17:13:02 +0000]
Upgrade to CPANPLUS-Dist-Build-0.26
Stops tests from fetching CPAN indexes.
Message-ID: <
20090507162935.GA29922@klanker.bingosnet.co.uk>
(Tweaked to update MANIFEST too.)
Steve Hay [Thu, 7 May 2009 08:26:05 +0000]
Fix ExtUtils::Miniperl on Win32
Default configuration builds on Win32 require perlmain.c to #include
perlapi.h (e.g. via XSUB.h) to avoid linker errors over PL_do_undump
and PL_use_safe_putenv.
From: Ben Morrow <ben@morrow.me.uk>
Date: Wed, 6 May 2009 22:38:01 +0100
Message-ID: <
20090506213801.GA9074@osiris.mauzo.dyndns.org>