# 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:

- AIX 5.1 or later (rs6000)

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

- Linux: glibc 2.3 or later (x86 and x64)

- Mac OS X 10.4 or later (x86 and powerpc)

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

- Solaris 10 or later (x86)

- Windows 2000 (x86)

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

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

# 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 Incompatible Changes in the perl58delta manpage 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 Incompatible Changes in the perl581delta manpage, Incompatible Changes in the perl582delta manpage, and Incompatible Changes in the perl584delta manpage, 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 `@INC` has changed since build 817 of ActivePerl. The $PREFIX/site/lib directory is now searched for modules before $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 $PREFIX/lib. In ActivePerl build 817 and earlier, these were installed in $PREFIX/site/lib.

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

## PPM version 4

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

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

- The output format of most commands have changed. Scripts that parse the output of `ppm` need to change.

- `ppm describe` only takes a number as argument. The other forms are not supported.

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

- `ppm profile`, `ppm properties`, `ppm set`, and `ppm target` commands are not supported.

- `ppm repo up` and `ppm repo down` commands are not supported.

- `ppm search` does not support the field=glob syntax.

- SOAP-based repositories are no longer supported.

# Known Issues

## PPM

- 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 `ppm repo add ...` or in the GUI. The repository state will be automatically re-synchronized when PPM is run.

- 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.

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

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

- No PPM GUI for the 64 bit versions of ActivePerl.

## AIX

- 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/

- 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.

## Solaris

- 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/

- 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

## Mac OS X

- 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 ~/.MacOSX/environment.plist:

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

- Running `sudo ppm` or `sudo ppm gui` does not start up the GUI with root privileges. Use `ppm` as a command line tool with `sudo`.

## Windows

- The `fork()` emulation has known limitations. See the perlfork manpage 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.

- 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.

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

             c:\> net stop "Windows Installer"

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

  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)

  4. Proceed with the installation.

  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:

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

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

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

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

  Q247532 - Works 2000 Err Msg: Installer Terminated Prematurely

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

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

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

  Error Message: Error 1316 Running Setup for Admin Installation

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

  Error 1327 Invalid Drive During Office Installation

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

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

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

## 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 /opt/ActivePerl-5.8 then the HTML documentation would be located in /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

# 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.