PAR-Packer
view release on metacpan or search on metacpan
PAR::Packer can now use the new Module::ScanDeps
feature of caching the module dependencies for a significant
packaging speed-up.
0.992_01 2009-07-19
- New features
- Reusable pp packaged applications (see pp's --reusable option)
- Bug fixes, etc.
- Accept other extensions than .par in -p mode.
0.991 2009-03-21
- New features
- Add Roderich's reeally useful debugging tool "extract_embedded.pl" to
the contrib/ subdirectory. It can be used to extract the contents of a
"parl" binary.
- Bug fixes, etc.
- Add Errno and Tie::Hash::NamedCapture (if available) to required_modules
- Fix the stripping of =encoding POD lines in PAR::Filter::PodStrip
- Throw a proper error if a module specified via -M cannot be found
(Roderich Schupp, Gabor Szabo)
- Don't update exe's with icons twice on Win32.
- Band-aid fix for RT #41790 in par.pl
- Some very slightly more careful handling of environment variables in par.pl
- Fix SEGV crash during startup if $PATH is not defined (Johannes Lode)
- Documentation
- RT #12104. Improved documentation in pp on -T/--tempcache.
0.982 2008-07-29
- Bug fixes, etc.
- Fix bleadperl compilation.
- Ensure extracted files are marked executable on HP-UX so they can be
used by the dynamic linker. (Scott Stanton)
- Fixed incorrect error handling code in test for directory existence when
creating a private temporary directory. (Scott Stanton)
- On Windows, attempt to use the system temp directory before trying the
temp_dirs locations. (Scott Stanton)
- Don't remove the top level par-<user> directory for PAR_CLEAN=1 because
doing so introduces a race condition with other applications trying to
create the directory on startup. (Scott Stanton)
- When creating the temporary directory for PAR_CLEAN=1, ensure that
the directory does not already exist to avoid picking up stale files
from a prior invocation of a different par application. This eliminates
the need to rename the temp directory before removing it, which was
causing race conditions in multi-threaded apps. (Scott Stanton)
- Now officially requires Perl 5.6.1 and up in the Makefile.PL.
This has been the case for a long time anyway, but this change
should suppress some spurious CPAN testers failures.
- Documentation
- Clarified examples in the pp documentation, thanks to Dave Howorth.
0.981 2008-05-14
- Bug fixes, etc.
- Make get_username_from_getpwuid work for uid=0. (Scott Stanton)
- Fixed crash in get_username_from_getpwuid when getpwuid fails.
(Scott Stanton)
- Fix broken build on win32 when searching for dll and finding static perl
library. (Alexey Borzenkov)
- Fix compilation on MacOS 10.5's gcc because that doesn't seem to support
the --output option. (Matthew Andersen)
o0.980 2008-05-14
- Emergency bug fix release
- The test suite in the previous release was broken by my debugging
code. Sorry about that. (Steffen)
0.979 2008-05-13
- Bug fixes, etc.
- Add a preprocessor conditional to myldr/internals.c to
make PAR::Packer compile with blead
(Avar Bjarmason, Nicholas Clark)
- Also strip =encoding POD directive during
PAR::Filter::PodStrip.
- Temporarily disable the shared-libraries cleanup code in par.pl
that was introduced in 0.977 by Scott. This may result in
stale cache directories even if PAR_CLEAN is in effect. On the
other hand, this means threaded applications work again.
0.978 2008-02-28
- Bug fixes, etc.
- Fix pp -r for absolute file names (RT #33355) (Slaven Rezic)
- Fix for FreeBSD's unreliable procfs (RT #33349) (Slaven Rezic)
- Fix @INC ordering in par.pl: This might just fix the infamous
"Only available with the XS version..." bug (see #24192)
(Michael Schwern, Slaven Rezic)
- Fix pp.pm version (Audrey)
- Require Win32::Process on win32 (Audrey)
- The parl-generation tests are now skipped if a pre-built .par
binary is being used. (Mark Dootson)
- Shared library extraction now checks first whether the file exists
and whether it has the same size as the one to be extracted. In that
case, the extraction is skipped. This should fix an issue with
overwriting DLLs on Windows, see
http://www.nntp.perl.org/group/perl.par/3325 (Scott Stanton)
- When re-building the distribution because of a change in
e.g. script/par.pl, the DATA sections of
blib\PAR\StrippedPARL\{Dynamic,Static}.pm were not updated accordingly.
0.977 2007-12-20
- New features
- Support for Perl 5.10 and later.
- New -E flag for "pp" that works just like "perl -E" for Perl 5.10+,
namely enabling new syntactic features like "say".
- Bug fixes, etc.
- When deleting the temp directory in the background, rename the
directory to a unique name to avoid potential collisions caused
by pid reuse (primarily an issue on Windows).
- PAR::Packer now depends on Module::ScanDeps 0.78 because 0.77
had a critical bug. If you are having trouble with M::SD 0.78,
- Marked PAR::Filter::Bytecode as deprecated. Added references to
PAR::Filter::Crypto.
0.975 2007-05-06
- Bug fixes, etc.
- Trailing backslashes in @INC paths handled in
PAR::StrippedParl::Base
- Win32 added to 'required modules' to handle changes in Win32 core
present in ActiveState build 820 and development branches.
- No longer assume -B when using pp -P (or -p). (Roderich Schupp)
0.973 2007-02-03
- New features
- If PERL5LIB is set, that variable may be ignored in some parts
of the myldr/ build process. We now warn the user during Makefile.PL
if PERL5LIB is set. (Gaal Yahas)
- Bug fixes, etc.
- Cosmetics: Add "use strict;" and "use warnings;" to some files that
lacked it.
- Several bug fixes for the tests from Malcolm Nooning. Related to
making them work on Windows with spaces in paths.
- Added regexp escaping to the "pp -X foo.par" use case.
(Eric Wilhelm)
0.970 2006-12-03
- This is the first release of PAR-Packer as a separate distribution.
- PAR and PAR-Packer (+pp, parl, etc.) have been separated because there
is usually no reason for the PAR Packager to be present on a user system
which just needs PAR.pm to access .par archives.
- PAR-Packer will include all development tools such as those included
in the contrib/ subdirectory.
- Bug fixes, etc.
- Moved most code from script/pp to lib/pp.pm so it gets picked up by the
CPAN indexer. Hence you will be able to write "install pp" in the CPAN
shell to install pp/PAR::Packer.
- PAR::StrippedPARL::Base->write_parl() failed to work if the @INC
directories contained spaces in 0.960. (Steven Mackenzie)
- Much improved documentation of the environment variables
(Glenn Linderman)
- Fix for a spaces-in-pathname problem on Windows for
t/30-current_exec.t. (Malcolm Nooning)
0.960 2006-11-21
- Bug fixes, etc.
- myldr/Makefile.PL fix: Clean up myldr/usernamefrompwuid.h.
- Silence warning in myldr/internals.c.
- Silence warnings seen on Irix from myldr/env.c.
- Skip most tests in 10-parl-generation.t if there is no parl.
- Skip loading ActiveState Perl's "sitecustomize.pl" in par.pl.
- Load modules via require and other files via do.
- The parl-regeneration-for-every-pp-call addition of the 0.958 release
should now also work for static perls.
- New features
- Adressing RT ticket #6612: Now using getpwuid() to determine the
user name if supported by the OS.
0.959 2006-11-12
- This is just a hotfix release because 0.958 lacked META.yml. One day, I will
switch from Module::Install to Module::Build...
0.958 2006-10-25
- Bug fixes, etc.
- myldr/Makefile.PL fix: make static.o depend on mktmpdir.c, my_perl.c,
my_par.c. (Roderich Schupp)
- Modules included with the -M option to pp were previously scanned
for dependencies but not mapped through the
%Module::ScanDeps::Preload hash for custom dependencies. That's
fixed now.
- $ENV{PAR_RUN} isn't set by PAR::Packer any more because nothing in
the PAR sources uses it. $ENV{PAR_RUN} is no longer used by PAR
at all.
- Unified the environment variables which are looked at for
finding the system's temporary directory.
- New features
- During the build process, PAR appends stripped down copies of parl
(and parldyn if applicable) to the data classes
PAR::StrippedPARL::Static and ::Dynamic. These
parls-without-embedded-modules are used for packaging so the formerly
embedded modules are now packaged from the packaging system. (Instead
of stemming from the system where PAR/parl was built.)
- The "use PAR { repository => $url };" syntax now also supports
the use of user-constructed PAR::Repository::Client objects instead
of an URL.
- The -F (module code filter) option now supports selective filtering
of modules. The syntax is "-F FILTER=REGEX" or - as before -
"-F FILTER". The regular expression is applied to the *file name*,
of the module inside the PAR (e.g. Foo/Bar.pm). This behaviour was
chosen over matching against the module name (e.g. Foo::Bar) because
the filters can be applied to module-like and script files as well
(.pl, .al, etc.).
- Updated PAR/FAQ.pod with the new FAQ's from the PAR wiki.
- Added a POD file PAR/Environment.pod which is intended to become
an index of all environment variables PAR uses of its own or
recognizes from its users. Still mostly a stub.
0.957 2006-10-24
- Bug fixes, etc.
- Fix executable PARs top properly detect embedded scripts
named the same as the executable. (Jesse Vincent)
- Comment out the call to par_current_exec_proc (in the C loader)
which breaks the use of symlinks to pp-ed executables when not
called with a path. (I.e. using a search in $PATH).
0.956 2006-10-03
- This is another hotfix release. Fixed a mindless bug introduced in 0.955.
0.955 2006-10-03
- Bug fixes, etc.
( run in 0.603 second using v1.01-cache-2.11-cpan-5837b0d9d2c )