Father Chrysostomos [Mon, 4 Apr 2011 12:41:45 +0000 (05:41 -0700)]
perldelta: File::Basename’s version
Father Chrysostomos [Mon, 4 Apr 2011 12:40:33 +0000 (05:40 -0700)]
Revert "Remove MacOS classic support from File::Basename."
This reverts commit
e713b73750eb9e684a6d14dcca1a22d55ce2226d.
See [perl #87704].
Craig A. Berry [Thu, 31 Mar 2011 22:09:31 +0000 (17:09 -0500)]
Make ExtUtils::CBuilder reset ccflags on compile for VMS.
On VMS only, the /DEFINE and /INCLUDE qualifiers are parsed off the
local copy of $Config{ccflags} and consumed in the process. This is
necessary because you're only allowed one of each of these clauses
in the compile command, so to add whatever has been requested for a
specific compile, we have to combine them with whatever Perl was
built with.
But since they are consumed, multiple compiles on the same EU::CB
object were only using the correct flags for the first one. Even
calling the have_compiler() check before compile() would make the
latter miss the defines and includes that were used to build Perl.
The solution is add a platform override that resets the local copy
of $Config{ccflags} from its original in %Config every time a
compiler operation is initiated.
Fixes smoke failures in ExtUtils::ParseXS.
Father Chrysostomos [Mon, 4 Apr 2011 05:32:16 +0000 (22:32 -0700)]
[perl #87664] Don’t autovivify stashes when anonymising CVs
This commit stops CV anonymisation from autovivifying stashes to point
to (unless the stash is %__ANON__::).
If a stash has been deleted from its original position in the symbol
table, then its HvNAME will no longer indicate where to find it.
S_anonymise_cv_maybe in sv.c was using the HvNAME to look up (and
autovivify) the *__ANON__ glob in the stash, without taking into
account that it might not actually be looking in the right spot.
So now, after checking that the stash still has a name (HvNAME), it
uses the HvENAME to find it. If the HvENAME is null, which indicates
that the stash has been detached altogether, then %__ANON__:: is used,
as happens when HvNAME is null.
This solves a Class::Monadic failure introduced by commit
2d0d1eccfc
([perl #79208] %stash:: = () anonymises CVs), which was included
in 5.13.7.
Basically, it can be reduced to this:
Father Chrysostomos [Tue, 29 Mar 2011 15:33:30 +0000 (08:33 -0700)]
[perl #87064] eval no longer shares filters
Before this commit:
commit
f07ec6dd59215a56bc1159449a9631be7a02a94d
Author: Zefram <zefram@fysh.org>
Date: Wed Oct 13 19:05:19 2010 +0100
remove filter inheritance option from lex_start
The only uses of lex_start that had the new_filter parameter false,
to make the new lexer context share source filters with the previous
lexer context, were uses with rsfp null, which therefore never invoked
source filters. Inheriting source filters from a logically unrelated
file seems like a silly idea anyway.
string evals could inherit the same source filter space as the cur-
rently compiling code. Despite what the quoted commit message says,
sharing source filters allows filters to be inherited in both direc-
tions: A source filter created when the eval is being compiled also
applies to the file with which it is sharing its space.
There are at least 20 CPAN distributions relying on this behaviour
(or, rather, what could be considered a Test::More bug). So this com-
mit restores the source-filter-sharing capability. It does not change
the current API or make public the API for sharing source filters, as
this is supposed to be a temporary stop-gap measure for 5.14.
Florian Ragwitz [Sat, 2 Apr 2011 13:32:30 +0000 (15:32 +0200)]
Make Changes refer to the upcoming release for the full changelog
Jesse Vincent [Sat, 2 Apr 2011 11:54:59 +0000 (19:54 +0800)]
Add a note to the RMG about the fact that you should run tests after
bumping the perl version
Jesse Vincent [Sat, 2 Apr 2011 11:53:25 +0000 (19:53 +0800)]
Manually change the sha that uconfig.h was generated from. Something in
the auto-regen magic isn't doing the right thing for uperl. We should
either be skipping the regen check on it or we should be automating it.
t/porting/regen.t failed without this change.
We should also consider making bump-perl-version NOT operate on any
generated files and mandate a rerun after bumping versions
Jesse Vincent [Sat, 2 Apr 2011 11:09:46 +0000 (19:09 +0800)]
Added a 5.14 feature bundle (identical to the 5.13 feature bundle)
Jesse Vincent [Sat, 2 Apr 2011 10:58:17 +0000 (18:58 +0800)]
First provisional bump to 5.14.0-RC0
Jesse Vincent [Sat, 2 Apr 2011 10:44:56 +0000 (18:44 +0800)]
We shouldn't be changing perl version numbers in blead-isn't-upstream
CPAN modules
Father Chrysostomos [Sat, 2 Apr 2011 05:34:39 +0000 (22:34 -0700)]
Remove a semi-erroneous misleading perldelta entry
I misread a commit message. I should have tried it out. :-)
Karl Williamson [Sat, 2 Apr 2011 04:15:04 +0000 (22:15 -0600)]
perlrequick: /o no longer needed
This is wrong, and doesn't belong in an introductory document
Karl Williamson [Sat, 2 Apr 2011 04:05:28 +0000 (22:05 -0600)]
perlrequick: Capitalize Perl when used as a noun
This is for consistency with other pods
Karl Williamson [Sat, 2 Apr 2011 04:01:52 +0000 (22:01 -0600)]
perlreref: Fix column in table
Karl Williamson [Sat, 2 Apr 2011 04:01:25 +0000 (22:01 -0600)]
perlreref: Update for 5.14 changes
Father Chrysostomos [Fri, 1 Apr 2011 13:17:52 +0000 (06:17 -0700)]
Update HTTP::Tiny’s version in perldelta
David Golden [Thu, 31 Mar 2011 19:59:44 +0000 (15:59 -0400)]
Update HTTP::Tiny to CPAN version 0.012
HTTP::Tiny 0.011 fails to mirror files correctly on MSWin32, preventing
CPAN bootstrapping over HTTP with just core Perl. This is fixed in CPAN
version 0.012.
[DELTA]
0.012 2011-03-31 15:48:02 America/New_York
[BUG FIXES]
- mirror() now uses binmode during output (RT #67118) [Serguei Trouchelle]
[DOCUMENTATION]
- noted that SSL certificates are not verified against CA's
(RT #66907)
Father Chrysostomos [Fri, 1 Apr 2011 03:41:43 +0000 (20:41 -0700)]
perldelta: uc/lc(first) fix [perl #87336]
Karl Williamson [Thu, 31 Mar 2011 17:58:56 +0000 (11:58 -0600)]
perlretut: /o no longer very useful
perlretut still says /o is needed to prevent regex re-compilation in
loops.
Karl Williamson [Thu, 31 Mar 2011 17:21:28 +0000 (11:21 -0600)]
perlretut: Remove references to Unicode blocks
blocks are mostly useless, and not suitable for an introduction
to regular expressions. It was not always the case, as in very early
Unicode these were the best approximation to the much more useful
Script concept. But that changed 10 or so years ago.
Karl Williamson [Thu, 31 Mar 2011 16:44:29 +0000 (10:44 -0600)]
perlretut: nits
Karl Williamson [Thu, 31 Mar 2011 16:41:51 +0000 (10:41 -0600)]
perlretut: Emphasize difference of /r
Karl Williamson [Thu, 31 Mar 2011 16:28:02 +0000 (10:28 -0600)]
perlretut: Use generic Unicode web page link
Use the link to Unicode that gives the latest version, whatever it might be
Karl Williamson [Thu, 31 Mar 2011 15:30:04 +0000 (09:30 -0600)]
perlretut: Mention 'alert' for \a
Karl Williamson [Thu, 31 Mar 2011 15:05:30 +0000 (09:05 -0600)]
perlretut: Add info about \N
Karl Williamson [Thu, 31 Mar 2011 00:55:58 +0000 (18:55 -0600)]
encoding(utf8) isn't case or dash sensitive
Karl Williamson [Thu, 31 Mar 2011 00:44:42 +0000 (18:44 -0600)]
perluniintro: bytes.pm is not deprecated
Father Chrysostomos [Thu, 31 Mar 2011 13:28:49 +0000 (06:28 -0700)]
[perl #87336] lc/uc(first) fail to taint the returned string
This bug was caused by change 28011 (ec9af7d), which stopped pp_lc
from using sv_setsv_flags, thereby bypassing these two lines at the
end of that function:
if (SvTAINTED(sstr))
SvTAINT(dstr);
Change 28012 (6730619) did exactly the same thing to pp_uc.
28013 (d54190f) broke ucfirst and lcfirst.
This commit simply puts that taint logic at the end of the pp_*
functions.
Karl Williamson [Thu, 31 Mar 2011 01:03:13 +0000 (19:03 -0600)]
Encode::Guess is iffy
Karl Williamson [Thu, 31 Mar 2011 02:02:28 +0000 (20:02 -0600)]
perlrecharclass: /dual are suffix in 5.14
So there is no need to avoid using the / form for them.
Karl Williamson [Thu, 31 Mar 2011 01:26:38 +0000 (19:26 -0600)]
perlrecharclass: Mention UCD::num()
Karl Williamson [Wed, 30 Mar 2011 22:35:14 +0000 (16:35 -0600)]
/dual are available in 5.14 as suffix after all
H.Merijn Brand [Wed, 30 Mar 2011 05:48:05 +0000 (07:48 +0200)]
Removed my name from README.aix
As Jan said, we all contribute, and I do not like to receive mail
with questions regarding an OS that I hate but still have to use
for company purposes.
Karl Williamson [Wed, 30 Mar 2011 04:00:18 +0000 (22:00 -0600)]
perluniintro: Update for 5.14
This includes some edits that I believe clarify the original language.
Karl Williamson [Wed, 30 Mar 2011 03:59:05 +0000 (21:59 -0600)]
perlfunc: Note utf8 discrepancy in quotemeta
Father Chrysostomos [Tue, 29 Mar 2011 04:45:23 +0000 (21:45 -0700)]
perldelta: Explain link to Selected Bug FIxes
Father Chrysostomos [Tue, 29 Mar 2011 04:26:17 +0000 (21:26 -0700)]
perldelta: Update Pod::Html’s version
Father Chrysostomos [Tue, 29 Mar 2011 03:44:59 +0000 (20:44 -0700)]
Add Gene Sullivan to AUTHORS
Father Chrysostomos [Tue, 29 Mar 2011 03:43:55 +0000 (20:43 -0700)]
perldelta: Update the bignum version
Father Chrysostomos [Tue, 29 Mar 2011 03:43:01 +0000 (20:43 -0700)]
Versions bumps after the prev commit
gene sullivan [Tue, 29 Mar 2011 03:42:16 +0000 (20:42 -0700)]
[perl #87216] POD typo in bigint, bignum and bigrat pragmas
The POD has a typo in the following three pragmas:
bigint
bignum
bigrat
The typo is similar for each pragma: CAVAETS should be changed to CAVEATS.
Father Chrysostomos [Tue, 29 Mar 2011 01:04:10 +0000 (18:04 -0700)]
[perl #87128] Unclear note about \Q, etc., in perlretut
David Leadbeater [Tue, 29 Mar 2011 00:59:59 +0000 (17:59 -0700)]
[perl #86566] Allow Pod::Html to write to STDOUT again
7319fd7 introduced lexical file handles but also switched to 3 arg
open; Pod::Html was relying on 2 arg open's behaviour to make '-' mean
STDOUT.
There was also a single quoted argument that obviously needed to be
interpolated.
Nicholas Clark [Sat, 26 Mar 2011 21:44:42 +0000 (21:44 +0000)]
Make the request to fix rather than report bugs in microperl politer.
Expand it slightly to clarify why bare bug reports aren't likely to get acted
upon.
David Leadbeater [Mon, 7 Mar 2011 21:06:21 +0000 (21:06 +0000)]
microperl: Define need_va_copy
This is needed on some platforms and shouldn't hurt on others, so
define it.
Nicholas Clark [Sat, 26 Mar 2011 21:22:55 +0000 (21:22 +0000)]
For microperl, add uconfig64.sh, with values suitable for an LP64 platform.
Add instructions on how to use it to README.micro.
There's rather too much size-specific in perl's configuration to make it viable
to have a single uconfig.sh that will work "properly" on both LP32 and LP64
platforms. It seems best to ship the default as LP32 (which is correct for
Win32 (although I don't know if microperl yet builds on Win32)), and provide
just a config.sh file for LP64, as most (all?) 64 bit *nix platforms are LP64,
and can run the shell commands to generate a uconfig.h from it.
(Win64 is LLP64, so uconfig64.sh isn't going to be right for it, so the
inability of Win64 to generate uconfig.h from uconfig64.sh isn't a problem)
Nicholas Clark [Sat, 26 Mar 2011 20:59:15 +0000 (20:59 +0000)]
microperl should use *signed* char for i8, as (plain) char might be unsigned.
Nicholas Clark [Wed, 23 Mar 2011 12:18:20 +0000 (12:18 +0000)]
Fix *printf %ld handling for microperl (and other obscure platforms)
07208e09d4435b4e accidentally moved the implicit q = q + 1 into conditionally
compiled code, which is compiled most everywhere else, except miniperl. Without
the increment of q, formats such as 'ld' were not being recognised as formats.
This was noticed because the tokeniser implements __LINE__ by converting to a
string using %ld.
Nicholas Clark [Tue, 22 Mar 2011 16:55:18 +0000 (16:55 +0000)]
Add very simple microtest for microperl
For now, all the tests we run don't use Config, so don't try to build it first.
[Hence this is about half of the original commit by David Leadbeater, which
did build Config, from config.sh]
There's an unresolved problem with building Config - building Config.pm etc
from config.sh won't reflect the capabilities of the microperl being tested,
so that argues for the right solution to be adapting configpm to be able to use
uconfig.sh instead. But doing that means that when building and (re)testing
"regular" perl, we could end up with a build tree with lib/Config.pm "up to
date", as far as make is concerned, but totally the wrong contents in reality.
Tests will fail, heads will be scratched, time will be wasted, etc.
David Leadbeater [Mon, 7 Mar 2011 19:29:57 +0000 (19:29 +0000)]
microperl: Fix patch_uconfig target
Previously it tried to patch 'uconfig.shx', now it patches
'uconfig.sh' as documented.
Nicholas Clark [Tue, 22 Mar 2011 16:30:02 +0000 (16:30 +0000)]
Default microperl to no optimisation.
Previously it was -O2, which is potentially a gcc-ism. -Os also has the
potential to be "portability challenged". Whilst -O should work everywhere,
as microperl is intended as a least-assumptions bootstrapping approach, it
seems best to make no assumptions about the compiler's optimiser.
Nicholas Clark [Tue, 22 Mar 2011 13:57:36 +0000 (13:57 +0000)]
microperl: Define NO_MATHOMS to save ~10k
(Half of a single commit by David Leadbeater)
David Leadbeater [Mon, 7 Mar 2011 19:26:20 +0000 (19:26 +0000)]
Define memset() for microperl
David Leadbeater [Mon, 7 Mar 2011 19:08:55 +0000 (19:08 +0000)]
Check if microperl's version in uconfig.sh/h needs bumping
David Leadbeater [Mon, 7 Mar 2011 19:34:37 +0000 (19:34 +0000)]
microperl: Up versions in uconfig.sh to 5.13
David Leadbeater [Mon, 7 Mar 2011 18:56:50 +0000 (18:56 +0000)]
Protect sv_collxfrm in mathoms.c with a USE_LOCALE_COLLATE ifdef
It calls sv_collxfrm_flags which is only defined if USE_LOCALE_COLLATE
is set.
David Leadbeater [Mon, 7 Mar 2011 18:54:21 +0000 (18:54 +0000)]
microperl: On (at least) OS X and Linux stddef.h is needed for ptrdiff_t
This shouldn't hurt on other system either.
David Leadbeater [Mon, 7 Mar 2011 18:45:09 +0000 (18:45 +0000)]
Microperl doesn't do signal handlers, ifdef some handling code
David Leadbeater [Mon, 7 Mar 2011 18:40:55 +0000 (18:40 +0000)]
microperl: Update generate_uudmap in Makefile.micro
Makefile.micro hadn't kept up with the changes for generate_uudmap,
make it match the real Makefile.
Nicholas Clark [Tue, 22 Mar 2011 15:55:47 +0000 (15:55 +0000)]
Don't automatically regenerate uconfig.h as part of the microperl build.
This avoids limiting microperl to platforms with a Bourne shell. It also
avoids automated build tools modifying distribution files as part of the
default build targets.
Now that we have a regression test to ensure that uconfig.h is up to date,
the version as shipped will be consistent with uconfig.sh. README.micro
already instructs people to run `make -f Makefile.micro regen_uconfig` if
they edit uconfig.sh, so no change needed there.
Nicholas Clark [Tue, 22 Mar 2011 15:53:20 +0000 (15:53 +0000)]
Add regen/uconfig_h.pl to regenerate uconfig.h
Most of the work is done by config_h.SH, but the wrapper is needed to add the
digest lines, so that t/porting/regen.t can verify that it's up to date.
I think that we need to take the "digest" approach, rather than "build to a
temporary file during testing", as we can't rely on a working Unix shell on
all platforms, and we couldn't even be sure that we get the skip list correct.
Nicholas Clark [Tue, 22 Mar 2011 15:27:56 +0000 (15:27 +0000)]
Extract read_only_bottom() from read_only_bottom_close_and_rename()'s code.
Nicholas Clark [Tue, 22 Mar 2011 14:12:45 +0000 (14:12 +0000)]
Regenerate uconfig.h
It is almost 26 months out of date.
Michael Witten [Mon, 28 Mar 2011 00:24:52 +0000 (17:24 -0700)]
Docs: perlsyn.pod Use dominant American spelling consistently.
The `z' in words like `optimize' appears to be already dominant
in this document; the few uses of the British `s' have been
replaced.
Michael Witten [Mon, 28 Mar 2011 00:22:13 +0000 (17:22 -0700)]
Docs: Use the symbol `C<< < >>' rather than `less-than'.
Thanks to Tom Christiansen for pointing out that the original
replacement:
C< < >
does not ignore the whitespace.
See:
Message-ID: <28746.
1301262347@chthon>
Signed-off-by: Michael Witten <mfwitten@gmail.com>
Father Chrysostomos [Sun, 27 Mar 2011 23:43:19 +0000 (16:43 -0700)]
perldelta: wording
Father Chrysostomos [Sun, 27 Mar 2011 23:40:26 +0000 (16:40 -0700)]
perldelta: Incorporate the local $_ entry from 658a9f3
Father Chrysostomos [Sun, 27 Mar 2011 23:36:25 +0000 (16:36 -0700)]
perldelta: Mention the split/@_ change in Errata
Father Chrysostomos [Sun, 27 Mar 2011 23:34:42 +0000 (16:34 -0700)]
perldelta: Yet another set of formatting tweaks
Father Chrysostomos [Sun, 27 Mar 2011 23:32:13 +0000 (16:32 -0700)]
perldelta: factual error concerning [perl #75154]
Father Chrysostomos [Sun, 27 Mar 2011 23:31:00 +0000 (16:31 -0700)]
perldelta: even more formatting tweaks
Father Chrysostomos [Sun, 27 Mar 2011 23:29:08 +0000 (16:29 -0700)]
perldelta: Move the is_utf8 fix into the fetch/store section
Father Chrysostomos [Sun, 27 Mar 2011 23:27:50 +0000 (16:27 -0700)]
perldelta: formatting fixes + 2 typos
Father Chrysostomos [Sun, 27 Mar 2011 22:54:40 +0000 (15:54 -0700)]
perldelta: More formatting tweaks
Father Chrysostomos [Sun, 27 Mar 2011 21:25:57 +0000 (14:25 -0700)]
perldelta: formatting, typos, rewording
Father Chrysostomos [Sun, 27 Mar 2011 21:21:27 +0000 (14:21 -0700)]
perldelta: Move 2 similar entries about stashes closer
Father Chrysostomos [Sun, 27 Mar 2011 21:20:41 +0000 (14:20 -0700)]
perldelta: correct wording about globs
Father Chrysostomos [Sun, 27 Mar 2011 21:16:54 +0000 (14:16 -0700)]
perldelta: more consistent formatting of fullstops
Father Chrysostomos [Sun, 27 Mar 2011 21:06:28 +0000 (14:06 -0700)]
perldelta: present tense for changes alreday in effect
plus formatting tweaks
Karl Williamson [Sat, 26 Mar 2011 23:53:53 +0000 (17:53 -0600)]
perluniprops: Update info about unicore/To files
5.14 now writes out most Unicode mapping files into the To subdirectory,
but we don't want people to use them and force us to be bound by their
formats and existence. I plan to add a new routine in 5.16 in
Unicode::UCD that gives access to their contents.
Karl Williamson [Sat, 26 Mar 2011 23:53:27 +0000 (17:53 -0600)]
perluniprops: mktables is not installed by default
Karl Williamson [Sat, 26 Mar 2011 23:52:30 +0000 (17:52 -0600)]
perluniprops: Clarify why certain properties are deprecated
David Mitchell [Sat, 26 Mar 2011 20:12:57 +0000 (20:12 +0000)]
Benchmark.t: note line# of check_graph_consistency
This function is called 6 times, each each call puts out about
15 tests, with the same set of descriptions, so output a note
at the start of each call showing where we're called from.
David Mitchell [Sat, 26 Mar 2011 23:48:04 +0000 (23:48 +0000)]
op/cmp.t: fix failing tests under -ffast-math
Apparently if you compile using gcc's -ffast-math option,
NaNs start matching other things. So skip the NaN tests.
David Mitchell [Sat, 26 Mar 2011 18:45:13 +0000 (18:45 +0000)]
skip some tests under -Uusedl
When everything is staticly linked, a few tests fail, because:
* XS::APItest isn't built;
* some extensions will have been pre-loaded
David Mitchell [Sat, 26 Mar 2011 18:56:18 +0000 (18:56 +0000)]
perldelta: bump ExtUtils::ParseXS version
David Mitchell [Sat, 26 Mar 2011 18:55:33 +0000 (18:55 +0000)]
Bump version of ExtUtils::ParseXS after previous commit
David Mitchell [Sat, 26 Mar 2011 18:54:05 +0000 (18:54 +0000)]
make ExtUtils::ParseXS pass tests with -Uusedl again
There was a skip there, but 15 more tests had been added
which ween;t added to the skip count under -Uusedl
David Mitchell [Sat, 26 Mar 2011 17:46:37 +0000 (17:46 +0000)]
utf8.c: silence compiler warnings
prefer foo("%s", fixedstr) over foo(fixedstr).
One day someone might change fixedstr to include '%' characters.
David Mitchell [Sat, 26 Mar 2011 16:55:46 +0000 (16:55 +0000)]
regexec.c: fix some compiler warnings
David Mitchell [Sat, 26 Mar 2011 16:31:49 +0000 (16:31 +0000)]
fix compiler warning in toke.c
The third arg to newSVOP must be non-null, and the macro expansion
for SvREFCNT_inc can give a null value sometimes. So replace it
with SvREFCNT_inc_NN and everyone's happy..
Karl Williamson [Sat, 26 Mar 2011 15:45:38 +0000 (09:45 -0600)]
perlunicode: mention quotemeta utf8 inconsistency
Karl Williamson [Sat, 26 Mar 2011 15:12:27 +0000 (09:12 -0600)]
perldelta: Note \Q unicode bug not resolved yet
Karl Williamson [Sat, 26 Mar 2011 15:12:01 +0000 (09:12 -0600)]
perldelta: Add RT ticket number
David Mitchell [Sat, 26 Mar 2011 14:32:28 +0000 (14:32 +0000)]
Improve Benchmark.t countit() tests
The test currently does a 3 sec run, then a 1 sec run, and
checks that the count from the first run is approximately three times
greater than that from the second run.
However, the countit() function doesn't guarantee that it will run for
exactly n seconds, so as well as returning how many iterations it did,
it also returns how much actual CPU time was used.
Make the test use that returned time value to scale the iteration counts
accordingly, before trying to compare them.
Hopefully this will reduce the number of spurious failed test 13's in
smokes (although after this commit it's now test 15).
Karl Williamson [Fri, 25 Mar 2011 19:24:58 +0000 (13:24 -0600)]
perldelta: multi-char folds mostly fixed
Karl Williamson [Fri, 25 Mar 2011 19:21:53 +0000 (13:21 -0600)]
perluniprops: Downloading Unicode db required for customization
The instructions in this pod are changed since the Unicode db is
no longer installed. The pod is generated by mktables.
Karl Williamson [Fri, 25 Mar 2011 18:36:58 +0000 (12:36 -0600)]
perldelta: Revise text on Unicode bug
Karl Williamson [Fri, 25 Mar 2011 17:48:38 +0000 (11:48 -0600)]
incomplete sentence in perldelta