summaryrefslogtreecommitdiffstats
path: root/upstream/fedora-40/man1/perl583delta.1
diff options
context:
space:
mode:
Diffstat (limited to 'upstream/fedora-40/man1/perl583delta.1')
-rw-r--r--upstream/fedora-40/man1/perl583delta.1251
1 files changed, 251 insertions, 0 deletions
diff --git a/upstream/fedora-40/man1/perl583delta.1 b/upstream/fedora-40/man1/perl583delta.1
new file mode 100644
index 00000000..a39fe016
--- /dev/null
+++ b/upstream/fedora-40/man1/perl583delta.1
@@ -0,0 +1,251 @@
+.\" -*- mode: troff; coding: utf-8 -*-
+.\" Automatically generated by Pod::Man 5.01 (Pod::Simple 3.43)
+.\"
+.\" Standard preamble:
+.\" ========================================================================
+.de Sp \" Vertical space (when we can't use .PP)
+.if t .sp .5v
+.if n .sp
+..
+.de Vb \" Begin verbatim text
+.ft CW
+.nf
+.ne \\$1
+..
+.de Ve \" End verbatim text
+.ft R
+.fi
+..
+.\" \*(C` and \*(C' are quotes in nroff, nothing in troff, for use with C<>.
+.ie n \{\
+. ds C` ""
+. ds C' ""
+'br\}
+.el\{\
+. ds C`
+. ds C'
+'br\}
+.\"
+.\" Escape single quotes in literal strings from groff's Unicode transform.
+.ie \n(.g .ds Aq \(aq
+.el .ds Aq '
+.\"
+.\" If the F register is >0, we'll generate index entries on stderr for
+.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
+.\" entries marked with X<> in POD. Of course, you'll have to process the
+.\" output yourself in some meaningful fashion.
+.\"
+.\" Avoid warning from groff about undefined register 'F'.
+.de IX
+..
+.nr rF 0
+.if \n(.g .if rF .nr rF 1
+.if (\n(rF:(\n(.g==0)) \{\
+. if \nF \{\
+. de IX
+. tm Index:\\$1\t\\n%\t"\\$2"
+..
+. if !\nF==2 \{\
+. nr % 0
+. nr F 2
+. \}
+. \}
+.\}
+.rr rF
+.\" ========================================================================
+.\"
+.IX Title "PERL583DELTA 1"
+.TH PERL583DELTA 1 2024-01-25 "perl v5.38.2" "Perl Programmers Reference Guide"
+.\" For nroff, turn off justification. Always turn off hyphenation; it makes
+.\" way too many mistakes in technical documents.
+.if n .ad l
+.nh
+.SH NAME
+perl583delta \- what is new for perl v5.8.3
+.SH DESCRIPTION
+.IX Header "DESCRIPTION"
+This document describes differences between the 5.8.2 release and
+the 5.8.3 release.
+.PP
+If you are upgrading from an earlier release such as 5.6.1, first read
+the perl58delta, which describes differences between 5.6.0 and
+5.8.0, and the perl581delta and perl582delta, which describe differences
+between 5.8.0, 5.8.1 and 5.8.2
+.SH "Incompatible Changes"
+.IX Header "Incompatible Changes"
+There are no changes incompatible with 5.8.2.
+.SH "Core Enhancements"
+.IX Header "Core Enhancements"
+A \f(CW\*(C`SCALAR\*(C'\fR method is now available for tied hashes. This is called when
+a tied hash is used in scalar context, such as
+.PP
+.Vb 3
+\& if (%tied_hash) {
+\& ...
+\& }
+.Ve
+.PP
+The old behaviour was that \f(CW%tied_hash\fR would return whatever would have been
+returned for that hash before the hash was tied (so usually 0). The new
+behaviour in the absence of a SCALAR method is to return TRUE if in the
+middle of an \f(CW\*(C`each\*(C'\fR iteration, and otherwise call FIRSTKEY to check if the
+hash is empty (making sure that a subsequent \f(CW\*(C`each\*(C'\fR will also begin by
+calling FIRSTKEY). Please see "SCALAR" in perltie for the full details and
+caveats.
+.SH "Modules and Pragmata"
+.IX Header "Modules and Pragmata"
+.IP CGI 4
+.IX Item "CGI"
+.PD 0
+.IP Cwd 4
+.IX Item "Cwd"
+.IP Digest 4
+.IX Item "Digest"
+.IP Digest::MD5 4
+.IX Item "Digest::MD5"
+.IP Encode 4
+.IX Item "Encode"
+.IP File::Spec 4
+.IX Item "File::Spec"
+.IP FindBin 4
+.IX Item "FindBin"
+.PD
+A function \f(CW\*(C`again\*(C'\fR is provided to resolve problems where modules in different
+directories wish to use FindBin.
+.IP List::Util 4
+.IX Item "List::Util"
+You can now weaken references to read only values.
+.IP Math::BigInt 4
+.IX Item "Math::BigInt"
+.PD 0
+.IP PodParser 4
+.IX Item "PodParser"
+.IP Pod::Perldoc 4
+.IX Item "Pod::Perldoc"
+.IP POSIX 4
+.IX Item "POSIX"
+.IP Unicode::Collate 4
+.IX Item "Unicode::Collate"
+.IP Unicode::Normalize 4
+.IX Item "Unicode::Normalize"
+.IP Test::Harness 4
+.IX Item "Test::Harness"
+.IP threads::shared 4
+.IX Item "threads::shared"
+.PD
+\&\f(CW\*(C`cond_wait\*(C'\fR has a new two argument form. \f(CW\*(C`cond_timedwait\*(C'\fR has been added.
+.SH "Utility Changes"
+.IX Header "Utility Changes"
+\&\f(CW\*(C`find2perl\*(C'\fR now assumes \f(CW\*(C`\-print\*(C'\fR as a default action. Previously, it
+needed to be specified explicitly.
+.PP
+A new utility, \f(CW\*(C`prove\*(C'\fR, makes it easy to run an individual regression test
+at the command line. \f(CW\*(C`prove\*(C'\fR is part of Test::Harness, which users of earlier
+Perl versions can install from CPAN.
+.SH "New Documentation"
+.IX Header "New Documentation"
+The documentation has been revised in places to produce more standard manpages.
+.PP
+The documentation for the special code blocks (BEGIN, CHECK, INIT, END)
+has been improved.
+.SH "Installation and Configuration Improvements"
+.IX Header "Installation and Configuration Improvements"
+Perl now builds on OpenVMS I64
+.SH "Selected Bug Fixes"
+.IX Header "Selected Bug Fixes"
+Using \fBsubstr()\fR on a UTF8 string could cause subsequent accesses on that
+string to return garbage. This was due to incorrect UTF8 offsets being
+cached, and is now fixed.
+.PP
+\&\fBjoin()\fR could return garbage when the same \fBjoin()\fR statement was used to
+process 8 bit data having earlier processed UTF8 data, due to the flags
+on that statement's temporary workspace not being reset correctly. This
+is now fixed.
+.PP
+\&\f(CW\*(C`$a .. $b\*(C'\fR will now work as expected when either \f(CW$a\fR or \f(CW$b\fR is \f(CW\*(C`undef\*(C'\fR
+.PP
+Using Unicode keys with tied hashes should now work correctly.
+.PP
+Reading $^E now preserves $!. Previously, the C code implementing $^E
+did not preserve \f(CW\*(C`errno\*(C'\fR, so reading $^E could cause \f(CW\*(C`errno\*(C'\fR and therefore
+\&\f(CW$!\fR to change unexpectedly.
+.PP
+Reentrant functions will (once more) work with C++. 5.8.2 introduced a bugfix
+which accidentally broke the compilation of Perl extensions written in C++
+.SH "New or Changed Diagnostics"
+.IX Header "New or Changed Diagnostics"
+The fatal error "DESTROY created new reference to dead object" is now
+documented in perldiag.
+.SH "Changed Internals"
+.IX Header "Changed Internals"
+The hash code has been refactored to reduce source duplication. The
+external interface is unchanged, and aside from the bug fixes described
+above, there should be no change in behaviour.
+.PP
+\&\f(CW\*(C`hv_clear_placeholders\*(C'\fR is now part of the perl API
+.PP
+Some C macros have been tidied. In particular macros which create temporary
+local variables now name these variables more defensively, which should
+avoid bugs where names clash.
+.PP
+<signal.h> is now always included.
+.SH "Configuration and Building"
+.IX Header "Configuration and Building"
+\&\f(CW\*(C`Configure\*(C'\fR now invokes callbacks regardless of the value of the variable
+they are called for. Previously callbacks were only invoked in the
+\&\f(CW\*(C`case $variable $define)\*(C'\fR branch. This change should only affect platform
+maintainers writing configuration hints files.
+.SH "Platform Specific Problems"
+.IX Header "Platform Specific Problems"
+The regression test ext/threads/shared/t/wait.t fails on early RedHat 9
+and HP-UX 10.20 due to bugs in their threading implementations.
+RedHat users should see https://rhn.redhat.com/errata/RHBA\-2003\-136.html
+and consider upgrading their glibc.
+.SH "Known Problems"
+.IX Header "Known Problems"
+Detached threads aren't supported on Windows yet, as they may lead to
+memory access violation problems.
+.PP
+There is a known race condition opening scripts in \f(CW\*(C`suidperl\*(C'\fR. \f(CW\*(C`suidperl\*(C'\fR
+is neither built nor installed by default, and has been deprecated since
+perl 5.8.0. You are advised to replace use of suidperl with tools such
+as sudo ( http://www.courtesan.com/sudo/ )
+.PP
+We have a backlog of unresolved bugs. Dealing with bugs and bug reports
+is unglamorous work; not something ideally suited to volunteer labour,
+but that is all that we have.
+.PP
+The perl5 development team are implementing changes to help address this
+problem, which should go live in early 2004.
+.SH "Future Directions"
+.IX Header "Future Directions"
+Code freeze for the next maintenance release (5.8.4) is on March 31st 2004,
+with release expected by mid April. Similarly 5.8.5's freeze will be at
+the end of June, with release by mid July.
+.SH Obituary
+.IX Header "Obituary"
+Iain 'Spoon' Truskett, Perl hacker, author of perlreref and
+contributor to CPAN, died suddenly on 29th December 2003, aged 24.
+He will be missed.
+.SH "Reporting Bugs"
+.IX Header "Reporting Bugs"
+If you find what you think is a bug, you might check the articles
+recently posted to the comp.lang.perl.misc newsgroup and the perl
+bug database at http://bugs.perl.org. There may also be
+information at http://www.perl.org, the Perl Home Page.
+.PP
+If you believe you have an unreported bug, please run the \fBperlbug\fR
+program included with your release. Be sure to trim your bug down
+to a tiny but sufficient test case. Your bug report, along with the
+output of \f(CW\*(C`perl \-V\*(C'\fR, will be sent off to perlbug@perl.org to be
+analysed by the Perl porting team. You can browse and search
+the Perl 5 bugs at http://bugs.perl.org/
+.SH "SEE ALSO"
+.IX Header "SEE ALSO"
+The \fIChanges\fR file for exhaustive details on what changed.
+.PP
+The \fIINSTALL\fR file for how to build Perl.
+.PP
+The \fIREADME\fR file for general stuff.
+.PP
+The \fIArtistic\fR and \fICopying\fR files for copyright information.