06-24-2001
- Revamp of the TODO list for better readability; Major, Minor,
Tweak, Feature. The remainder below illustrates this:
Major Issues
------------
Open/Pending
------------
- read-expenses/install-expense doesn't return the string of Type
for 'Train, Airplane', etc.
- Need to clean up the OS/2 defines, or remove them entirely. This
requires that the ./configure be reversed into configure.in/auto*
scripts. The 'p4' stuff should be tweaked, and ${HOST} detected
upon ./configure.
- Check RPC code (something broken on large-endian machines?)
- pilot-addresses -T header fix (don't import header into record)
- Progress output per record
- Check for 0-byte files on read
- Strip CR/LF on read
- Export categories to csv
- pilot-xfer -f fix (support '-f FooDB' as 'FooDB.p{db|rc|qa}
- Split out "Sync" from Backup function
- "strict-ify" sync-plan.PL
Fixed/Closed
------------
- Fix DLP to understand multiple return arguments.
- USB syncronization with m50x devices. DLP changes to facilitate
these fixes. Document.
- Fix the broken readline() support
- pilot-xfer does not test for the existance of the target directory
when using '-b
'. Critical.
- Java code needs to be cleaned up. Any volunteers? I could learn
this, but it would slow down releases (thanks to David Goodenough
for taking on this task!)
- Fix the C++ test(s) in ./configure, and roll all of this back into
autogen.sh/automake scripts.
Minor Issues
------------
Open/Pending
------------
- configure.in to handle testing for python-devel installed
#include int main() {PyObject x; return 0;}
- Add missing DLP 1.2 calls
- Fix all remaining -pedantic warnings and errors Update
- Add current date/time to dlp_AddSyncLogEntry();
- install-hinote duplicate note detection, export of notes from
Hi-NoteDB.pdb into desktop text files. Can we easily handle
images?
- Review pilot-mail. Do we need this? Can we depricate this, and
begin the transition over to Hollis' work on pilot-mailsync?
- manpages. I know, nobody wants to do them, but we need to clearly
document some of the obscure options that some of the pilot-link
binaries offer (such as 'ls -l' in dlpsh). This also includes
active examples of some of the complicated options.
- Should we nuke addresses from the package? The functionality it
provides is already in pilot-addresses.
- Add progress callbacks to libpisock so that you can find out how
far a file transfer has gone (this is complex, as you also need to
instrument PADP and perhaps SLP transmissions, receptions, and
calculating exactly how many bytes is needed to transfer a file
won't be fun.)
- Update Java bindings to use Ant instead of {g|n}make
- Rewrite Perl bindings to take advantage of MakeMaker
- There's a small perl problem with writing the binary character 11
to the end of a record. The following example illustates this:
#!/usr/bin/perl -w
use diagnostics;
use PDA::Pilot;
# it's the last value which makes the program fail;
# and it fails only for the value 11!
@rec = (0,0,0,0,0,0,0,0,11);
%info = ("type"=>"Data","creator"=>"XXXX","name"=>"test");
$pdb = PDA::Pilot::File::create("test.pdb", \%info ) or die "Oops!\n";
$rec = join('', map(chr, @rec));
$pdb->addRecordRaw($rec,0,0,0);
Tweaks/Enhancements
-------------------
- Add proper curses updates to pilot-xfer -b -f -i -s -p to look
something like:
.--------------------------------------------------------------.
| File: /tmp/palm/Alpha-Lg.pdb Successful |
| Size: 3,462 bytes, 3.38k 1,028,492 bytes total |
| Progress: [==========================> ] 62% |
| Overall: [=======================> ] 50% |
| Time: 00:11:23 |
| Files: 234 remaining, 468 total |
`--------------------------------------------------------------'
- Remove the pi_bind, pi_listen, pi_accept from all relevant files,
and create a function pi_error() which will return the proper
responses. Additionally, remove PalmHeader() and stick that in
it's own function which will report --version calls.
- Start to condense the install-* binaries into one binary called
pilot-install. getopt() is a prerequisite for this, so we can do
'pilot-install -memos -todos' for example. Too much duplicated
code in there. Symlink the rest of the apps to pilot-install, and
just test argv[0] to run the proper functions. Multi-call binary.
- 'pilot-xfer -f Foo' to pull 'Foo.prc' from your Palm works.
Additional option to pull by CrID would be nice as well (and
faster, since we can use the DLP equivalent of
DmOpenDatabaseByTypeCreator())
- Add 'reada()/writea()' socket calls that allocate the return
buffer (important for NetSync, as results larger then 64K are
possible).
- Add Tcl 8 specific code to allow retrieval of raw records, and
optionally use Tcl routines for packing and unpacking; Add all dlp
functions, clean up the channel code rats nest. Somehow. (Separate
source file?)
- Perl bindingss: Change record representation from string to object
to match Python implementation. Add packers. Document.
- Collapse: read-todos/install-todos, memos/install-memos, etc.
- pilot-datebook updated to match remaining structure
New Features
------------
- pxd, first cut at a pilot-xfer'ized daemon
- Deal with the m100 API to Notepad. Has anyone taken a look at the
data structures and come up with a way we can replicate them, to
read records? Ideally the images should be $(NAME).png, and the
text associated with it should be $(NAME).txt.
- Standard output format for the "4 Magic Buttons". XML? csv?
iCal/vCard?
- Full VFS support in libpisock for pilot-xfer -b, dlpsh, and friends.
- TRGPro CF direct writes (Card 1?)
- Write iambicExpense.c (is this needed?)
- Teach sync-plan about the other repetition types that are
convertable from Plan to Pilot.
- Clean up pilot-xfer a bit more, add a -ntp option
to sync the time from/to the desktop from/to the Palm.
- pilot-xfer --daemon. Would be a good test to get it listening on a
port in a non-scripted hacky way. All applications which return
should have this functionality. Interactive applications should be
left alone.
- File size reported on all pilot-xfer'style syncs, ala:
Backing up './Small Icon EditorSSle.prc'...(2192 bytes, OK)