| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
including many to-do tests
|
|
|
|
| |
The latter (for bug #114838) is a to-do test under ithreads.
|
|
|
|
|
| |
including ${\3}, which currently fails under ithreads (and is hence a
to-do test).
|
|
|
|
|
| |
plus a regular (not to-do) test for an lvalue sub case that already
works properly.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is only buggy under ithreads.
sub a {
for (${\""}.${\""}) {
$_ = $_[0] || __PACKAGE__;
print "$_\n";
a("road") unless $_[0];
print "$_\n";
}
}
a();
The outer call sets the scalar returned by ${\""}.${\""} to the cur-
rent package name.
The inner call sets it to "road".
Each call prints it twice, the outer call surrounding the inner call.
The output in 5.10-5.18 is:
main
road
road
road
because the inner call is clobbering the same scalar. If __PACKAGE__
is changed to "main", it works, and prints
main
road
road
main
(as the script above also prints in 5.8.8).
|
| |
|
|\ |
|
| | |
|
| | |
|
|/ |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
6.72 Wed Jul 24 18:38:19 BST 2013
No changes from 6.71_01
6.71_01 Wed Jul 24 09:31:07 BST 2013
Bug Fixes:
* Resolved more regressions in parse_version code
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Add a new separate section explaining the performance issues of $`, $&
and $'; plus descriptions of the various workarounds like @-, /p and COW,
and which perl version they were each introduced in.
Then in the entries for each individual var, strip out any commentary
about performance, and just include a link to the new performance
section.
|
|
|
|
|
| |
It still said that the performance of $`, $&, $' was fixed in 5.18.
Update that to 5.20, since COW wasn't enabled by default in 5.18.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
6.70 Tue Jul 23 21:55:23 BST 2013
No changes from 6.69_09
6.69_09 Sun Jul 21 09:22:40 BST 2013
Bug Fixes:
* RT#86976 Fix version parsing bug introduced in 6.69_05
Part Deux :)
6.69_08 Wed Jul 17 00:36:28 BST 2013
Bug Fixes:
* RT#86976 Fix version parsing bug introduced in 6.69_05
6.69_07 Tue Jul 16 15:32:25 BST 2013
New features:
* RT#4550 report the file created after make dist
Bug Fixes:
* RT#66113 strip control characters from ABSTRACT
* RT#20662 Don't check for config.h if it doesn't exist
6.69_06 Fri Jul 12 14:49:32 BST 2013
Bug Fixes:
* RT#64163 clean_subdirs infinite loop if subdir already gone
* RT#79348 doesn't support miniperl in installation paths
Doc Fixes:
* Fix META_MERGE example
* RT#31053 Mention configure_requires in PREREQ_FATAL documentation
* RT#14680 Document TEST_FILES usage with 'make test'
* RT#21285 Document 'make veryclean'
6.69_05 Thu Jul 11 22:10:10 BST 2013
Bug Fixes:
* Resolve RT#9452 regression with
parse_version() (Victor Efimov)
* RT#28632 use LD and OPTIMIZE in recursive Makefile.PL
invocations (Niko Tyni)
6.69_04 Wed Jul 10 11:48:22 BST 2013
Cygwin Fixes:
* Revert RT#54703 and apply patch from RT#69401 to
resolve /cygdrive issues (Reini Urban)
6.69_03 Tue Jul 9 22:39:54 BST 2013
Bug Fixes:
* RT#61419 Avoid invisible interactive question when
rebuilding Makefile (Slaven Rezic)
* VERSION also now really handles v-strings correctly.
Cygwin Fixes:
* RT#54703 - Don't hardcode /cygdrive (Jerry Hedden)
Misc:
* Install into site when 5.12 or above
6.69_02 Tue Jul 2 13:12:51 BST 2013
Bug Fixes:
* [RT#86609] VERSION_FROM now handles v-strings correctly.
* VERSION also now handles v-strings correctly.
Misc:
* Updated bundled CPAN::Meta and removed Version::Requirements
6.69_01 Thu Jun 20 12:49:45 BST 2013
Win32 Fixes:
* resolve regression on Win32 introduced in 6.67_01
(bingos)
|
|\
| |
| |
| | |
This makes no changes to any installed code.
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
The Win32 line C<-del /f *.def *.map> and the start of the Unix line
C<rm -f so_locations> are unlikely to change.
|
| |
| |
| |
| |
| | |
It hasn't been used since commit e3160748789c8366 in Sept 2009 eliminated
the XSUBPP macro.
|
| |
| |
| |
| |
| | |
Rules to clean lib/ExtUtils/CBuilder/t and lib/ExtUtils/ParseXS/t haven't
been needed since the modules were moved to cpan/ and dist/
|
| |
| |
| |
| | |
And document it.
|
| |
| |
| |
| |
| |
| |
| |
| | |
Iterate over the files in sorted order, instead of hash iteration order.
This means that in TAP mode test failures will have consistent numbers.
Provide a description for the first test when outputting TAP.
Use clearer variable names in process(), and avoid using // as this code will
soon be exposed to pre-5.10
|
| | |
|
| |
| |
| |
| | |
And document it.
|
| |
| |
| |
| |
| |
| |
| | |
Move the substitution from the callers in into verify_contiguous().
Pass in a regex object for the substitution.
Return the modified file contents from verify_contiguous().
Load Carp when verify_contiguous() is called, instead of at compile time.
|
| |
| |
| |
| | |
These test files are no longer generated in directories beneath lib/
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
It's possible to programmatically determine almost all the files and
directories which will be created in lib/ by building the extensions.
Hence add a new script regen/lib_cleanup.pl to do this.
This saves having to manually update lib/.gitignore to reflect changes in
the build products of extensions, which has become a small but reoccurring
instance of scut-work.
|
| |
| |
| |
| |
| | |
We have to stop using File::Compare's compare(), as it doesn't return
diagnostics about what went wrong.
|
| |
| |
| |
| |
| | |
These are all the build products that we can't programmatically infer will be
generated from extensions in ext, dist and cpan.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Move the ignore of lib/App/, lib/mro.pm, lib/TAP/, lib/Test/Harness.pm,
lib/File/DosGlob.pm, lib/inc/, Win32.pm, Win32API/ and Win32Core.pm from
.gitignore to lib/.gitignore, where they more logically belong.
Consistently use trailing / for ignored directories.
Add a leading / to the ignore of unicore/TestProp.pl
(The line was added by commit 3df51b85ce4a5664 in Nov 2009, and it's not
clear why it did not have a leading / from the start.)
Re-sort lib/.gitignore lexically.
|
|/
|
|
|
|
|
|
|
|
| |
Class::ISA was removed by 3df51b85ce4a5664 in April 2010.
Module::Pluggable was removed by commit 482cac4d574f8c6c in May 2013.
Module/Build/ConfigData.pm was moved from lib/ to cpan/ by commit
0b93a7997e668a67 in Nov 2009.
Pod::Plainer was removed by commit afbe215fcafe7a92 in April 2010.
Shell was removed by commit a1e75797c204ade8 in June 2011.
Switch was removed by commit 75108aefc8b50fcf in April 2010.
|
|
|
|
|
| |
The versioning for dist/bignum was a little confused, hopefully I've
unconfused it
|
|\ |
|
| |
| |
| |
| |
| | |
set all other modules in dist/bignum to 0.36 too, the CPAN dist has
them all at the same version
|
|/ |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Previously it was fire-and-forget for the 3 programs it ran (and for the
programs that regen.pl ran). Now we die if any program fails to return 0.
Also regen.t had an explicit list of programs to test. It turned out that it
was not testing regen/mk_invlists.pl. Now regen.t has a skip list of what
not to test, and everything not skipped it tested. This way any new
additions will not get missed.
This was implemented by refactoring regen.pl to read the list of programs it
runs from <DATA>, so that regen.t can open regen.pl to extract the same
list.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
It's the only regen script that we can't run as part of the tests (because it
requires a Unix shell), but can syntax check (because it only uses core
modules).
In theory we could make it skip with --tap if $Config{sh} is not what we
expect, but to be robust this looks to be a problem. Firstly, $Config{sh}
can be undef, or something "non-Unix". To be useful a whitelist needs to be
(at least) (?:/usr)?/bin/sh, and potentially also ksh. But the output is not
valid TAP:
$ ./perl -Ilib regen/uconfig_h.pl --tap
Extracting uconfig.h-new (with variable substitutions)
ok - regen/uconfig_h.pl uconfig.h
and t/TEST would choke, so we'd need to capture it or otherwise comment out
that "Extracting" line which just adds both complexity and fragility.
So the right trade off appears to be just to syntax check it.
|
| |
|
| |
|
|\
| |
| |
| |
| | |
avoids creating temporary objects for STORABLE_attach when they aren't
needed.
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
Pull out getting stash by name from macro BLESS and SEEN.
So results of gv_stashpv may be reused by calling side. This allow
to not evaluate same things twice in retrieve_hook.
|
|/
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Before this fix, deserialization process for object with STORABLE_attach
hook looks like:
1. create SV of needed type
2. lookup classname
3. bless SV to class
4. lookup for STORABLE_attach
5. destroy SV
6. return result of STORABLE_attach call
As a result DESTROY method of target class was called with empty, not
initialized object. This behaviour very bad especially for non
hash-based XS objects.
Fix it, by move blessing temprorary SV after STORABLE_attach hook check.
This commit slowdown deserialization of other objects (with
STORABLE_thaw hook). It will be fixed later.
|
|\ |
|
| |
| |
| |
| | |
but keep the test to avoid it changing by accident
|