summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Deprecate certain rare uses of backslashes within regexesKarl Williamson2013-01-1914-51/+204
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are three pairs of characters that Perl recognizes as metacharacters in regular expression patterns: {}, [], and (). These can be used as well to delimit patterns, as in: m{foo} s(foo)(bar) Since they are metacharacters, they have special meaning to regular expression patterns, and it turns out that you can't turn off that special meaning by the normal means of preceding them with a backslash, if you use them, paired, within a pattern delimitted by them. For example, in m{foo\{1,3\}} the backslashes do not change the behavior, and this matches "f", "o" followed by one to three more occurrences of "o". Usages like this, where they are interpreted as metacharacters, are exceedingly rare; we think there are none, for example, in all of CPAN. Hence, this deprecation should affect very little code. It does give notice, however, that any such code needs to change, which will in turn allow us to change the behavior in future Perl versions so that the backslashes do have an effect, and without fear that we are silently breaking any existing code. =head1 Performance Enhancements
* toke.c: White-space alignment onlyKarl Williamson2013-01-191-8/+8
|
* Revert "Deprecate literal unescaped "{" in regexes."Karl Williamson2013-01-194-34/+22
| | | | | | | | | This reverts commit 2a53d3314d380af5ab5283758219417c6dfa36e9. Not the entire commit was reverted, but the deprecation message is gone. This caused too many problems. See thread http://www.nntp.perl.org/group/perl.perl5.porters/2012/11/msg195425.html (which lists previous threads).
* Extend strictness for qr/(?[ \N{} ])/Karl Williamson2013-01-197-13/+37
| | | | | | | | | | This recently added regex syntax imposes stricter rules on parsing than normal. However, this did not include parsing \N{} constructs that occur within it. This commit does that, making fatal the warnings that come from \N{} I will add to perldiag the newly added messages along with the others for (?[ ]) before 5.18 ships
* constant-1.25 has been released to CPANChris 'BinGOs' Williams2013-01-191-1/+1
|
* Remove checks for Perl 5.6; adjust tests; bump version number.James E Keenan2013-01-182-7/+5
| | | | | | | | | | | | | | | | | | Patch contributed by Sébastien Aperghis-Tramoni For: RT #114770. # Please enter the commit message for your changes. Lines starting # with '#' will be ignored, and an empty message aborts the commit. # On branch blead # Your branch is ahead of 'origin/blead' by 1 commit. # # Changes to be committed: # (use "git reset HEAD^1 <file>..." to unstage) # # modified: dist/constant/lib/constant.pm # modified: dist/constant/t/constant.t #
* Skip t/io/eintr.t on older Darwins.James E Keenan2013-01-181-2/+4
| | | | | | | Identify the OS version by capturing the first two parts of the M.m.p version number. For RT #116262
* Update Socket to CPAN version 2.009Chris 'BinGOs' Williams2013-01-184-9/+14
| | | | | | | | | | | | | | | | | | | [DELTA] 2013/01/18 2.009 CHANGES: * Fix building in core by skipping check_for() as it doesn't work there (RT82760) 2012/12/27 2.008 CHANGES: * Fix uninitialised memory read (RT82119) 2012/12/16 2.007 CHANGES: * Test %Config keys for definedness, not mere existence (RT79854) * Fix missing argument in sprintf in Socket.xs (from perl.git 5d6dfea82e1c4b6, RT82007)
* Update Pod-LaTeX to CPAN version 0.61Aaron Crane2013-01-182-2/+4
| | | | | | | | | Upstream changes: - Update site vs perl install for perl v5.12 and above - Issue a deprecation warning if the module is being used in perl 5.17.0 and above. This module will be removed from perl Core for perl 5.20. (Ricardo Signes) It will still be available on CPAN.
* rearrange initializations in S_intuit_more for better code genDaniel Dragan2013-01-181-3/+5
| | | | | | | | | | | | | | MS VC 2003 in my experiance does not reorder var initializations with constants to reduce their liveness. This commit attempts to defer initialization until right before the var is first used. I can't explain exactly why less instructions or shorter addressing happened since I didnt record what the asm looked like before. On VC 2003 -O1 -GL, S_intuit_more was previously 0x4B5 bytes of 32 bit machine code long, after it this change it is 0x4A3 bytes long. These changes should have no user visible effect. The scope of the vars was not reduced to avoid large indentation changes which would be required under C89 and Perl code formatting policy.
* todo: revisit the super-linear cacheAaron Crane2013-01-181-0/+15
| | | | Suggested by Yves.
* further refinement to EISDIR tests from `perl dir`Ricardo Signes2013-01-181-3/+2
| | | | | | | | 1. actually use the EISDIR string, rather than getting it and not using it; this was a refactoring screw-up 2. don't hardcode the Win32 EACCES error, either, use the same "$!" mechanism
* use non-dev version for SafeRicardo Signes2013-01-171-1/+1
|
* use non-dev version for IORicardo Signes2013-01-171-1/+1
|
* use non-dev version for I18N::LangTags::ListRicardo Signes2013-01-172-2/+2
| | | | ...and sync with I18N::LangTags
* bump I18N::Langinfo to a non-dev versionRicardo Signes2013-01-171-1/+1
|
* tweak the way we mention if.pmRicardo Signes2013-01-171-1/+1
| | | | | It should be clear even to readers of the documentation in text format that "if" is a module and not the "if" flow control.
* Added asserts() to check the arguments to S_copy_little_tm_to_big_TM.Andy Dougherty2013-01-171-0/+2
| | | | | | The original version just zeroed dest if src == NULL, but that code path was never used. (gcc -Os inlined the function and optimized the test away anyway.)
* remove an useless null check in S_copy_little_tm_to_big_TMDaniel Dragan2013-01-171-28/+23
| | | | | | | | | All callers of S_copy_little_tm_to_big_TM pass a true variable src. Checking for null is pointless. On Win32 32 bit VC 2003 -O1 -GL, perl517.dll's .text section went from 0xCO13F to 0xC012F bytes long. It can be argued that the compiler should have figured this out on its own, but VC for whatever reason didn't. Also pretty the indenting and align the assignments. The null check blames to commit 806a119aef .
* utf8.c: Reword a warning messageKarl Williamson2013-01-162-13/+12
| | | | This follows the suggestion by Aristotle Pagaltzis.
* perldiag: Move an out-of-alphabetical_order entryKarl Williamson2013-01-161-12/+13
|
* Update File-Path to CPAN version 2.09Chris 'BinGOs' Williams2013-01-162-5/+9
| | | | | | | | [DELTA] 2.09 2013-01-13 21:09:12 UTC - merge two bugfixes from blead see https://github.com/dland/File-Path/pull/1
* Update Test to CPAN version 1.26Chris 'BinGOs' Williams2013-01-162-2/+2
| | | | | | | [DELTA] 1.26 2013-01-16 Jesse R Vincent <jesse@bestpractical.com> * Bump version to a stable number. No functional changes
* utf8.h: Add commentsKarl Williamson2013-01-162-9/+44
| | | | This also reorders one #define to be closer to a related one.
* Avoid wraparound when casting unsigned size_t to signed ssize_t.Andy Dougherty2013-01-161-4/+4
| | | | | | Practically, this only affects a perl compiled with 64-bit IVs on a 32-bit system. In that instance a value of count >= 2**31 would turn negative when cast to (ssize_t).
* PATCH: [perl 116411]: code comment for commit 518a5310cc "Silence a ↵bulk88 (via RT)2013-01-161-0/+2
| | | | | | | | | | | MSVC++-specific warning" There is no written investigation to google up for the record. I don't want to forget that the #ifdef is benign and accidentally reinvestigate it in the future. .text section of perl517.dll was 0xC013F before and after the commit. No change. -----------------------------------------------------------------
* in testing EISDIR string, check known value firstRicardo Signes2013-01-161-5/+6
| | | | | | | It was not enough to ensure the English value, as some platforms use a different string entirely. Rather than goof around with figuring them out, just get the known value by making an EISDIR and stringifying it, then compare to that.
* Revert "Upgrade Socket to CPAN version 2.008"Ricardo Signes2013-01-163-12/+8
| | | | | | | This reverts commit 90ae46a10a094e68135385e525c78962d6572da3. Socket 2.008 fails to build on Linux in core, and possibly other platforms as well.
* Upgrade Socket to CPAN version 2.008Ricardo Signes2013-01-163-8/+12
| | | | | | | | | | | | 2012/12/27 2.008 CHANGES: * Fix uninitialised memory read (RT82119) 2012/12/16 2.007 CHANGES: * Test %Config keys for definedness, not mere existence (RT79854) * Fix missing argument in sprintf in Socket.xs (from perl.git 5d6dfea82e1c4b6, RT82007)
* perlfunc.pod: fix incorrect short description of `length`Aaron Crane2013-01-161-1/+1
| | | | | Thanks to ranguard for pointing out the report at https://github.com/perlorg/perlweb/issues/65
* Update Test-Harness to CPAN version 3.26Chris 'BinGOs' Williams2013-01-164-8/+9
| | | | | | | | [DELTA] 3.26 2013-01-16 - Renamed env.opts.t to env_opts.t (for VMS) - Skipped some TAP::Formatter::HTML tests due to this bug: #82738
* Remove the Rhapsody port.Nicholas Clark2013-01-168-150/+8
| | | | | | | Rhapsody was an Apple OS that later evolved into Darwin and Mac OS X. It was initially only released to developers, but later became Mac OS X Server, with releases in 1999 and 2000. It was obsoleted by Mac OS X 10.0, released in March 2001.
* New PathTools CPAN release 3.40Steffen Mueller2013-01-161-1/+1
|
* Cwd/File::Spec version bump to 3.40Steffen Mueller2013-01-1610-11/+11
|
* avoid having to worry whether the test runs in a localeRicardo Signes2013-01-151-0/+4
| | | | | | This is a time-honored tradition from such places as t/op. Tony Cook alerted me to failures caused by this test on machines smoking in non-English locales.
* Update Digest-SHA to CPAN version 5.81Chris 'BinGOs' Williams2013-01-159-19/+28
| | | | | | | | | | [DELTA] 5.81 Mon Jan 14 05:17:08 MST 2013 - corrected load subroutine (SHA.pm) to prevent double-free -- Bug #82655: Security issue - segfault -- thanks to Victor Efimov and Nicholas Clark for technical expertise and suggestions
* Silence a MSVC++-specific warningSteve Hay2013-01-153-8/+27
| | | | | ("function declared with __declspec(noreturn) has non-void return type" / "function declared with __declspec(noreturn) has a return statement".)
* handy.h: Fix isIDCONT_utf8()Karl Williamson2013-01-142-1/+5
| | | | | It was handling above-Latin1 code points as IDstarts instead of continues.
* Silence a couple of warningsSteve Hay2013-01-143-3/+3
| | | | | ("'initializing' : conversion from 'I32' to 'U8', possible loss of data" and "formal parameter n different from declaration".)
* Add warnings for "\08", /\017/Karl Williamson2013-01-149-3/+96
| | | | | | | | | | | | | This was discussed in thread http://perl.markmail.org/thread/avtzvtpzemvg2ki2 but I never got around to this portion of the consensus, until now. I did a cpan grep http://grep.cpan.me/?q=%28^|[^\\]%29\\[0-7]{1%2C2}[8-9]&page=1 and eyeballing the results, saw three cases where this warning might show up; one of which was for EBCDIC. The others looked to be false positives, such as in .css files.
* bump threads::shared version 1.43Jerry D. Hedden2013-01-142-3/+3
| | | | To sync with the forthcoming CPAN release.
* regcomp.c: Silence compiler warningKarl Williamson2013-01-131-1/+2
| | | | | Some compilers say this can be used uninitialized. I don't believe them, but silencing them will save effort in the long run.
* Make Data::Dumper XS ignore Freezer return valueAaron Crane2013-01-133-3/+10
| | | | Fixes RT #116364
* regcomp.c: Stop potential leaksKarl Williamson2013-01-131-2/+2
| | | | | These two ref counts were not at the same level as their corresponding dec.
* regcomp.c: Add comments; align ternary operator for clarityKarl Williamson2013-01-131-8/+15
|
* reg_mesg.t: Add, revise test namesKarl Williamson2013-01-131-3/+3
|
* embed.fnc: Clarify that varargs suppresses embed.hKarl Williamson2013-01-131-1/+2
| | | | | Macro don't have variable numbers of args, hence the entry in embed.h is suppressed.
* better POD for unpackstringDaniel Dragan2013-01-131-1/+3
| | | | | Someone asked me how to use unpackstring() since they couldn't figure it out from the docs, so I added some things.
* Create deprecated fncs to replace to-be-removed macrosKarl Williamson2013-01-125-3/+41
| | | | | | | | | | | These macros should not be used as they are prone to misuse. There are no occurrences of them in CPAN. The single use of either of them in core has recently been removed (commit 8d40577bdbdfa85ed3293f84bf26a313b1b92f55), because it was a misuse. Instead code should use isIDFIRST_lazy_if or isWORDCHAR_lazy_if (isALNUM_lazy_if is also available, but can be confused with the Posix alnum, which it doesn't mean).
* porting/args_assert.t: Needs to look in inline.h tooKarl Williamson2013-01-121-0/+2
| | | | | inline.h is a special header file that contains C functions, and hence perhaps PERL_ARGS_ASSERTS.