2002-11-07 Andrew Arensburger * Makefile.PL: Updated version number. 2002-11-07 Andrew Arensburger * Palm/StdAppInfo.pm (API) Now supports databases where the last byte of the AppInfo block is data instead of padding. Backwards-compatible. * Palm/ToDo.pm: Rearranged @ISA, so that it'll get the right &ParseAppInfoBlock. * Palm/Memo.pm: Rearranged @ISA, so that it'll get the right &ParseAppInfoBlock. * Palm/Mail.pm: Rearranged @ISA, so that it'll get the right &ParseAppInfoBlock. * Palm/Datebook.pm: Rearranged @ISA, so that it'll get the right &ParseAppInfoBlock. * Palm/Address.pm: Rearranged @ISA, so that it'll get the right &ParseAppInfoBlock. 2002-05-09 Andrew Arensburger * Palm/Address.pm: Again, more sanity-checking and a little less code duplication. * Palm/Address.pm: More sanity checks, and a somewhat more elegant way of doing things (iterate over field names, rather than duplicating code a bunch of times). * Palm/StdAppInfo.pm (bug fix) Used to do some sanity-checking, then ignored it. We now pay attention to our own sanity checks. 2002-04-09 Andrew Arensburger * README: Added Keni as a contributor. * util/pdbdump: Applied Keni's patch: array-handling for parsed records (e.g., Datebook exceptions). 2002-03-23 Andrew Arensburger * Palm/Mail.pm: Added extra sanity checks. 2002-02-15 Andrew Arensburger * Palm/PDB.pm (bug fix) Strip everything after the first NUL, not just trailing NULs. Patch submitted by Don Park 2002-02-08 Andrew Arensburger - Version 1.2.5 released. * MANIFEST: Added add-memo to distribution. * util/add-memo (added): Added first draft of add-memo, to add a memo to an existing MemoDB.pdb. 2002-02-01 Andrew Arensburger * Palm/PDB.pm: Comment used to refer to a doc file in ColdSync that no longer exists. Fixed. 2002-01-26 Andrew Arensburger * util/pdbdump, Palm/ToDo.pm, Palm/StdAppInfo.pm, Palm/Raw.pm, Palm/PQA.pm, Palm/PDB.pm, Palm/Memo.pm, Palm/Mail.pm, Palm/Datebook.pm, Palm/Address.pm, Makefile.PL: Rewrote version number in CPAN-friendly format. 2001-06-05 Andrew Arensburger * Palm/StdAppInfo.pm: Made addCategory, deleteCategory, renameCategory behave a bit more like the Palm, even when it's brain-damaged. 2001-06-02 Andrew Arensburger * Palm/StdAppInfo.pm: Fixed typo in POD. * Palm/Datebook.pm: Fixed typo in POD. 2001-04-04 Andrew Arensburger * Palm/StdAppInfo.pm: Fixed typo. 2001-03-30 Andrew Arensburger * Palm/Datebook.pm: Clarified whether date numbers start at 0 or 1. (bug fix): Fixed year conversion. (bug fix): Fixed use of undefined value. 2001-02-24 Andrew Arensburger * Palm/PDB.pm: In &new, initialize 'baktime' to -$EPOCH_1904, that being the Palm's epoch. * FAQ: Added pointers to other sources of information about HotSync .dat files. * Palm/Datebook.pm: Clarified documentation. 2001-02-20 Andrew Arensburger * MANIFEST: Added FAQ to distribution. * FAQ (Added). * README: Added contributor. * util/pdbdump (bug fix): the two NULs are optional. Fixed typo. * Palm/StdAppInfo.pm: Added a "to do" comment. * Makefile.PL: Incremented version number. 2000-11-09 Andrew Arensburger - Version 1.2.4 released. * Palm/PDB.pm: Applied John-David Smith's patch: add the "archive" attribute. Better check for non-NULLness of AppInfo block. 2000-09-25 Andrew Arensburger * Palm/PDB.pm: Added "launchable" attribute, for PQAs. * util/pdbdump: Added "launchable" attribute, for PQAs. Print database attributes more clearly. * Palm/PQA.pm: First draft of PQA parser. 2000-09-24 Andrew Arensburger * util/pdbdump: Now handles resource databases as well as record databases. * Palm/ToDo.pm, Palm/StdAppInfo.pm, Palm/Raw.pm, Palm/PDB.pm, Palm/Memo.pm, Palm/Mail.pm, Palm/Datebook.pm, Palm/Address.pm: $VERSION is now a floating-point number, for comparison. 2000-09-16 Andrew Arensburger - Version 1.2.3 released. * Palm/PDB.pm (bug fix): The two useless NULs are allowed, but not mandated, by the spec. By assuming that they will always be there, this module failed to parse some well-formed PDBs. * util/pdbdump: Oops! Forgot to fix resources. Minor cleaning. * util/pdbdump (bug fix): The two useless NULs are allowed, but not mandated, by the spec. By assuming that they will always be there, 'pdbdump' failed to parse some well-formed PDBs. 2000-09-09 Andrew Arensburger - Version 1.2.2 released. * Palm/StdAppInfo.pm: Added $error variable. (bug fix): A mis-written test would cause &pack_StdAppInfo to omit unnamed categories. Hence, the category list had fewer than 16 categories, when written. Fixed typo. (feature): Added &addCategory, &deleteCategory, &renameCategory. Removed BUGS section. 2000-09-08 Andrew Arensburger * Palm/StdAppInfo.pm: Stop Perl from complaining if there are unnamed categories. * README: Added author. 2000-08-28 Andrew Arensburger - Version 1.2.1 released. * Palm/StdAppInfo.pm: Changed API: the categories are new arranged as a 16-element array of category structs, the way they logically belong, rather than as disparate arrays, the way they're represented in the file. Added a lot to the POD. 2000-08-24 Andrew Arensburger * Palm/PDB.pm: Clarified pod somewhat. * util/pdbdump (feature): Expands arrays of hash references recursively. 2000-08-13 Andrew Arensburger - Version 1.2.0 released. * Palm/Datebook.pm: Incorporated changes suggested by John Jannotti , to avoid warnings under Perl 5.6, when various fields are undefined. * Palm/ToDo.pm, Palm/Memo.pm, Palm/Mail.pm, Palm/Datebook.pm, Palm/Address.pm: Updated for new &parse_StdAppInfo behavior. * Palm/StdAppInfo.pm (bug fix): &parse_StdAppInfo now puts the non-category part of the AppInfo block in $appinfo->{other}. This is so that a script that reads a random .pdb file as a StdAppInfo (and nothing else) can copy it without loss of data. &pack_StdAppInfo uses $appinfo->{other}. Clarified documentation somewhat. 2000-08-04 Andrew Arensburger * Palm/PDB.pm: Fixed expression that made 'perl5.6 -w' print a warning. Fix submitted by John Jannotti . 2000-08-01 Andrew Arensburger - Version 1.1.12 released. * util/pdbdump (bug fix): Read files in binary mode under Windows, MS-DOS, and other OSes that make that distinction. * Palm/PDB.pm (bug fix): Read and write files in binary mode under Windows, MS-DOS, and other OSes that make that distinction. * Palm/Datebook.pm: Delete raw data field at the end of &ParseRecord. 2000-07-20 Andrew Arensburger - Version 1.1.11 released. * Palm/Datebook.pm (Bug fix): Test for undefined record fields, to avoid warnings with databases built from scratch. Patch supplied by . 2000-07-19 Andrew Arensburger - Version 1.1.10 released. 2000-07-18 Andrew Arensburger * Palm/ToDo.pm, Palm/PDB.pm, Palm/Memo.pm, Palm/Mail.pm, Palm/Datebook.pm, Palm/Address.pm: Clarified the documentation for &new_Record. 2000-07-08 Andrew Arensburger * Palm/PDB.pm: PDB::new now initializes more fields. PDB::Write prints a warning if writing a zero-length record. PDB::new_Resource: type now defaults to all NULs (instead of four spaces). 2000-06-30 Andrew Arensburger - Version 1.1.9 released * Palm/Datebook.pm: Made AppInfo block initialization the same as other modules, even though Datebook doesn't really use categories and such. * Palm/StdAppInfo.pm (bug fix): Use of anonymous array instead of a real array caused first category (and first category ID) to be a reference rather than a "real" scalar. 2000-05-23 Andrew Arensburger - Version 1.1.8 released. * Palm/Memo.pm, Palm/Address.pm (bug fix): Don't run StdAppInfo::import(). This prevents StdAppInfo from registering itself as the default handler in generic tools. 2000-05-13 Andrew Arensburger - Version 1.1.7 released. * Makefile.PL: Bumped up version number. * Palm/Mail.pm: Fixed inconsistency in record member names ("replyTo" was sometimes "reply_to", and "sentTo" was sometimes "sent_to"). Patch supplied by Sumant S.R. Oemrawsingh - Version 1.1.6 released. * Makefile.PL: Incremented patch level. Added "pdbdump" to the distribution. * MANIFEST: Ship "pdbdump" instead of "dumpdb". * Palm/StdAppInfo.pm: Added an import() function, so you can say that a function is a Palm::StdAppInfo. * Palm/Mail.pm (bug fix): Palm::Mail::new_Record() didn't return a value (bug found by Sumant S.R. Oemrawsingh ). Don't import StdAppInfo, since don't want new PDBs to default to StdAppInfo. 2000-05-08 Andrew Arensburger * util/pdbdump: Rewritten from scratch. This is basically just Palm/PDB.pm with trace statements. 2000-05-07 Andrew Arensburger * Palm/Raw.pm: Added `use strict'. Rearranged some variables at the top. * Palm/Raw.pm, Palm/ToDo.pm, Palm/StdAppInfo.pm, Palm/PDB.pm, Palm/Memo.pm, Palm/Mail.pm, Palm/Datebook.pm: Removed unnecessary quoting in class members. 2000-05-06 Andrew Arensburger * Palm/Address.pm: Removed unnecessary quoting in class members. * Palm/ToDo.pm: Converted to use StdAppInfo. * Palm/Raw.pm, Palm/PDB.pm, Palm/ToDo.pm: Fixed man page sections for "see also" section. 2000-04-29 Andrew Arensburger - Version 1.1.4 released. * README: Added Robert Norris's patch for empty PDBs. 2000-04-24 Andrew Arensburger - Version 1.1.3 released. * util/pdbdump (added) This will eventually become the successor to dumpdb. * util/dumpdb: More AppInfo block processing. * Palm/StdAppInfo.pm (added) Class for dealing with the standard part of AppInfo blocks (category support). * Palm/PDB.pm: Uses `use strict'. Changed the way $VERSION is generated from RCS tag. Fixed the POD a bit. * Palm/Memo.pm, Palm/Mail.pm, Palm/Datebook.pm, Palm/Address.pm: Use StdAppInfo. * Palm/Address.pm: Fixed manual section numbers. * MANIFEST: Added "TODO", "StdAppInfo.pm" 2000-04-20 Andrew Arensburger * Palm/Mail.pm: Forgot to mention the subject in the documentation. 2000-02-01 Andrew Arensburger - Version 1.1.2 released. * TODO (added): Things that need to be done. * README (added): README file. * Palm/Raw.pm: Rearranged the POD. Inherit &new, &new_Record methods. * Palm/Datebook.pm, Palm/Mail.pm, Palm/Memo.pm, Palm/ToDo.pm: Rearranged the POD. Added &new, &new_Record methods. * Palm/Address.pm: Added placeholder for $pdb->{appinfo}{lastUniqueID}. * Added $VERSION variable to all .pm files, per CPAN. * Palm/PDB.pm: Renamed &deleteRecord to &delete_Record, for consistency. &append_Record, &append_Resource, &delete_Record update PDB's mtime. * Palm/Address.pm: Moved pod documentation to be adjacent to the code, instead of at the end. Fixed &new so there are always 16 categories, one of which is named "Unfiled" with code 0. 2000-01-23 Andrew Arensburger * Palm/PDB.pm: The various _load_*() functions are no longer methods, since they shouldn't be overridden anyway. Added documentation for new_Record(), append_Record(), new_Resource(), append_resource(), findRecordByID(), deleteRecord(). * util/dumpdb: Bug fix: deal with PDBs without records, and PRCs without resources. Memo: Dump() now prints the AppInfo and sort blocks, if they exist. Address: Dump() now prints the field labels in the AppInfo block. Address: print the record attributes. * Palm/PDB.pm: Updated copyright. Fixed function cross-references in the documentation. new() method now initializes the common fields. Fiddled with quotes in the documentation some more. Write() method now supplies the two NULs if they're missing. Added methods: new_Record(), append_Record(), new_Resource(), append_Resource(), findRecordByID(), deleteRecord(). * Palm/Address.pm: Added new() method, to specifically create a new Address PDB. Added new_Record() method, to create a new Address record. Bug fix: PackAppInfoBlock() only packed whichever categories were defined. It now makes sure that it packs 16 categories. * Makefile.PL: Incremented version. 1999-12-05 Andrew Arensburger * Palm/Address.pm: Fixed documentation to reflect reality. 1999-11-18 Andrew Arensburger * Palm/PDB.pm: Added magic $VERSION, to make CPAN happy. * util/dumpdb: Took out Bitmaps and DopeWars, since those aren't part of the distribution (yet?). * MANIFEST: Added README. * Palm/Raw.pm: Clarified the use of "use Palm::Raw;" vs. "use Palm::Raw();" in the documentation. * Palm/ToDo.pm: Changed Palm::PDB:: to Palm:: where required. * Palm/Raw.pm: Changed Palm::PDB:: to Palm:: where required. * Palm/PDB.pm: Changed Palm::PDB:: to Palm:: where required. * Palm/Memo.pm: Changed Palm::PDB:: to Palm:: where required. * Palm/Mail.pm: Changed Palm::PDB:: to Palm:: where required. * Palm/Datebook.pm: Changed Palm::PDB:: to Palm:: where required. * Palm/Address.pm: Changed Palm::PDB:: to Palm:: where required. * Makefile.PL: Changed distribution name to p5-Palm, for clarity. Explicitly set installation method. * Makefile.PL: Fixed NAME and VERSION. * MANIFEST: Removed Palm/Makefile.PL * MANIFEST: Fixed after directory shuffle. * test.pl: Generated by MakeMaker. Not used. * util/dumpdb: Added RCS comment. Updated "use" statements to reflect the fact that the Palm stuff is in Palm::, not Palm::PDB::. * util/copydb: Added RCS header. Took out the "use lib" line, for now. Changed "use" statements: the Palm stuff is no longer Palm::PDB:, but rather Palm::. * util/dumpdb: Test utility to dump the contents of a PDB. * util/copydb: Test utility to copy a PDB. * Palm/ToDo.pm: Module for dealing with ToDo databases. * Palm/Raw.pm: Module for dealing with "Raw" databases. * Palm/Memo.pm: Module for dealing with Memo databases. * Palm/Mail.pm: Module for dealing with Mail databases. * Palm/Datebook.pm: Module for dealing with DateBook databases. * Palm/Address.pm: Module for dealing with AddressBook databases. * Palm/PDB.pm: Base module for dealing with PDBs. * Palm/Makefile.PL: MakeMaker-generated Makefile.PL. * Makefile.PL: MakeMaker-generated Makefile.PL. * MANIFEST: First draft of manifest.