This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl5.git
11 years agoRevert "Paste in the output of Porting/acknowledgements.pl in pod/perl5159delta.pod"
Abigail [Sun, 18 Mar 2012 22:31:28 +0000 (23:31 +0100)]
Revert "Paste in the output of Porting/acknowledgements.pl in pod/perl5159delta.pod"

This reverts commit 98f0737d71a92167bf1aace8a8d8411b985e3200.

Until I can figure out how to add a new perldelta and make all tests pass.

11 years agoPaste in the output of Porting/acknowledgements.pl in pod/perl5159delta.pod
Abigail [Sun, 18 Mar 2012 17:26:59 +0000 (18:26 +0100)]
Paste in the output of Porting/acknowledgements.pl in pod/perl5159delta.pod

11 years agoAttempt to find an author if (s)he comes via RT.
Abigail [Sun, 18 Mar 2012 17:24:23 +0000 (18:24 +0100)]
Attempt to find an author if (s)he comes via RT.

In the case of commits, it maybe that the reporter used RT, which results
in a generic RT email address. Instead of just reporting the author as '!',
we'll do an attempt to see whether he's named in the AUTHORS file.

11 years agoFirst shot at perl5159delta.pod
Abigail [Sun, 18 Mar 2012 16:20:03 +0000 (17:20 +0100)]
First shot at perl5159delta.pod

11 years agoUpdate CPANPLUS to CPAN version 0.9121
Chris 'BinGOs' Williams [Sat, 17 Mar 2012 23:50:17 +0000 (23:50 +0000)]
Update CPANPLUS to CPAN version 0.9121

This resolves a regression introduced with v0.9109
which was included with perl version v5.15.2 and is
therefore a regression since v5.14.x

  [DELTA]

  Changes for 0.9121      Sat Mar 17 23:23:42 2012
  ================================================
  * Resolved a regression with dev '_' version
    numbers since 0.9109

11 years agoIn S_parse_body(), don't "leak" linestr_sv until global destruction.
Nicholas Clark [Sat, 25 Feb 2012 23:22:41 +0000 (00:22 +0100)]
In S_parse_body(), don't "leak" linestr_sv until global destruction.

This commit ensures that linestr_sv is properly cleaned up, if allocated.

The local variable linestr_sv was added by commit 009d90df4e17a415 in 2007,
to replace use of PL_linestr in S_parse_body(). However, that commit didn't
add any code to free linestr_sv at the end of S_parse_body(), meaning that
the SV sticks around until global destruction.

Subsequent code simplification possible by the removal of suidperl reveals
that linestr_sv is only needed for the '-x' option, so it's safe to avoid
allocating it up front. Additionally, during '-x' processing, Perl_sv_gets()
will upgrade the target SV to SVt_PV and allocate the string buffer as needed,
so there's no need to pre-upgrade or pre-allocate the SV in S_parse_body().
This slightly reduces the amount of code.

11 years agoRemove all the never used parameters from the macro validate_suid()
Nicholas Clark [Sat, 25 Feb 2012 22:50:49 +0000 (23:50 +0100)]
Remove all the never used parameters from the macro validate_suid()

Several parameters are unused in either remaining variant of the
validate_suid() macro. The two variants which used the extra parameters
were removed with suidperl by commit cc69b689ee7c2745 in Jan 2009.

11 years agoIn perlfunc, don't have functions in "Misc" and a second category.
Nicholas Clark [Wed, 22 Feb 2012 13:00:41 +0000 (14:00 +0100)]
In perlfunc, don't have functions in "Misc" and a second category.

dump, eval, evalbytes and wantarray are now only in "flow control".
local, my, our and state are only in "scoping".
prototype is now only in "misc". Whilst *prototypes* affect parsing, and
hence indirectly flow control, the prototype function is for introspecting
prototypes.

11 years agoDe-emphasise switch-related keywords in perlfunc.
Nicholas Clark [Sun, 19 Feb 2012 18:54:38 +0000 (19:54 +0100)]
De-emphasise switch-related keywords in perlfunc.

Move the 3 non-function keywords into the summary cross reference section
at the end of perlfunc. Eliminate the examples which duplicate examples in
perlsyn. Merge the remaining 2 keywords into the "control flow" group.
Note that the switch feature is considered experimental.

With these changes, `perldoc -f default`, `perldoc -f given` and
`perldoc -f when` will still return a helpful result, and as before will
refer the reader to perlsyn for full information.

11 years agoIn the perlfunc cross-reference sections, link to the section within a page.
Nicholas Clark [Sun, 19 Feb 2012 17:33:22 +0000 (18:33 +0100)]
In the perlfunc cross-reference sections, link to the section within a page.

perlfunc now has a section cross referencing keywords documented elsewhere.
Keywords are grouped by man page, and for most manpages, all the
cross-referenced keywords are in the same section. Hence make the L<> links
more specific by including the section.

11 years agoDESTROY is documented in perlobj - correct the cross-reference in perlfunc.
Nicholas Clark [Sun, 19 Feb 2012 15:49:44 +0000 (16:49 +0100)]
DESTROY is documented in perlobj - correct the cross-reference in perlfunc.

11 years agoignore new build result from splitting docs for Module::CoreList
Tony Cook [Sat, 17 Mar 2012 02:39:04 +0000 (13:39 +1100)]
ignore new build result from splitting docs for Module::CoreList

11 years agoUnicode::UCD: pod clarifications, corrections
Karl Williamson [Sun, 11 Mar 2012 19:32:04 +0000 (13:32 -0600)]
Unicode::UCD: pod clarifications, corrections

11 years agocharnames.t: Attempt to fix probable timing issue
Karl Williamson [Fri, 16 Mar 2012 16:14:05 +0000 (10:14 -0600)]
charnames.t: Attempt to fix probable timing issue

charnames.t sometimes fails on a test that is expecting a file to be
non-existent.  However, other tests in it briefly create a file by that
name.  When two instances of the .t are run in parallel, as happens in
some smokes, it could be that the file exists at the time it is expected
not to.  The result is a non-reproducible failure.  Anyway, that is my
theory.  And so this commit changes to use a filename that is used just
by the test for what happens when a file is non-existent, and hence
doesn't ever exist even transiently.

11 years agocherrymaint: Beef up --help option
Karl Williamson [Sun, 11 Mar 2012 16:44:19 +0000 (10:44 -0600)]
cherrymaint: Beef up --help option

I can never remember how to set the tunnel up for using this, so
add it to the help output

11 years agoRun podtidy on perlsource.pod
Dave Rolsky [Tue, 13 Mar 2012 16:37:33 +0000 (11:37 -0500)]
Run podtidy on perlsource.pod

11 years agoAdd a missing word to perlsource.pod
Dave Rolsky [Tue, 13 Mar 2012 16:37:18 +0000 (11:37 -0500)]
Add a missing word to perlsource.pod

11 years agoFix POD issues
Abigail [Thu, 15 Mar 2012 21:58:34 +0000 (22:58 +0100)]
Fix POD issues

11 years agoDocument upgrading a module in cpan/
Abigail [Thu, 15 Mar 2012 21:35:10 +0000 (22:35 +0100)]
Document upgrading a module in cpan/

11 years agoClearify this is for even numbered (BLEAD-FINAL) releases.
Abigail [Thu, 15 Mar 2012 21:05:50 +0000 (22:05 +0100)]
Clearify this is for even numbered (BLEAD-FINAL) releases.

11 years agocorrect argument handling in Term::ReadLine
Ricardo Signes [Wed, 14 Mar 2012 20:46:21 +0000 (16:46 -0400)]
correct argument handling in Term::ReadLine

https://rt.perl.org/rt3/Ticket/Display.html?id=111758

patch by Darin McBride

11 years agoSeparate the POD from the corelist data in Module::CoreList
Chris 'BinGOs' Williams [Sun, 4 Mar 2012 20:55:48 +0000 (20:55 +0000)]
Separate the POD from the corelist data in Module::CoreList

See https://github.com/CPAN-API/metacpan-web/issues/485

11 years agoRevert "Upgrade IO-Compress to 2.049"
Abigail [Wed, 14 Mar 2012 01:47:46 +0000 (02:47 +0100)]
Revert "Upgrade IO-Compress to 2.049"

This reverts commit 1d4b9cf3270c936605a07ecd7414f808755d3184.

This depends on the module that was reverted by Ricardo at the same time.

11 years agoUpgrade IO-Compress to 2.049
Abigail [Wed, 14 Mar 2012 01:39:16 +0000 (02:39 +0100)]
Upgrade IO-Compress to 2.049

11 years agoAllow passing the name of the CPAN module
Abigail [Wed, 14 Mar 2012 00:59:48 +0000 (01:59 +0100)]
Allow passing the name of the CPAN module

11 years agoUpgrade CPANPLUS to 0.9120
Abigail [Wed, 14 Mar 2012 00:43:58 +0000 (01:43 +0100)]
Upgrade CPANPLUS to 0.9120

11 years agoDeal with files in the CUSTOMIZED sections.
Abigail [Wed, 14 Mar 2012 00:40:23 +0000 (01:40 +0100)]
Deal with files in the CUSTOMIZED sections.

11 years agoUpgrade Socket to 2.000
Abigail [Wed, 14 Mar 2012 00:31:45 +0000 (01:31 +0100)]
Upgrade Socket to 2.000

11 years agoUpgrade Socket to version 2,000
Abigail [Wed, 14 Mar 2012 00:19:42 +0000 (01:19 +0100)]
Upgrade Socket to version 2,000

11 years agoFix the fixing of MANIFEST
Abigail [Wed, 14 Mar 2012 00:19:06 +0000 (01:19 +0100)]
Fix the fixing of MANIFEST

11 years agoUpgrade Unicode::Normalize to 1.14.
Abigail [Tue, 13 Mar 2012 23:56:07 +0000 (00:56 +0100)]
Upgrade Unicode::Normalize to 1.14.

11 years agoRevert changes to compression libraries
Ricardo Signes [Wed, 14 Mar 2012 01:01:00 +0000 (21:01 -0400)]
Revert changes to compression libraries

Revert "Ran zlib2ansi script against zlib-src/ to fix K&R-isms"
This reverts commit a7026383bc5a2ca5f518f670ee6d74d55cd994aa.

Revert "Some files in cpan/Compress-Raw-Zlib have the x bit set."
This reverts commit adace0595a25c5339a4c1fff6b4704945abf8814.

Revert "Fixes type in commit 14c554185"
This reverts commit d588a46d9335dc093e4046b68ae0e2c7925ef095.

Revert "Upgrade Compress::Raw::Zlib to 2.051."
This reverts commit 14c554185b51c8646198cbf62fe6e94e9890b3a5.

Revert "Upgrade Compress-Raw-Bzip2 to version 2.049."
This reverts commit 616f340ab90cf805b145b81fd31c2017a4e7783f.

Revert "Upgrade cpan/Archive-Tar to 1.84"
This reverts commit c06ee8c824f270b42cb440453df0e44858492aed.

Revert "Upgrade Archive-Extract to 0.60"
This reverts commit dc16b9e468c516c95140dc2b6eac778872c79239.

11 years agoUpgrade Unicode-Collate to 0.89
Abigail [Tue, 13 Mar 2012 18:57:38 +0000 (19:57 +0100)]
Upgrade Unicode-Collate to 0.89

11 years agoList one more TODO
Abigail [Tue, 13 Mar 2012 18:53:02 +0000 (19:53 +0100)]
List one more TODO

11 years agoUpgrade Digest-SHA to 5.71.
Abigail [Tue, 13 Mar 2012 18:46:56 +0000 (19:46 +0100)]
Upgrade Digest-SHA to 5.71.

11 years agoMore tests, and more exec-bit removal.
Abigail [Tue, 13 Mar 2012 18:44:47 +0000 (19:44 +0100)]
More tests, and more exec-bit removal.

Checks all the files in the new directory that have the exec bit set.
If the file isn't new, and if the old file doesn't have the exec bit set,
disable it.

Runs the tests that come with the package as well.

11 years agoDisambiguate map { }
Abigail [Tue, 13 Mar 2012 17:37:49 +0000 (18:37 +0100)]
Disambiguate map { }

11 years agoMention Porting/sync-with-cpan
Abigail [Tue, 13 Mar 2012 17:34:32 +0000 (18:34 +0100)]
Mention Porting/sync-with-cpan

11 years agoAdd Porting/sync-with-cpan
Abigail [Tue, 13 Mar 2012 16:44:42 +0000 (17:44 +0100)]
Add Porting/sync-with-cpan

It helps if you actually commit the changes you make. :(

11 years agoScript to help out upgrading a cpan/ distro.
Abigail [Tue, 13 Mar 2012 16:14:21 +0000 (17:14 +0100)]
Script to help out upgrading a cpan/ distro.

This one is not complete yet, and its portability can be much improved.
But it helps me out right now, and it wouldn't be fair to keep it all to
myself.

11 years agoUpgrade Locale-Codes to 3.21
Abigail [Tue, 13 Mar 2012 14:01:17 +0000 (15:01 +0100)]
Upgrade Locale-Codes to 3.21

11 years agostop S_forget_pmop() SEGVing
David Mitchell [Tue, 13 Mar 2012 14:24:15 +0000 (14:24 +0000)]
stop S_forget_pmop() SEGVing

Commit 5bec93be re-purposed the SvMAGIC field of hashes being freed, on
the grounds that (a) any magic had been freed, (b) the refcnt was zero, so
no-one else could mess with the hash.

Unfortunately in the non-threaded case, PMOPs for m?? regexes have a
non-refcounted link back to their stash. When the stash is freed, any subs
in the stash are freed, which frees the PMOPs, which then see the freed
stash, and assume it still has magic because SvMAGIC is non-null.

The quick fix is to check the SvMAGICAL flags first; a longer term fix
would be to avoid the weak ref (e.g. by always using the threaded variant
of PmopSTASH, which stores the stash's *name* rather than a pointer to the
stash).

11 years agoMerge branch 'blead' of ssh://perl5.git.perl.org/gitroot/perl into blead
Abigail [Tue, 13 Mar 2012 12:22:28 +0000 (13:22 +0100)]
Merge branch 'blead' of ssh://perl5.git.perl.org/gitroot/perl into blead

11 years agoExclude perlcritic.rc files.
Abigail [Tue, 13 Mar 2012 12:20:31 +0000 (13:20 +0100)]
Exclude perlcritic.rc files.

Listed perlcritic.rc in the @IGNORABLE array of Porting/Maintainers.pl,
and removed the files from the new cpan/CPAN-Meta and cpan/HTTP-Tiny distros.

11 years agoList the new files that came with the upgrade of CPAN-Meta
Abigail [Tue, 13 Mar 2012 12:20:03 +0000 (13:20 +0100)]
List the new files that came with the upgrade of CPAN-Meta

11 years agoRan zlib2ansi script against zlib-src/ to fix K&R-isms
Chris 'BinGOs' Williams [Tue, 13 Mar 2012 09:43:17 +0000 (09:43 +0000)]
Ran zlib2ansi script against zlib-src/ to fix K&R-isms

11 years agoUpgrade HTTP::Tiny to 0.017.
Abigail [Tue, 13 Mar 2012 01:32:44 +0000 (02:32 +0100)]
Upgrade HTTP::Tiny to 0.017.

11 years agoUpgrade cpan/CPAN-Meta to 2.120630
Abigail [Tue, 13 Mar 2012 01:02:18 +0000 (02:02 +0100)]
Upgrade cpan/CPAN-Meta to 2.120630

11 years agoSome files in cpan/Compress-Raw-Zlib have the x bit set.
Abigail [Tue, 13 Mar 2012 00:24:16 +0000 (01:24 +0100)]
Some files in cpan/Compress-Raw-Zlib have the x bit set.

11 years agoFixes type in commit 14c554185
Abigail [Mon, 12 Mar 2012 23:59:16 +0000 (00:59 +0100)]
Fixes type in commit 14c554185

In commit 14c554185, I updated the version of the wrong distro in
Porting/Maintainers.pl. This fixes this error.

11 years agoMerge branch 'blead' of ssh://perl5.git.perl.org/gitroot/perl into blead
Abigail [Mon, 12 Mar 2012 23:54:14 +0000 (00:54 +0100)]
Merge branch 'blead' of ssh://perl5.git.perl.org/gitroot/perl into blead

11 years agoUpgrade Compress::Raw::Zlib to 2.051.
Abigail [Mon, 12 Mar 2012 23:53:07 +0000 (00:53 +0100)]
Upgrade Compress::Raw::Zlib to 2.051.

11 years agoUpgrade Compress-Raw-Bzip2 to version 2.049.
Abigail [Mon, 12 Mar 2012 21:49:31 +0000 (22:49 +0100)]
Upgrade Compress-Raw-Bzip2 to version 2.049.

11 years agoload Algorithm::Diff later in corelist-perldelta
Max Maischein [Sat, 10 Mar 2012 16:28:08 +0000 (17:28 +0100)]
load Algorithm::Diff later in corelist-perldelta

corelist-perldelta.pl is a bit schizophrenic. The part to generate the
new Perldelta text does not need Algorithm::Diff, but wants to be
run with the freshly built Perl. Ideally, the two usages get
clarified and split up into two separate programs. The added documentation
tries to give two helpful usages of the program.

11 years agoavoid some long-line errors in podcheck of Term-Readline
Ricardo Signes [Sat, 10 Mar 2012 21:21:49 +0000 (16:21 -0500)]
avoid some long-line errors in podcheck of Term-Readline

11 years agonew patch for Term::ReadLine event loop support
Ricardo Signes [Sat, 10 Mar 2012 17:14:42 +0000 (12:14 -0500)]
new patch for Term::ReadLine event loop support

  https://rt.perl.org/rt3/Ticket/Display.html?id=108470

This is more work from Darin McBride and Rocco Caputo to get the event
loop code offered earlier working, tested, and documented.

11 years agoUpgrade cpan/Archive-Tar to 1.84
Abigail [Mon, 12 Mar 2012 20:47:00 +0000 (21:47 +0100)]
Upgrade cpan/Archive-Tar to 1.84

11 years agoUpgrade Archive-Extract to 0.60
Abigail [Mon, 12 Mar 2012 20:12:26 +0000 (21:12 +0100)]
Upgrade Archive-Extract to 0.60

11 years agomake the pod2html tests work with fs with vols
Ricardo Signes [Mon, 12 Mar 2012 17:19:23 +0000 (13:19 -0400)]
make the pod2html tests work with fs with vols

  my $cwd = Cwd::cwd();
  my $new_dir  = catdir $cwd, "t";
  my $infile   = catfile $new_dir, "$podfile.pod";

Prior to these changes, we were getting the volume from $cwd, above, and
then basically ignoring it.  When the cwd was c:\foo, ignoring the
volume in the catdir/catfile operations would munge things to C:\foo,
which meant that later a native check of path prefix would fail:
C:\foo is not a prefix of c:\foo\bar because of the case difference in
the volume name.

The is a legitimate fix, but the code is still problematic in other
places because (a) it tends to do path operations with no consideration
for volumes and (b) it has at least one place where it decides whether
path X is below path Y by using substr/index instead of path checking
routines.

11 years agoSisyphus's fix for pod2html
Ricardo Signes [Tue, 6 Mar 2012 03:31:52 +0000 (22:31 -0500)]
Sisyphus's fix for pod2html

11 years agoperldelta for die propgation fix
Tony Cook [Sun, 11 Mar 2012 23:16:38 +0000 (10:16 +1100)]
perldelta for die propgation fix

11 years ago[rt #111654] properly propgate tainted errors
Tony Cook [Sun, 11 Mar 2012 03:38:57 +0000 (14:38 +1100)]
[rt #111654] properly propgate tainted errors

A magic value (such as a tainted string) may not have POK set, so call
SvPV() to find out if there's something in ERRSV to report.

Possibly this should be using SvPV_nomg(), but this is the first
request for magic in this code.  Maybe the code above should be
calling SvGETMAGIC() before checking SvROK().

11 years ago[rt #111654] TODO test for tainted die propagation
Tony Cook [Sun, 11 Mar 2012 03:27:29 +0000 (14:27 +1100)]
[rt #111654] TODO test for tainted die propagation

11 years agoDocument the updated version of Pod::Simple
Abigail [Sun, 11 Mar 2012 22:25:49 +0000 (23:25 +0100)]
Document the updated version of Pod::Simple

11 years agoUpgrade Pod-Simple to 3.20. This should fix issue 111520.
Abigail [Sun, 11 Mar 2012 17:05:18 +0000 (18:05 +0100)]
Upgrade Pod-Simple to 3.20. This should fix issue 111520.

11 years agosdbm.c: fix off-by-one access to global ".dir"
Reini Urban [Fri, 9 Mar 2012 15:11:50 +0000 (09:11 -0600)]
sdbm.c: fix off-by-one access to global ".dir"

Detected by clang -faddress-sanitizer.

The bug came in 081f72ad6fa2b76e0b3cd9046371b2dbd9130114, where
we started calculating lengths with sizeof on string constants
instead of using strlen.  Since string constants include the null
byte, sizeof(".dir"), for example, is 5, but we've been copying 6
bytes.

This patch resolves [perl #111586] and includes revisions by the
committer.

11 years agoregen pod issues
Father Chrysostomos [Thu, 8 Mar 2012 01:58:20 +0000 (17:58 -0800)]
regen pod issues

11 years agoperlvar: Fix long lines
Father Chrysostomos [Thu, 8 Mar 2012 01:08:51 +0000 (17:08 -0800)]
perlvar: Fix long lines

Also, make all indented code start with a four-space indent.  Before
this it was inconsistent throughout.

11 years agoDear perlvar: ${^WARNING_BITS} was added in 5.6
Father Chrysostomos [Thu, 8 Mar 2012 00:36:54 +0000 (16:36 -0800)]
Dear perlvar: ${^WARNING_BITS} was added in 5.6

11 years agoperlvar: Document ${^WARNING_BITS} better
Father Chrysostomos [Thu, 8 Mar 2012 00:36:07 +0000 (16:36 -0800)]
perlvar: Document ${^WARNING_BITS} better

Don’t refer people to warnings.pm for more information, as it
contains no more information about this variable.

Explain the scoping and also mention that the values are
considered internal.

11 years agoStop warning hint-checking from doing bad reads
Father Chrysostomos [Wed, 7 Mar 2012 22:12:08 +0000 (14:12 -0800)]
Stop warning hint-checking from doing bad reads

Setting ${^WARNING_BITS} should not allow perl to read past the end of
a mallocked buffer.  Previously the internal warning buffer would be
copied straight from ${^WARNING_BITS}, so a short value assigned to
that variable would cause the internal warning-checking code to read
past the end of the buffer (probably not in actual practice, due to
malloc’s rounding up, but theoretically).  Now, the buffer that is
allocated for storing the warning bits is padded with nulls to make it
long enough to prevent bad reads.

The stored length is still the same as what was assigned to
${^WARNING_BITS}, so that the value that comes out of it is the same
length (UTF8-ness aside)--not that it makes much difference in prac-
tice though, since only warnings.pm should care about this.

This came up as part of perl #111500.

11 years agoPorting/bisect.pl: Typos in diag msg
Father Chrysostomos [Fri, 2 Mar 2012 04:28:20 +0000 (20:28 -0800)]
Porting/bisect.pl: Typos in diag msg

11 years agofix warning in test.pl diagnostics output.
Craig A. Berry [Wed, 7 Mar 2012 13:12:00 +0000 (07:12 -0600)]
fix warning in test.pl diagnostics output.

2f137bbd018b assumed that $name is always defined, but it isn't
always, and when it's not the resulting undefined value warning
could corrupt test output and even make TODO tests trigger failure
with "unexpected output at test 0."

11 years agofix typo in src comment
David Mitchell [Tue, 6 Mar 2012 21:05:35 +0000 (21:05 +0000)]
fix typo in src comment

11 years agopods: Note future deprecation of unescaped "{"
Karl Williamson [Tue, 6 Mar 2012 16:07:46 +0000 (09:07 -0700)]
pods: Note future deprecation of unescaped "{"

11 years agoperllexwarn: Fix typos
Karl Williamson [Sun, 4 Mar 2012 19:33:03 +0000 (12:33 -0700)]
perllexwarn: Fix typos

11 years agobegin filling the 5.16.0 delta from 5.15.8
Ricardo Signes [Tue, 6 Mar 2012 02:25:31 +0000 (21:25 -0500)]
begin filling the 5.16.0 delta from 5.15.8

This is largely a copy and paste job.

11 years agoanother bus ride worth of collected delta editing
Ricardo Signes [Mon, 5 Mar 2012 23:56:52 +0000 (18:56 -0500)]
another bus ride worth of collected delta editing

11 years agoomnibus perl5160delta editing mess
Ricardo Signes [Tue, 21 Feb 2012 00:08:16 +0000 (19:08 -0500)]
omnibus perl5160delta editing mess

Omnibus not because it does all the editing, but because I did it
while riding the bus.

The preliminary editing is about 10% done.  Once things are better
pruned and in their place, I will go through to edit the prose.

11 years agofix slowdown in nested hash freeing
David Mitchell [Tue, 6 Mar 2012 14:26:27 +0000 (14:26 +0000)]
fix slowdown in nested hash freeing

Commit 104d7b69 made sv_clear free hashes iteratively rather than recursively;
however, my code didn't record the current hash index when freeing a
nested hash, which made the code go quadratic when freeing a large hash
with inner hashes, e.g.:

    my $r; $r->{$_} = { a => 1 } for 1..10_0000;

This was noticeable on such things as CPAN.pm being very slow to exit.

This commit fixes this by squirrelling away the old hash index in the
now-unused SvMAGIC field of the hash being freed.

11 years agoclarify that Apr 1 is not a hard RC0 date
Ricardo Signes [Mon, 5 Mar 2012 22:52:50 +0000 (17:52 -0500)]
clarify that Apr 1 is not a hard RC0 date

11 years agoreplace bogus non-ASCII dashlike char with -
Ricardo Signes [Mon, 5 Mar 2012 18:54:17 +0000 (13:54 -0500)]
replace bogus non-ASCII dashlike char with -

This was presumably brought in when I foolishly copied and pasted
the output from a version of groff that was over-eager to promote
"ugly" ASCII characters to "beautiful" non-ASCII ones.

11 years agofix documentation for exec's warning behavior
Eric Brine [Sat, 3 Mar 2012 02:47:39 +0000 (18:47 -0800)]
fix documentation for exec's warning behavior

This should self-consistently and correctly identify when exec
will warn.

[ commit message rewritten by rjbs ]

11 years agoGrammar and clarity fixes for exists() in pod/perlfunc.pod
Pau Amma\" (via RT) [Thu, 1 Mar 2012 18:48:23 +0000 (10:48 -0800)]
Grammar and clarity fixes for exists() in pod/perlfunc.pod

# New Ticket Created by  "Pau Amma"
# Please include the string:  [perl #111470]
# in the subject line of all future correspondence about this issue.
# <URL: https://rt.perl.org:443/rt3/Ticket/Display.html?id=111470 >

See subject for suitable commit message

11 years agoTODO Failing tests for warnings in utf8 subcategories
Aaron Crane [Sat, 25 Feb 2012 13:40:11 +0000 (13:40 +0000)]
TODO Failing tests for warnings in utf8 subcategories

11 years agoregcomp.sym: Fix out-dated description
Karl Williamson [Sat, 3 Mar 2012 15:45:39 +0000 (08:45 -0700)]
regcomp.sym: Fix out-dated description

As a result of commit fab2782b37b5570d7f8f8065fd7d18621117ed49
the description is no longer valid.  This node type is trieable.

11 years agorework how the trie logic handles the newer EXACT nodetypes
Yves Orton [Sun, 19 Feb 2012 20:32:05 +0000 (21:32 +0100)]
rework how the trie logic handles the newer EXACT nodetypes

This cleans up and simplifies and extends how the trie
logic interacts with the new node types. This change ultimately
makes the EXACTFU, EXACTFU_SS, EXACTFU_NO_TRIE (renamed to
EXACTFU_TRICKYFOLD) work properly with the trie engine regardless
of whether the string is utf8 or latin1.

This patch depends on the following:

    EXACT              => utf8 or "binary" text

    EXACTFU            => either pre-folded utf8, or latin1 that has to be folded as though it was utf8
    EXACTFU_SS         => special case of EXACTFU to handle \xDF/ss (affects latin1 treatment)
    EXACTFU_TRICKYFOLD => special case of EXACTFU to handle tricky non-latin1 fold rules

    EXACTF             => "old style fold logic" untriable nodetype
    EXACTFA            => (currently) untriable nodetype
    EXACTFL            => (currently) untriable nodetype

See the comments in regcomp.sym for these fold types.

This patch involves a number of distinct, but related parts. Starting
from compilation:

* Simplify how we detect a triable sequence given the new nodetypes,
  this also probably fixed some "bugs" in how we detected certain
  sequences, like /||foo|bar/.

* Simplify how we read EXACTFU nodes under utf8 by removing the now
  redundant folding logic (EXACTFU nodes under utf8 are prefolded).
  Also extend this logic to handle latin1 patterns properly (in
  conjunction with  other changes)

* Part of the problems associated with EXACTFU_SS and EXACTFU_TRICKYFOLD
  have to do with how the trie logic interacts with the minlen logic.
  This change handles both by pessimising the minlen when encounting
  these nodetypes. One observation is that the minlen logic is basically
  broken, and works only because it conflates bytes and codepoints in
  such a way that we more or less always get a value small enough that things work out
  anyway. Fixing that is properly is the job of another patch.

* Part of the problem of doing folding under unicode rules is that
  there are a lot of foldings possible, some with strange rules. This
  means that the bitmap logic does not work correctly in all cases,
  as we currently do not have any way to populate it properly.
  So this patch disables the bitmap entirely when folding is involved
  until that is fixed.

The end result of this is: we can TRIE/AHOCORASICK any sequence of
EXACT, or EXACTFU (ish) nodes, regardless of utf8 or not, but we disable
the bitmap when folding.

A note for follow up relating to this patch is that the way EXACTFU_XXX
nodes are currently dealt with we wont build the "maximal" trie because
of their presence, instead creating a "jumptrie" consisting of either a
leading EXACTFU node followed by a EXACTFU_XXX node, or vice versa. We
should eventually address that.

11 years agomake test.pl show test number and name in failure diagnostics output
Yves Orton [Sun, 19 Feb 2012 20:04:44 +0000 (21:04 +0100)]
make test.pl show test number and name in failure diagnostics output

The old output would show only the line number as diagnostics
but not the test number, nor the test name, which often contains
very useful information. This patch makes sure this is visible in
the diagnostics output of test failures.

11 years agoSync Module-CoreList version in Maintainers.pl with CPAN
Chris 'BinGOs' Williams [Sat, 3 Mar 2012 10:54:08 +0000 (10:54 +0000)]
Sync Module-CoreList version in Maintainers.pl with CPAN

11 years agoadd "get rt.perl permissions" to RMG
Ricardo Signes [Fri, 2 Mar 2012 20:02:57 +0000 (15:02 -0500)]
add "get rt.perl permissions" to RMG

11 years agoupdate release schedule for next releasers
Ricardo Signes [Wed, 29 Feb 2012 00:52:40 +0000 (19:52 -0500)]
update release schedule for next releasers

11 years agoAdded Dave Rolsky and Max Maischein to the KEEPERS OF THE PUMPKIN.
Abigail [Thu, 1 Mar 2012 23:34:06 +0000 (00:34 +0100)]
Added Dave Rolsky and Max Maischein to the KEEPERS OF THE PUMPKIN.

11 years agoattributes.pm: Consistent spaces after dots in pod
Father Chrysostomos [Thu, 1 Mar 2012 20:32:25 +0000 (12:32 -0800)]
attributes.pm: Consistent spaces after dots in pod

11 years agoattributes.pm: Add caveat about lvalue subs
Father Chrysostomos [Thu, 1 Mar 2012 20:29:26 +0000 (12:29 -0800)]
attributes.pm: Add caveat about lvalue subs

11 years ago[perl #107366] Allow attributes to set :lvalue on defined sub
Father Chrysostomos [Thu, 1 Mar 2012 20:24:38 +0000 (12:24 -0800)]
[perl #107366] Allow attributes to set :lvalue on defined sub

This provides enough rope for those who want to hang themselves, and
also for those who know how to use the rope without hanging them-
selves. :-)

Since this is not generally a reliable thing to be doing, a warning is emitted whenever :lvalue is turned on or off on a defined subroutine.

But attributes.pm will flip the flag anyway.  :lvalue in a sub declar-
ation still refuses to modify a defined Perl sub, as before.

11 years agoAdd ambs to Maintainers.pl for ExtUtils::CBuilder
David Golden [Thu, 1 Mar 2012 15:48:28 +0000 (10:48 -0500)]
Add ambs to Maintainers.pl for ExtUtils::CBuilder

11 years agoStop the indexer from processing private modules
Florian Ragwitz [Wed, 29 Feb 2012 13:33:05 +0000 (15:33 +0200)]
Stop the indexer from processing private modules

11 years agoperldata: Two spaces after dots, please
Father Chrysostomos [Wed, 29 Feb 2012 06:05:46 +0000 (22:05 -0800)]
perldata: Two spaces after dots, please

11 years agoExplain why program must close __DATA__ handle.
jkeenan [Mon, 27 Feb 2012 17:34:10 +0000 (12:34 -0500)]
Explain why program must close __DATA__ handle.

Adapted from suggestion by David Golden++.  For RT #37033.

11 years agoBump Pod::Html version.
Craig A. Berry [Sun, 26 Feb 2012 15:21:31 +0000 (09:21 -0600)]
Bump Pod::Html version.