summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Finalise perldelta and update perlhistv5.31.7Nicolas R2019-12-202-219/+166
|
* Adjust release_managers_guide for GH trackerNicolas R2019-12-201-1/+1
|
* Update Module::CoreList for 5.31.7Nicolas R2019-12-201-0/+137
|
* Mention CI smokers in release_managers_guideNicolas R2019-12-201-0/+8
| | | | List and link to the Continuous Integrations currently setup.
* Add a basic linux smoke GitHub ActionNicolas R2019-12-201-0/+43
| | | | | | | | | | | | In addition to Travis CI, it will not hurt to have some additional linux smokers running. We can see overtime if we want to keep one or the other. ♪ Let it Smoke, Let it Smoke ♫♫♫♬♭ Note: GitHub allow a total of 20 concurrent jobs.
* Bump Maintainers to point to CPAN 2.27Nicolas R2019-12-201-1/+1
| | | | | | Avoid listing CPAN in modules discrepancies list as the trial version we were using, after exclusions is the same as the most recent 2.27 one.
* Update Net::Ping to upstream version 2.72Nicolas R2019-12-209-21/+52
| | | | | | | | | | | | | | | | | | | | | | | | | | This retains blead customizations: * 1a58b39af8 remove of 'use vars' * 7bfdd8260c 500_ping_icmp.t: remove sudo code This is mainly a unit test changes / noop changes. Customized files are: t/000_load.t t/001_new.t t/010_pingecho.t t/500_ping_icmp.t t/501_ping_icmpv6.t Files not ported to blead: t/020_external.t t/600_pod.t t/601_pod-coverage.t Do not list Net::Ping customized files as mentioned by 48a109d29 Note: we could have considered doing nothing for this update, but this would avoid updating to the CPAN version, and preserved the existing patches.
* fixing usally and paternBryan Stenson2019-12-197-9/+10
| | | | | | | | | | | | | | | | Typos in documentation and inline comments. Pursuant to discussion on openbsd-tech list: https://marc.info/?t=157678644800005&r=1&w=2 https://marc.info/?t=157678570300002&r=1&w=2 For: https://github.com/Perl/perl5/issues/17379 https://github.com/Perl/perl5/pull/17380 Committer: Bryan Stenson is now a Perl author. Regenerate uconfig.sh via: perl regen/uconfig_h.pl
* t/charset_tools.pl: Avoid some work on ASCII platformsKarl Williamson2019-12-191-15/+22
| | | | | | | This sets things up so that functions on ASCII simply return their arguments, and don't have extra stuff in them for EBCDIC. It also moves an array initialization out of a function, so it is only done once, and doesn't initialize it on ASCII, as it isn't needed there.
* t/re/regexp.t: Speed up many regex tests on ASCII platformKarl Williamson2019-12-191-15/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This commit: commit 0cd59ee9ca0f0af3c0c172ecc27bb3f02da6db08 Author: Karl Williamson <khw@cpan.org> AuthorDate: Fri Sep 6 10:23:26 2019 -0600 Commit: Karl Williamson <khw@cpan.org> CommitDate: Mon Nov 11 21:05:13 2019 -0700 t/re/regexp.t: Only convert to EBCDIC once Some tests get added as we go along, and those added tests have already been converted to EBCDIC if necessary. Don't reconvert, which messes things up. caused a huge slowdown in regex tests. The most noticeable on my platform was regexp_qr_embed_thr.t which doubled in wall clock time spent. It turns out that it was because a function was now always being called, and that does nothing on ASCII platforms besides return its argument, which then was copied over the argument. This new commit causes the function to be a constant { 1; } on ASCII platforms, so should be completely optimized out, returning the time spent in that .t to 5.30 levels.
* regen/mk_invlists.pl: Move inversion list adjacent to similarKarl Williamson2019-12-185-21/+14
| | | | | This will lessen any paging that might occur. Further, on most builds, it and another table are identical, so only one is actually needed.
* perlfunc: link to "Plain Old Comments" section of perlsyn from __FILE__, ↵Dan Book2019-12-181-0/+8
| | | | __LINE__, and caller
* Mention that you cannot return from do BLOCKDan Book2019-12-181-2/+2
|
* PATCH: GH #17371Karl Williamson2019-12-182-2/+9
| | | | | | This was caused by a character being counted as both the first delimiter of a pattern, and the final one, which led to the pattern's length being negative, which was turned into a very large unsigned number.
* Add memCHRs() macro and use itKarl Williamson2019-12-1823-62/+105
| | | | | | | This replaces strchr("list", c) calls throughout the core. They don't work properly when 'c' is a NUL, returning the position of the terminating NUL in "list" instead of failure. This could lead to segfaults or even security issues.
* Update ExtUtils-MakeMaker to CPAN version 7.42Chris 'BinGOs' Williams2019-12-1834-45/+54
| | | | | | | | | | | | | | | | | | [DELTA] 7.42 Tue 17 Dec 22:02:25 GMT 2019 No changes since v7.41_01 7.41_01 Mon 16 Dec 21:36:24 GMT 2019 Test fixes: - README.pod warnings are suppressed during testing so no need to skip when PERL_CORE is defined Doc fixes: - Update referenced modules for new distributions - Updated SEE ALSO section accordingly
* PATCH: GH #17363 Reserve two sequencesKarl Williamson2019-12-171-0/+3
| | | | | | | We can't guarantee what people might do in the future with these two currently unused illegal pattern sequences. What I did was put a comment and code where things would have to change to use them to refer to this ticket.
* PATCH GH #17276 New compilation diagnosticKarl Williamson2019-12-171-2/+4
| | | | | The previous patch in commit 830b3eb245d5dbcf095fbd4b5d59764c697c20df didn't work generally. This uses #ifdef instead.
* Actually fix GH #17370Karl Williamson2019-12-171-0/+3
| | | | | | I only added a test, but not the change in 9f16475a53933d1d9c547f871b97b3b12160cece. The test passes except when run under address sanitizer or valgrind.
* don't use -Werror=declaration-after-statement with C++Tony Cook2019-12-171-5/+11
| | | | | | | | declaration after statement is normal for C++ and C++ compilers rightly complain if we try to warn (or error) on them, so don't try to. fixes #17353
* PATCH: GH #17370, read beyond buffer in grok_inf_nanKarl Williamson2019-12-171-1/+4
| | | | | Like GH #17367, this was caused by a failure to check that we aren't at the end of the buffer after advancing the ptr to it.
* Note that certain flags are documentedKarl Williamson2019-12-179-0/+60
| | | | | | | | | | | This is useful in Devel::PPPort for generating its api-info data. That useful feature of D:P allows someone to find out what was the first release of Perl to have a function, macro, or flag. And whether using ppport.h backports it further. I went through apidoc.pod and looked for flags that were documented but that D:P didn't know about. This commit adds entries for each so that D:P can find them.
* PATCH: GH #17367 read 1 beyond end of bufferKarl Williamson2019-12-172-1/+8
| | | | | This is a bug in grok_infnan() in which in one place it failed to check that it was reading within bounds.
* Local variable 'o' hides a parameter of the same name.James E Keenan2019-12-161-18/+18
| | | | | | | This sub-optimal code has been reported by LGTM static code analysis. There are actually two such instances very close to one another within op.c. This commit handles only the first of them, renaming a variable and regularizing the indents to make the relevant scope more self-evident.
* sv.h: Fix typo in podKarl Williamson2019-12-161-2/+2
|
* Update ExtUtils-MakeMaker to CPAN version 7.40Chris 'BinGOs' Williams2019-12-1639-129/+194
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | [DELTA] 7.40 Mon 16 Dec 19:33:13 GMT 2019 No changes since v7.39_05 7.39_05 Thu 21 Nov 11:45:13 GMT 2019 Bug fixes: - Always assume that libraries are shared on AIX 7.39_04 Mon 18 Nov 14:54:46 GMT 2019 Test Fixes: - Skip "merged /usr" tests on Cygwin QA Fixes: - Added cygwin testing with Github actions - Added macos testing with Github actions 7.39_03 Sun 17 Nov 19:53:04 GMT 2019 Doc fixes: - Fix typo in link to MakeMaker - Link to referenced modules from MM_Cygwin maybe_command 7.39_02 Thu 7 Nov 09:33:29 GMT 2019 Cygwin fixes: - Removed MM_Cygwin all_target() override Doc fixes: - Add crosslinks to various referenced documentation 7.39_01 Mon 16 Sep 07:19:37 BST 2019 Test fixes: - README.pod warnings suppressed during testing - Don't parallise dynamic/static tests
* Tick off 5.31.6, released 2019-11-20Matthew Horsfall2019-12-161-1/+1
|
* harden IO's cachepropagate-tcpTony Cook2019-12-161-1/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This failed on Win32 like in the #17351 CI checks with: ../dist/if/t/if.t .................................................. ok Can't call method "sockdomain" on an undefined value at t/cachepropagate-tcp.t line 46. # Looks like your test exited with 9 just after 5. ../dist/IO/t/cachepropagate-tcp.t .................................. Dubious, test returned 9 (wstat 2304, 0x900) Failed 3/8 subtests I suspect what happened is there was a race between the parent accepting the connection and the child exiting and closing the connection. The Microsoft documentation for accept() indicates one possible reason for failure is: WSAECONNRESET An incoming connection was indicated, but was subsequently terminated by the remote peer prior to accepting the call. which I suspect happened here. So I've: - added a basic error check for the result of accept() - made the child to wait for the parent to close the socket - the parent explicitly closes the socket
* treat TAINT_get and TAINTING_get as unlikelyTony Cook2019-12-162-3/+3
| | | | | | | | | | | | | | | | | While testing #17359 it appeared that inlining of SvTRUE was being suppressed (indicated by -Winline) by being used in the statement: if (TAINT_get || SvTRUE(error)) { but making TAINT_get unlikely allowed it to be inlined. I expect even in a program that does use taint the vast majority of data will be untainted, so I think it's safe to make TAINT_get UNLIKELY(). TAINTING_get is a harder case, but it's only used in a relatively much smaller number of cases, and I expect most runs of a system perl will have neither -T nor -t.
* Revert "Move PL_check to the interp vars to fix threading issues"Tony Cook2019-12-1615-96/+37
| | | | | and the associated commits, at least until a way to make wrap_op_checker() work is available.
* Update release scheduleSawyer X2019-12-151-4/+4
|
* t/re/pat.t: White-space onlyKarl Williamson2019-12-141-7/+7
|
* t/re/pat.t: Fix skip count for limited mem platformsKarl Williamson2019-12-141-6/+9
| | | | And rearrange so is easier to see the correct value.
* t/re/pat.t: Skip tests that don't work on EBCDICKarl Williamson2019-12-141-0/+3
| | | | These are fuzzer generated, and don't translate well to EBCDIC
* perlreref: Fix typosKarl Williamson2019-12-131-9/+9
| | | | | | Pointed out in GH #17363 https://github.com/Perl/perl5/issues/17363
* avoid identical stack tracesDavid Mitchell2019-12-136-2/+63
| | | | | | | | | | | | | | | | | | | | | GH #15109 The output of caller() (e.g. as produced by carp::Confess) produces multiple identical outputs when within a nested use/require. This is because at the time of calling the 'BEGIN { require ... }', PL_curcop is set to &PL_compiling, which is a fixed buffer within the interpreter, whose individual file and line fields are saved and restored when doing a new require/eval. This means that within the innermost require, PL_compiling has file:lineno of the innermost source file, and multiple saved PL_curcop values in the context stack frames all point to the same &PL_copmpiling. So all levels of the stack trace appear to come from the innermost file. This commit fixes this (after a fashion) by, at the start of calling a BEGIN, making PL_curcop point to a temporary copy of PL_compiling instead. This is all a bit of a hack.
* Enable Cygwin smoking on all kinds of branchesMax Maischein2019-12-131-1/+1
|
* Remove bad "git switch" commandMax Maischein2019-12-131-3/+0
| | | | "git switch" isn't supported by Github git anyway
* IO: update the ChangeLog after a (trial) release of IO to CPANRicardo Signes2019-12-121-0/+11
|
* perldelta for a559786348e0Chris 'BinGOs' Williams2019-12-121-0/+5
|
* perldelta for e6c7056ba6f1Tony Cook2019-12-121-0/+4
|
* un-TODO pl_check.t and remove io/handle.tTony Cook2019-12-122-31/+1
| | | | | | | io/handle.t depends on IO::Handle using the PL_check hack, but Nicholas's back portable fix no longer uses that Fix threaded perl detection, thanks to James Keenan.
* Move PL_check to the interp vars to fix threading issuesStefan Seifert2019-12-1211-37/+36
| | | | Fixes issue #14816
* provide a test for the PL_check mis-behaviourTony Cook2019-12-124-0/+86
| | | | | Nicholas Clark's fix for IO makes the test in niner's patch meaningless, so test it separately.
* Note that G_RETHROW is documentedKarl Williamson2019-12-111-0/+1
| | | | This is for Devel::PPPort.
* Fix where we look for the Sun/Solaris/Developer Studio compilerChris 'BinGOs' Williams2019-12-111-1/+1
| | | | The movable feast that is the sun/solaris/developer compiler
* perlpacktut: fix broken urlAsk Bjørn Hansen2019-12-111-1/+2
| | | | | | This is my best guess as for what it's meant to point to. Reported in https://github.com/OpusVL/perldoc.perl.org/issues/81
* regexec.c: Clarify commentKarl Williamson2019-12-111-1/+1
|
* Rmv leading underscore from macro nameKarl Williamson2019-12-115-11/+11
| | | | | | | These are illegal in C, but we have plenty of them around; I happened to be looking at this function, and decided to fix it. Note that only the macro name is illegal; the function was fine, but to change the macro name means changing the function one.
* Only allow punct delimiter for regex subpatternKarl Williamson2019-12-112-6/+10
| | | | | | | | | | | | | | | The experimental feature that allows wildcard subpatterns in finding Unicode properties, is supposed to only allow ASCII punctuation for delimitters. But if you preceded the delimitter by a backslash, the check was skipped. This commit fixes that. It may be that we will eventually want to loosen the restriction and allow a wider range of delimiters. But until we have valid use-cases that would push us in that direction, I don't want to get into supporting stuff that we might later regret, such as invisible characters for delimitters. This feature is not really required for programs to work, so I don't view it as necessary to be as general as possible.