
	= PyNR =

An example of interface kit usage from Python.

NNTP and IMAP4 client.

Name is PyNR for Python News Reader.  This is not polished software,
and the features are few and sparse, but in a way that's the idea.
I want you to write parts of it, and there's still plenty to do.

I use it.  NNTP and IMAP, all the time, day and night, have for a long time.

Install:
  1. Install Python and build and install the BeOS API modules.
  2. In this directory,
     $ make                      #  Make kernelmodule.so
     $ make -f Makefile.gss      #  In case you have Kerberos 5.
  3. Edit "rc" and install in /boot/home/config/settings/pynr/rc
  4. pynr
  ...  And if you want a C++ application for looks,
  5. $ make pynr_app


PyNR uses BMessages to communicate between threads.  In the present
version I have introduced some semaphore-interlocked data, gave up
on a completely message based design.

Overall program design tends to revolve around windows, since
they provide a message dispatching thread.  Each window tends
to represent a corresponding data object - list of newsgroups,
reply message, etc. - and these window/data pairs are more or
less autonomous.


There are rough edges.  For example:

Interface:
   - Load attachments separately.
   - Make attachments.
   - Configuration editor.
   - Add new remote folders.

Service:
   - NNTP client could get at least closer to good netkeeping seal of
     approval standards, cf. http://www.xs4all.nl/~js/gnksa/.  Keep
     J. Moreno <planb@newsreaders.com> (?) up to date.

And countless other things.  IMAP in particular has tons of options.
It would be fairly easy to add a poplib interface and get POP3 email.
This sort of implies local disk file messages too, and of course that
would be a plus for the IMAP user too.
Basic interface design could be rethought.

At this writing (June 2001) this application has been available
to the public for quite a while, years.  I have a faint memory
of corresponding with one other person who had used it.  That's
OK, but if you ran it and see something you think could have
been done better, or can't see how to make it work, don't be
too bashful to write me a note.

	Donn Cave, donn@drizzle.com
