=head1 ActivePerl 828 -- Release Notes

Welcome, and thank you for downloading ActivePerl.  This release
corresponds to Perl version 5.8.9.

The following platforms are supported by this release:

=over 3

=item *

AIX 5.1 or later (rs6000)

=item *

HP-UX: 11.00 or later (PA-RISC)

=item *

Linux: glibc 2.3 or later (x86 and x64)

=item *

Mac OS X 10.4 or later (x86 and powerpc)

=item *

Solaris 2.8 or later (sparc, 32 and 64 bit)

=item *

Solaris 10 or later (x86)

=item *

Windows 2000 (x86)

=item *

Windows XP, Server 2003, Vista, Server 2008, 7 (x86 and x64)

=back

=for text
For a chronological list of changes included in this and past releases,
see the ActivePerl 5.8 Change Log.

=for html
<p>For a chronological list of changes included in this and past releases,
see the <a href="changes.html">ActivePerl 5.8 Change Log</a>.</p>

=head1 Incompatibilities

Perl 5.8 is not binary compatible with Perl 5.6.  In particular, do not
attempt to use extensions or PPM packages built for ActivePerl 600
series builds with ActivePerl 800 series builds and vice versa.  Please
check L<perl58delta/Incompatible Changes> for known source level
incompatibilities between the Perl 5.8 releases and the earlier releases
in the Perl 5.6 series.

You may also want to check L<perl581delta/Incompatible Changes>,
L<perl582delta/Incompatible Changes>, and L<perl584delta/Incompatible
Changes>, for additional minor incompatible changes made in Perl 5.8.1, Perl
5.8.2 and Perl 5.8.4 respectively.

The following incompatibilities described below do not apply to HP-UX:
Changed order in @INC, simplified directory structure, PPM4. These
changes will be implemented for HP-UX in ActivePerl 5.10.

The order of the directories in C<@INC> has changed since build 817 of
ActivePerl.  The F<$PREFIX/site/lib> directory is now searched for
modules before F<$PREFIX/lib>.  This means that core modules might be
shadowed by what is installed locally and these updates might bring
incompatibilities that break applications only tested against the
original core module.

All modules that ActivePerl bundles in addition to the core modules
are now installed in F<$PREFIX/lib>.  In ActivePerl build 817 and
earlier, these were installed in F<$PREFIX/site/lib>.

The $Config{siteprefix} is now F<$PREFIX/site>.  In ActivePerl build
817 and earlier, it was just F<$PREFIX> and $Config{sitelib}
compensated by introducing the F<site> level. As a consequence
programs included with packages installed into the C<site> area now
get installed in F<$PREFIX/site/bin>.  In ActivePerl build 817 and
earlier, these were installed in F<$PREFIX/bin>.  Another consequence of
the $Config{siteprefix} update is that modules configured and built
with C<perl Makefile.PL PREFIX=...> are now installed directly in the
F<lib> directory of the given C<PREFIX>.

=head2 PPM version 4

PPM version 4 differs from version 3 (distributed with ActivePerl build
817 and earlier) in the following ways:

=over 3

=item *

Running C<ppm> without arguments now bring up a graphical user interface;
there is a separate program called C<ppm-shell> that gives you an interface
similar to the old console shell.

=item *

The output format of most commands have changed.  Scripts that parse
the output of C<ppm> need to change.

=item *

C<ppm describe> only takes a I<number> as argument.  The other forms
are not supported.

=item *

C<ppm install> without argument does not install a default package and
does not support the I<range> argument.  The C<--follow> and
C<--no-follow> options are not supported.

=item *

C<ppm profile>, C<ppm properties>, C<ppm set>, and C<ppm target>
commands are not supported.

=item *

C<ppm repo up> and C<ppm repo down> commands are not supported.

=item *

C<ppm search> does not support the I<field>=I<glob> syntax.

=item *

SOAP-based repositories are no longer supported.

=back

=head1 Known Issues

=head2 PPM

=over 3

=item *

The PPM state database (containing configuration information for
repositories, view options in the GUI, and repository state) is not
imported from previous installations.

If you have added custom PPM 4 repositories with ActivePerl 5.8.8.819,
you should reconfigure them manually with C<ppm repo add ...> or in the
GUI.  The repository state will be automatically re-synchronized when
PPM is run.

=item *

Post install scripts for packages installed from the GUI will not be able to
receive non-default answers for any prompts it might produce.  Packages that
need non-default answers must be installed with the command line version
of ppm.

=item *

List icons will sometimes not repaint properly after scrolling under
X11.  This does not affect the Windows and Mac OS X builds.

=item *

Running C<sudo ppm ...> the first time C<ppm> is invoked from a
regular user account on Unix will create a I<root> owned state
database.  This effectively makes the database read-only when running
C<ppm> without C<sudo>, and might manifest itself as Application Error
dialogs when running the GUI.  Workaround is to run C<sudo chown -R
$USER ~/.ActivePerl> once to fix up ownership of the state database.

=item *

No PPM GUI for the 64 bit versions of ActivePerl.

=back

=head2 AIX

=over 3

=item *

GNU tar is required to extract the ActivePerl tarball into the filesystem. A
precompiled version of GNU tar for AIX 5L can be found here:

    http://www-03.ibm.com/systems/p/os/aix/linux/toolbox/download.html

You can also get the source package for GNU tar from:

    http://www.gnu.org/

=item *

The reloc_perl script does not correctly update the perl-dynamic executable.
The workaround is to install directly from the tarball into the new location.

=back

=head2 Solaris

=over 3

=item *

GNU tar is required to extract the ActivePerl tarball into the filesystem. A
precompiled version of GNU tar for Solaris is available from:

    http://www.sunfreeware.com/

You can also get the source package for GNU tar from:

    http://www.gnu.org/

=item *

The suidperl executable is not included in this package due to potential
security issues.  If you wish to use suidperl in your installation, we
recommend building Perl from source.  The source code for ActivePerl is
available at:

    http://www.ActiveState.com

=back

=head2 Mac OS X

=over 3

=item *

Perl library paths, and thus PPM Areas, defined in the shell by the
PERL5LIB environment variable are not available to PPM when it is
launched by clicking the PPM icon in OS X. To to make this variable
available in the OS X GUI, add an entry similar to the following to
F<~/.MacOSX/environment.plist>:

 <key>PERL5LIB</key>
 <string>/path/to/perl/lib</string>

=item *

Running C<sudo ppm> or C<sudo ppm gui> does not start up the GUI with
I<root> privileges.  Use C<ppm> as a command line tool with C<sudo>.

=back

=head2 Windows

=over 3

=item *

The fork() emulation has known limitations.  See L<perlfork> for a
detailed summary.  In particular, fork() emulation will not work
correctly with extensions that are either not thread-safe, or maintain
internal state that cannot be cloned in the pseudo-child process.  This
caveat currently applies to extensions such as Tk and Storable.

=item *

It seems that some people are having problems with the ActivePerl MSI
installer.  The first thing to note is that you CANNOT install
ActivePerl 5.8 over an older version of ActivePerl based on 5.6 or
5.005, such as build 633 or any other 600 or 500 series build.  We
have determined that some of these problems are due to other
installations of Perl that may be pointed at by something in the
environment.

The sure-fire solution is to make absolutely certain that no other
installations of Perl are on the target machine. Realizing that this is not
always possible, you can follow these steps to ensure the other
installations will not interfere.

=over 4

=item 1

Stop the "Windows Installer" service. This can be accomplished from the
command prompt using the following command:

    c:\> net stop "Windows Installer"

=item 2

Temporarily remove or rename PERLLIB and PERL5LIB environment
variables in the system environment.

=item 3

Temporarily remove or rename the following registry values:

    [\\HKEY_LOCAL_MACHINE\Software\Perl] lib = <directory> (REG_SV)
    [\\HKEY_LOCAL_MACHINE\Software\Perl] sitelib = <directory> (REG_SV)
    [\\HKEY_LOCAL_MACHINE\Software\Perl] lib-<PerlVersion> = <directory> (REG_SV)
    [\\HKEY_LOCAL_MACHINE\Software\Perl] sitelib-<PerlVersion> = <directory>(REG_SV)

=item 4

Proceed with the installation.

=back

Once the installation has completed successfully, the above actions may be
undone although restoring the environment variables or the registry values
may interfere with the proper operation of your new ActivePerl
installation.
In order to perform all of the above steps, you will need to have
Administrative privileges on the target machine. If you do not have the
required privileges you should contact you Administrator.

The following Microsoft knowledge base articles may be helpful in solving MSI
problems:

=over

=item Q236597 - OFF2000: Error Message: The Installation Package Could Not Be Opened ...

http://support.microsoft.com/support/kb/articles/Q236/5/97.ASP

=item Q224094 - OFF2000: Error Message: This Application Requires the Windows Installer to Run

http://support.microsoft.com/support/kb/articles/Q224/0/94.ASP

=item Q247532 - Works 2000 Err Msg: Installer Terminated Prematurely

http://support.microsoft.com/support/kb/articles/Q247/5/32.ASP

=item "Error 1303. The installer has insufficient privileges..." Running Office Setup

http://support.microsoft.com/support/kb/articles/Q228/6/58.ASP

=item Error Message: Error 1316 Running Setup for Admin Installation

http://support.microsoft.com/support/kb/articles/Q228/5/92.ASP

=item Error 1327 Invalid Drive During Office Installation

http://support.microsoft.com/support/kb/articles/Q217/6/66.ASP

=back

=item *

On Windows 9x, the system must be rebooted for the PATH environment variable
to take effect.

=item *

On Windows 9x, the PATH environment variable settings are not removed after an
uninstall.

=back

=head2 Further Information

The Perl distribution comes with extensive documentation.  On Unix platforms,
all the standard documentation is installed as man pages under the Perl
install location.  The location of the man pages may need to be added to the
MANPATH environment variable in order to access them.  For example, in
the C shell:

    % setenv MANPATH /opt/ActivePerl-5.8/man:$MANPATH

The documentation is installed in HTML format on all platforms. If ActivePerl
was installed in F</opt/ActivePerl-5.8> then the HTML documentation
would be located in F</opt/ActivePerl-5.8/html>.

On Windows, the standard documentation along with Windows-specific Perl
documentation is installed in HTML format, and is accessible from the
"Start" menu.

Updated versions of the HTML documentation will always be available at
the ActiveState website:

    http://www.activestate.com/ActivePerl

=head1 Reporting Problems

Please report any bugs you encounter with this release in the ActiveState bug
database:

    http://bugs.activestate.com

If you do not have web access, reports can be also sent via email to
ActivePerl-Bugs@ActiveState.com.  Please be sure to include detailed
information about the platform in your message.

As far as possible, please ensure that there is enough information in
the report to reproduce the bug elsewhere.  It also helps to submit a
minimal test case that exhibits the bug.

=cut
