#	$Id: CHANGES,v 1.54 1998/07/22 19:26:38 jvuokko Exp $	

List of changes in jmr.                                                CHANGES
=======================


0.7.20.1 (22.7.1998)


1. BUGFIX: Selections 'no tagline' and 'random tagline' in the
           tagline dialog did not work.

------------------------------------------------------------------------------

0.7.20 (18.7.1998)


1. With option '--open-jmr bbsid' the qwk packet named 'bbsid.qwk' is
   opened during startup, or if it does not exist, then database of bbsid is
   opened (By Yrj Hatakka).

2. Mail packet will be removed automatically if value of keyword
   'rmoldpacket' is set to 'yes'. This part of code is not yet fully tested,
   so be carefully. (By YH).

3. Experimental keyword: 'followupto'. With this you can specify recipient
   that are used in all followups regardless of original author of the article.
   E.g. if with line 'followupto = all', recipient of all followups will be
   always 'all'.
   If you want to use this feature, compile jmr using option experiment.
   (If you find this feature useful, please mail to me).

4. BUGFIX: Tagline is no more replaced with new one if reply is re-edited.
           (By YH).

5. BUGFIX: Keywords 'menubar_color' and 'menubar_back' were not recognized
           correctly.

------------------------------------------------------------------------------

0.7.19 (25.5.1998)


1. Option `no tagline' added to tagline selection. (By Jari Eskelinen)

2. Jmr now works with tagline files that are in MS-DOG format. In previous
   versions ^M-character at the end of tagline caused corrupted screen and
   some other problems when tagline was edited manually.

3. BUGFIX: Sometimes jmr wrote corrupted reply packet when long subjects 
           (longer than QWK's standard 25 characters) was used.

4. BUGFIX: When header's of the reply was edited ('E'), changes made to
           tagline was not displayed before visiting at some other reply.

------------------------------------------------------------------------------

0.7.18.5 (23.5.1998)


1. Some Os/2 related patches made. Now jmr compiles fine with
   Watcom C/C++ 10.6 and Emx/Gcc 0.9c

------------------------------------------------------------------------------

0.7.18.4 (21.5.1998)


1. BUGFIX: If QWK packet was renamed from form <bbsid>.qwk to something
           else, then contents of exist database with that bbsid were lost.

           Actually this version does not fix that bug, this only prevents
           rewriting of the database by halting program with error message if
           difference between name of the packet and bbsid readed from the
           packet is found.

------------------------------------------------------------------------------

0.7.18.3 (16.5.1998)


1. BUGFIX: New String.cc (former string_class.cc) was broken. It has bug
           that caused corruption of jmr's group database.

------------------------------------------------------------------------------

0.7.18.2 (15.5.1998)


1. BUGFIX: Directory ~/Messages was always created, regardless of 
           value of the keyword 'extractdir'.

2. All modules that are not jmr related, are separated to own directory
   called 'utilib' (string_class.cc -> String.cc, misc.cc, ... ). Part
   of String class code are re-organized.

------------------------------------------------------------------------------

0.7.18.1 (23.4.1998)


1. BUGFIX: New keywords was not included in the resource file generated
           by the jmr (option --init).

------------------------------------------------------------------------------

0.7.18 (23.4.1998)


1. Licencing policy changed to GNU GPL, so there are no more restrictions
   with redistribution of the modified versions of the jmr.

2. Support for signature file and external tagline program (such as fortune)
   If signature file is specified, it overrides all other tagline options.
   Signature file can be set using keyword `signaturefile'.

   Also if tagline program is specified, then it is used instead of default
   tagline. Program is set via keyword `tagline_program'

3. BUGFIX: Signals *should* now be handled properly. Use of ^Z is safe now.

4. BUGFIX: When is re-edited, the reference field is not set to zero.

------------------------------------------------------------------------------

0.7.17 (31.12.1997)


1. New keyword, `default_folder', to describe default name for file
   to save articles.

2. BUGFIX: Absolute path bug fixed. Articles can be saved to file using 
           full paths like `/home/my_username/foobar' (or `F:\texts\foobar' 
           in Os/2).

3. BUGFIX: Appearance order of the random taglines was always same. Not any
           more.

4. BUGFIX: If entry for TERM did not found, jmr sometimes crashed at
           segmentation fault after the error message 'Can't get entry for 
           TERM' was printed.

5. BUGFIX: If reply was re-edited, it's number in thread was something weird
           like: `Respno: -4335321/1'.

------------------------------------------------------------------------------

0.7.16.2 (16.12.1997)


1. BUGFIX: If old replypacked was opened, it's characterset was 
           converted to ISO-8859.1.

------------------------------------------------------------------------------

0.7.16.1 (28.11.1997)


1. No new features, only some source code modules are splitted to 
   smaller ones.

------------------------------------------------------------------------------

0.7.16 (17.11.1997)


1. Addressbook (by krid@comnets.rwth-aachen.de). If empty recipient is
   entered when composing a new article, a menu will pop up and user can
   select recipient from it. Addresses are readed from file `mailrc' which
   is in the same directory where resource files are lying. Format of
   the file is simple, one address per line.

2. Conversion for german character `' (sharp-s) added. Thanks to krid.

3. New keyword, default_receiver added to resource file. Normally,
   default name for a recipent is empty, but with this keyword default 
   value can be set to some other, like `All', which was the default value
   of the recipient field in the earlier versions of the jmr.

4. BUGFIX: Replied flag did not set up correctly.

------------------------------------------------------------------------------

0.7.15 (2.11.1997)


1. Simple text wrapping. If variable 'wrapmode' is set to 'yes' in resource
   file or if 'ESC-w' is pressed in jmr, then all lines that are too long
   to fit to display, are wrapped. But this implementation does not yet
   seek for full words, it only cuts line at right edge of screen and then
   continues it onto next line.

   Text is also wrapped only on the screen, not in actual article. This means
   that if you write followup to article that contain long lines, then
   your editor should handle word wrapping.

   Wrapped line is indicated by the red '>' at the end of line. If system's
   character set is ISO-8859-1 or IBMPC, then right pointing double 
   quotation mark ('>>') is used instead of '>'.

2. Tagline indicator changed from "--" to "-- ", which is convention in the
   usenet news.

3. BUGFIX: If option 'edit' was choosed from menu that was displayed after the
           reply was writed, all changed fields of the header were reseted to
           their original values. Now 'edit' does not discard those changes. 

------------------------------------------------------------------------------

0.7.14.2 (4.10.1997)

1. Some Watcom (Os/2) related patches made. Watcom didn't compile previous
   version of jmr.

------------------------------------------------------------------------------

0.7.14.1 (1.10.1997)

1. BUGFIX: Terminate signal used by external program (such as editor) was
           incorrectly caughed by jmr. (e.g. if ^G was pressed in jed,
	   jmr was terminated).

------------------------------------------------------------------------------

0.7.14 (29.9.1997)

1. Better error recovery. Now session can be recovered even if system
   crashed.

2. Uninstall option for unix-makefile.

------------------------------------------------------------------------------

0.7.13 (28.9.1997)

1. BUGFIX: keyword dashline_back was missing from resource file

2. On Unixes, jmr uses now fork() and execvp() instead of system() when
   executing external programs, suchs as editor.
   This means that it is now safe to suspend editor using ^Z when writing
   or editing reply.

------------------------------------------------------------------------------

0.7.12.1 (29.8.1997)

1. BUGFIX: jmr wrote wrong date to QWK-reply packet...


------------------------------------------------------------------------------

0.7.12 (28.8.1997)

1. new Keyword 'dateformat' for describing how the date should displayed.
   Default format is %D.%M.%Y which means dd.mm.yyyy
   

------------------------------------------------------------------------------

0.7.11 (21.8.1997)


1. New keyword added to resource file: 'confirm_return'. If it is set to
   value 'yes', then jmr asks confirmation when returning back to
   packet selection level from group selection level. Default value is
   'yes'.

2. Tagged articles stays now in message database as long as they are
   not marked as killed or untagged. 

3. BUGFIX: resource tag_full_sysname didn't work on some Unix-systems
	  (Irix, Solaris)

------------------------------------------------------------------------------

0.7.10.1 (25.7.1997)

1. BUGFIX: Output of command line parameters (such as --help, --licence, ...)
           did not work properly.

------------------------------------------------------------------------------

0.7.10 (20.7.1997)

1. ROT13 support. Press ESC-r at the article display to view contents of the
   article using Rot13.

------------------------------------------------------------------------------

0.7.9.1 (18.7.1997)

1. BUGFIX: That new history ring has a bug that caused jmr to dump core.
           That bug occured only if ring was browsed using keys 'N' or 'P',
           and after browsing, reading of new article was started by pressing
           TAB (or n/p).
           Now history ring *should* work properly.

------------------------------------------------------------------------------

0.7.9 (17.7.1997)

1. Read history. When article is read, it is stored to history ring.
   This ring can be browsed using keys 'P' and 'N'. P moves to previous and
   N to next article within ring.
   Note that history works only at the article display level, and it is 
   reseted every time when you return back to thread selection level.
   

------------------------------------------------------------------------------

0.7.8 (10.7.1997)


1. Os/2 version uses Vio-API for screen handling. (This means that
   bottom line is now used :-)

2. Jmr *should* work now with all terminals...

3. Some fixes for screen handling...


------------------------------------------------------------------------------

0.7.7.1 (7.7.1997)


1. BUGFIX: Termcap-support was broken. Now it is fixed, but works
           only with VT100 compatible terminals. 

2. BUGFIX: Message 'Resource file (/xx/yyy/jmrrc) created with...' is
           no longer printed as a error message.


------------------------------------------------------------------------------

0.7.7 (6.7.1997)

1. ^L redraws screen anywhere within jmr.

2. If jmr is suspended using ^Z, screen is redrawed automatically when
   jmr is activated again.

3. VT/ANSI-control sequences does not corrupt display any more. 

4. Screen handling is rewritten. Now its somewhat faster, and jmr is now
   useful even when it is used over slow network.

5. New resource, tag_full_sysname. If value is yes, then machine and system
   are displayed at the tagline. Default value is no, when only name of the
   system is displayed at the tag.

   e.g. With tag_full_sysname = yes, tagline would be something like that:
        * jmr 0.7.7.0 [i586/Linux] *
     or * jmr 0.7.7.0 [Sun4m/SunOS] *

     and with default setting, tag is something like:
        * jmr 0.7.7.0 [Linux] *
     or * jmr 0.7.7.0 [SunOS] *

6. All informings, errors and warnings are now printed to own 'window'.
   This window can always bring to top of the screen by tapping key 'm'.
   Then press any key to hide window.

7. Header of a new reply can be edited without editing whole reply by 
   pressing 'E' at thread display or article display.


------------------------------------------------------------------------------

0.7.6 (23.6.1997)

1. Reply can be edited now directly from the article display level.

2. Number of lines of the article is now displayed at the status line.

3. Some improvements for screen handling.

4. BUGFIX: Article display level: After saving article to a file, position 
           in article was lost.
           

------------------------------------------------------------------------------

0.7.5.2 (21.6.1997)

1. BUGFIX: If line contained tabulators, then screen was sometimes corrupted. 
	   That was because new page was drawn over the text of the previous 
           page. Only problem was, that tabulator did not draw nothing, it 
	   only skips over next 8 characters, leaving holes that contains text
	   from the previous page.
	   Now entire line is cleared before drawing contents of a new line.

2. At the menubar, active menu item is indicated using '>'. This is useful
   when jmr is used with mono terminal (e.g. VT100).

------------------------------------------------------------------------------

0.7.5.1 (18.6.1997)


1. BUGFIX: Last line of a new reply was losted, if used editor did not append
           CR after the last line. (This happens with Joe-editor).


------------------------------------------------------------------------------

0.7.5 (14.6.1997)


1. Statusline

2. Simple pull-down menu. Menu can be activated by tappin ESC-key twise.
   This menu are still *very* experemential, so it is not very useful.

3. Number of article's real group is displayed at the virtual group 'Tagged
   Articles'.

4. Key 'T' is untag/tag all

5. Backspace works now undes Unix.

6. Keyword 'quotecolor' replaced with 'quote_color'

7. Keyword 'textcolor' replaced with 'article_color'

8. New keywords for customizing colors:

	menubar_color		-- foreground color of the menubar
	menubar_back		-- background

	statusline_color	-- foreground color of the statusline
	statusline_back         -- background

	dashline_color		-- colors of the dashed line that separates
	dashline_back		   parts of screen.

	infoline_color		-- color of the infoline.
	infoline_error_color	-- color of the error message

	header_subject_color	-- color of the subject at the header
	header_author_color	-- color of the name of the author...

	subject_color		-- the subject at the list display
	author_color		--     author

	personal_color		-- name of the receiver, when personal message
	basegroup_color		-- color of the names of the jmr's basegroups


9. BUGFIX: If tagline was empty, three dot's was appended at end of the
	   article. Now empty tagline is really empty.

10.BUGFIX: Os/2 version did not clear working directory.

11.BUGFIX: Now jmr uses linenumbering that starts from 1 when reporting
	   errors that are detected in the resource file.


------------------------------------------------------------------------------

0.7.4.1 (27.5.1997)


1. BUGFIX: jmr crashed when trying to save all articles of thread to a file.
           Now it works.

2. BUGFIX: jmr did not destroy tagged articles that was marked as 
           killed.
           

------------------------------------------------------------------------------

0.7.4 (25.5.1997)


1. Jmr supports now local, bbs related configuration files.
   The local configuration file must be named using manner <bbsid>.rc,
   and file must be in jmr's 'base' directory. 

   On a startup, jmr reads settings from the main configuration file,
   but if local configuration file for current bbs found, then 
   global values are overrided by these values.

   Currently, these resources can be defined for each bbs:

       bbscharset     -- character set that bbs is using
       quoteprefix    -- string used for quoting line
       ptagline       -- permanent tagline
       tagline        -- tagline
       followupstring -- string for followups
       replystring    -- string for private replies
       replylogsize   -- size of replylog
       databasesize   -- size of database
       extractdir     -- directory where saved articles goes


   See more information about local configuration files from file 
   sample.rc.
   
2. Now jmr requires only that resources 'bbscharset' and 'systemcharset' 
   are defined in the main configuration file, but usually you need set
   up at least paths and editor.
  
   Type 'jmr --init' to get template for a new configuration file.

3. Jmr now tells more information about errors that found from the 
   configuration files, and parser now checks the correctness of 
   the defined value.
   E.g. Now error is reported, if you try define something like:
            databasesize = xyz
   or
            editor =


4. BUGFIX: Old replies were not removed from the replylog, when defined 
           maximum size was exceed. Size of the replylog was unlimited, 
           but not any more...

5. Working directory is no longer cleaned using dangerous shell commands 
   like 'rm -f *'.
   Now jmr removes only files that are expected to be in that directory.
   I.e. '*.ndx', 'control.dat', 'messages.dat' using own routine.

------------------------------------------------------------------------------

0.7.3.0 (19.5.1997)

1. Now key 'ESC <' moves to start of list/article and 'ESC >' moves to end
   of list/article (like keys Home and End).

2. Keys '<' and '>' moves to first and last article of a current thread.
   
3. Ctrl-v is now PageUp and 'ESC v' is PageDown.

4. Right arrow does not bring next article in the message viewer any more.

5. Actual group of the article is displayed in the subject list in groups 
   'Personal Mail', 'Replylog' and 'New Replies'.
   In group 'Personal Mail' the number of group is displayed instead of the
   field 'receiver', and in groups 'Replylog' and 'New Replies' your name is
   replaced with the number of group.

6. At the article display level, it is now informed if no more unread 
   articles are not available when either TAB or ENTER is pressed.

7. BUGFIX: When saving articles to a file, '~' in a filename is now 
   expanded correctly.

8. BUGFIX: Ooops. Help worked only in a group selection level. Now it
   works in other levels too...

------------------------------------------------------------------------------

0.7.2.0 (17.5.1997)


1. Groups can be tagged (currently only search uses this).

2. Searching can be done now from current group, tagged groups or all groups.

3. Simple online help is available using key '?'.

4. Forced quit. You can quit jmr directry from Group, thread or article level
   with key 'Q'.

------------------------------------------------------------------------------

0.7.1.0 (14.5.1997)

1. Limited word, author, subject and receiver search.
   By default, search is in case sensitive mode, but if first character
   of expression is '~' then case is ignored. 
   
   This version of search does not support wildcards or regular
   expression!
   This version does not allow you to specify group search from. Search
   looks always articles from of all groups that are from BBS.

   Examples:
   Expression 'Linux' Searchs for 'Linux', 'Linux-2.0.29' etc...
   Expression '~linux' Searchs for 'LiNuX', 'JMR-LINUX', 'linux' etc...
   
   Results of searchin are stored to virtual group 'Search Results'
   and kept up until next search is performed or jmr is closed.

2. Empty subject or receiver is allowed.

3. Catchup without any questions using key 'C'.

4. If group without any unread articles is selected, then all articles/threads
   are displayed by default.
   
5. FIXED: Small bug with characterset of database. Now characterset of the
   database is always Iso-Latin1, regardless of characterset of your
   operating system.

------------------------------------------------------------------------------

0.7.0.2 (6.5.1997)

1. FIXED: Threads was not build as expected, subjects that
          contained one or more trailing spaces was sorted to own
          threads.

------------------------------------------------------------------------------


0.7.0.1 (3.5.1997)

1. BUGFIX: jmr crashed when new BBS was loaded first time to the message 
   database.
   

------------------------------------------------------------------------------


0.7.0.0 (1.5.1997)

1. Message database. Jmr stores all loaded articles to database. Maximum size
   of database is defined using key 'databasesize'.

2. Keyword 'taglogsize' in resource file is now obsolete.

3. Catchup. All articles within a single group can be marked as a read.

4. Number of articles per group is now unlimited.

5. Files data/*.sht and data/*.cfg are now obsolete, and can be removed.

6. Fixed bug that destroyed other replies when one was edited.

------------------------------------------------------------------------------


0.5.13.7 (21.4.1997)

1. TO-field is not empty by default.

------------------------------------------------------------------------------


0.5.13.5 (11.4.1997)

1. BUGFIX: If followup is written to tagged article, then jmr does not any 
   more set status new reply as tagged.

------------------------------------------------------------------------------


0.5.13.4 (10.4.1997)

1. No new features, but part of code has been rewritten.

------------------------------------------------------------------------------


0.5.13.2 (9.4.1997)

1. BUGFIX: jmr did not found file of taglines, if name of file began with ~.
   E.g. tagline = @~/my_taglines.
   Now it works...

------------------------------------------------------------------------------


0.5.13.1 (8.4.1997)

1. Support for random tagline.
   File of taglines is specified using keyword 'tagline' in file jmrrc.
   If first character of tagline is '@', then jmr reads tagline from give file.
   e.g. tagline = @my_taglines


2. Permanent tagline is now defined using 'ptagline' keyword.

------------------------------------------------------------------------------


0.5.11.1

1. Kill-command works now at article display level.

------------------------------------------------------------------------------


0.5.11.0

1. Better article tagging.
   Tagged articles is now stored to file for later action. 
   Maximum count of articles to keep in file is specified useing 
   keyword 'taglogsize' in resource file.

   
------------------------------------------------------------------------------


0.5.10.0 (6.4.1997)

1. Directory structure has changed. Now jmr creates directory 'data' under
   $JMRDIR and keeps all logs here.
   After this, only file in $JMRDIR is jmrrc.

2. '$' indicates that line, subject or name is too long to fit display.
   e.g. This is too long subject to fit displ$

------------------------------------------------------------------------------


0.5.9.0	(6.4.1997)

1. Now jmr accepts paths that starts with ~.

------------------------------------------------------------------------------


0.5.8.6 (5.4.1997)

1. Format of replylog changed, but jmr still understands obsolete log format.

2. File-IO is somewhat faster... (thanks to the new format of log)

------------------------------------------------------------------------------


0.5.8.4 (3.4.1997)

1. New format specifiers to followupstring and replystring: %D, %M and %Y.


------------------------------------------------------------------------------


0.5.8.3	(3.4.1997)

1. TAB works now in group selection level.

2. Keys PgDn and PgUp works now everywhere.

3. Some fixes with pcboard-support. It should work now...

------------------------------------------------------------------------------


0.5.8.1 (1.4.1997)

1. Option --init creates resource file.

2. New keywords to resource file: 'followupstring' and 'replystring'.

------------------------------------------------------------------------------


0.5.8.0	(1.4.1997)

1. Error recovery. If terminate signal is received, jmr stores new replies to
   file deadjmr.msg before exit. When program is started next time, it asks 
   if user wants to continue with session that was killed... 

   However, if jmr is killed, it does not write snapshot of session, which
   means that all read articles will taken as unread during next session.

2. Option --color sets ANSI-color mode on, even if terminal is not 
   capable to show colors. This is useful in color-xterm.
   
3. Option --help shows short help about options...

4. --licence shows licence of program.

5. Version numbering changed to better one.

------------------------------------------------------------------------------


0.56	28.3.1997

1. Better usage of colors.

2. New flag, 'R'. It indicates that you have following up/replied thad message.

3. Pressing PgDn/SPC at bottom of article first time does not bring 
   next article, it only shows message "End of article. Press SPC for next".

4. IBM-character 254 (square box) at tagline replaced with '*'.

5. BUGFIX: jmr does not more crash if QWK-packet have empty article (size < 
   128 bytes).

------------------------------------------------------------------------------


0.53	23.3.1997

1. BUGFIX: pressing 'TAB' does not more crash jmr if group is empty.

2. BUGFIX: Empty article does not crash jmr at messagedisplay.

------------------------------------------------------------------------------


0.52	23.3.1997

1. Reply can be edited again just after it was wrote.

------------------------------------------------------------------------------


0.51	19.3.1997

1. Jmr writes temporary data now under it's working directory, so
   it does not need TMP any more.

2. Key '>' is end and key '<' is home.

3. Jmr stores latest session of each bbs, and when user next opens packet from
   that bbs, jmr asks if user want to continue with previous session.

------------------------------------------------------------------------------


0.50	13.3.1997


1. Jmr checks correctness of the command line arguments

2. During first startup, jmr asks if you want to create working directory.

3. Jmr informs you if it cannot access extract directory.

4. Now jmr handles stop signal from tty (^Z). But automatic screen updating is
   still missing...

5. Installation script for unix version.

------------------------------------------------------------------------------


0.49	13.3.1997

1. Line editor accepts now commands ^F, ^B and ^L, and works with 8 bit
   characters ( and ).

2. FIXED BUG: If environment variable JMRDIR was not set, jmr created
   resource file incorrectly using name $HOME/.jmrjmrrc (jmr did not insert
   '/' between .jmr and jmrrc ).

3. Command 'w' do not work any more in basegroups (this was a minor bug :-)

------------------------------------------------------------------------------


0.48	11.3.1997

1. Does not use ncurses any more.

2. Keys HOME and END works now everywhere.

------------------------------------------------------------------------------


0.47	10.3.1997

1. Line editor understands now famous emacs-commands: ^K, ^A and ^E.

------------------------------------------------------------------------------

0.46 	10.3.1997

1. If environment variable JMRDIR is not set, jmr uses directory $HOME/.jmr

2. If jmr's directory does not exists, jmr creates it. 

3. Name of default resource file is now jmrrc (it was jmr.rc).

4. If resource file does not exists, jmr creates it with default settings.

5. Now messages can be sorted by threads also in groups 'Replylog' and
  'New replies'

------------------------------------------------------------------------------

0.45	8.3.1997

1. Shows real group of message at header of messagedisplay. 

------------------------------------------------------------------------------

0.44	5.3.1997

1. Colors for messages: highlight for quoted text. 

2. Bugfixes. PCBOARD feature was buggy :-)

------------------------------------------------------------------------------

0.42 --> 0.43

1. Reply works now, but it is designed for private replies only. Public
   messages should be writed using followup.

2. Support long subjects when using with PCBOARD.

