This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
perl5.git
2 years agoperlpodstyle: Add proper hyperlink
Karl Williamson [Wed, 4 May 2022 20:17:17 +0000 (14:17 -0600)]
perlpodstyle: Add proper hyperlink

2 years agobisect-runner: Fix verbatim line length
Karl Williamson [Wed, 27 Apr 2022 20:23:22 +0000 (14:23 -0600)]
bisect-runner: Fix verbatim line length

This changes the indent to the minimum necessary to trigger pod verbatim
line handling.  Doing so stops the wrapping in this file.

2 years agoREADME.os390: Add proper hyperlink
Karl Williamson [Wed, 4 May 2022 19:24:48 +0000 (13:24 -0600)]
README.os390: Add proper hyperlink

2 years agoREADME.os2: Fix pod
Karl Williamson [Wed, 4 May 2022 19:19:21 +0000 (13:19 -0600)]
README.os2: Fix pod

Fix how links are displayed, add some links

2 years agoREADME.irix: Fix overlong verbatim line
Karl Williamson [Wed, 4 May 2022 19:11:58 +0000 (13:11 -0600)]
README.irix: Fix overlong verbatim line

2 years agoperldebguts: Fix grammar
Karl Williamson [Wed, 27 Apr 2022 20:39:46 +0000 (14:39 -0600)]
perldebguts: Fix grammar

Use a real word instead of slang.

2 years agoPorting/todo.pod: Use L<> link, not F<>, for link
Karl Williamson [Wed, 27 Apr 2022 20:41:49 +0000 (14:41 -0600)]
Porting/todo.pod: Use L<> link, not F<>, for link

2 years agotodo.pod: Use m// instead of //
Karl Williamson [Wed, 4 May 2022 19:05:03 +0000 (13:05 -0600)]
todo.pod: Use m// instead of //

This makes it slightly easier for readers to understand, and a lot
easier for podcheck.t to understand

2 years agoRMG: Use hpyerlink
Karl Williamson [Wed, 4 May 2022 19:04:07 +0000 (13:04 -0600)]
RMG: Use hpyerlink

2 years agopodcheck.t: Treat some additional files specially
Karl Williamson [Wed, 4 May 2022 16:33:51 +0000 (10:33 -0600)]
podcheck.t: Treat some additional files specially

metaconfig units and plain text files aren't pod.  And lines
like Perl/perl.git aren't going to be file names.

2 years agopodcheck.t: White-space, comments, typos
Karl Williamson [Wed, 4 May 2022 16:18:22 +0000 (10:18 -0600)]
podcheck.t: White-space, comments, typos

This does some white space changes for readability, clarifies comments
and pod.

2 years agopodcheck.t: Allow dash in argument names
Karl Williamson [Wed, 4 May 2022 16:12:24 +0000 (10:12 -0600)]
podcheck.t: Allow dash in argument names

In addition to being able to call this with --add_link, you can now
specify --add-link, depending on your preference.

2 years agopodcheck.t: Set $| to 1
Karl Williamson [Wed, 4 May 2022 15:44:11 +0000 (09:44 -0600)]
podcheck.t: Set $| to 1

This causes the output to be flushed immediately.  Without this, some
options that tried to tell you that the operation would take a while to
complete would not have that message come out until it had in fact
completed.  The message should be displayed immediately.

2 years agoAmiga-Exec/Exec.pm: Fix pod
Karl Williamson [Wed, 27 Apr 2022 20:28:17 +0000 (14:28 -0600)]
Amiga-Exec/Exec.pm: Fix pod

This line has a syntax error in it.  Fix it, and split into two lines so
doesn't wrap on output in an 80 column terminal window

2 years agolib/perl5db.pl: Give proper pod links
Karl Williamson [Wed, 27 Apr 2022 20:32:38 +0000 (14:32 -0600)]
lib/perl5db.pl: Give proper pod links

These internal references are linkable

2 years agolib/perl5db.pl: Add some S<> to pod
Karl Williamson [Wed, 4 May 2022 15:22:05 +0000 (09:22 -0600)]
lib/perl5db.pl: Add some S<> to pod

I added these to surround some C<...> that have spaces so that the
output construct is guaranteed to be on a single line.  These are mostly
commands to type, and it is clearer to the reader if they kept together.
I didn't bother with things that were guaranteed to be at the beginning
of a line, as they won't wrap anyway.

2 years agoinline.h: Fix typo in comment
Karl Williamson [Wed, 4 May 2022 09:09:16 +0000 (03:09 -0600)]
inline.h: Fix typo in comment

2 years ago[MERGE] Refactor regen/warnings.pl
David Mitchell [Wed, 4 May 2022 13:06:46 +0000 (14:06 +0100)]
[MERGE] Refactor regen/warnings.pl

The src for this tool was a mess: it started out 20 years ago as a small
utility, then grew. Lots of badly-named global variables, no code
comments about what subs do etc. This series of commits cleans things
up, refactors, adds comments etc. In theory it makes no functional
changes, and indeed as run currently it generates exactly the same
warnings.h and lib/warning.pm files as before.

2 years agoregen/warnings.pl: rename $tre to $tree
David Mitchell [Fri, 29 Apr 2022 09:16:40 +0000 (10:16 +0100)]
regen/warnings.pl: rename $tre to $tree

Since the global variable $tree was renamed $TREE, we can now rename all
the instances of a sub parameter $tre to '$tree'.

2 years agoregen/warnings.pl: add comments about $TREE
David Mitchell [Mon, 25 Apr 2022 16:00:07 +0000 (17:00 +0100)]
regen/warnings.pl: add comments about $TREE

Explain this structure, which is the input used to define all the
warnings.

2 years agoregen/warnings.pl: rename filehandle variables
David Mitchell [Mon, 25 Apr 2022 15:45:18 +0000 (16:45 +0100)]
regen/warnings.pl: rename filehandle variables

rename my($warn, $pm) to ($warn_h, $warn_pm) to make it easier to
see that they're the filehandles for warnings.h and warnings.pm

2 years agoregen/warnings.pl: better comment what the subs do
David Mitchell [Mon, 25 Apr 2022 15:42:03 +0000 (16:42 +0100)]
regen/warnings.pl: better comment what the subs do

2 years agoregen/warnings.pl: eliminate broken dup check
David Mitchell [Mon, 25 Apr 2022 15:21:28 +0000 (16:21 +0100)]
regen/warnings.pl: eliminate broken dup check

valueWalk() checks for a duplicate warnings name. However,
1) This is also done in walk(), so is redundant.
2) It is broken. Originally it declared @list but checked %list;
%list is global and was renamed to %CATEGORIES to make it clear it was a
global (and thus unrelated to @list). So its probably never worked.

2 years agoregen/warnings.pl: eliminate global %v_list var
David Mitchell [Mon, 25 Apr 2022 15:11:50 +0000 (16:11 +0100)]
regen/warnings.pl: eliminate global %v_list var

This lexical had global scope. Instead, make it a parameter to
sub valueWalk(), since it's only used temporarily by two subs.

2 years agoregen/warnings.pl: eliminate lexical var %Value
David Mitchell [Mon, 25 Apr 2022 13:39:14 +0000 (14:39 +0100)]
regen/warnings.pl: eliminate lexical var %Value

This doesn't seem to be used any more

2 years agoregen/warnings.pl: uppercase 'global' lexical vars
David Mitchell [Mon, 25 Apr 2022 13:33:58 +0000 (14:33 +0100)]
regen/warnings.pl: uppercase 'global' lexical vars

various lexical vars like $tree, $def are populated early on, then their
values are used later in many places, including directly in subs.

Rename these vars to be uppercase and with more meaningful names, to
emphasise their globalness.

(Ideally they really ought to be local and passed as arguments to all
the subs that use them, but that's more work.)

2 years agoregen/warnings.pl: remove a block scope
David Mitchell [Mon, 25 Apr 2022 13:18:25 +0000 (14:18 +0100)]
regen/warnings.pl: remove a block scope

A block of code no longer declares any lexical variables, so remove the
block. Apart from removing a '{' and '}', this is a whitespace-only
change.

2 years agoregen/warnings.pl: remove unused lexical variable
David Mitchell [Mon, 25 Apr 2022 13:11:38 +0000 (14:11 +0100)]
regen/warnings.pl: remove unused lexical variable

$offset was added in 2000, but hasn't actually been used for a long while

2 years agoregen/warnings.pl: move boilerplate text to end
David Mitchell [Mon, 25 Apr 2022 13:03:26 +0000 (14:03 +0100)]
regen/warnings.pl: move boilerplate text to end

Move a couple of large chunks of <<'EOF' code text to the end of the file
(but before __END__) to make the flow of code easier to see.

The output generated is unchanged.

2 years agoBump IO to 1.50 after production release to CPAN
Todd Rinaldo [Tue, 3 May 2022 15:43:30 +0000 (15:43 +0000)]
Bump IO to 1.50 after production release to CPAN

2 years agoperlapi: Consolidate (Copy|Move|Zero)D?
Karl Williamson [Tue, 3 May 2022 15:03:56 +0000 (09:03 -0600)]
perlapi: Consolidate (Copy|Move|Zero)D?

This commit consolidates the D form of each function in perlapi with the
plain form.

2 years agoautodoc.pl: Rmv redundant text
Karl Williamson [Tue, 3 May 2022 13:07:27 +0000 (07:07 -0600)]
autodoc.pl: Rmv redundant text

When different functions are grouped together in a single entry, some or
all of them may be deprecated or experimental.  Prior to this commit
each such was listed individually as a separate paragraph.  It is
shorter to say "All forms" if all are of the same ilk, or list just the
individual ones in a single sentence, otherwise.

2 years agoautodoc.pl: Allow 'x' flag in apidoc_item entries
Karl Williamson [Tue, 3 May 2022 13:32:38 +0000 (07:32 -0600)]
autodoc.pl: Allow 'x' flag in apidoc_item entries

The only flags allowed are those affecting the display in perlapi and
perlintern.  The 'x' flag previously omitted, fits this.

2 years agoautodoc: Don't require space after =apidoc_item
Karl Williamson [Sun, 1 May 2022 14:49:07 +0000 (08:49 -0600)]
autodoc: Don't require space after =apidoc_item

The flags column is optional, and so no space is needed to delimit it.

2 years agoembed.fnc: Add, clarify comments
Karl Williamson [Tue, 3 May 2022 14:27:51 +0000 (08:27 -0600)]
embed.fnc: Add, clarify comments

2 years agoperlapi: Consolidate load_module(_nocontext)?
Karl Williamson [Tue, 3 May 2022 12:20:09 +0000 (06:20 -0600)]
perlapi: Consolidate load_module(_nocontext)?

2 years agoautodoc.pl: Include thread context in arg calculation
Karl Williamson [Tue, 3 May 2022 11:57:00 +0000 (05:57 -0600)]
autodoc.pl: Include thread context in arg calculation

When several different functions are grouped together into one entry,
only the signature of the first one is output provided that all have the
same signature (except for the function name).

Until this commit, whether or not there was a hidden thread context
parameter was not considered in this calculation.  This could lead to
confusion.

2 years agoautodoc.pl: Clarify comment
Karl Williamson [Tue, 3 May 2022 11:56:34 +0000 (05:56 -0600)]
autodoc.pl: Clarify comment

2 years agoperlapio: Nits
Karl Williamson [Tue, 3 May 2022 11:12:34 +0000 (05:12 -0600)]
perlapio: Nits

2 years agoautodoc.pl: perlxs items default to XS section
Karl Williamson [Mon, 2 May 2022 20:36:59 +0000 (14:36 -0600)]
autodoc.pl: perlxs items default to XS section

2 years agoperlapi: Fix misspelling
Karl Williamson [Mon, 2 May 2022 20:27:19 +0000 (14:27 -0600)]
perlapi: Fix misspelling

2 years agoautodoc.pl: A source is perlxs.pod
Karl Williamson [Mon, 2 May 2022 19:54:27 +0000 (13:54 -0600)]
autodoc.pl: A source is perlxs.pod

This was meant to be looked at, but wasn't.  It's skipping cpan, dist,
and ext, which it really should be, because we don't have much control
over those.

The comments indicated it expected to get generated files from
lib/ instead, but those wouldn't be in MANIFEST, so weren't getting
looked at.  And it's not a good idea to look for them anyway, as one
could get relicts.  Instead create an exception list of pods that could
have API elements that are documented.

The only current file on that list is what becomes lib/perlxs.pod

2 years agoDocument CvDEPTH
Karl Williamson [Wed, 22 Jul 2020 22:11:48 +0000 (16:11 -0600)]
Document CvDEPTH

2 years agoperlapi: Consolidate entries for Perlio functions
Karl Williamson [Fri, 29 Apr 2022 17:05:00 +0000 (11:05 -0600)]
perlapi: Consolidate entries for Perlio functions

Group all these together to make for a more compact and clear
representation.

2 years agoSort PerlIO entries in pod, embed.fnc
Karl Williamson [Sun, 24 Apr 2022 17:33:19 +0000 (11:33 -0600)]
Sort PerlIO entries in pod, embed.fnc

This has no effect on any code or pod display, but makes it easier to
find them for maintenance, and makes the next commit have a smaller
difference listing

2 years agoMaintainers.pl: comment customized removal criteria
Karl Williamson [Fri, 29 Apr 2022 16:10:42 +0000 (10:10 -0600)]
Maintainers.pl: comment customized removal criteria

2 years agoDocument PERLIO_FUNCS_(DECL|CAST)
Karl Williamson [Thu, 27 Aug 2020 15:28:17 +0000 (09:28 -0600)]
Document PERLIO_FUNCS_(DECL|CAST)

2 years agoupdate const sub docs for stuff that now croaks 19674/head
David Mitchell [Thu, 28 Apr 2022 10:29:04 +0000 (11:29 +0100)]
update const sub docs for stuff that now croaks

GH #19664

Some types of constant sub candidates emitted deprecation warnings
from 5.22 onwards, and croaked from 5.32 onwards. The perlsub docs knew
about the warnings; this commit updates them for the croaks.

At the same time, change the code examples to no longer use the RT
ticket number of the original issue. For one thing, RT numbers are
obsolete, and for another, it was being too cute - setting a variable to
one less than the RT number, then showing that the constant value
hadn't been incremented by the $x++. And using the number for the sub
names. The examples just became noisy with random 5-digit numbers
everywhere.

2 years agolib/experimental.pm is no longer customized
Leon Timmermans [Mon, 25 Apr 2022 22:27:57 +0000 (00:27 +0200)]
lib/experimental.pm is no longer customized

2 years agoperlapi: Document SvPVXtrue
Karl Williamson [Thu, 8 Oct 2020 19:58:48 +0000 (13:58 -0600)]
perlapi: Document SvPVXtrue

2 years agoNote various symbols are documented in perlhacktips
Karl Williamson [Sat, 17 Oct 2020 17:23:27 +0000 (11:23 -0600)]
Note various symbols are documented in perlhacktips

2 years agoperlapi: Rmv duplicate entries
Karl Williamson [Sun, 24 Apr 2022 00:38:13 +0000 (18:38 -0600)]
perlapi: Rmv duplicate entries

These entries that are minor variants of each other were consolidated
into one over-arching entry, but the individual ones were inadvertently
retained, leading to duplicate information.

2 years agoperlembed: Note various symbols are documented here
Karl Williamson [Wed, 7 Oct 2020 23:54:41 +0000 (17:54 -0600)]
perlembed: Note various symbols are documented here

2 years agoPut back the words about no VERSION not undoing feature bundles, which got lost in...
Paul "LeoNerd" Evans [Wed, 20 Apr 2022 23:30:52 +0000 (00:30 +0100)]
Put back the words about no VERSION not undoing feature bundles, which got lost in the earlier reƤrrangement

2 years agoUse signatures in perlunicook example
Paul "LeoNerd" Evans [Wed, 20 Apr 2022 23:26:10 +0000 (00:26 +0100)]
Use signatures in perlunicook example

2 years agouse signature in perlthrtut to further tidy the example, while we're there anyway
Paul "LeoNerd" Evans [Wed, 20 Apr 2022 22:26:08 +0000 (23:26 +0100)]
use signature in perlthrtut to further tidy the example, while we're there anyway

2 years agoPoint directly to L<...|perlfunc/use VERSION> when mentioning the syntax in other...
Paul "LeoNerd" Evans [Wed, 6 Apr 2022 13:01:13 +0000 (14:01 +0100)]
Point directly to L<...|perlfunc/use VERSION> when mentioning the syntax in other docs

2 years agoReplace 'use strict; use warnings;' with 'use VERSION' in docs code examples
Paul "LeoNerd" Evans [Wed, 6 Apr 2022 11:47:26 +0000 (12:47 +0100)]
Replace 'use strict; use warnings;' with 'use VERSION' in docs code examples

2 years agoReplace docs examples of 'use NUMBER' with proper v-strings
Paul "LeoNerd" Evans [Wed, 6 Apr 2022 11:45:07 +0000 (12:45 +0100)]
Replace docs examples of 'use NUMBER' with proper v-strings

2 years agoMore wording in perldsc.pod about 'use VERSION'
Paul "LeoNerd" Evans [Wed, 6 Apr 2022 11:42:13 +0000 (12:42 +0100)]
More wording in perldsc.pod about 'use VERSION'

2 years agoPoint out that 'indirect' is only availble before 'use v5.36'
Paul "LeoNerd" Evans [Wed, 6 Apr 2022 10:48:03 +0000 (11:48 +0100)]
Point out that 'indirect' is only availble before 'use v5.36'

2 years agoAdd some wording about 'use VERSION' to perlstyle.pod
Paul "LeoNerd" Evans [Wed, 6 Apr 2022 10:33:52 +0000 (11:33 +0100)]
Add some wording about 'use VERSION' to perlstyle.pod

2 years agoMention that 'use VERSION' enables strict + warnings + others in perlintro.pod
Paul "LeoNerd" Evans [Mon, 4 Apr 2022 17:59:53 +0000 (18:59 +0100)]
Mention that 'use VERSION' enables strict + warnings + others in perlintro.pod

2 years agoSplit docs for 'use VERSION' into its own section of perlfunc.pod
Paul "LeoNerd" Evans [Wed, 6 Apr 2022 12:43:43 +0000 (13:43 +0100)]
Split docs for 'use VERSION' into its own section of perlfunc.pod

Also add more wording

2 years agoregcomp.c - silence build warning under NO_TAINT_SUPPORT
Yves Orton [Fri, 22 Apr 2022 02:06:35 +0000 (04:06 +0200)]
regcomp.c - silence build warning under NO_TAINT_SUPPORT

The variable 'oldtainted' is unused when NO_TAINT_SUPPORT is defined.
This patch ifdefs it out of the compiled code.

This should resolve GH Issue #19654
See: https://github.com/Perl/perl5/issues/19654

2 years agoRevert "Porting/makerel Make EBCDIC files writable"
Karl Williamson [Wed, 20 Apr 2022 23:53:07 +0000 (17:53 -0600)]
Revert "Porting/makerel Make EBCDIC files writable"

This reverts commit ecef3a65d2c34ab6acbc8d1e8e17f5f41e307729.

This commit stems from an earlier mechanism for creating EBCDIC
releases, but no longer makes sense, leaving all files user-writable.
The intent was to do so just on EBCDIC builds, as at one time all files
were translated into EBCDIC on the destination box.  But nowadays, the
translation is done in makerel itself, before the creation of the tar.

After this commit, files are read-only except for those on the internal
exception list.

Spotted by Steve Hay.

2 years agoregen/mph.pl - make sure the author of _squeeze() has a commit in the log
Ilya Sashcheka [Thu, 21 Apr 2022 05:07:52 +0000 (07:07 +0200)]
regen/mph.pl - make sure the author of _squeeze() has a commit in the log

This commit is actually by the committer, and is intended to ensure that
someone looking for what the author wrote can find it. It took me a while
to get a email address for him or I would have done this in eda35008b17e739922
which is where his work on the _squeeze() split key algorithm was added.
Credit where credit is due and all of that. Thanks Ilya.

2 years agoFix SHA256 digests produced by Porting/makerel on Windows
Steve Hay [Wed, 20 Apr 2022 21:13:21 +0000 (22:13 +0100)]
Fix SHA256 digests produced by Porting/makerel on Windows

2 years agoPrepare Module-CoreList for 5.35.12
Steve Hay [Wed, 20 Apr 2022 21:10:09 +0000 (22:10 +0100)]
Prepare Module-CoreList for 5.35.12

2 years agoBump version for 5.35.12
Steve Hay [Wed, 20 Apr 2022 21:02:58 +0000 (22:02 +0100)]
Bump version for 5.35.12

2 years agoNew perldelta for 5.35.12
Steve Hay [Wed, 20 Apr 2022 20:56:39 +0000 (21:56 +0100)]
New perldelta for 5.35.12

2 years agoTick off release
Steve Hay [Wed, 20 Apr 2022 20:46:59 +0000 (21:46 +0100)]
Tick off release

2 years agoAdd epigraph for 5.35.11
Steve Hay [Wed, 20 Apr 2022 20:46:12 +0000 (21:46 +0100)]
Add epigraph for 5.35.11

2 years agoepigraphs.pod: Correct 5.35.10 version and add link
Steve Hay [Wed, 20 Apr 2022 20:42:32 +0000 (21:42 +0100)]
epigraphs.pod: Correct 5.35.10 version and add link

2 years ago5.35.11 today v5.35.11
Steve Hay [Wed, 20 Apr 2022 18:19:43 +0000 (19:19 +0100)]
5.35.11 today

2 years agoFinalize perldelta
Steve Hay [Wed, 20 Apr 2022 18:16:38 +0000 (19:16 +0100)]
Finalize perldelta

2 years agoUpdate Module-CoreList for 5.35.11
Steve Hay [Wed, 20 Apr 2022 18:11:09 +0000 (19:11 +0100)]
Update Module-CoreList for 5.35.11

2 years agoperldelta - Update for 5.35.11
Steve Hay [Wed, 20 Apr 2022 18:09:06 +0000 (19:09 +0100)]
perldelta - Update for 5.35.11

2 years agoFix typos in perlfunc
Steve Hay [Wed, 20 Apr 2022 17:34:02 +0000 (18:34 +0100)]
Fix typos in perlfunc

2 years agoskip 2 tests if built with DEBUGGING and no taint support
Neil Bowers [Wed, 20 Apr 2022 15:52:27 +0000 (16:52 +0100)]
skip 2 tests if built with DEBUGGING and no taint support

2 years agofixed typo in taint_support comments, shoulda been "with" not "without"
Neil Bowers [Wed, 20 Apr 2022 15:21:37 +0000 (16:21 +0100)]
fixed typo in taint_support comments, shoulda been "with" not "without"

2 years agoFix Porting\updateAUTHORS.pl to not output CRLFs on Windows
Steve Hay [Wed, 20 Apr 2022 13:14:14 +0000 (14:14 +0100)]
Fix Porting\updateAUTHORS.pl to not output CRLFs on Windows

2 years agoAdd/correct/delete notes of CUSTOMIZED files in blead
Steve Hay [Wed, 20 Apr 2022 13:04:34 +0000 (14:04 +0100)]
Add/correct/delete notes of CUSTOMIZED files in blead

2 years agoAdded perldelta entry on support for building a taint-free perl
Neil Bowers [Thu, 17 Mar 2022 09:35:25 +0000 (09:35 +0000)]
Added perldelta entry on support for building a taint-free perl

2 years agoDoc changes to reflect that perl might not support taint
Neil Bowers [Wed, 16 Mar 2022 23:50:01 +0000 (23:50 +0000)]
Doc changes to reflect that perl might not support taint

The central doc change is in perlsec.pod. This not only explains
that you can build a perl that doesn't support taint,
but shows how you can check whether your perl supports taint or not.
The other doc changes are mainly to note that taint might not
be supported, and to refer the reader to perlsec for more details.

2 years agochanges to core module tests to handle perl that doesn't support taint
Neil Bowers [Wed, 16 Mar 2022 23:49:04 +0000 (23:49 +0000)]
changes to core module tests to handle perl that doesn't support taint

2 years agochanges to perl tests to handle perl without taint support
Neil Bowers [Wed, 16 Mar 2022 23:48:22 +0000 (23:48 +0000)]
changes to perl tests to handle perl without taint support

2 years agoAdd Configure question for taint support
Neil Bowers [Wed, 16 Mar 2022 23:43:53 +0000 (23:43 +0000)]
Add Configure question for taint support

This adds a Configure question for whether you want taint support.
It defaults to "yes", so that ./Configure -des will build a perl
which supports taint in the usual way.
If you say "no", then perl is compiled with -DSILENT_NO_TAINT_SUPPORT
so that taint features silently do nothing.

I've submitted a separate pull request on perl/metaconfig,
which adds the underlying metaconfig unit for this question,
which was used to build this Configure script.

2 years agoRevert "dist/PathTools - add missing entries to Changes"
Yves Orton [Wed, 20 Apr 2022 04:52:32 +0000 (06:52 +0200)]
Revert "dist/PathTools - add missing entries to Changes"

This reverts commit 33349b53c2e4df3292c79435e54fc98824e4cba8.

This should have been pushed to a branch not to blead. Fat fingers.
Sorry folks.

2 years agoRevert "mg.c, Cwd.pm - Empty path is the same as "." which is forbidden under taint"
Yves Orton [Wed, 20 Apr 2022 04:44:08 +0000 (06:44 +0200)]
Revert "mg.c, Cwd.pm - Empty path is the same as "." which is forbidden under taint"

This reverts commit 5ede4453c4877110eb5214ff400c173210b101b1.

I messed up and pushed it to blead not to the PR branch I meant to push
it. Thanks to xenu for noticing. This needs a smoke before it should be
applied.

2 years agoNormalize: Use ppport.h
Karl Williamson [Tue, 19 Apr 2022 18:11:48 +0000 (12:11 -0600)]
Normalize: Use ppport.h

This commit changes Unicode::Normalize to use ppport.h.

All modules that convert from UTF-8 should be using the latest ppport.h,
so that they get the latest security checking available, which ppport.h
backports to 6.1.

This commit converts the module to use the utf8_to_uvchr_buf() method of
translation from UTF-8, instead of a method that allows one to pass
flags as to what code points to not accept.  Since the flags parameter
it was passing was zero, this is equivalent to utf8_to_uvchr_buf().

2 years agoSocket: getnameinfo() behaves differently on z/OS
Karl Williamson [Mon, 18 Apr 2022 16:48:23 +0000 (10:48 -0600)]
Socket: getnameinfo() behaves differently on z/OS

POSIX says at least one of the parameters must be non-NULL.  z/OS
requires both to be.

It would be better to have a Configure probe for this, but this is the
first non-conforming OS we have found, and at this stage, there aren't
likely to be any others that Perl might eventually be ported to.  Should
some come along, a probe could be added at that time.

2 years agolibnet: os390 isn't necessarily EBCDIC
Karl Williamson [Fri, 7 Jan 2022 00:37:16 +0000 (17:37 -0700)]
libnet: os390 isn't necessarily EBCDIC

It turns out that z/OS (the new name for os390) can run in ASCII mode.
Therefore the test for EBCDIC must not be based on the OS itself, but
the character set in use.

2 years agopodlators: Fixes for EBCDIC
Karl Williamson [Fri, 9 Jul 2021 01:24:43 +0000 (19:24 -0600)]
podlators: Fixes for EBCDIC

2 years agopodlators: z/OS isn't necessarily EBCDIC
Karl Williamson [Mon, 18 Apr 2022 03:18:30 +0000 (21:18 -0600)]
podlators: z/OS isn't necessarily EBCDIC

(nor is EBCDIC necessarily z/OS).  Fix conditional

2 years agohandy.h: space isn't graph
Karl Williamson [Thu, 7 Apr 2022 18:39:55 +0000 (12:39 -0600)]
handy.h: space isn't graph

2 years agohints/os390.sh: #define os390
Karl Williamson [Fri, 8 Apr 2022 17:00:38 +0000 (11:00 -0600)]
hints/os390.sh: #define os390

This OS has some unique qualities that are hard to test for in
Configure, and aren't likely to go away.

2 years agomg.c, Cwd.pm - Empty path is the same as "." which is forbidden under taint
Yves Orton [Tue, 19 Apr 2022 15:55:40 +0000 (17:55 +0200)]
mg.c, Cwd.pm - Empty path is the same as "." which is forbidden under taint

Having a relative path, including ".", is forbidden under taint. On *nix
an empty PATH or an empty PATH component is equivalent to a PATH of ".",
so they should be forbidden as well.

Note that on Windows the current working directory is ALWAYS checked
first if you try to execute something that does not specify its path,
regardless of the PATH.

I do not know what happens on VMS and I do not have access to a
VMS environment to test. There are totally different codepaths for
VMS as well. This patch does not (or rather should not) change
behavior for VMS.

Note this includes a version bump for all modules in dist/PathTools

2 years agodist/PathTools - add missing entries to Changes
Yves Orton [Wed, 20 Apr 2022 01:44:57 +0000 (03:44 +0200)]
dist/PathTools - add missing entries to Changes

Versions 3.82 through 3.84 were not document in Changes.

2 years agomg.c - move const initialization out of loop
Yves Orton [Tue, 19 Apr 2022 15:43:09 +0000 (17:43 +0200)]
mg.c - move const initialization out of loop

The path_sep is not going to change per iteration of the loop, so just
move it out of the loop.