This is a live mirror of the Perl 5 development currently hosted at
12 years agoUpdate from y2038
Michael G. Schwern [Sat, 4 Oct 2008 19:12:50 +0000 (15:12 -0400)]
Update from y2038

Configuration information split out into its own header.

Added files to MANIFEST

Turn off USE_SYSTEM_GMTIME, ours is more reliable and possibly faster.

Fix type warnings found on Windows.

Remove unnecessary use of floor() and ceil().

12 years agoFix gmtime() and localtime() so they can pop times larger than 2**55 off the stack...
Michael G. Schwern [Fri, 3 Oct 2008 20:05:10 +0000 (16:05 -0400)]
Fix gmtime() and localtime() so they can pop times larger than 2**55 off the stack. Neither POPn nor SvNVx work when casted to (Time64_T). Had to use a double and then cast.

Also POPq uses an SvIV so that's no good.

This causes an unfortunate loss in accuracy near 2**63 up to 8 minutes.

%lld is broken, it uses regular integers.  Need to use doubles and %.0f
instead, again losing accuracy.

Now things can go out to 2**63-512.

12 years agoWe are no longer bound by the limits of the tm struct.
Michael G. Schwern [Fri, 3 Oct 2008 20:04:53 +0000 (16:04 -0400)]
We are no longer bound by the limits of the tm struct.

12 years agoFix pulling a large time off the stack by using a real double. What I really need...
Michael G. Schwern [Thu, 2 Oct 2008 21:30:26 +0000 (17:30 -0400)]
Fix pulling a large time off the stack by using a real double. What I really need is SvQV.

Fix list context with large years.

List context can now go to 2**63-513.  I don't know why that's not 2**63-1
but I'll take it.  Maybe double imprecision.

Scalar context with large years still busted.  It appears to be something
inside Perl_newSVpvf().

12 years agoRemove the AIX work around code. Instead it should just set it's LOCALTIME_MAX to...
Michael G. Schwern [Thu, 2 Oct 2008 20:18:54 +0000 (16:18 -0400)]
Remove the AIX work around code. Instead it should just set it's LOCALTIME_MAX to 0x7fff573e.

Update from y2038.

Use the new TM64 struct so years can go out past y2**31

Defines a Year type to avoid converting years to ints.

Remove the TIMGM work around code, using timegm64() is fine and it
saves us from having to convert from TM to tm.

Make functions private with static rather than the _foo convention.

Even faster for distant dates.

12 years agoRename localtime64.[ch] to time64.[ch] to mirror change in y2038, and the file isn...
Michael G. Schwern [Mon, 29 Sep 2008 19:55:17 +0000 (15:55 -0400)]
Rename localtime64.[ch] to time64.[ch] to mirror change in y2038, and the file isn't about just localtime() anymore.

12 years agoEverything should now work with negative times, so let's pull out all the skips from...
Michael G. Schwern [Mon, 29 Sep 2008 16:07:29 +0000 (12:07 -0400)]
Everything should now work with negative times, so let's pull out all the skips from the tests.

12 years agoUpdate some docs to explain that Perl no longer has a 2038 bug.
Michael G. Schwern [Mon, 29 Sep 2008 15:44:44 +0000 (11:44 -0400)]
Update some docs to explain that Perl no longer has a 2038 bug.

12 years agoUpdate from y2038
Michael G. Schwern [Mon, 29 Sep 2008 15:05:17 +0000 (11:05 -0400)]
Update from y2038

Work around a system that doesn't have gm/localtime_r().  This replaces Perl's
own gm/localtime() wrapper which couldn't be called outside a PP anyway
because it needs my_perl.

12 years agoUpdate from y2038
Michael G. Schwern [Sat, 27 Sep 2008 19:43:22 +0000 (15:43 -0400)]
Update from y2038

Fix a bug in the code to use the system gmtime, it was using localtime.

Define a Year type to avoid mixing years and ints unintentionally.

Do some explicit casting to prop up compilers that don't understand
X % Y can never be larger than Y.

12 years agoFix the test plan on gmtime
Michael G. Schwern [Tue, 23 Sep 2008 17:50:16 +0000 (10:50 -0700)]
Fix the test plan on gmtime

Use the new LOCALTIME_MIN/MAX constants.

Use the system gmtime, it'll probably be faster... maybe.

12 years agoWe are no longer slaves to the vagaries of time_t.
Michael G. Schwern [Fri, 19 Sep 2008 21:46:48 +0000 (14:46 -0700)]
We are no longer slaves to the vagaries of time_t.

12 years agoUpdate from y2038 project.
Michael G Schwern [Tue, 16 Sep 2008 02:28:06 +0000 (19:28 -0700)]
Update from y2038 project.

Fix localtime() handling of xx01 and -xx99 years.  That is, years just after
a non-leap exceptional century.

12 years agoUpdate from y2038
Michael G Schwern [Mon, 15 Sep 2008 04:30:59 +0000 (21:30 -0700)]
Update from y2038

Fix localtime() for negative real years (ie. Year -208)

12 years agoPull in changes from y2038
Michael G Schwern [Mon, 15 Sep 2008 01:29:27 +0000 (18:29 -0700)]
Pull in changes from y2038

Fix localtime() for negative dates.

12 years agoUpdate from y2038 project.
Michael G Schwern [Sun, 14 Sep 2008 22:26:16 +0000 (15:26 -0700)]
Update from y2038 project.

Fix localtime64's over and underflow handling.

12 years agoFix the overflow warning to just check for an error.
Michael G Schwern [Sun, 14 Sep 2008 21:57:07 +0000 (14:57 -0700)]
Fix the overflow warning to just check for an error.

Fix the overflow warning to identify the right op.

12 years agoUpdate from y2038.
Michael G Schwern [Sun, 14 Sep 2008 21:50:38 +0000 (14:50 -0700)]
Update from y2038.

Fix the logic when to use the system functions to include the min check.

-2147483648 was throwing a warning.  -2147483647 does not.

12 years agoWrite down the logic behind the localtime vs gmtime date ranges.
Michael G Schwern [Sun, 14 Sep 2008 02:40:58 +0000 (19:40 -0700)]
Write down the logic behind the localtime vs gmtime date ranges.

12 years agoCleaning up the Time::gmtime and Time::localtime tests and make them go past 2038.
Michael G Schwern [Sun, 14 Sep 2008 02:26:38 +0000 (19:26 -0700)]
Cleaning up the Time::gmtime and Time::localtime tests and make them go past 2038.

I'm a little nervous about assuming negative times are going to work with
localtime(), but gmtime() is safe.

12 years agoChange the way the check_tm assertion function is compiled out by wrapping them in...
Michael G Schwern [Sat, 13 Sep 2008 13:13:41 +0000 (06:13 -0700)]
Change the way the check_tm assertion function is compiled out by wrapping them in assert calls. This jives better with the way perl turns off asserts.

Put the localtime64.h include back.  We need the typedefs.

12 years agoRemove all of localtime64's own includes. Perl's already done that and we're loading...
Michael G Schwern [Sat, 13 Sep 2008 12:58:09 +0000 (05:58 -0700)]
Remove all of localtime64's own includes. Perl's already done that and we're loading assert.h, accidentally turning on asserts when perl.h wants them off.

12 years agoUpdate from the latest y2038.
Michael G Schwern [Sat, 13 Sep 2008 11:26:47 +0000 (04:26 -0700)]
Update from the latest y2038.

Include the ability to use the system functions.  This speeds up localtime()
several times when the time is < 32 bits.

Don't bother using the system gmtime() as it will probably just have bugs.
We need to wait for config to give us LOCALTIME_MIN/MAX but I think assuming
time_t is at least 32 bits is good enough for now.

This restores the full performance of localtime() for < 32 bit numbers
and gmtime() is now only 10% slower.

12 years agoUpdate to the latest version of the y2038 code.
Michael G Schwern [Sat, 13 Sep 2008 10:01:53 +0000 (03:01 -0700)]
Update to the latest version of the y2038 code.

In this update...

* Replace unportable "long" with Quad_t
* Improve performance for current and future dates.
* Provide a version of timegm() if its not available.
* Wrap the use of EOVERFLOW in case its not portable.

This should address all known portabilty issues.

12 years agoPatch in a 64 bit clean gmtime_r() and localtime_r() from the y2038 project. http...
Michael G Schwern [Sat, 13 Sep 2008 00:18:02 +0000 (17:18 -0700)]
Patch in a 64 bit clean gmtime_r() and localtime_r() from the y2038 project. so Perl is no longer subject to the y2038 bug.

Use Quad_t for our 64 bit time_t replacement.

Temporarily through out the "broken localtime work around".  That will
have to be integrated into localtime64_r().

Fix Time::Local to handle the new expanded date range.  "use integer" had
to go as it pegged scalars to 32 bit integers which aren't large enough
to hold the new time range.

There are probably portability issues.  timegm, for example, is not portable.
Also the assumption that "long" is 64 bits is probably wrong.

12 years agoReflect local modifications to dual life modules in changes 34219 and
Nicholas Clark [Wed, 3 Sep 2008 19:07:36 +0000 (19:07 +0000)]
Reflect local modifications to dual life modules in changes 34219 and

p4raw-id: //depot/perl@34252

12 years agoAdd the URL for annotated svn of S03.
Nicholas Clark [Tue, 2 Sep 2008 17:13:22 +0000 (17:13 +0000)]
Add the URL for annotated svn of S03.

p4raw-id: //depot/perl@34243

12 years agoTweaks and reflowing for the cc/linker split.
Nicholas Clark [Tue, 2 Sep 2008 15:27:08 +0000 (15:27 +0000)]
Tweaks and reflowing for the cc/linker split.

p4raw-id: //depot/perl@34242

12 years agoThe tasks needed to get smart match fixing underway for 5.10.1
Nicholas Clark [Tue, 2 Sep 2008 15:18:57 +0000 (15:18 +0000)]
The tasks needed to get smart match fixing underway for 5.10.1

p4raw-id: //depot/perl@34241

12 years agoNote the task TODO of splitting the linker from the compiler.
Nicholas Clark [Tue, 2 Sep 2008 14:16:13 +0000 (14:16 +0000)]
Note the task TODO of splitting the linker from the compiler.

p4raw-id: //depot/perl@34240

12 years agoclear docs on exists wrt autovivification
Moritz Lenz [Tue, 26 Aug 2008 11:23:00 +0000 (11:23 +0000)]
clear docs on exists wrt autovivification
Date: August 26, 2008 11:23

p4raw-id: //depot/perl@34239

12 years agoFix typo.
Abhijit Menon-Sen [Mon, 1 Sep 2008 12:59:06 +0000 (12:59 +0000)]
Fix typo.

p4raw-id: //depot/perl@34238

12 years ago[PATCH] Perl TODO related to threads::shared done
Jerry D. Hedden [Wed, 27 Aug 2008 14:49:55 +0000 (10:49 -0400)]
[PATCH] Perl TODO related to threads::shared done
From: "Jerry D. Hedden" <>
Message-ID: <>
Date: Wed, 27 Aug 2008 14:49:55 -0400

Message-ID: <>

Subject: [PATCH] perltodo.pod cleanup for nonxs installation
From: "Jerry D. Hedden" <>
Date: Thu, 28 Aug 2008 08:40:15 -0400
Message-ID: <>

p4raw-id: //depot/perl@34237

12 years agoArchitecture-Independent Non-XS extenstions
Jerry D. Hedden [Thu, 28 Aug 2008 08:30:38 +0000 (04:30 -0400)]
Architecture-Independent Non-XS extenstions
From: "Jerry D. Hedden" <>
Message-ID: <>
Date: Thu, 28 Aug 2008 08:30:38 -0400

p4raw-id: //depot/perl@34236

12 years agoSilence warnings when -destdir isn't set.
Nicholas Clark [Sat, 30 Aug 2008 14:32:36 +0000 (14:32 +0000)]
Silence warnings when -destdir isn't set.

p4raw-id: //depot/perl@34235

12 years agoFix #30660: Repeated spaces on shebang line stops option parsing
Nicholas Clark [Thu, 28 Aug 2008 13:11:44 +0000 (13:11 +0000)]
Fix #30660: Repeated spaces on shebang line stops option parsing
From a patch and test sent by Renée Bäcker in

p4raw-id: //depot/perl@34234

12 years agoNo, third time not lucky. Remove the extraneous leading - sign.
Nicholas Clark [Tue, 26 Aug 2008 14:31:07 +0000 (14:31 +0000)]
No, third time not lucky. Remove the extraneous leading - sign.

p4raw-id: //depot/perl@34233

12 years agoAnd then change 34231 removed the other t/lib/Dev/ from the
Nicholas Clark [Tue, 26 Aug 2008 14:28:14 +0000 (14:28 +0000)]
And then change 34231 removed the other t/lib/Dev/ from the
MANIFEST, when it too needs to stay. Third time lucky?

p4raw-id: //depot/perl@34232

12 years agoKhaaaaan! Change 34230 wasn't right. The tests all passed because I
Nicholas Clark [Tue, 26 Aug 2008 14:12:49 +0000 (14:12 +0000)]
Khaaaaan! Change 34230 wasn't right. The tests all passed because I
had a(nother) copy of Dev::Null in the "right" place. So make that
right place official.

p4raw-id: //depot/perl@34231

12 years agoAnd then add the Dev::Null from Test-Simple-0.80
Nicholas Clark [Tue, 26 Aug 2008 13:49:24 +0000 (13:49 +0000)]
And then add the Dev::Null from Test-Simple-0.80

p4raw-id: //depot/perl@34230

12 years agoMove all of Test::Harness's test modules into ext/Test/Harness/t/lib
Nicholas Clark [Tue, 26 Aug 2008 13:29:49 +0000 (13:29 +0000)]
Move all of Test::Harness's test modules into ext/Test/Harness/t/lib

p4raw-id: //depot/perl@34229

12 years agoFix new test added by #34198, which failed on Win32
Steve Hay [Tue, 26 Aug 2008 13:29:08 +0000 (13:29 +0000)]
Fix new test added by #34198, which failed on Win32

p4raw-id: //depot/perl@34228

12 years agoMove t/lib/{data,sample-tests,source_tests,subclass_tests} into
Nicholas Clark [Tue, 26 Aug 2008 10:51:53 +0000 (10:51 +0000)]
Move t/lib/{data,sample-tests,source_tests,subclass_tests} into
(The same path as in the Test-Harness distribution.)

p4raw-id: //depot/perl@34227

12 years agoAdd cygperl*.dll to packlist
Jerry D. Hedden [Mon, 25 Aug 2008 10:47:24 +0000 (06:47 -0400)]
Add cygperl*.dll to packlist
From: "Jerry D. Hedden" <>
Message-ID: <>

p4raw-id: //depot/perl@34226

12 years agoSafer environ iteration
Milosz Tanski [Tue, 5 Aug 2008 18:33:02 +0000 (14:33 -0400)]
Safer environ iteration
From: "Milosz Tanski" <>
Message-ID: <>

p4raw-id: //depot/perl@34225

12 years agoUnintented interpolation of $/ in regex (was: Re: [perl
Bram [Thu, 24 Jul 2008 18:14:27 +0000 (20:14 +0200)]
Unintented interpolation of $/ in regex (was: Re: [perl
Message-ID: <>

Note that the Subject: has a typo - it should be $\

This adds a new warning.
I moved the tests from the original patch to t/lib/warnings/toke.

p4raw-id: //depot/perl@34224

12 years agoRe: [perl #58218] backwards logic in perluniintro (5.10.0)
Dr.Ruud [Sat, 23 Aug 2008 10:07:45 +0000 (12:07 +0200)]
Re: [perl #58218] backwards logic in perluniintro (5.10.0)
From: "Dr.Ruud" <>
Message-ID: <>

p4raw-id: //depot/perl@34223

12 years agoPatch by Tod Hagan to document the 2nd argument of reval() in
Rafael Garcia-Suarez [Sun, 24 Aug 2008 14:13:52 +0000 (14:13 +0000)]
Patch by Tod Hagan to document the 2nd argument of reval() in

p4raw-id: //depot/perl@34222

12 years ago[perl #57646] Weird non-equivalence between $::{'a'} = sub {} and *::a = sub {}
Bram [Wed, 6 Aug 2008 01:24:22 +0000 (18:24 -0700)]
[perl #57646] Weird non-equivalence between $::{'a'} = sub {} and *::a = sub {}
From: "Bram via RT" <>
Message-ID: <>

p4raw-id: //depot/perl@34221

12 years agoDon't add freed SVF_BREAK scalars to the freed list.
Dave Mitchell [Sun, 24 Aug 2008 12:16:28 +0000 (12:16 +0000)]
Don't add freed SVF_BREAK scalars to the freed list.
This may still be referenced, so don't reuse.

p4raw-id: //depot/perl@34220

12 years agoRe: Fix 34200 on Cygwin
Reini Urban [Sun, 24 Aug 2008 10:47:23 +0000 (12:47 +0200)]
Re: Fix 34200 on Cygwin
Message-ID: <>

p4raw-id: //depot/perl@34219

12 years agoCygwin build harmonization, remove cygwin/Makefile.SHs
Reini Urban [Mon, 28 Jul 2008 12:55:40 +0000 (14:55 +0200)]
Cygwin build harmonization, remove cygwin/Makefile.SHs
From: "Reini Urban" <>
Message-ID: <>

p4raw-id: //depot/perl@34218

12 years agoNo, I didn't mean to commit the version *with* the abort(). It was
Nicholas Clark [Fri, 22 Aug 2008 14:49:49 +0000 (14:49 +0000)]
No, I didn't mean to commit the version *with* the abort(). It was
meant to be removed once I'd proved it by running the tests without
aborting. Oops. use more 'coffee';

p4raw-id: //depot/perl@34217

12 years agoNote that we have no test coverage for this particular warning.
Nicholas Clark [Fri, 22 Aug 2008 09:13:30 +0000 (09:13 +0000)]
Note that we have no test coverage for this particular warning.

p4raw-id: //depot/perl@34216

12 years agoIn S_mro_get_linear_isa_dfs(), save copying by making a shared hash
Nicholas Clark [Fri, 22 Aug 2008 07:00:17 +0000 (07:00 +0000)]
In S_mro_get_linear_isa_dfs(), save copying by making a shared hash
key scalar from the key of the hash entry we've just creating.
(Currently the hash is disposed of afterwards, but soon it won't, so
having both point to the same string buffer will also save memory.)

p4raw-id: //depot/perl@34215

12 years agoIn S_mro_get_linear_isa_dfs(), hv_exists_ent() followed by an optional
Nicholas Clark [Fri, 22 Aug 2008 06:10:31 +0000 (06:10 +0000)]
In S_mro_get_linear_isa_dfs(), hv_exists_ent() followed by an optional
hv_store_ent() can be replaced with an lvalue fetch.

p4raw-id: //depot/perl@34214

12 years agoChange 33807 to fix bug #52740 wasn't quite right, as it ended up with
Nicholas Clark [Thu, 21 Aug 2008 21:47:14 +0000 (21:47 +0000)]
Change 33807 to fix bug #52740 wasn't quite right, as it ended up with
unitialised reads (and sometimes even SEGVs).

p4raw-id: //depot/perl@34213

12 years agoIf I want to build Devel::NYTProf under the core tree, then the
Nicholas Clark [Thu, 21 Aug 2008 10:11:07 +0000 (10:11 +0000)]
If I want to build Devel::NYTProf under the core tree, then the
Makefile needs to know to build List::Util first.

p4raw-id: //depot/perl@34212

12 years agobetter document how the weakref backrefs array is refcounted
Dave Mitchell [Thu, 21 Aug 2008 00:02:57 +0000 (00:02 +0000)]
better document how the weakref backrefs array is refcounted

p4raw-id: //depot/perl@34211

12 years agoAssert that backreferences array is not freed rather than handling it
Dave Mitchell [Wed, 20 Aug 2008 23:43:01 +0000 (23:43 +0000)]
Assert that backreferences array is not freed rather than handling it

In several places where the weakrefs backreferences array is used
or freed, the code checks whether the array has already been freed
and if so skips. Since the array already being freed is a bad bug,
lets instead assert that this never happens, based on the
assumptions that (a) such premature freeing bugs are likely ironed
out by now, (b) if they aren't then we want to know about them and
fix them rather than silently skip.

p4raw-id: //depot/perl@34210

12 years ago[perl #56908] DBI memory leak in 5.10.0 due to change 26530
Dave Mitchell [Wed, 20 Aug 2008 23:15:36 +0000 (23:15 +0000)]
[perl #56908] DBI memory leak in 5.10.0 due to change 26530

A weakref to a HV would leak, because the xhv_backreferences
array is created with a refcount of 2 (to avoid premature freeing
during global destruction), but the RC was only decremented once
when the parent HV was freed.
Also, when thread cloned, the new array was being created with a
RC of 1, rather than 2, which coincidentally worked due to the
first bug.

p4raw-id: //depot/perl@34209

12 years agoRe: Re: [perl #30524] [PATCH] has poor list of temp directories on Windows
Renee Baecker [Wed, 20 Aug 2008 11:26:02 +0000 (13:26 +0200)]
Re: Re: [perl #30524] [PATCH] has poor list of temp directories on Windows
Message-Id: <>

p4raw-id: //depot/perl@34208

12 years agoChange 34206 forgot to update to reflect the
Nicholas Clark [Tue, 19 Aug 2008 19:16:43 +0000 (19:16 +0000)]
Change 34206 forgot to update to reflect the

p4raw-id: //depot/perl@34207

12 years agoMove the modules, tests, prove and Changes file from lib/ to
Nicholas Clark [Tue, 19 Aug 2008 18:09:00 +0000 (18:09 +0000)]
Move the modules, tests, prove and Changes file from lib/ to
ext/Test/Harness. Not everything is there yet, but it makes it way
easier to swap the directory out and replace it with a trunk svn

p4raw-id: //depot/perl@34206

12 years agoRe: Change 34184: Convert all unimaginative (ie race condition) temporary file names to
Bram [Tue, 12 Aug 2008 19:05:00 +0000 (21:05 +0200)]
Re: Change 34184: Convert all unimaginative (ie race condition) temporary file names to
Message-ID: <>

(Change 34184 missed one Comp.try in the MSWin32 case, which caused this
test to fail on Win32)

p4raw-id: //depot/perl@34205

12 years agoSkip the Perl debugger test if the harness itself is already running
Nicholas Clark [Sun, 17 Aug 2008 16:53:04 +0000 (16:53 +0000)]
Skip the Perl debugger test if the harness itself is already running
under some kind of debugger (such as a profiler) to avoid confusing
things. (such as trashing the profiler output file from the harness.)

p4raw-id: //depot/perl@34204

12 years agoVMS-specific follow-up to tempfile name changes in 34182, plus
Craig A. Berry [Wed, 13 Aug 2008 03:10:16 +0000 (03:10 +0000)]
VMS-specific follow-up to tempfile name changes in 34182, plus
a TODO in dup.t that's long since to-done.

p4raw-id: //depot/perl@34203

12 years agoRE: [perl #35877] Strange regex failure?
Bram [Sun, 3 Aug 2008 16:35:29 +0000 (18:35 +0200)]
RE: [perl #35877] Strange regex failure?
Message-ID: <>

(Adds tests for perl #35877, which was fixed by change 29441)

p4raw-id: //depot/perl@34202

12 years agoRegen of perlapi.pod after differences where pointed out by
Steve Peters [Mon, 11 Aug 2008 14:41:47 +0000 (14:41 +0000)]
Regen of perlapi.pod after differences where pointed out by
Vincent Pitt.

p4raw-id: //depot/perl@34201

12 years agoCygwin build harmonization, remove cygwin/Makefile.SHs
Reini Urban [Mon, 28 Jul 2008 12:55:40 +0000 (14:55 +0200)]
Cygwin build harmonization, remove cygwin/Makefile.SHs
From: "Reini Urban" <>
Message-ID: <>

p4raw-id: //depot/perl@34200

12 years ago[perl #52740] [PATCH-tests] crash when localizing a symtab entry
Bram [Sun, 10 Aug 2008 10:59:16 +0000 (03:59 -0700)]
[perl #52740] [PATCH-tests] crash when localizing a symtab entry
From: "Bram via RT" <>
Message-ID: <>

p4raw-id: //depot/perl@34198

12 years agoPurge C<n_a> thoughtcrime from the pods.
Nicholas Clark [Sun, 10 Aug 2008 21:54:00 +0000 (21:54 +0000)]
Purge C<n_a> thoughtcrime from the pods.

p4raw-id: //depot/perl@34197

12 years agoAvoid a potential testing race condition in lib/Dirhandle.ttest.
Bram [Sun, 10 Aug 2008 20:36:27 +0000 (22:36 +0200)]
Avoid a potential testing race condition in lib/Dirhandle.ttest.
Message-ID: <>
Date: Sun, 10 Aug 2008 20:36:27 +0200

p4raw-id: //depot/perl@34196

12 years agoRe: Change 34175: Avoid a potential testing race condition in's test.
Bram [Sun, 10 Aug 2008 20:29:07 +0000 (22:29 +0200)]
Re: Change 34175: Avoid a potential testing race condition in's test.
Message-ID: <>
Date: Sun, 10 Aug 2008 20:29:07 +0200

p4raw-id: //depot/perl@34195

12 years agoUpgrade to
Steve Peters [Sun, 10 Aug 2008 17:11:24 +0000 (17:11 +0000)]
Upgrade to

p4raw-id: //depot/perl@34194

12 years agoUpgrade to ExtUtils-Manifest-1.54
Steve Peters [Sun, 10 Aug 2008 16:58:49 +0000 (16:58 +0000)]
Upgrade to ExtUtils-Manifest-1.54

p4raw-id: //depot/perl@34193

12 years agoUse App::Prove::State to store the timings for the tests, and if
Nicholas Clark [Sat, 9 Aug 2008 20:11:55 +0000 (20:11 +0000)]
Use App::Prove::State to store the timings for the tests, and if
timings are available, reorder the parallelisable tests to run the
slowest first. Timings for a second run are 18 seconds less for me:
Files=1553, Tests=209393, 459 wallclock secs (94.89 usr 13.16 sys + 638.19 cusr 58.59 csys = 804.83 CPU)
Files=1553, Tests=209393, 441 wallclock secs (82.83 usr 13.90 sys + 622.13 cusr 59.20 csys = 778.06 CPU)

p4raw-id: //depot/perl@34192

12 years agoDon't need to do the globbing before building the rules, as it makes
Nicholas Clark [Sat, 9 Aug 2008 13:16:03 +0000 (13:16 +0000)]
Don't need to do the globbing before building the rules, as it makes
the rules larger than necessary, and potentially slows things down.

p4raw-id: //depot/perl@34191

12 years agoDon't bother hashing the key, or performing any other preparatory work,
Nicholas Clark [Sat, 9 Aug 2008 10:04:55 +0000 (10:04 +0000)]
Don't bother hashing the key, or performing any other preparatory work,
if there isn't anything to find.

p4raw-id: //depot/perl@34190

12 years agoNote that I TODID most of parallel testing in the core.
Nicholas Clark [Fri, 8 Aug 2008 14:37:09 +0000 (14:37 +0000)]
Note that I TODID most of parallel testing in the core.

p4raw-id: //depot/perl@34189

12 years ago[perl #24198] Bad default-domainname extraction in Configure-Script may cause infinit...
Bram [Thu, 7 Aug 2008 06:00:47 +0000 (23:00 -0700)]
[perl #24198] Bad default-domainname extraction in Configure-Script may cause infinite loops in perl-tests
From: "Bram via RT" <>
Message-ID: <>

p4raw-id: //depot/perl@34188

12 years agoEverything in t/ can now run in parallel.
Nicholas Clark [Fri, 8 Aug 2008 10:15:33 +0000 (10:15 +0000)]
Everything in t/ can now run in parallel.

p4raw-id: //depot/perl@34185

12 years agoConvert all unimaginative (ie race condition) temporary file names to
Nicholas Clark [Fri, 8 Aug 2008 09:59:45 +0000 (09:59 +0000)]
Convert all unimaginative (ie race condition) temporary file names to
use's tempfile().

p4raw-id: //depot/perl@34184

12 years agoUse, not, in t/run/*.t
Nicholas Clark [Fri, 8 Aug 2008 09:24:39 +0000 (09:24 +0000)]
Use, not, in t/run/*.t

p4raw-id: //depot/perl@34183

12 years agoConvert all unimaginative (ie race condition) temporary file names to
Nicholas Clark [Thu, 7 Aug 2008 15:21:57 +0000 (15:21 +0000)]
Convert all unimaginative (ie race condition) temporary file names to
use's tempfile().

p4raw-id: //depot/perl@34182

12 years agoLet rip with t/op/*.t in parallel too.
Nicholas Clark [Thu, 7 Aug 2008 10:36:32 +0000 (10:36 +0000)]
Let rip with t/op/*.t in parallel too.

p4raw-id: //depot/perl@34181

12 years agoUse's tempfile().
Nicholas Clark [Thu, 7 Aug 2008 10:12:44 +0000 (10:12 +0000)]
Use's tempfile().

p4raw-id: //depot/perl@34180

12 years agoFix bug in counting in tempfile().
Nicholas Clark [Thu, 7 Aug 2008 10:12:09 +0000 (10:12 +0000)]
Fix bug in counting in tempfile().
Also we need to note file names we give out, as some callers don't
create them before calling us a second time.
Add a regexp that matches the tempfile() names, for tests that want to
munge output.

p4raw-id: //depot/perl@34179

12 years agoA proper tempfile function that can be used multiple times.
Nicholas Clark [Thu, 7 Aug 2008 08:23:13 +0000 (08:23 +0000)]
A proper tempfile function that can be used multiple times.

p4raw-id: //depot/perl@34178

12 years agoAs rules can be glob patterns, leave them as glob patterns, and instead
Nicholas Clark [Thu, 7 Aug 2008 08:11:39 +0000 (08:11 +0000)]
As rules can be glob patterns, leave them as glob patterns, and instead
expand the globs when we walk the rules to create the full list of
tests. Tests run more quickly.

p4raw-id: //depot/perl@34177

12 years agoRun t/uni/*.t t/mro/*.t t/lib/*.t fully in parallel.
Nicholas Clark [Thu, 7 Aug 2008 07:45:31 +0000 (07:45 +0000)]
Run t/uni/*.t t/mro/*.t t/lib/*.t fully in parallel.

p4raw-id: //depot/perl@34176

12 years agoAvoid a potential testing race condition in's test.
Nicholas Clark [Wed, 6 Aug 2008 21:36:45 +0000 (21:36 +0000)]
Avoid a potential testing race condition in's test.

p4raw-id: //depot/perl@34175

12 years agoIf TEST_JOBS is set to something non-zero, use TAP::Harness to run the
Nicholas Clark [Wed, 6 Aug 2008 17:51:10 +0000 (17:51 +0000)]
If TEST_JOBS is set to something non-zero, use TAP::Harness to run the
tests in parallel. The tests aren't fully parallelisable yet to the
level we'd like, but one needs to start somewhere.

p4raw-id: //depot/perl@34174

12 years agoBetter temporary file name generation. (Avoid using ++, avoid file
Nicholas Clark [Wed, 6 Aug 2008 16:04:49 +0000 (16:04 +0000)]
Better temporary file name generation. (Avoid using ++, avoid file
names clashing between different scripts, which may now be executing
in parallel)

p4raw-id: //depot/perl@34173

12 years agoBring the joy of strict to t/harness.
Nicholas Clark [Wed, 6 Aug 2008 12:18:13 +0000 (12:18 +0000)]
Bring the joy of strict to t/harness.

p4raw-id: //depot/perl@34172

12 years agoTests for [perl #57564] and [perl #24524] Refcounting bug
Bram [Tue, 5 Aug 2008 19:58:00 +0000 (21:58 +0200)]
Tests for [perl #57564] and [perl #24524] Refcounting bug
Message-ID: <>

p4raw-id: //depot/perl@34171

12 years agoTiny SelfLoader patch for better warnings
Steffen Mueller [Sat, 2 Aug 2008 17:38:39 +0000 (19:38 +0200)]
Tiny SelfLoader patch for better warnings
Message-ID: <>
Date: Sat, 02 Aug 2008 17:38:39 +0200

p4raw-id: //depot/perl@34170

12 years agoUpgrade to Test::Harness 3.13
Nicholas Clark [Thu, 31 Jul 2008 21:27:36 +0000 (21:27 +0000)]
Upgrade to Test::Harness 3.13

p4raw-id: //depot/perl@34169

12 years agoAdd d_timegm to to fix the generated uconfig.h.
Marcus Holland-Moritz [Thu, 31 Jul 2008 21:05:45 +0000 (21:05 +0000)]
Add d_timegm to to fix the generated uconfig.h.

p4raw-id: //depot/perl@34168

12 years agoYou can't (and shouldn't) use CvDEPTH on a PVFM.
Nicholas Clark [Thu, 31 Jul 2008 10:03:33 +0000 (10:03 +0000)]
You can't (and shouldn't) use CvDEPTH on a PVFM.

p4raw-id: //depot/perl@34167