David Golden [Thu, 15 Jul 2010 02:26:33 +0000 (20:26 -0600)]
perlop.pod: Rephrase hexadecimal escape wording
Clarifies how hexadecimal escapes are interpreted, with particular
attention to the treatment of invalid characters.
Based on an original draft patch by Karl Williamson.
David Golden [Fri, 16 Jul 2010 03:55:50 +0000 (23:55 -0400)]
Add summary list mode to git-deltatool
David Golden [Fri, 16 Jul 2010 03:48:07 +0000 (23:48 -0400)]
More perl5133delta updates
Leon Brocard [Thu, 15 Jul 2010 19:42:08 +0000 (20:42 +0100)]
Mention that Ask did not actually release 5.11.6
Jesse Vincent [Thu, 15 Jul 2010 18:42:53 +0000 (14:42 -0400)]
Small spelling/grammar nit to Locale::Maketext::Guts*
Todd Rinaldo [Thu, 15 Jul 2010 18:24:07 +0000 (14:24 -0400)]
Clean up older Locale::Maketext internals to no longer do crazy string
eval tricks.
Alexandr Ciornii [Tue, 11 May 2010 15:41:22 +0000 (18:41 +0300)]
use modern Perl style in example
Signed-off-by: David Golden <dagolden@cpan.org>
Alexandr Ciornii [Tue, 11 May 2010 15:39:19 +0000 (18:39 +0300)]
Make example work with "use strict" by eliminating barewords.
Signed-off-by: David Golden <dagolden@cpan.org>
Josh ben Jore [Thu, 15 Jul 2010 13:06:28 +0000 (13:06 +0000)]
Stop using $ENV{LESS} for parameters not intended for less
Josh ben Jore [Thu, 15 Jul 2010 13:04:26 +0000 (13:04 +0000)]
Configure has a path to less and perl5db.pl can use it
Ben Morrow [Tue, 13 Jul 2010 21:20:21 +0000 (22:20 +0100)]
Macros to en/disable blockhook entries.
This allows the individual callbacks to be switched on and off as
necessary, without removing the entry from PL_blockhooks.
Ben Morrow [Tue, 13 Jul 2010 20:06:19 +0000 (21:06 +0100)]
Update MANIFEST.
Properly, this time.
Ben Morrow [Tue, 13 Jul 2010 20:02:29 +0000 (21:02 +0100)]
Remove diagnostics from XS-APItest/t/blockhooks.
They were causing problems with 'make test'.
Josh ben Jore [Thu, 15 Jul 2010 05:08:24 +0000 (22:08 -0700)]
[perl #72729] Test appending sv_gets for ascii/utf8 in target and handle
Josh ben Jore [Thu, 15 Jul 2010 05:06:16 +0000 (22:06 -0700)]
[perl #72729] TODO for aborted readline() returning '' instead of undef
Josh ben Jore [Thu, 15 Jul 2010 05:02:28 +0000 (22:02 -0700)]
[perl #72729] Truncate sv_gets(sv) only when not appending to a string
David Golden [Thu, 15 Jul 2010 02:00:41 +0000 (22:00 -0400)]
Add a 'blocking' type for git-deltatool
Karl Williamson [Wed, 14 Jul 2010 23:21:40 +0000 (17:21 -0600)]
PATCH: [perl #76502] Fix UCD.pm doc
Thank you for your bug report. Change <lower> to <upper> as the report
showed.
Signed-off-by: David Golden <dagolden@cpan.org>
David Mitchell [Mon, 12 Jul 2010 19:53:04 +0000 (20:53 +0100)]
protect CvGV weakref with backref
Each CV usually has a pointer, CvGV(cv), back to the GV that corresponds
to the CV's name (or to *foo::__ANON__ for anon CVs). This pointer wasn't
reference counted, to avoid loops. This could leave it dangling if the GV
is deleted.
We fix this by:
For named subs, adding backref magic to the GV, so that when the GV is
freed, it can trigger processing the CV's CvGV field. This processing
consists of: if it looks like the freeing of the GV is about to trigger
freeing of the CV too, set it to NULL; otherwise make it point to
*foo::__ANON__ (and set CvAONON(cv)).
For anon subs, make CvGV a strong reference, i.e. increment the refcnt of
*foo::__ANON__. This doesn't cause a loop, since in this case the
__ANON__ glob doesn't point to the CV. This also avoids dangling pointers
if someone does an explicit 'delete $foo::{__ANON__}'.
Note that there was already some partial protection for CvGV with
commit
f1c32fec87699aee2eeb638f44135f21217d2127. This worked by
anonymising any corresponding CV when freeing a stash or stash entry.
This had two drawbacks. First it didn't fix CVs that were anonmous or that
weren't currently pointed to by the GV (e.g. after local *foo), and
second, it caused *all* CVs to get anonymised during cleanup, even the
ones that would have been deleted shortly afterwards anyway. This commit
effectively removes that former commit, while reusing a bit of the
actual anonymising code.
David Mitchell [Mon, 5 Jul 2010 21:25:12 +0000 (22:25 +0100)]
in CLONEf_JOIN_IN, cache found stashes
When joining a thread, we skip cloning a stash if a stash of the same
name already exists in the parent thread. Add it to PL_ptr_table too, so
we don't have to repeat the expensive name comparison each time
David Mitchell [Mon, 5 Jul 2010 21:07:30 +0000 (22:07 +0100)]
add all stash backrefs individually when joining
When joining a thread, a 'mini' interpreter clone is performed to
clone the returned SVs and dependents back into the parent interpreter.
To make things simple in this case, don't clone the xhv_backreferences
array of any stashes, but individually add in any cloned GVs and CVs
whose [CG]vSTASH points that way. This is faster (avoids an expensive test
per CV/GV) and better (doesn't clone unnecessary SVs in the backref array)
David Mitchell [Mon, 5 Jul 2010 20:11:21 +0000 (21:11 +0100)]
make it an error to look for magic hv backref
Now that we only store a stash's backref AV in xhv_backreferences,
make it a panic if we don't find it there, rather than falling back to
look for backref magic.
David Mitchell [Mon, 5 Jul 2010 19:40:33 +0000 (20:40 +0100)]
protect CvSTASH weakref with backrefs
Each CV usually has a pointer, CvSTASH, back to the stash that it was
complied in. This pointer isn't reference counted, to avoid loops. Which
can leave it dangling if the stash is deleted.
There is already protection for the similar GvSTASH field in GVs: the
stash has an array of backrefs, xhv_backreferences, pointing to the GVs
whose GvSTASHes point to it, and which is used to zero all the GvSTASH
fields should the stash be deleted.
All this patch does is also add the CVs with CvSTASH to that stash's
backref list too.
David Mitchell [Sun, 4 Jul 2010 20:44:35 +0000 (21:44 +0100)]
tidy some code in gv_init()
Use an intermediate variable cv to avoid lots of GvCV(gv)'s
David Mitchell [Sun, 4 Jul 2010 19:51:35 +0000 (20:51 +0100)]
process xhv_backreferences early in S_hfreeentries
When deleting a stash, make the algorithm
GvSTASH($_) = NULL for (@xhv_backreferences);
delete xhv_backreferences;
free each stash entry;
Previously the algorithm was
hide xhv_backreferences as ordinary backref magic;
free each stash entry:
this may trigger a sv_del_backref() for each GV being freed
delete @xhv_backreferences
The new method is:
* more efficient: one scan through @xhv_backreferences rather than lots of
calls to sv_del_backref(), removing elements one by one;
* makes the code simpler; the 'hide xhv_backreferences as backref magic'
hack no longer needs to be done
* removes a bug whereby GVs that had a refcnt > 1 (the usual case) were
left with a GvSTASH pointing to the freed stash; it's now NULL instead. I
couldn't think of a test for this.
There are two drawbacks:
* If the GV gets freed at the same time as the stash, the freeing code
sees the GV with a GVSTASH of NULL rather than still pointing to the
stash.
* As far as I can see, the only difference this currently makes is that
mro_method_changed_in() is no longer called by sv_clear(), but since we're
blowing away the whole stash anyway, method resolution doesn't really
bother us any more.
At some point in the future I might set GvSTASH to %__ANON__ rather than
NULL.
Josh ben Jore [Wed, 14 Jul 2010 06:57:14 +0000 (23:57 -0700)]
[perl #72729] Test that sv_gets doesn't revive dead strings
Josh ben Jore [Wed, 14 Jul 2010 06:56:29 +0000 (23:56 -0700)]
Add t/op/readline.t docs
Josh ben Jore [Wed, 14 Jul 2010 04:33:34 +0000 (21:33 -0700)]
Add x-ref from call site in do_readline() of sv_grow() to it's matching test in t/op/readline.t
David Golden [Wed, 14 Jul 2010 15:02:54 +0000 (11:02 -0400)]
Update template for linked perldelta sections in deltatool
David Golden [Wed, 14 Jul 2010 14:54:22 +0000 (10:54 -0400)]
Add help and fix doc typo for git-deltatool
David Golden [Wed, 14 Jul 2010 02:07:35 +0000 (22:07 -0400)]
Revise perldelta template to group doc/utility bullets
Nicholas Clark [Tue, 13 Jul 2010 19:20:21 +0000 (20:20 +0100)]
Fix transient pod infelicities spotted by podcheck.t
David Golden [Tue, 13 Jul 2010 16:08:58 +0000 (12:08 -0400)]
Add more recent commits to perldelta
Karl Williamson [Thu, 8 Jul 2010 16:18:58 +0000 (10:18 -0600)]
perlop.pod: Document current \000 \x behavior
Signed-off-by: David Golden <dagolden@cpan.org>
Chris 'BinGOs' Williams [Tue, 13 Jul 2010 11:14:35 +0000 (12:14 +0100)]
Update CPANPLUS to CPAN version 0.9007
[DELTA]
Changes for 0.9007 Tue Jul 13 10:44:30 2010
================================================
* Fix the shell test to skip if test is not being run under a
terminal, reported by Justin Case RT #59254
Changes for 0.9006 Fri Jul 9 13:44:22 2010
================================================
* Finally resolved the issue where a prereq on Config would not be
recognised as a core module
Chris 'BinGOs' Williams [Tue, 13 Jul 2010 11:08:05 +0000 (12:08 +0100)]
Update ExtUtil-ParseXS to CPAN version 2.2206
[DELTA]
2.2206 - Sun Jul 4 15:43:21 EDT 2010
Bug fixes:
- Make xsubpp accept the _ prototype (RT#57157) [Rafael Garcia-Suarez]
- INCLUDE_COMMAND portability fixes for VMS (RT#58181) [Craig Berry]
- INCLUDE_COMMAND fixes to detect non-zero exit codes (RT#52873)
[Steffen Mueller]
Chris 'BinGOs' Williams [Tue, 13 Jul 2010 11:02:16 +0000 (12:02 +0100)]
Update Archive-Tar to CPAN version 1.64
[DELTA]
* important changes in version 1.64 09/07/2010
- Removed the PERL_CORE specific chdir from all the tests
- Apply a patch from David Muir Sharnoff RT #58916,
"skip files via a callback and limit memory use when skipping files"
- Apply a patch from Daphne Pfister RT #59150
"Assumes all references filename are IO::Handle's instead of trying to stringify."
Chris 'BinGOs' Williams [Tue, 13 Jul 2010 10:56:15 +0000 (11:56 +0100)]
Update IPC-Cmd to CPAN version 0.60
[DELTA]
Changes for 0.60 Mon Jul 5 09:04:54 BST 2010
=================================================
* Corrected spelling mistakes in POD, spotted by H.Merijn Brand
* Apply a patch from Burak Gursoy RT #58886, which fixes paths
on MSWin32
* Apply patch from Petya Kohts, RT #50398, which allows more
flexible configuration of run_forked and its children
Josh ben Jore [Tue, 13 Jul 2010 06:56:55 +0000 (23:56 -0700)]
Reset variables being initialized by readline before we do possibly blocking I/O
Tony Cook [Tue, 13 Jul 2010 05:11:54 +0000 (15:11 +1000)]
new is a reserved word in C++, don't use it as a variable name
Fix a cause of black smoke for C++ builds.
Nicholas Clark [Mon, 12 Jul 2010 12:39:19 +0000 (13:39 +0100)]
Create S_assert_uft8_cache_coherent() with one copy of the cache panic code.
Replacing 4 copies of this debugging-only routine with 1 reduces source and
object code size.
Nicholas Clark [Mon, 12 Jul 2010 12:09:28 +0000 (13:09 +0100)]
Perl_sv_len_utf8 can use the UTF-8 offset cache to reduce its linear scan.
Previously, if the scalar's character length wasn't yet known, but an offset
midway was, the offset would be ignored, and the linear scan of UTF-8 was for
the entire length of the scalar.
Nicholas Clark [Mon, 12 Jul 2010 10:56:59 +0000 (11:56 +0100)]
Perl_sv_pos_b2u now calls utf8_mg_len_cache_update for the string end offset.
Previously it would not take special action if the offset requested happened to
be the end of the string, meaning that the (fixed size) UTF-8 offset cache
would be used for a value which could (and should) be stored elsewhere.
Nicholas Clark [Mon, 12 Jul 2010 10:38:31 +0000 (11:38 +0100)]
S_sv_pos_u2b_cached now updates the UTF-8 length cache if at the end of string.
Pass in a boolean to S_sv_pos_u2b_forwards, which sets it to true if it
discovers that the UTF-8 offset is at (or after) the end of the string.
This can only happen if we don't already know the SV's length (in Unicode
characters), because if we know it, we always call S_sv_pos_u2b_midway().
Nicholas Clark [Mon, 12 Jul 2010 10:16:41 +0000 (11:16 +0100)]
Break S_utf8_mg_len_cache_update() out from Perl_sv_len_utf8().
George Greer [Sat, 10 Jul 2010 23:18:12 +0000 (19:18 -0400)]
Fix for RT#2353: catch yyparse() exceptions in (?{...})
Ticket is entitled:
"panic: top_env when localizing a lexical variable in qr{(?{...})}"
but a better description would be:
"(?{...}) does not catch yyparse() exceptions in regex compilation"
Changes Perl_sv_compile_2op() to tell doeval() that it must use
S_try_yyparse() to catch any exception that yyparse() may throw.
Ben Morrow [Wed, 9 Dec 2009 10:37:14 +0000 (10:37 +0000)]
Update MANIFEST.
Ben Morrow [Wed, 9 Dec 2009 10:32:23 +0000 (10:32 +0000)]
Document the blockhook functions and macros.
Ben Morrow [Wed, 9 Dec 2009 10:24:33 +0000 (10:24 +0000)]
Teach autodoc.pl about 'o' functions.
That is, functions with no #define foo Perl_foo. I'm not certain this is
the right way to do it, as I don't really understand which flags autodoc
honours from which places; currently, it's necessary to put the 'o' flag
on the =for apidoc line or it will be ignored.
Ben Morrow [Mon, 7 Dec 2009 19:00:04 +0000 (19:00 +0000)]
Systematic tests for the block hooks.
I've left the dummy implementation of @{^C_S_C} in, as it's actually
useful for some of the other tests. (Something simpler would work just
as well, of course.)
Ben Morrow [Mon, 7 Dec 2009 12:55:57 +0000 (12:55 +0000)]
Wrap PL_blockhooks in an API function.
This should help prevent people from thinking they can get cute with the
contents.
Ben Morrow [Mon, 7 Dec 2009 11:52:23 +0000 (11:52 +0000)]
Macroify the block_hooks structure.
Add a flags member, so it can be extended later if necessary. Add a
bhk_eval member, called from doeval to catch requires and string evals.
Ben Morrow [Thu, 26 Nov 2009 17:22:22 +0000 (17:22 +0000)]
Initial very basic tests for PL_blockhooks.
This is taken directly from rafl's @{^COMPILE_SCOPE_CONTAINER}
implementation posted on p5p.
Ben Morrow [Thu, 26 Nov 2009 17:18:29 +0000 (17:18 +0000)]
Generic hooks into Perl_block_{start,end}.
These take the form of a vtable pushed onto the new PL_blockhooks array.
This could probably do with a API around it later. Separate pre_end and
post_end hooks are needed to capture globals before the stack is unwound
(like needblockscope in the existing code). The intention is that once
a vtable is installed it never gets removed, so where necessary
extensions using this will need to use a hinthv element to determine
whether to do anything or not.
Nicholas Clark [Sun, 11 Jul 2010 19:11:10 +0000 (20:11 +0100)]
Avoid UTF-8 cache panics with offsets beyond the string. Fixes RT #75898.
Change S_sv_pos_u2b_forwards() to take a point to the (requested) UTF-8 offset,
and return the actual UTF-8 offset for the byte position returned. This ensures
that the cache is consistent with reality.
Nicholas Clark [Sun, 11 Jul 2010 16:17:37 +0000 (17:17 +0100)]
In Perl_sv_pos_u2b_flags and S_sv_pos_u2b_cached, return early for offset 0.
0 Unicode characters are always 0 octets long. Returning early ensures that
any offsets we calculate later will always be non-zero.
Nicholas Clark [Sun, 11 Jul 2010 15:49:29 +0000 (16:49 +0100)]
In S_sv_pos_u2b_midway, inline the call to S_sv_pos_u2b_forwards.
Vincent Pit [Sun, 11 Jul 2010 11:34:28 +0000 (13:34 +0200)]
Sort and complete the op flags lists for op_dump()
Tony Cook [Sun, 11 Jul 2010 11:23:30 +0000 (21:23 +1000)]
RT #73520: POSIX::strftime memory leak
Tested before/after with valgrind.
Josh ben Jore [Sat, 10 Jul 2010 14:54:55 +0000 (07:54 -0700)]
Die with $@ instead of empty message
Josh ben Jore [Sat, 10 Jul 2010 14:54:32 +0000 (07:54 -0700)]
Remove extra/useless $@ check after eval { require PadWalker } (which is still checked)
Josh ben Jore [Sat, 10 Jul 2010 14:53:35 +0000 (07:53 -0700)]
Promote eval( "require ..." ) to eval { require ... }
Josh ben Jore [Sat, 10 Jul 2010 14:52:06 +0000 (07:52 -0700)]
Promote eval { require( ... )} || die to mere require( ... )
Josh ben Jore [Sat, 10 Jul 2010 14:50:41 +0000 (07:50 -0700)]
Remove indirect object notation from debugger
Josh ben Jore [Sat, 10 Jul 2010 14:38:31 +0000 (07:38 -0700)]
Document that @{$main::{'_<'.$filename}} lines are dualvar to (COP*).
Nicholas Clark [Fri, 9 Jul 2010 09:42:41 +0000 (10:42 +0100)]
In t/harness, clear PERL5LIB, PERLLIB, PERL5OPT as t/TEST does.
In fact, as t/harness requires t/TEST, simply get t/TEST to do it for
t/harness too.
Jerry D. Hedden [Thu, 8 Jul 2010 15:20:35 +0000 (11:20 -0400)]
Silence compiler warning
Signed-off-by: David Golden <dagolden@cpan.org>
karl williamson (via RT) [Tue, 6 Jul 2010 15:27:34 +0000 (08:27 -0700)]
PATCH: t/lib/common.pl localized $/ setting; allow input 'no_plan'
# New Ticket Created by karl williamson
# Please include the string: [perl #76398]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=76398 >
See attached patches
>From
275169a8df5851331669da2dd791483379c3fc5e Mon Sep 17 00:00:00 2001
From: Karl Williamson <khw@khw-desktop.(none)>
Date: Tue, 6 Jul 2010 09:20:42 -0600
Subject: [PATCH] t/lib/common.pl: localize changing $/
$/ changes should not affect callers.
Signed-off-by: H.Merijn Brand <h.m.brand@xs4all.nl>
Abigail [Thu, 8 Jul 2010 07:21:22 +0000 (09:21 +0200)]
Fix typo
Jerry D. Hedden [Wed, 7 Jul 2010 16:22:09 +0000 (12:22 -0400)]
Reorganize dist/threads-shared
Move dist/threads-shared/shared.pm to dist/threads-shared/lib/threads/shared.pm
and remove its Makefile.PL.
Jan Dubois [Wed, 7 Jul 2010 22:22:44 +0000 (15:22 -0700)]
Get rid of PERL_DECL_PROT
It was added for PERL_OBJECT support in commit 0cb9638,
which has been removed again with commit acfe0ab.
Jerry D. Hedden [Wed, 30 Jun 2010 15:15:50 +0000 (11:15 -0400)]
Reorganize dist/threads
Move threads.pm to lib/threads.pm and remove Makefile.PL
Ricardo Signes [Tue, 6 Jul 2010 15:41:53 +0000 (11:41 -0400)]
cautionary note about "no VERSION"
Signed-off-by: David Golden <dagolden@cpan.org>
Bo Lindbergh [Tue, 6 Jul 2010 15:13:12 +0000 (17:13 +0200)]
Change of address for Bo Lindbergh
Signed-off-by: David Golden <dagolden@cpan.org>
David Golden [Tue, 6 Jul 2010 12:27:13 +0000 (08:27 -0400)]
Add Bo Lindburgh alternate email to checkAUTHORS.pl
Bo Lindbergh [Sun, 4 Jul 2010 23:31:01 +0000 (01:31 +0200)]
Code for allowing uppercase X/B in hexadecimal/binary numbers (#76296).
Signed-off-by: David Golden <dagolden@cpan.org>
Bo Lindbergh [Sun, 4 Jul 2010 22:04:46 +0000 (00:04 +0200)]
Tests for allowing uppercase X/B in hexadecimal/binary numbers (#76296).
Signed-off-by: David Golden <dagolden@cpan.org>
David Golden [Tue, 6 Jul 2010 05:38:12 +0000 (01:38 -0400)]
Clean up new Locale-Maketest test for use in core
Todd Rinaldo [Tue, 6 Jul 2010 05:28:00 +0000 (01:28 -0400)]
Locale::Maketext external cache support
This patch with tests provides RO support for lexicon hashes in
Locale::Maketext. This allows you to have GDBM language files owned by
root which can be accessed by non-root, but not altered.
If your lexicon is a tied hash the simple act of caching the compiled
value can be fatal.
For example a GDBM_File GDBM_READER tied hash will die with something
like:
gdbm store returned -1, errno 2, key "..." at ...
All you need to do is turn on caching outside of the lexicon hash itself
like so:
sub init {
my ($lh) = @_;
...
$lh->{'use_external_lex_cache'} = 1;
...
}
And then instead of storing the compiled value in the lexicon hash it
will store it in $lh->{'_external_lex_cache'}
I've verified that blead is the authoritative location for
Locale::Maketext source.
Signed-off-by: David Golden <dagolden@cpan.org>
David Golden [Tue, 6 Jul 2010 04:42:53 +0000 (00:42 -0400)]
replace spaces with tabs in MANIFEST
David Golden [Tue, 6 Jul 2010 04:33:31 +0000 (00:33 -0400)]
Don't set strict for 'no 6;'
Commit
faee19b51573e81abe8811f1256a1d27777d6d04 was incomplete
and only stopped features from being enabled under 'no'.
This patch merges all 'use N.NN' type logic into a single if clause
and then checks version numbers in separate if statements within it.
David Golden [Tue, 6 Jul 2010 04:10:03 +0000 (00:10 -0400)]
Ignore generated files from Time-HiRes
Jerry D. Hedden [Mon, 5 Jul 2010 18:50:04 +0000 (14:50 -0400)]
Ensure new arg to watchdog() in t/test.pl gets initialized
Jesse Vincent [Mon, 5 Jul 2010 11:46:48 +0000 (12:46 +0100)]
added a "list" command to list open tickets that might have patches
Jesse Vincent [Mon, 5 Jul 2010 11:41:28 +0000 (12:41 +0100)]
we can't depend on patches having filenames. Thanks git!
Jesse Vincent [Mon, 5 Jul 2010 11:26:52 +0000 (12:26 +0100)]
First pass at a tool to help porters apply RT patches from the
commandline
Nicholas Clark [Mon, 5 Jul 2010 11:45:19 +0000 (12:45 +0100)]
In Perl_lex_start(), use newSVpvn_flags() to reduce source and object size.
Nicholas Clark [Mon, 5 Jul 2010 09:32:38 +0000 (10:32 +0100)]
In pp_regcomp and pp_entereval, use newSVpvn_flags() to simplify code.
Karl Williamson [Sat, 3 Jul 2010 18:31:54 +0000 (12:31 -0600)]
Speed up viacode
Capturing parentheses greatly slow down regexes, at least here.
On my machine, viacode took 27 seconds for the 22K Unicode names without
capturing parens; 45s with.
Karl Williamson [Sat, 3 Jul 2010 17:55:57 +0000 (11:55 -0600)]
charnames.t update because of rebase
Use of t/lib/common.pl caused some glitches; some behaviors of the
underlying is() functions changed, so revised .t to work under this
scheme.
Karl Williamson [Sat, 3 Jul 2010 17:55:06 +0000 (11:55 -0600)]
Correct perldelta for these changes
Karl Williamson [Sat, 3 Jul 2010 16:22:59 +0000 (10:22 -0600)]
Add vi hint for non-std format of charnames.pm
Karl Williamson [Sat, 3 Jul 2010 16:22:04 +0000 (10:22 -0600)]
More charnames pod updates
Karl Williamson [Sat, 3 Jul 2010 16:12:33 +0000 (10:12 -0600)]
charnames: check for use bytes in vianame; efficiency
When vianame returns a chr, it now verifies that it is legal under 'use
bytes'. Update .t
An instance of taking of a substr of a huge string is needed only in an
error leg. Move it to that leg for performance.
And make the message a subroutine so will be identical whenever raised.
Karl Williamson [Thu, 1 Jul 2010 22:25:08 +0000 (16:25 -0600)]
Clean up charnames pod, including new changes
This patch brings the charnames pod up-to-date, and rewords it to
hopefully be more clear.
Karl Williamson [Thu, 1 Jul 2010 22:22:14 +0000 (16:22 -0600)]
Clean up viacode, accept large aliases
This changes viacode to accept aliases that the user has defined beyond
the Unicode range.
Karl Williamson [Thu, 1 Jul 2010 22:06:51 +0000 (16:06 -0600)]
Extend \N{} enhancements to vianame()
This patch refactors charnames so that vianame and \N call the same
common subroutine so that they have as identical behavior as possible.
Karl Williamson [Wed, 30 Jun 2010 21:27:39 +0000 (15:27 -0600)]
Bump version; some pod cleanup
Karl Williamson [Wed, 30 Jun 2010 21:19:39 +0000 (15:19 -0600)]
charnames: add CORE:: to hex()
Other programs do this; I don't know why just hex() needs to be
protected from user override, but I'm just copying prior art.
Karl Williamson [Wed, 30 Jun 2010 20:55:16 +0000 (14:55 -0600)]
Abandon plans to change viacode's return of unassigned
The BUGS section of the charnames pod said that it was a bug to return
undef for unassigned characters, whereas the real Unicode name is the
empty string. demerphq noted that undef stringifies to the empty
string, so we are in fact in compliance with the standard. This
clarifies the pod wording, removing the text from the BUGS section.