	      _  _ ____  _ ____ ____ ___  ____ _  _ ____
	      |\/| |__|  | |  | |__/ |  \ |  | |\/| |  |
	      |  | |  | _| |__| |  \ |__/ |__| |  | |__|

			     Release 1.94
				FUTURE
  --------------------------------------------------------------------------

[ As of Jan 28, 1996, this file is simply most of Section 5 of the old 
  README file, and thus is a bit out of date. ]

* Future Directions 
--------------------

Random notes:
	Use dbm file to hold list config
	Use perl5 structs.
	option to have subscribe *not* send a welcome msg out.
	the ability to muck with the entire subscribed list.

The next major planned release will be majordomo 2.0. The
specification document has been written for it, and is is in the
process of being written. The intent with 2.0 is to have a defined
programmers interface that allows people to develop portable modules
that can be added into majordomo to provide additional
functionality. If you think of majordomo as a stripped down car, and
the addin modules as extra options that you can "buy", then you have
the right idea. Majordomo 1.9x is being released to test the config
file code, and because some of the resend and majordomo features seem
to be needed by people on the majordomo-users list.

Before the next planned release, there may be other releases in the
1.9x series as bugs are found, and as additional functionality that is
currently hinted at in the config file is added.

5.1.1 Bugs/Misfeatures/Todo

The following is a list of things that I want to address at some
point. The items marked with a * imply that patches to implement the
feature have been written, but it is too late in this cycle to apply
the patch and test it. Hopefully some of these items will be fixed
in later versions of majordomo 1.9x.

 1) Resend only recognizes an Approved: header as the first line in the body.
    The approved header should be recognized if it is the first non-blank
    line in the body. [[[ fixed in 1.94 ]]]

 2)* Resend should have a separate moderater address to bounce email to

 3) Multiple privacy levels have to be provided. yes, no, password protected

 4) The number of reported hits from which should be tunable

 5) approve has to be extended to handle almost all commands

 6) new-list should be part of resend

 7)* wrapper.c should use sysexits.h for its error codes
       [[[ fixed in 1.94 ]]]
 8) auto lists should prevent the list from being subscribed to itself

 9)* auto lists should make sure that listserv style addresses aren't used
      [[[ fixed in 1.94 ]]]
10) provide the ability to smash case of all incoming addresses under
    majordomo administrator control.

11) ability to specify banned users whose posts are ignored.
     [[[ fixed in 1.94 with taboo_headers ]]]
12) rework the advertise/noadvertise interface

13) Look at supporting #included/#exploder lists for mail sublists.

14) set up reply to be smart enough to break mail loops
	 (using received: headers)

15) should -h not be required by resend, or should resend_host keyword go
	 away?

16) config should return the input file if there is an error.

17) digest needs to strip headers and footers from list info. Maybe there
	 should be a back channel out of resend that doesn't do any
	 body massaging.

18) have resend/majordomo check to see if the last Received: line is a
	right hand sub/super string of the user's from address.

19) fix help messages to remove syntax diagram info to stop address
	subscriptions like:  subscribe list [user@site]

20)* Support auto digest creation based on number of lines, and age.

21) Have resend log messages as it sends them through. Can be used to
	prevent mail loops as well as provide stats for later use.

22) analyze code to make sure all areas that require locks are in place

23) detect error condition (e.g. out of disk space) and deal with them better
    [[[ fixed in 1.94 ]]]
24) add code to support incremental config file changes.

25) add ability to add arbitrary headers to message and check that the
	 headers are in the proper form.

26) add the ability to do load limiting of majordomo commands

27) RCPT messages shouldn't be bounced as administrivia. They should be
    in a different class, and should be user settable.

28) digest always needs to have its archive directory present. Digest
    should be rewritten to place its outgoing digest into the
    incoming directory, and it should use archive to do archiving if
    need be.
