summaryrefslogtreecommitdiff
path: root/lib
Commit message (Collapse)AuthorAgeFilesLines
* [perl #71998] overload::Method can die with blessed methodsFather Chrysostomos2010-09-282-3/+13
| | | | | | | | | | | | | | | | | | If an overload method is itself blessed into a class that has overloaded operators but does not have fallback enabled, then an error is produced: $ perl5.10.0 use overload '+' => sub{}; bless overload::Method main => '+'; overload::Method main => '+'; ^D Operation "ne": no method found, left argument in overloaded package main, right argument has no overloaded magic at /usr/local/lib/perl5/5.10.0/ overload.pm line 59. The attached patch fixes this.
* Version bump and perldelta for CarpFather Chrysostomos2010-09-271-1/+1
|
* [perl #78082] Carp.pm: Avoid autovivification of CORE::GLOBAL::callerAaron Crane2010-09-272-3/+9
| | | | And add a test to prevent this happening again.
* Try once more to fix sigtrap.tFather Chrysostomos2010-09-251-7/+9
| | | | | | | | | | | | | It produces output like this: lib/sigtrap....................................................sh: line 1: 66151 Abort trap ./perl "-I../lib" -Msigtrap=INT -e 'sub { kill q-INT-, $$ } -> (3)' 2>&1 ok And is effectively skipped on Windows. So this new revision of the test • calls the signal handler directly, instead of trying to trigger it with a signal and • overrides kill globally to stop sigtrap.pm from aborting.
* charnames.pm: reformat commentsKarl Williamson2010-09-251-8/+6
| | | | | | Now that have less indent, don't need so many lines. The only changes in this commit are several blocks of comments to occupy more of each line. No wording changes are involved.
* charnames.pm: indent less to fit in 80 columnsKarl Williamson2010-09-251-415/+415
| | | | | | This patch changes white space only. It lessens the indent of certain lines that were made longer in an earlier commit, and now most of them fit into 80 columns.
* Teach Perl about Unicode named character sequencesKarl Williamson2010-09-253-442/+652
| | | | | | | | | | | | | mktables is changed to process the Unicode named sequence file. charnames.pm is changed to cache the looked-up values in utf8. A new function, string_vianame is created that can handle named sequences, as the interface for vianame cannot. The subroutine lookup_name() is slightly refactored to do almost all of the common work for \N{} and the vianame routines. It now understands named sequences as created my mktables.. tests and documentation are added. In the randomized testing section, half use vianame() and half string_vianame().
* charnames.pm: Nits in podKarl Williamson2010-09-251-13/+16
|
* charnames.pm: Clarify commentsKarl Williamson2010-09-251-6/+6
|
* charnames.t: Add output messageKarl Williamson2010-09-251-1/+1
|
* charnames.t: Clarify messageKarl Williamson2010-09-251-1/+1
|
* charnames.t: Clarify value is hexKarl Williamson2010-09-251-1/+1
|
* charnames.t: Add tests for NameAliasesKarl Williamson2010-09-251-0/+10
|
* charnames.pm: Change variable nameKarl Williamson2010-09-251-13/+13
| | | | | This is an intermediate commit in preparation for handling named sequences
* charnames.t: Add code so can test 100% of namesKarl Williamson2010-09-251-1/+12
| | | | | | If the percentage of characters to test is changed to 100%, add code to make the block size 1. This guarantees each character gets tested in spite of randomness
* charnames.t: clarify commentsKarl Williamson2010-09-251-4/+7
|
* charnames.t: Don't call srand(undef)Karl Williamson2010-09-251-3/+9
| | | | | srand(undef) is the same as srand(0). The code is trying to get random seeds, not a fixed one.
* charnames: Remove unnecessary \t in Name.plKarl Williamson2010-09-252-10/+10
| | | | | The double \t\t is unnecessary, and so we can remove one of them, shortening the table.
* charnames.pm: Small performance enhancementsKarl Williamson2010-09-252-32/+36
| | | | | | mktables is changed to output 5 digit code points, which means that charnames doesn't have to go looking for the boundaries, which gives a slight performance enhancement.
* mktables: Remove stubbed out codeKarl Williamson2010-09-251-27/+0
| | | | | | | | | This commented out code will never be used, as a different solution was done in charnames. It was to automatically handle parenthesized character names. Unicode is extremely unlikely to ever add new names like this, and all the existing names are now hard-coded in charnames.pm
* Make the new sigtrap.t test more tolerant of OS differencesFather Chrysostomos2010-09-241-7/+7
|
* Modify a utf8.t test in anticipation of a fix for [perl #74022]Father Chrysostomos2010-09-241-2/+3
| | | | | | | In anticipation of a fix for [perl #74022], this patch corrects the test for q·foo· in utf8.t to use ¡ instead of ·. I’ve also moved the test outside of the eval, so it will still run (and fail) if the com- pilation fails, instead of causing an invalid test count.
* sigtrap version bump + perldeltaFather Chrysostomos2010-09-241-1/+1
|
* Add tests for [perl #72340] sigtrap attempts to modify read-only thingFather Chrysostomos2010-09-241-1/+11
|
* [perl #72340] sigtrap attempts to modify read-only thingyJoshua N Pritikin2010-09-241-1/+2
| | | | | No much to say. sigtrap otherwise attempts to modify a read-only thingy. Patch below solves it for me.
* The rest of [perl #71710] fixes for File::FindAlex Davies2010-09-241-3/+7
| | | | | | | | | | | | The code is from Alex Davies. The commit message is from the committer. Somehow I only ended up with half the patch applied. No tests failed for me, because these code paths are only reached on Windows, which, thankfully, I am not using. Hopefully this will eliminate the smoke that is already pouring in.... (It’s *my* turn to break blead for Windows. :-)
* Oops. I broke sigtrap.t’s test outputFather Chrysostomos2010-09-241-1/+3
|
* Convert sigtrap.t to test.plFather Chrysostomos2010-09-231-1/+2
|
* [perl #71712] fixes for File::DosGlobAlex Davies2010-09-232-3/+51
| | | | | | | The changes are 1. Allow for parentheses in glob pattern. 2. Strip redundant "./" from drive relative glob patterns results.
* [perl #71710] fixes for File::FindAlex Davies2010-09-232-9/+73
| | | | | | | | Please find attached patches for File::Find and its test file. These changes ensure that paths passed to File::Find::find() on Win32 which have a trailing *back*slash are neatly handled. That is, the change ensures paths such as c:\dir\/file are no longer generated.
* make sure perl doesn't touch stat.t between statsTony Cook2010-09-221-3/+13
| | | | | | | | | | | | | | | | ebcfa0534 changed stat.t to avoid using TEST as the stat target, since it is read by other test scripts. But with the initial stat() in the BEGIN block perl is still reading the script for compilation, which will update the access time. Since the system clock usually didn't tick another second between the first and second stats, the test usually succeeded, but occasionally the clock would tick, and the test would fail. Moved the stat() out of the BEGIN block to avoid that. As a check I temporarily added a 2 second sleep after the initial stat to ensure we didn't have a similar problem to that will allowed this to pass most of the time.
* Test localization of English.pm’s $LIST_SEPARATOR [perl #47107]Michael G Schwern2010-09-201-1/+11
|
* compare stat results on a file that isn't touched elsewhereTony Cook2010-09-211-1/+1
| | | | | | lib/File/stat.t compares two stat calls on t/TEST against each other, but other tests read t/TEST, modifying its access time, causing rare random failures in stat.t in parallel tests.
* Add (?^...) regex constructKarl Williamson2010-09-201-1/+1
| | | | | | | | | | | | | | | | | | This adds (?^...) to signify to use the default regex modifiers for the cluster or embedded pattern-match modifier change. The major purpose of this is to simplify regex stringification, so that "^" is output in place of "-xism". As a result, the stringification will not change in the future when new regex modifiers are added, so tests, etc. that rely on a particular stringification will have to change now, but never again. Code that needs to work properly with both old- and new-style regexes can use something like the following: # Accept both old and new-style stringification my $modifiers = (qr/foobar/ =~ /\Q(?^/) ? '^' : '-xism'; This construct is Ben Morrow's idea.
* Back out the mauve module and related changesFlorian Ragwitz2010-09-162-541/+0
| | | | | | | | | | | | | | | | | | | | | It's was intended as a temporary namespace only, and we really don't want to ship it in any release until we've figured out what it should really look like. This reverts commit 05c0d6bbe3ec5cc9af99d105b8648ad02ed7cc95, "add sv_reftype_len() and make sv_reftype() be a wrapper for it" commit 792477b9c2e4c75cb03d07bd6d25dc7e1fdf448e, "create the "mauve" temporary namespace for things like reftype" commit 8df6b97c1de8326d50ac9c8cae4bf716393b45bb, "mauve.t needs access to %Config, make sure it's available" commit cfe9162d0d593cd12a979c73df82c7509b324343, "use more efficient sv_reftype_len() interface" and commit 47b13905e23c2a72acdde8bb4669e25e5eaefec4 "add more tests to lib/mauve.t so it tests also that mauve::reftype can return "LVALUE"" There's a `mauve' branch still containing all the code for the temporary mauve namespace. That should be used to work on it until it's mostly ready to be released, and only then merged to blead. Alternatively, it should be deleted if another way to provide mauve's features in the core is found.
* Bump $open::VERSIONFlorian Ragwitz2010-09-151-1/+1
|
* improve open.pm layer class error messageAristotle Pagaltzis2010-09-131-1/+1
|
* Test %main::OVERLOAD, which was almost broken by a proposed fix forFather Chrysostomos2010-09-131-1/+10
| | | | [perl #76138].
* rename &warnings::register to avoid ambiguityRicardo Signes2010-09-122-4/+4
| | | | | until this change code calling "warnings::register->import" was confused by &warnings::register existing.
* Upgrade EUMM from version 6.57_01 to 6.57_05Florian Ragwitz2010-09-111-0/+1
|
* Bump $warnings{,::register}::VERSIONFlorian Ragwitz2010-09-102-2/+2
|
* Update warnings.pl with the ::register changesFlorian Ragwitz2010-09-101-2/+1
| | | | Also regenerate lib/warnings.pm from that.
* improve registration of warning categoriesRicardo Signes2010-09-102-10/+40
| | | | | | | | | | | | | | | | | | | | 1. &warnings::register is added as the public mechanism for adding new warning categories, rather than warnings::register::import knowing about warnings's internals 2. warnings::register::import is updated to use &warnings::register 3. warnings::register::import can take a list of subcategories The upshot is that you can now write: package MyTool; use warnings::register qw(io typos); warnings::warnif('MyTool::io', $message); ...and tools that register new warnings categories do not need to cargo cult code from warnings/register.pm
* Remove qw(...) as parentheses deprecated warningsPaul Johnson2010-09-101-1/+1
|
* make qw(...) first-class syntaxZefram2010-09-082-15/+15
| | | | | | | | | | This makes a qw(...) list literal a distinct token type for the parser, where previously it was munged into a "(",THING,")" sequence. The change means that qw(...) can't accidentally supply parens to parts of the grammar that want real parens. Due to many bits of code taking advantage of that by "foreach my $x qw(...) {}", this patch also includes a hack to coerce qw(...) to the old-style parenthesised THING, emitting a deprecation warning along the way.
* Tests using t/lib/common.pl need to run in separate directories.Nicholas Clark2010-09-011-2/+2
| | | | | | | Commit 8f776eae73090661 turned out to be a bit optimistic with "should be capable of running in parallel", as the temporary files and modules written out by the various test scripts have clashing names. Hence run each test a private subdirectory.
* Add test for deprecation warnings from h2phFlorian Ragwitz2010-09-011-8/+10
| | | | This makes sure the fix for RT#74404 is working.
* Stop Tie::Hash->TIEHASH() looping forever.Nicholas Clark2010-09-012-4/+28
| | | | | This change is analogous to bc3707112523ba7a in Tie::Scalar, but with far fewer tests.
* Bump blib::VERSION after 3f9bb6bFlorian Ragwitz2010-09-011-5/+5
|
* Avoid needless use of UTF8=1 format [RT#56336]Eric Brine2010-08-311-1/+0
| | | | | Some literals (e.g. q'abc') don't set the UTF8 flag for pure ASCII literals. Others (e.g. -abc) do. This should be consistent.