| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
|
|
|
|
|
|
|
|
| |
When looking for locales to test, skip ones which aren't defined in
every locale category we care about. This was motivated by a Net BSD
machine which has a Pig Latin locale, but it is defined only for
LC_MESSAGES.
This necessitated adding parameters to pass the desired locale(s), and
renaming a test function to indicate the current category it is valid
for.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit bfa0ee78b652802412c3cab86bb873ed67ea6550.
This commit turned out to be contentious, and since we are past the
contentious features freeze date, no matter what else, it should be
reverted.
The argument for the commit essentially boils down to 'use utf8'
indicates that the text within its scope should be treated as utf8.
That means that any patterns with literals in them should be treated as
utf8, but utf8-encoded patterns follow Unicode rules by definition.
The arguments against it are that code relies on the way it has always
worked (even if that was an oversight), and in fact several CPAN modules
were broken by it, [perl #121162]. Also it has been the stated intent
that 'use utf8' will eventually become a no-op, meaning all text will be
treated as utf8, and that shouldn't have to mean that backwards
compatibility will be broken then.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
-Wunused-label
-Wmissing-prototypes was complaining about declaring XS()
functions without previously declaring a prototype.
-Wundef didn't like using #if foo instead of #ifdef foo
-Wunused-label warned because VER_{IV,NM,PV} were defined on all
versions of perl, but only used on < 5.17.2
|
|
|
|
|
|
|
|
|
|
|
| |
In b3a2acfa0c0e4f8e48e1f6eb4d6fd143f293d2c6 I added new exceptions, but
forgot to test them properly. In the process I managed to partially break
the functionality, and since it was not tested I did not notice.
Ilmari on #p5p pointed out I forgot the test, and in the end I had to completely
rewrite the original patch.
Now tested as fully as I could. Thanks Ilmari.
|
|
|
|
|
|
|
| |
When the perl version is bumped in blead, Module-CoreList
should be prepared to include a stub entry for this new version.
This tests for the existence of the stub-entry.
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
|
|
| |
This will help field debugging of locale issues.
|
|
|
|
|
|
| |
This reverts commit d61570b1bbf3e2d76cc293690156fb361b054272. This
commit was made unnecessary by commit
3f9a3488327f59f53c00adc132d91f19840e2a50.
|
|
|
|
|
|
|
|
|
| |
Commits 51b4c035919497f474ce46dcbdac1d2f3fd18a84 and
02257115537194d7a3b36a956d5643069f78c54f fixed some too-long verbatim
line issues. I'm not sure why commit
b3a2acfa0c0e4f8e48e1f6eb4d6fd143f293d2c6 added them to the db, as they
were fixed before it was applied. My guess is that the workspace had
not been rebased recently enough.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
02-Feb-2014 Marek Rouchal <marekr@cpan.org>
-----------------------------------------------------------------------------
Version 1.62
+ CPAN#87891: More sanity checks in podselect()
documentation patches by florent.angly@gmail.com, and a bit of stricter
checking what clients pass to podselect()
|
|
|
|
|
|
|
|
|
|
| |
The linker ignores all the flags and works as if under RTLD_LOCAL,
so don't give users the headache of seeing warnings ala
"Can't make loaded symbols global on this platform while loading %s"
when using a module that subclasses DynaLoader and defines
dl_load_flags to anything else.
|
|
|
|
|
|
|
|
|
|
|
|
| |
Several modules on CPAN expect being able to pass the library
name returned by ->link to DynaLoader::dl_load_file and have it Just Work.
However, because ->link returns relative paths, those modules ran afoul
of Android's linker, which will only look in a handful of hardcoded
system directories for relative libraries, plus whatever LD_LIBRARY_PATH
pointed to at the start of execution.
This commit makes ->link on Android always return an absolute path,
which will be found by the linker.
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
2.065 3 February 2014
* [PATCH] resolve c++ build failure in core
[#92657]
* gcc -g3: final link failed: Memory exhausted
[#88936]
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
isblank() is a C99 construct, Perl tries to handle the use of this on
C89 platforms by using the standard hard-coded definition. However,
this code was not updated to account for UTF-8 locales when handling for
those was recently added (31f05a37c), since in a UTF-8 locale the
no-break space is also considered to be a blank.
This commit fixes that. Previously regcomp.c generated the hard-coded
definitions when there was no isblank(), using #ifdef'd code. That
special handling was removed, and [:blank:] is always treated just like
any other POSIX class. The specialness of it is hidden entirely in
handy.h. This simplifies the regcomp.c code slightly. I considered
removing the special handling for isascii(), also a C99 construct, in
the name of simplicity over the slight speed that would be lost. But
the special handling is only a single line in two places, so I left it
in.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The actual behavior of $/ under various settings and how it is documented
varies quite a bit. Clarify the documentation, and add various checks
that are validated when setting $/.
The gist of the problem was that the way that weirdo ref assignments were
handled was mostly broken:
* setting to a reference to an array, hash, or other higher level
construct would behave similarly to setting it to a reference to a
an integer, by numifying the ref and using it as an integer. This
behavior was entirely undocumented.
* setting to a reference to 0 or to -1 was *documented* in triggering
"slurp" behavior, but actually did not. Instead it would set the
separator to the stringified form of the ref, which would *appear* as
slurp behavior due to the unlikelihood of a file actually containing
a string which matched, however was less efficient, and if someone's
luck were *terrible* might actually behave as a split.
In the future we wish to support more sophisticated ways of setting the
input record separator, possibly supporting things like:
$/= [ "foo", "bar" ];
$/= qr/foo|bar/;
Accordingly this patch *forbids* the use of a non scalar ref, and raises
a fatal exception when one does so.
Additionally it treats non-positive refs *exactly* the same as assigning
undef, *including* ignoring the original value and setting $/ to undef.
The means the implementation now matches the documentation. However
since this might involve some crazy script changing in behavior (as one
can't fetch back the original ref from $/) I have added a warning in
category "deprecated" advising the user what has happened and
recommending setting to "undef" explicitly.
As far as I can tell this will only *break* code doing extremely dodgy
things with $/.
While putting together this patch I encountered numerous problems with
porting tests. First off was porting/podcheck.t, which failed test without
saying why or what to do, even under TEST_VERBOSE=1. Then when I did a
regen to update the exceptions database and then used that information
to try to fix the reported problems it seems that it does not work properly
anyway. Specifically you aren't allowed to have a / in the interesting
parts of a L<> reference. If you replace the / with an E<0x2f> then the
link is valid POD, but podcheck.t then considers it a broken link. If
you then replace the / in perdiag with E<0x2f> as well then
porting/diag.t complains that you have an undocumented diagnostic!
Accordingly I used the --regen option of podcheck.t to add exceptions to
the exception database. I have no idea if the pod is correctly formatted
or not.
|
|
|
|
|
|
|
|
|
| |
The flag tells us that a pattern may match an infinitely long string.
The new member in the regexp struct tells us how long the string might
be.
With these two items we can implement regexp based $/
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Attached is a patch to bring blead up to date with the latest CPAN
release of version.pm 0.9908. All tests pass (except the expected
porting/customized.t).
I'm hopeful that this will be the last update for a while. Thanks to
Daniel Dragan for his insistent prodding to improve the code. ;-)
Thanks
John
>From c501530aa386a3ccbdb35bcccbccd35d70315651 Mon Sep 17 00:00:00 2001
From: John Peacock <jpeacock@cpan.org>
Date: Sun, 2 Feb 2014 11:57:44 -0500
Subject: [PATCH] Update bleadperl to CPAN 0.9908 release
Signed-off-by: Chris 'BinGOs' Williams <chris@bingosnet.co.uk>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
There were three things wrong with these couple of lines of code.that
help generate the synthetic start class (SSC).
1) It used PL_regkind, instead of straight OP. This meant that /u
matches were treated the same as /d matches since they both have the
same regkind.
2) For what it thought was just for /d, it used the complement of
ASCII, which matches 128-INFINITY, whereas it wanted 128-255 only..
3) It did a union of this complement, instead of a subtract of the
non-complement, forgetting that we are about to complement the
result, so that if we want the end result to have something, we
better have the input not have that something, or the complementing
will screw it up.
|
|
|
|
|
| |
For otherwise, they get turned into verbatim lines. I don't know where
to document this.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
isblank() is a C99 function that may or may not be present,
meaning checking for what's blank under a non-POSIX/C locale may
not match Unicode code points that are considered blank, such as
non-breaking space.
Make the tests for these conditions TODO as it's possible Perl
could implement its own isblank() for these conditions, at least
for UTF-8 locales.
N.B. If there are implementations that provde isblank() but have
it match only space and tab regardless of locale, this change
probably won't help.
t/re/charset.t probably needs similar treatment.
|
| |
|
|
|
|
|
|
|
|
|
|
| |
With multiple threads (and Win32 fork() is implemented in terms of
threads), Win32's popen() code had a race condition where a different
thread could write to the stdout (or read from the stdin) handle setup
for a child process.
Avoid this by using the Win32 API to supply the I/O handles instead of
redirecting them in the current process.
|
|\ |
|
| | |
|
|/ |
|
|
|
|
| |
This should be true even if the pattern isn't in utf8.
|
| |
|
|
|
|
| |
Upstreamed as CPAN RT#92657
|
|
|
|
|
|
|
|
|
| |
[DELTA]
2.064 1 February 2014
* RT #90216: IO-Compress/t/050interop-gzip.t: Use android-compatible
flags when calling gzip
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
2.064 1 February 2014
* [PATCH] Handle non-PVs better
[#91558]
* Z_OK instead of Z_BUF_ERROR
[#92521]
|
|
|
|
|
|
|
|
|
| |
[DELTA]
2.064 1 February 2014
* [PATCH] Handle non-PVs better
[#91558]
|
|
|
|
| |
Spotted by Daniel Dragan on #p5p
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[DELTA]
6.88 Fri Jan 31 20:49:13 GMT 2014
No changes from 6.87_05
6.87_05 Tue Jan 28 13:54:21 GMT 2014
Bug fixes:
* Synchronisation with blead to remove old cross-compilation model
6.87_04 Sun Jan 26 19:29:05 GMT 2014
Bug fixes:
* On Android, pass PERL_LIB through rel2abs().
6.87_03 Sun Jan 19 17:49:43 GMT 2014
Bug fixes:
* Get rid of unused printf arguments in dynamic_bs
6.87_02 Sat Jan 18 13:00:36 GMT 2014
Doc fixes:
* Update documentation for LICENSE attribute.
Bug fixes:
* Get rid of unused printf arguments in dir_target
6.87_01 Sun Jan 12 10:31:41 GMT 2014
Doc fixes:
* mention that TEST_REQUIRES is in v6.64 and above
|
|
|
|
|
|
|
|
| |
section
I added this section to the latest perldelta, and Dave M pointed out
that it should become a standard section in the future, so I have added
it to the perldelta_template.pod
|
| |
|
| |
|
|
|
|
| |
And add an assert to be sure that we are correct.
|
|
|
|
|
| |
Having tests fail because vim created a ~ file for something is just
annoying.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Patch 8b6a017ccef7126ae5bcac137fa9a45de4f2c155 added some malformed
entries to Porting/Glossary. (The entries were missing a trailing
colon).
These malformed entries would produce a cryptic one-line warning,
but only when various files were being regenerated. To make things
more difficult these warnings would be produced at the top of, or
in the middle of a large stream of other compilation actions, easily
allowing one to overlook them. Even if you noticed them the information
provided did not make it particularly easy to figure out what was wrong.
This patch changes things so that the warnings contain more information,
it also causes configpm to die, and thus break the build process, once
it finishes scanning the glossary if there were any warnings during
processing. This allows us to avoid whackamole when dealing with multiple
broken entries, and makes it painfully obvious if there are issues
processing the glossary file, which should prevent any future repeat
of the errors in 8b6a017ccef7126.
|
|
|
|
|
|
|
|
|
| |
Patch 8b6a017ccef7126ae5bcac137fa9a45de4f2c155 added three
new entries to Porting/Glossary. These entries were malformed
from the point of view of configpm, which would warn about them.
This fixes the entries, by adding a missing colon to the first
line of each glossary entry.
|
|
|
|
| |
convention
|