perl.git
9 years agoRemove core @INC setting and chdir boilerplate from SelfLoader's tests.
Nicholas Clark [Sun, 11 Oct 2009 13:06:22 +0000 (14:06 +0100)] 
Remove core @INC setting and chdir boilerplate from SelfLoader's tests.

9 years agoRemove core @INC setting boilerplate from lib's test.
Nicholas Clark [Sun, 11 Oct 2009 13:05:13 +0000 (14:05 +0100)] 
Remove core @INC setting boilerplate from lib's test.

9 years agoCorrect the location of the DISTRIBUTION tarball for Parse::CPAN::Meta
Nicholas Clark [Sun, 11 Oct 2009 10:05:30 +0000 (11:05 +0100)] 
Correct the location of the DISTRIBUTION tarball for Parse::CPAN::Meta

Possibly we shouldn't store this, if it can be determined unambiguously from the
PAUSE index files.

9 years agoExclude CGI/t/fast.t from the core, as it relies on FCGI, which is not in core.
Nicholas Clark [Sun, 11 Oct 2009 09:19:03 +0000 (10:19 +0100)] 
Exclude CGI/t/fast.t from the core, as it relies on FCGI, which is not in core.

Whilst the test is designed to skip if FCGI is not present, that logic is now
broken, and even if it were fixed, the as-implemented skip count is now wrong.
We're never going to run this test, as core tests run with just the core's
libraries in @INC, so I see no reason to ship it.

9 years agoCorrect the name of subtest.t, added in 2c4d5b9bac4cc261
Nicholas Clark [Sun, 11 Oct 2009 07:58:13 +0000 (08:58 +0100)] 
Correct the name of subtest.t, added in 2c4d5b9bac4cc261

There isn't actually an "all files in MANIFEST are present" test in t/porting.
Right now we rely on ./Configure on *nix doing it, which doesn't work if you
aren't on *nix, or are, but don't re-run Configure. Maybe we should add one.

9 years agoCorrect the listed names of the two files uudecoded in commit 7b742a041dc3ba8c
Nicholas Clark [Sun, 11 Oct 2009 07:41:53 +0000 (08:41 +0100)] 
Correct the listed names of the two files uudecoded in commit 7b742a041dc3ba8c

It removed the '.uu' from the end of the name, but didn't change the preceding
'_' to '.'. They'd been changed from '.' to avoid having multiple '.'s in the
name, as some VMS filesystems don't like multiple '.'s. It's not easy being
green.

9 years agoDarwin's groups can have spaces in them
Josh ben Jore [Sun, 11 Oct 2009 05:36:52 +0000 (22:36 -0700)] 
Darwin's groups can have spaces in them

9 years agoFix Test-Simple's new 00compile.t test in core
Steve Hay [Sun, 11 Oct 2009 02:11:15 +0000 (03:11 +0100)] 
Fix Test-Simple's new 00compile.t test in core

It was failing even with its MANIFEST file now in place because that
MANIFEST listed an IO::Scalar file that is EXCLUDED from core.

9 years agoAdd Test-Simple's MANIFEST file
Steve Hay [Sat, 10 Oct 2009 13:46:56 +0000 (14:46 +0100)] 
Add Test-Simple's MANIFEST file

It is needed by the new 00compile.t test script. We don't normally include
CPAN distributions' MANIFEST files in core, but there is an existing
precedent for this in ExtUtils-MakeMaker.

9 years agoRemove test boilerpates from ExtUtils-CBuilder tests
Steve Hay [Sat, 10 Oct 2009 13:40:26 +0000 (14:40 +0100)] 
Remove test boilerpates from ExtUtils-CBuilder tests

I was obviously wrong to restore in 1051afdbc0a9e60b8f65ed22fefafd8ecf771171
what Nicholas had removed in 4d984b75f1859fc27f556ee42f31a04df42a2004 because
the tests don't work in core with the boilerplates in place.
Don't undo that which has been done by Nicholas!

9 years agoCorrect MANIFEST, broken by Test-Simple upgrade
Steve Hay [Sat, 10 Oct 2009 13:38:16 +0000 (14:38 +0100)] 
Correct MANIFEST, broken by Test-Simple upgrade

9 years agoUpgrade to Test-Simple-0.94
Steve Hay [Sat, 10 Oct 2009 12:11:04 +0000 (13:11 +0100)] 
Upgrade to Test-Simple-0.94

9 years agoUpgrade to Storable-2.21
Steve Hay [Sat, 10 Oct 2009 11:57:52 +0000 (12:57 +0100)] 
Upgrade to Storable-2.21

Retained local changes to *.t (mostly test boilerplates) since blead
is canonical for this distribution

9 years agoUpgrade to Pod-Simple-3.08
Steve Hay [Sat, 10 Oct 2009 11:47:30 +0000 (12:47 +0100)] 
Upgrade to Pod-Simple-3.08

9 years agoSync Pod-Simple test scripts with CPAN versions
Steve Hay [Sat, 10 Oct 2009 11:43:02 +0000 (12:43 +0100)] 
Sync Pod-Simple test scripts with CPAN versions

Retained local changes in:
corpus.t, reinit.t, search20.t, search22.t, search50.t
because they look more significant

9 years agoUpgrade to Parse-CPAN-Meta-1.40
Steve Hay [Sat, 10 Oct 2009 11:31:12 +0000 (12:31 +0100)] 
Upgrade to Parse-CPAN-Meta-1.40

9 years agoUpgrade to ExtUtils-Manifest-1.57
Steve Hay [Sat, 10 Oct 2009 11:24:52 +0000 (12:24 +0100)] 
Upgrade to ExtUtils-Manifest-1.57

9 years agoUpgrade to ExtUtils-CBuilder-0.260301
Steve Hay [Sat, 10 Oct 2009 11:22:44 +0000 (12:22 +0100)] 
Upgrade to ExtUtils-CBuilder-0.260301

9 years agoSync ExtUtils-CBuilder test scripts with CPAN versions
Steve Hay [Sat, 10 Oct 2009 11:20:43 +0000 (12:20 +0100)] 
Sync ExtUtils-CBuilder test scripts with CPAN versions

This restores the test boilerplates that were removed when ExtUtils-CBuilder
was moved from lib/ to ext/ (4d984b75f1859fc27f556ee42f31a04df42a2004)

9 years agoUpgrade to CGI.pm-3.48
Steve Hay [Sat, 10 Oct 2009 11:05:09 +0000 (12:05 +0100)] 
Upgrade to CGI.pm-3.48

9 years agoReplace UU encoded files in CGI with their binary originals
Steve Hay [Sat, 10 Oct 2009 10:55:42 +0000 (11:55 +0100)] 
Replace UU encoded files in CGI with their binary originals

There is no longer any need to avoid having binary files in the perl
distribution, and these files are not UU encoded in CGI on CPAN.

9 years agoMove CGI's Changes file to its proper place
Steve Hay [Sat, 10 Oct 2009 10:50:41 +0000 (11:50 +0100)] 
Move CGI's Changes file to its proper place

9 years agoApplied a patch from David Fifield to fix an error message in perlipc.pod
Jesse Vincent [Sat, 10 Oct 2009 20:48:38 +0000 (16:48 -0400)] 
Applied a patch from David Fifield to fix an error message in perlipc.pod

Subject: Comment doesn't match code in perlipc.pod.
Date: Thu, 30 Jul 2009 07:31:48 -0600
To: perlbug@perl.org
From: David Fifield <david@bamsoftware.com>

9 years agoAdded a TODO test for RT#69332 - PerlIO returns undef instead of 0 on EOL
Jesse Vincent [Sat, 10 Oct 2009 20:15:35 +0000 (16:15 -0400)] 
Added a TODO test for RT#69332 - PerlIO returns undef instead of 0 on EOL

9 years ago[perl #69686] Fix DragonFly thread lib selection
Simon 'corecode' Schubert [Sat, 10 Oct 2009 16:55:26 +0000 (17:55 +0100)] 
[perl #69686] Fix DragonFly thread lib selection

  Hey,

  attached patch fixes the thread library detection in DragonFly.  All
  versions of DragonFly can be used threaded with -pthread.  libc_r must
  not be used directly.

  Please let me know if you have any questions.

  Thanks,
     simon

9 years agoMake _quote_args() return a result, rather than passing it a scalar reference.
Nicholas Clark [Fri, 9 Oct 2009 20:12:16 +0000 (22:12 +0200)] 
Make _quote_args() return a result, rather than passing it a scalar reference.

This was the only use of scalar references in test.pl, and the only use of \
to create a reference to a scalar. We are now more robust in the face of parser
or runtime bugs.

9 years agoAvoid using ++, op= and anon hash constructors in the testing code.
Nicholas Clark [Fri, 9 Oct 2009 20:03:17 +0000 (22:03 +0200)] 
Avoid using ++, op= and anon hash constructors in the testing code.

{} could be misparsed, ++ has a lot of internal implementation "magic" that we
don't need, but don't want to trip us up if it isn't working, and op= isn't
necessary when we already rely on the more general $a = $b op $c working.

9 years agoRefactoring tests to use test.pl is a TODO.
Nicholas Clark [Fri, 9 Oct 2009 19:21:35 +0000 (21:21 +0200)] 
Refactoring tests to use test.pl is a TODO.

9 years agoAdd a test for the bootstrap rules for tests in t/
Nicholas Clark [Fri, 9 Oct 2009 18:24:56 +0000 (20:24 +0200)] 
Add a test for the bootstrap rules for tests in t/

9 years agoDon't use require in comp/fold.t, as require isn't tested yet.
Nicholas Clark [Fri, 9 Oct 2009 17:18:52 +0000 (19:18 +0200)] 
Don't use require in comp/fold.t, as require isn't tested yet.

Emit TAP directly.

9 years agoGive names to all tests in t/comp/fold.t
Nicholas Clark [Fri, 9 Oct 2009 17:16:35 +0000 (19:16 +0200)] 
Give names to all tests in t/comp/fold.t

9 years agoMove the require './test.pl' to the end of t/comp/hints.t
Nicholas Clark [Fri, 9 Oct 2009 16:57:12 +0000 (18:57 +0200)] 
Move the require './test.pl' to the end of t/comp/hints.t

Ideally tests in t/comp wouldn't use require, as require isn't tested yet, but
this test really needs runperl(), and really wants to live in t/comp/hints.t,
so place it at the end, so that any catestrophic failure only fails the last
test. We don't use any other functionality of t/test.pl

This test uses hard-coded test numbers, but I'm not convinced that it would be
correct to re-write it to use an automatically incrementing counter, as that
wouldn't fail in an obvious fashion if some compile-time blocks ran out of
order. What we have *will* fail in an informative fashion if compile time
blocks do not run correctly.

9 years agoDon't use require in comp/multiline.t, as require isn't tested yet.
Nicholas Clark [Fri, 9 Oct 2009 16:35:59 +0000 (18:35 +0200)] 
Don't use require in comp/multiline.t, as require isn't tested yet.

Emit TAP directly.

9 years agoDon't use require in comp/opsubs.t, as require isn't tested yet.
Nicholas Clark [Fri, 9 Oct 2009 14:07:22 +0000 (16:07 +0200)] 
Don't use require in comp/opsubs.t, as require isn't tested yet.

Emit TAP directly.

9 years agoDon't use require in comp/our.t, as require isn't tested yet.
Nicholas Clark [Fri, 9 Oct 2009 12:17:29 +0000 (14:17 +0200)] 
Don't use require in comp/our.t, as require isn't tested yet.

Emit TAP directly.

9 years agoDon't use require in comp/parser.t, as require isn't tested yet.
Nicholas Clark [Fri, 9 Oct 2009 12:13:55 +0000 (14:13 +0200)] 
Don't use require in comp/parser.t, as require isn't tested yet.

Emit TAP directly.

9 years agoDon't use require in comp/retainedlines.t, as require isn't tested yet.
Nicholas Clark [Fri, 9 Oct 2009 12:06:07 +0000 (14:06 +0200)] 
Don't use require in comp/retainedlines.t, as require isn't tested yet.

Emit TAP directly.

9 years agoAvoid relying on prototypes working for tests to pass. They aren't tested yet.
Nicholas Clark [Fri, 9 Oct 2009 11:54:30 +0000 (13:54 +0200)] 
Avoid relying on prototypes working for tests to pass. They aren't tested yet.

9 years agoDon't use require in comp/uproto.t, as require isn't tested yet.
Nicholas Clark [Fri, 9 Oct 2009 11:48:43 +0000 (13:48 +0200)] 
Don't use require in comp/uproto.t, as require isn't tested yet.

Emit TAP directly.

9 years agoIn opt(), use is(..., undef) rather than ok(!defined ...)
Nicholas Clark [Fri, 9 Oct 2009 11:44:10 +0000 (13:44 +0200)] 
In opt(), use is(..., undef) rather than ok(!defined ...)

9 years agoMove the test for require 5.11.0 not loading strictures to require.t from use.t
Nicholas Clark [Fri, 9 Oct 2009 10:54:29 +0000 (12:54 +0200)] 
Move the test for require 5.11.0 not loading strictures to require.t from use.t

9 years agoDon't use require in comp/utf.t, as require isn't tested yet.
Nicholas Clark [Fri, 9 Oct 2009 10:49:05 +0000 (12:49 +0200)] 
Don't use require in comp/utf.t, as require isn't tested yet.

So emit TAP directly, rather than utilising test.pl. Like test.pl, avoid using
++, as it has complexity, and that complexity isn't tested yet.

9 years agoRecord that Ask and Steve Hay have volunteered to be releng victims
Jesse Vincent [Fri, 9 Oct 2009 16:38:48 +0000 (12:38 -0400)] 
Record that Ask and Steve Hay have volunteered to be releng victims

9 years agoAdd missing IO-Compress test file
Steve Hay [Fri, 9 Oct 2009 11:44:11 +0000 (12:44 +0100)] 
Add missing IO-Compress test file

The original IO-Compress patch:

http://www.xray.mpe.mpg.de/mailing-lists/perl5-porters/2009-03/msg00293.html

omitted the file (but strangely included the entry "t/cz-03zlib-v1.t*" [sic]
in the MANIFEST file that it mistakenly included).

Also note in Maintainers.pl that IO-Compress is now in cpan/ not dist/,
and mark UPSTREAM as 'cpan'.

9 years agoUse require.t's bytes_to_utf() in place of PerlIO layers in utf.t
Nicholas Clark [Fri, 9 Oct 2009 09:03:41 +0000 (11:03 +0200)] 
Use require.t's bytes_to_utf() in place of PerlIO layers in utf.t

This avoids it needing to load Config, and means it can by run with miniperl,
and PerlIO-disabled perls.

9 years agoPrint the encoding name as part of the test, rather than on a separate line.
Nicholas Clark [Fri, 9 Oct 2009 08:52:43 +0000 (10:52 +0200)] 
Print the encoding name as part of the test, rather than on a separate line.

9 years agoRefactor bytes_to_utf16() into a more generic routine that also handles UTF-8
Nicholas Clark [Fri, 9 Oct 2009 08:48:57 +0000 (10:48 +0200)] 
Refactor bytes_to_utf16() into a more generic routine that also handles UTF-8

Remove the direct code for testing UTF-8, calling bytes_to_utf() from a loop for
all 3 tested encodings.

9 years agoReplace longhand invocations of test() with 3 nested loops.
Nicholas Clark [Fri, 9 Oct 2009 08:18:37 +0000 (10:18 +0200)] 
Replace longhand invocations of test() with 3 nested loops.

9 years agoTest utf8 with BOMs, like we already test utf16be and utf16le.
Nicholas Clark [Fri, 9 Oct 2009 08:16:15 +0000 (10:16 +0200)] 
Test utf8 with BOMs, like we already test utf16be and utf16le.

9 years agoMove tests for use for "new style version numbers" to use.t from require.t
Nicholas Clark [Thu, 8 Oct 2009 19:58:17 +0000 (21:58 +0200)] 
Move tests for use for "new style version numbers" to use.t from require.t

9 years agoSlightly clean up the release manager guide by specifying an "End here for SNAPSHOT...
Jesse Vincent [Fri, 9 Oct 2009 04:13:06 +0000 (00:13 -0400)] 
Slightly clean up the release manager guide by specifying an "End here for SNAPSHOT" per DAPM

9 years agoDocument that blead is released by a member of the sucker-of-the-month club.
Jesse Vincent [Fri, 9 Oct 2009 04:03:37 +0000 (00:03 -0400)] 
Document that blead is released by a member of the sucker-of-the-month club.

9 years agoUpdate the release manager guide to clean up the tagging instructions
Jesse Vincent [Fri, 9 Oct 2009 03:57:46 +0000 (23:57 -0400)] 
Update the release manager guide to clean up the tagging instructions

dapm++ pointed out that I'd duplicated the "create a tag" instructions
while doing 5.11.0.  Because of dmq's new tag-based releng
infrastructure, the tag step needed to move earlier.

9 years agoMakeMaker testing in core runs from one level deeper than before.
Craig A. Berry [Thu, 8 Oct 2009 23:49:04 +0000 (18:49 -0500)] 
MakeMaker testing in core runs from one level deeper than before.

So when we set up a dummy root for the tests on VMS, we need to
make it two levels above current rather than one in order to
prevent a lot of test failures that say "PERL_CORE is set but
I can't find your PERL_SRC!"

9 years agoMove &do_require to the top of require.t, so that @a is the first lexical.
Nicholas Clark [Thu, 8 Oct 2009 19:05:34 +0000 (21:05 +0200)] 
Move &do_require to the top of require.t, so that @a is the first lexical.

The relevant line, with comment, is:

    my @a; # magic guard for scope violations (must be first lexical in file)

9 years agoMove the test for RT #49472 to op/attrs.t from comp/require.t
Nicholas Clark [Thu, 8 Oct 2009 18:30:08 +0000 (20:30 +0200)] 
Move the test for RT #49472 to op/attrs.t from comp/require.t

9 years agoDisable strictures while setting $VERSION in a "package" statement
Rafael Garcia-Suarez [Thu, 8 Oct 2009 18:11:41 +0000 (20:11 +0200)] 
Disable strictures while setting $VERSION in a "package" statement

9 years agoMerge branch 'feature/package-name-version' into blead
Rafael Garcia-Suarez [Thu, 8 Oct 2009 13:13:18 +0000 (15:13 +0200)] 
Merge branch 'feature/package-name-version' into blead

9 years agoDocumentation typo
Rafael Garcia-Suarez [Thu, 8 Oct 2009 13:12:11 +0000 (15:12 +0200)] 
Documentation typo

9 years agoSimplify code that sets $VERSION on the "package" line
Rafael Garcia-Suarez [Thu, 8 Oct 2009 12:56:56 +0000 (14:56 +0200)] 
Simplify code that sets $VERSION on the "package" line

9 years agoAvoid using bytes in require.t, as pack "C0U" does what we need.
Nicholas Clark [Thu, 8 Oct 2009 09:10:30 +0000 (11:10 +0200)] 
Avoid using bytes in require.t, as pack "C0U" does what we need.

9 years agoAvoid using the strict pragma in retainedlines.t - use may not work yet.
Nicholas Clark [Thu, 8 Oct 2009 08:51:36 +0000 (10:51 +0200)] 
Avoid using the strict pragma in retainedlines.t - use may not work yet.

9 years agoAvoid using the strict pragma in colon.t - use may not work yet.
Nicholas Clark [Thu, 8 Oct 2009 08:47:00 +0000 (10:47 +0200)] 
Avoid using the strict pragma in colon.t - use may not work yet.

9 years agoAvoid using pragmata in fold.t - use may not work yet.
Nicholas Clark [Thu, 8 Oct 2009 08:26:01 +0000 (10:26 +0200)] 
Avoid using pragmata in fold.t - use may not work yet.

9 years agoAvoid using pragmata in opsubs.t - use may not work yet.
Nicholas Clark [Thu, 8 Oct 2009 08:21:42 +0000 (10:21 +0200)] 
Avoid using pragmata in opsubs.t - use may not work yet.

9 years agoAvoid using the warnings pragma in proto.t - use may not work yet.
Nicholas Clark [Thu, 8 Oct 2009 08:18:31 +0000 (10:18 +0200)] 
Avoid using the warnings pragma in proto.t - use may not work yet.

9 years agoRestore MAD handling of package statements
Rafael Garcia-Suarez [Thu, 8 Oct 2009 12:31:27 +0000 (14:31 +0200)] 
Restore MAD handling of package statements

Since the version seems unused by MAD in "use", do the same
for "package"...

9 years agoLet tell() report warnings on unopened filehandles
Rafael Garcia-Suarez [Thu, 8 Oct 2009 10:13:38 +0000 (12:13 +0200)] 
Let tell() report warnings on unopened filehandles

(fixes a bug introduced by previous patch)

9 years agoMake tell() fail properly if called without an argument and when no previous file...
Rafael Garcia-Suarez [Thu, 8 Oct 2009 09:44:21 +0000 (11:44 +0200)] 
Make tell() fail properly if called without an argument and when no previous file was read

This makes tell() return -1, and sets errno to EBADF, thus
restoring the 5.8.x behaviour

9 years agoProperly return a syntax error instead of segfaulting if each/keys/values is used...
Rafael Garcia-Suarez [Thu, 8 Oct 2009 09:33:06 +0000 (11:33 +0200)] 
Properly return a syntax error instead of segfaulting if each/keys/values is used without an argument

9 years agoUpdated Object-Accessor to CPAN version 0.36
Chris Williams [Thu, 8 Oct 2009 08:52:51 +0000 (09:52 +0100)] 
Updated Object-Accessor to CPAN version 0.36

  Changes for 0.36    Thu Oct  8 09:42:36 BST  2009
  =================================================
  *   Apply patch to fix ABSTRACT in core, RT #49563
      from Jerry Hedden.

9 years agoMove script.t from t/comp to t/run, as it's a test for invoking perl.
Nicholas Clark [Thu, 8 Oct 2009 06:44:05 +0000 (08:44 +0200)] 
Move script.t from t/comp to t/run, as it's a test for invoking perl.

9 years agoCPAN::YACSmoke has been deprecated and minismokebox is a much more robust CPAN testin...
Chris Williams [Wed, 7 Oct 2009 21:15:53 +0000 (22:15 +0100)] 
CPAN::YACSmoke has been deprecated and minismokebox is a much more robust CPAN testing framework. Updated the links accordingly.

9 years agoAdd Porting/release_schedule.pod to MANIFEST.
Nicholas Clark [Wed, 7 Oct 2009 18:16:11 +0000 (19:16 +0100)] 
Add Porting/release_schedule.pod to MANIFEST.

9 years agoFix Pod errors spotted by podcheck.t
Nicholas Clark [Wed, 7 Oct 2009 18:15:34 +0000 (19:15 +0100)] 
Fix Pod errors spotted by podcheck.t

9 years agoMakefile and makefile only exist on case-sensitive file systems, so allow them.
Nicholas Clark [Wed, 7 Oct 2009 19:19:21 +0000 (20:19 +0100)] 
Makefile and makefile only exist on case-sensitive file systems, so allow them.

9 years agoRemove BEGIN{}, use '..', part deux
Max Maischein [Tue, 6 Oct 2009 16:10:42 +0000 (18:10 +0200)] 
Remove BEGIN{}, use '..', part deux

9 years agoAdd tests for syntax errors in "package Name VERSION"
Rafael Garcia-Suarez [Tue, 6 Oct 2009 21:01:35 +0000 (23:01 +0200)] 
Add tests for syntax errors in "package Name VERSION"

9 years agoExpand on cookbook todo
David Golden [Tue, 6 Oct 2009 20:02:53 +0000 (16:02 -0400)] 
Expand on cookbook todo

9 years agoAdd perltodo: write an XS cookbook
David Golden [Tue, 6 Oct 2009 18:13:31 +0000 (14:13 -0400)] 
Add perltodo: write an XS cookbook

9 years agoPorting/checkAUTHORS.pl now runs clean
Jesse Vincent [Tue, 6 Oct 2009 17:33:32 +0000 (13:33 -0400)] 
Porting/checkAUTHORS.pl now runs clean

9 years agoFurther clean up checkAUTHORS.pl output (fixing encoded @ signs)
Jesse Vincent [Tue, 6 Oct 2009 17:06:12 +0000 (13:06 -0400)] 
Further clean up checkAUTHORS.pl output (fixing encoded @ signs)

9 years agoAdd 'package NAME VERSION' syntax
David Golden [Tue, 6 Oct 2009 10:48:48 +0000 (06:48 -0400)] 
Add 'package NAME VERSION' syntax

This patch adds support for setting the $VERSION of a namespace
when the namespace is declared with 'package'.  It eliminates the
need for 'our $VERSION = ...' and similar constructs.  E.g.

  package Foo::Bar 1.23;
  # $Foo::Bar::VERSION == 1.23

There are several advantages to this:

  * VERSION is parsed in *exactly* the same way as 'use NAME VERSION'

  * $VERSION is set at compile time

  * Eliminates '$VERSION = ...' and 'eval $VERSION' clutter

  * As it requires VERSION to be a numeric literal or v-string
    literal, it can be statically parsed by toolchain modules
    without 'eval' the way MM->parse_version does for '$VERSION = ...'

  * Alpha versions with underscores do not need to be quoted; static
    parsing will preserve the underscore, but during compilation, Perl
    will remove underscores as it does for all numeric literals

During development of this, there was discussion on #corehackers and
elsewhere that this should also allow other metadata to be set such as
"status" (stable/alpha) or "author/authority".  On reflection, those
metadata are not very well defined yet and likely should never be
encoded into Perl core parsing so they can be freely changed in the
future.  (They could perhaps be achieved via a comment on the same line
as 'package NAME VERSION'.)

Version numbers, however, already have a very specific definition and
use defined in the core through 'use NAME VERSION'.  This patch merely
provides appropriate symmetry for setting $VERSION with the exact same
parsing and semantics as 'use'.

It does not break old code with only 'package NAME', but code that
uses 'package NAME VERSION' will need to be restricted to perl 5.11.X.
This is analogous to the change to open() from two-args to three-args.
Users requiring the latest Perl will benefit, and perhaps N years from
now it will become standard practice when Perl 5.12 is targeted the
way that 5.6 is today.

The patch does not prevent 'package NAME VERSION' from being used
multiple times for the same package with different version numbers, but
nothing prevents $VERSION from being modified arbitrarily at runtime,
either, so I see no urgen reason to add limitations or warnings so
long as Perl uses a global $VERSION variable for package version
numbers.

I am posting this patch to the p5p list for discussion and review.  If
there seems to be general assent (or lack of dissent), I will go ahead
and commit the patch to blead.

9 years agosort @files once, outside the loop.
Nicholas Clark [Tue, 6 Oct 2009 14:58:31 +0000 (16:58 +0200)] 
sort @files once, outside the loop.

9 years agoStandardise t/lib/*.t on ./test.pl, and remove BEGIN boilerplate.
Nicholas Clark [Tue, 6 Oct 2009 14:26:32 +0000 (16:26 +0200)] 
Standardise t/lib/*.t on ./test.pl, and remove BEGIN boilerplate.

9 years agoRemove commented out reference to Test::More
Nicholas Clark [Tue, 6 Oct 2009 14:26:18 +0000 (16:26 +0200)] 
Remove commented out reference to Test::More

9 years agoStandarise t/porting/*.t on ./test.pl, and remove BEGIN boilerplate.
Nicholas Clark [Tue, 6 Oct 2009 14:09:00 +0000 (16:09 +0200)] 
Standarise t/porting/*.t on ./test.pl, and remove BEGIN boilerplate.

9 years agoReplace a hardcoded temporary file name with test.pl's tempfile().
Nicholas Clark [Tue, 6 Oct 2009 12:43:55 +0000 (14:43 +0200)] 
Replace a hardcoded temporary file name with test.pl's tempfile().

9 years agoStandardise t/uni/*.t on ./test.pl, and remove PERL_CORE boilerplate.
Nicholas Clark [Tue, 6 Oct 2009 12:05:20 +0000 (14:05 +0200)] 
Standardise t/uni/*.t on ./test.pl, and remove PERL_CORE boilerplate.

TestInit sets up the directory for us.

Also remove unncessary C<use Encode>s.

9 years agoDon't attempt UTF-8 cache assertion for SVs with invalid SvPVX() (eg overloaded)
Nicholas Clark [Tue, 6 Oct 2009 07:24:08 +0000 (09:24 +0200)] 
Don't attempt UTF-8 cache assertion for SVs with invalid SvPVX() (eg overloaded)

Fixes RT 69422.

However, I'm not actually sure whether we should even be caching the results of
UTF-8 operations on overloading, given that nothing stops overloading returning
a different value every time it's called.

9 years agomore pod cleanups based on the new podcheck.t
Jesse Vincent [Tue, 6 Oct 2009 03:56:43 +0000 (23:56 -0400)] 
more pod cleanups based on the new podcheck.t

9 years agoA number of pod fixes found by podcheck.t
Jesse Vincent [Tue, 6 Oct 2009 03:42:38 +0000 (23:42 -0400)] 
A number of pod fixes found by podcheck.t

9 years agopodcheck.t now uses MANIFEST to choose which files it should check
Jesse Vincent [Tue, 6 Oct 2009 03:56:56 +0000 (23:56 -0400)] 
podcheck.t now uses MANIFEST to choose which files it should check

9 years agoWe don't actually want to check .PL files
Jesse Vincent [Tue, 6 Oct 2009 01:42:14 +0000 (21:42 -0400)] 
We don't actually want to check .PL files

9 years agoCheck POD in lib/, ext/ and pod/
Max Maischein [Mon, 5 Oct 2009 20:49:09 +0000 (22:49 +0200)] 
Check POD in lib/, ext/ and pod/

9 years agoNote the one mistake in perl.git's history, and the appropriate graft to remove it
Alex Vandiver [Mon, 5 Oct 2009 23:45:58 +0000 (00:45 +0100)] 
Note the one mistake in perl.git's history, and the appropriate graft to remove it

Message-Id: <1254775127-18136-1-git-send-email-alex@chmrr.net>

9 years agoAdding ikegami to AUTHORS
Eric Brine [Wed, 23 Sep 2009 23:20:52 +0000 (19:20 -0400)] 
Adding ikegami to AUTHORS

Message-ID: <f86994700910051044p6ef5e09dpf0f058714c2d1e6@mail.gmail.com>

9 years agoExplain using git send-email for patches
David Golden [Mon, 5 Oct 2009 21:46:36 +0000 (17:46 -0400)] 
Explain using git send-email for patches

9 years agoUpdate ExtUtils::ParseXS to 2.21
David Golden [Mon, 5 Oct 2009 15:31:12 +0000 (11:31 -0400)] 
Update ExtUtils::ParseXS to 2.21

2.21 - Mon Oct  5 11:17:53 EDT 2009

 Bug fixes:
 - Adds full path in INCLUDE #line directives (RT#50198) [patch by "spb"]

 Other:
 - Updated copyright and maintainer list

2.20_07 - Sat Oct  3 11:26:55 EDT 2009

 Bug fixes:
 - Use "char* file" for perl < 5.9, not "char[] file"; fixes mod_perl
   breakage due to prior attempts to fix RT#48104 [David Golden]

2.20_06 - Fri Oct  2 23:45:45 EDT 2009

 Bug fixes:
 - Added t/typemap to fix broken test on perl 5.6.2 [David Golden]
 - More prototype fixes for older perls [Goro Fuji]
 - Avoid "const char *" in test files as it breaks on 5.6.2 [Goro Fuji]

 Other:
 - Merged changes from 2.2004 maintenance branch (see 2.200401 to 2.200403)
   [David Golden]

2.20_05 - Sat Aug 22 21:46:56 EDT 2009

 Bug fixes:
 - Fix prototype related bugs [Goro Fuji]
 - Fix the SCOPE keyword [Goro Fuji]

9 years agoIn Perl_moreswitches(), merge 2 string constants in the code implementing -v.
Nicholas Clark [Mon, 5 Oct 2009 19:04:13 +0000 (21:04 +0200)] 
In Perl_moreswitches(), merge 2 string constants in the code implementing -v.