CHANGELOG v0.26 (2010/05/08) ================== --Changed daemonize's behavior: reopening STD* on /dev/null and chdir'ing to /. Hindsight's 20/20, eh? --Made backup/restore of SIGCHLD in pcapture dependent upon an actual sighandler being installed v0.25 (2010/05/05) ================== --Fixed tail's behavior to be consistent with documentation --Fixed tail/sip to preserve file position and buffers when reopening the file in children --Fixed tail functionality to handle deleted, truncated, moved, or replaced files --Expanded tail/sip documentation --Added daemonize function to Paranoid::Process v0.24 (2010/04/15) ================== --Added Paranoid::Glob --Major cleanup to satisfy PerlCritic and PerlTidy --Fixed pmkdir to allow permissions that include sticky bits, etc. --Updated filesystem functions to use Paranoid::Glob instead of pglob --pglob is now just a wrapper around Paranoid::Glob as well --Removed excessive external locking in Paranoid::BerkeleyDB -- hopefully internal CDB locking mechanism is robust enough --Made user input validation on Paranoid::Filesystem non-fatal (handing in undefs as filenames, etc.) --Removed MAXLINKS in Paranoid::Filesystem v0.23 (2009/03/17) =================== --Fixed tests that weren't fully supported on all platforms --Commented out pchown tests which were failing to due to a bug in Perl. A patch has been submitted to bleadperl to address it. --Added manual detaint of TERM environment variable in psecureEnv --Updated documentation to include Paranoid::Data --Made getKeys in Paranoid::BerkeleyDB use finer grained locking --Added Paranoid::Data --Added sip, tail, and closeFile functions --Fixed bug in preadDir that added undef records while filtering out symlinks (bug introduced in v0.21) v0.21 (2009/03/04) =================== --Massive reformat with Perl::Tidy --Massive rewrite to accommodate Perl::Critic --Converted all tests to use Test::More --Converted licensing to be same as Perl --Documentation updates --Updated to only support Perl 5.6 or better --Fixed bug in pcapture to return appropriate return values --Fixed bug in pchmodR/pchownR to return correct RV (false) with non-existant targets --Added Paranoid::Args v0.20 (2008/04/28) =================== --Misc. POD updates Paranoid::Filesystem: --Fixed bug in the recursion wrapper where there were errors in certain modes when called on a hierarchy that included an empty subdirectory --Fixed bug in pchmod where subtracting perms (i.e., o-w) wouldn't result in the correct permissions --Added automatic argument detainting for most functions --Replaced the horrible manual kludge of pglob with an intelligent wrapper for the shell glob --ptouch now supports full shell globbing, even for non-existent files. --ptouchR can now create files, but won't automatically create subdirectories Paranoid::Input: --Added automatic filename detainting for slurp --Updated filename/fileglob regexes (expanded allowed characters) Paranoid::Log & Paranoid::Module: --Added automatic detainting of module names Paranoid::Log::File: --Added automatic detainting of log filenames v0.19 (2008/04/28) =================== --Made the croak statements more internally consistent --Made releasing the lockfiles and db entries in BerkeleyDB more explicit --Updated filename regex in Input --Added study to stringMatch --Added pcapture function to Process v0.18 (2008/02/29) =================== --Fixed mail headers for Email module when there are multiple recipients --Fixed tests to account for FreeBSD's comments in /etc/passwd, /etc/group v0.17 (2008/02/28) =================== --Made more tests conditional to account for more types of system configurations --Made error checking more explicit for e-mail logging, and storing those errors in Paranoid::ERROR v0.16 (2008/02/27) =================== --Fixed conditional tests --Added new function to Paranoid::Debug (psetDebug) v0.15 (2008/02/26) =================== --Initial public release