home *** CD-ROM | disk | FTP | other *** search
/ Otherware / Otherware_1_SB_Development.iso / amiga / comms / network / grn1src.lha / CHANGES < prev    next >
Encoding:
Text File  |  1992-07-07  |  28.2 KB  |  603 lines

  1. Changes in 1.16e:
  2.  
  3. 1.      As miss-spelling in the CloseWindow requester has been corrected
  4.         ("cnanged" to "changed").
  5.  
  6. 2.      An insidious problem in the NewsGroup Pruning code which could cause
  7.         memory to be over-written, and already freed memory to be used has
  8.         been corrected. (A struct NODE * pointer was being free()'d and then
  9.         the node.ln_Succ field being extracted from the free()'d memory. On
  10.         a busy system, this memory could already have been re-allocated. On
  11.         some systems, GRn would guru; on others, GRn would hang.) Thanks to
  12.         Christopher A. Wichura for helping me track this down.
  13.  
  14. 3.      When posting an article, if the user.nrefs file is not found, then
  15.         user.headers is looked for (to be compliant with DNews).
  16.  
  17. 4.      GRn now looks at the post being editted, and if you did not change
  18.         the post, asks you if you wish to continue with the post. You can
  19.         discard the post at that time.  This does require an editor that is
  20.         smart enough to not re-write the file if no changes were made.
  21.  
  22. 5.      GRn now examines the return value from the editor used in posting an
  23.         article. If the value was non-zero, a requester is displayed informing
  24.         the user of that fact, and asking the user whether or not to continue
  25.         with the post.
  26.  
  27. 6.      The Posting routines have been completely re-written to prepare for
  28.         MIME. They should also be faster as a result of this.
  29.  
  30. 7.      Similar changes for all Mail (Reply, Bug report, etc.) has been made
  31.         as in 4, 5, and 6.
  32.  
  33. 8.      The Publish routine was re-written. A couple of memory leaks were fixed.
  34.         Publish also now checks return values, and give you an opportunity to
  35.         abort when there are any questions about the process.
  36.  
  37. 9.      Under certain special data conditions, OutputFile() could enter an
  38.         infinite loop (until memory was exahusted). A "while (len)" condition
  39.         is now "while (len > 0)".
  40.  
  41. 10.     All SendMail routines and all PostNews routines have been modularized.
  42.         Handling is now the same. Kinda boring, actually.   :)
  43.  
  44. 11.     SendMail() was not removing the temporary file created if the user
  45.         chose to not send the mail off. This was probably an original bug in
  46.         BugReport().    :)
  47.  
  48. 12.     PROCDEBUG defined and installed in gmode.c and amode.c. What a help!
  49.  
  50. 13.     Cross posting is now honored. GRn used to just place the currently
  51.         selected newsgroup in the editor buffer when a followup was being
  52.         entered. It now properly includes all Newsgroups in the Newsgroup
  53.         line.
  54.  
  55. 14.     The "Followup-To:" header is now honored (with the known exception of
  56.         "poster"). Previously, GRn ignored the header.
  57.  
  58. 15.     Just like GRn allows user.nrefs for additional header information to
  59.         be added to news articles, you may now have a user.mrefs file for
  60.         additional header information to be added to mail messages. If that
  61.         file doesn't exist, GRn also checks for user.header to be consistent
  62.         (and compliant) with DMail and DNews.
  63.  
  64.         Do note that for News it is ".nrefs" and for Mail it is ".mrefs". There
  65.         is a difference, although you can certainly link them to be the same.
  66.  
  67. 16.     GRn now redraws the screen more intelligently. It shouldn't happen
  68.         when it doesn't need to, but it will redraw after a requestor has
  69.         been seen. GRn used to not redraw the Article Mode screen after a
  70.         Reply. If your editor opened on GRn's window, it was possible for the
  71.         GRn screen to become corrupted. The user would have to exit to Group
  72.         Mode and then return to Article Mode.
  73.  
  74. 17.     GRn now explicitly sets the stack of the PostNews and SendMail
  75.         programs to 32000.  I could be talked into making this configurable,
  76.         but this is a reasonable number, I think.
  77.  
  78. 18.     A miss-spelling in the text for the "UUCP Bug Report" has been
  79.         corrected.
  80.  
  81. 19.     When exiting, GRn now calculates the size of the GRnRC file, and
  82.         attempts to go ahead and get memory for it. If GRn can acquire all
  83.         the memory at once, the GRnRC file will be built in-core, and dumped
  84.         to disk with a single write statement. This results in a SIGNIFICANT
  85.         improvement in termination speed.
  86.  
  87.         If GRn cannot acquire the memory, or an error occurs while he tries
  88.         to dump the file, GRn will try the old method.
  89.  
  90.         In general, the output error handling has been improved for this
  91.         function (there wasn't any at all, and now there is some).  :)
  92.  
  93. 20.     The documentation has been significantly reworked. The next release
  94.         will probably approach GNU recommendations (MANIFEST, INSTALL, README,
  95.         PROBLEMS, GRn.doc, GRn.man).
  96.  
  97. 21.     Two minor performance improvements to ScanAndLoadHeaders(), at the
  98.         cost of a byte of memory. Worthwhile tradeoff. (Eliminated two if
  99.         statements that were interested in whether or not the last read()
  100.         was exactly the maximum size of the array, to avoid overwriting the
  101.         last byte. I made the array one byte larger than the maximum I/O,
  102.         so the code didn't have to care.)
  103.  
  104. 22.     A minor performance improvement to FixNames(). It examined every
  105.         character in the "src" pointer, even though it had passed the
  106.         "interesting" character. It now stops looking once it finds that
  107.         character.
  108.  
  109. 23.     When subscribing to new newsgroups, BuildNewsTree() held a Lock()
  110.         on every new newsgroup, even after it was done with it. This has
  111.         been corrected.
  112.  
  113. 24.     GRn no longer uses a busy-loop "Delay()" when requesters are put up
  114.         looking for input. GRn uses WaitPort() just like he should. This
  115.         will make GRn more multi-tasking "friendly" to people who use things
  116.         like Exploding Windows or Pointer Activate (which activates the
  117.         window underneath the pointer always).
  118.  
  119. 25.     Minor changes were made to the way that Gadtools messages are handled
  120.         with the requesters to eliminate an Enforcer/Mungwall hit. Thanks
  121.         again to Christopher A. Wichura for working with me to figure this out.
  122.  
  123. 26.     The Forward gadget is now handled as worked-out on Usenet. Each
  124.         forwarded message has "(fwd)" appended to the end of the "Subject:"
  125.         header -- unless it already exists. No "Re:"s or anything else are
  126.         prefixed. The "To:" header is no longer filled out as if it were
  127.         a reply. The Forwarded text is headed by an "Originally From <x>"
  128.         line, and has "---------- End of Forwarded Article ----------" at
  129.         the end. There is no prefix of ">" before each line of text.
  130.  
  131. 27.     In a FollowUp, if the Distribution header was not present in the
  132.         article being followed-up-to, a blank Distribution line was put
  133.         into the user's editor. This has been changed to "Distribution: world"
  134.         to avoid any further confusion.
  135.  
  136. 28.     When Forwarding an article, if a line starts with "From ", a ">" is
  137.         now placed in front of the "From " to avoid confusing mailers about
  138.         where the article starts/stops. This is consistent with Elm (BSD) and
  139.         mailx (SVR4).
  140.  
  141. 29.     Threading speed has been significantly improved by using AmigaDOS I/O
  142.         and register pointers intead of stdio and regular pointers.
  143.  
  144. 30.     Shift-up-arrow now goes to the top of the article. Shift-down-arrow
  145.         now goes to the bottom of the article. Both ENTER and RETURN go down
  146.         one line. Previously, all of these were ignored.
  147.  
  148.         The shifted commands are a little odd - the SHIFT-IN only affects the
  149.         NEXT character. So, SHIFT-UP-ARROW followed by DOWN-ARROW while the
  150.         SHIFT is still in, and hasn't been released, will cause only a single
  151.         line down from the top. This is due to the way Intuition gives us
  152.         shift-in-out with Gadtools. There is a workaround, but it'll take
  153.         quite a bit of work. Not right now. :) Just hit shift a lot.
  154.  
  155. 31.     A many-times-reported problem with scrolling (using the space bar to
  156.         go through an article) not completely displaying the article has been
  157.         corrected. The view-height of the display window was being calculated
  158.         using Topaz-8 as the character size instead of the user specified
  159.         font. Those persons using grn.font never saw the problem since grn.font
  160.         is the same size as Topaz-8.
  161.  
  162.         Keep in mind, GRn does require fixed-length fonts. Proportional fonts
  163.         will not work properly.
  164.  
  165. 32.     The Reply command now asks you whether to include the text of the
  166.         original article or not.
  167.  
  168. 33.     The Publish command would, under certain conditions, prefix every line
  169.         of the uuencoded file with "%s". This has been corrected.
  170.  
  171. 34.     SAS/C 5.10b compilation capability was restored.
  172.  
  173. 35.     Another change to make it easier to use GRn with C-News.
  174.  
  175. Changes in 1.16d:
  176.  
  177.         This version was skipped to avoid confusion with Dillon's version
  178.         numbering scheme.
  179.  
  180. Changes in 1.16c:
  181.  
  182. 1.      The display of the group name when entering article mode happens much
  183.         earlier than it used to.
  184.  
  185. 2.      A new toolttype "UPDATERC" and command-line option ('-u') are now
  186.         recognized instead of using GRnrc. When GRn is executed with that
  187.         option, no screens are opened, no output is generated (unless errors
  188.         occur), etc, and it performs the same function that GRnrc used to.
  189.  
  190.         GRnrc is obsolete, does not work with HFS, and should be deleted
  191.         from your disk (it is also MUCH slower than this release of GRn).
  192.  
  193. 3.      Memory allocations have been consolidated, and the number of them
  194.         significantly reduced. Overall memory usage is down, and the reduction
  195.         in allocations resulted in a large speedup in certain critical areas.
  196.  
  197. 4.      When in Article Mode, the Next Group button (or the "N" key) will
  198.         now take you to the next group which has UNREAD articles. Not the
  199.         next group in the list. This makes GRn much easier to use.
  200.  
  201.         You can still pick a particular group from Group Mode.
  202.  
  203. 5.      "FYI" in Replies and Forwards was changed to "Re:" to match the
  204.         normal Usenet conventions.
  205.  
  206. 6.      GRn is MUCH more robust now. Errors which used to cause Panics() and
  207.         GRn to terminate are now simply warnings. GRn recovers and continues.
  208.  
  209. 7.      GRn SHOULD be compatible with NFS mounting of C-News partitions.
  210.         PLEASE someone verify this and let me know.
  211.  
  212. 8.      Signature file location searches are now consistent for all functions.
  213.  
  214. 9.      A "Percent Complete" gauge has been added to the WriteNewsTree function.
  215.         So, you'll know how far along you are to letting GRn terminate.
  216.  
  217. 10.     Speed, SPEED, and more SPEED! GRn is MUCH faster than it was in almost
  218.         every function. Certain critical path areas were completely rewritten
  219.         (one of them, ShowMessage(), four times) to speed them up.
  220.  
  221.         There is more that can be done in this area (and it will be). But,
  222.         I think the maximum speedups have now been realized. We've hit the
  223.         limit using Gadtools ListViews.
  224.  
  225. 11.     Too many internal changes to mention. But ALL worthwhile.   :)
  226.  
  227. 12.     Oh my god, I almost forgot -- SUBCRIPTIONS. You can now subscribe to
  228.         new newsgroups without blowing away your user.grnrc file. When you
  229.         start GRn, pass it a "-s" flag followed by the new newsgroups that
  230.         you want to be added to your grnrc.
  231.  
  232.         Unfortunately, I'm lazy (and Myke Schwartz is the user interface
  233.         guy), and I didn't add a way to do it online. So you WorkBench users
  234.         will have to drop to the CLI to do this.
  235.  
  236.         One caveat: the NewsGroup MUST exist. If it doesn't, the subscription
  237.         isn't allowed (by exist, I mean it must have a directory tree and a
  238.         .next file on your system).
  239.  
  240.         For example:
  241.  
  242.                     GRn -s alt.sex.stories comp.sys.amiga.emulations
  243.  
  244.         after GRn has executed, they are in your grnrc file permanently (or
  245.         until you Junk them). So, you WorkBench users can leave the CLI
  246.         alone.
  247.  
  248.         Oh, yeah. Due to some conflicts in the way things work you CANNOT
  249.         do a "-u" (UPDATERC) and a "-s" in the same run. Sorry. You'll
  250.         get an error message.       :)
  251.  
  252. 14.     More speed enhancements in displaying articles (Article Mode). I
  253.         don't think it can get any faster while staying in 'C'. It's pretty
  254.         fast though.        :)
  255.  
  256. 15.     The Article window is not cleared and relaid-out for every "Next Group"
  257.         or "Previous Group" request. The article window stays until Article
  258.         Mode is exited (either you Abort [close window] or go to Group Mode).
  259.         This saves about 1.5 seconds on a 68000.
  260.  
  261. 16.     When there are no Newsgroups with unread articles, the "Next Group"
  262.         request will take you to the NEXT GROUP in the list. This restores
  263.         this behavior to the way it was in 1.16b and before -- when there are
  264.         no unread articles left.
  265.  
  266. 17.     Some minor holes (unchecked exceptions) have been filled. I doubt
  267.         anyone ever ran into them -- but now you never will.    :)
  268.  
  269. 18.     Some more work in speeding up memory handling. A case of hanging
  270.         pointers was corrected (how come no one every reported the memory
  271.         leak???).  It's as fast as it's going to get with DICE.  I've put
  272.         it on the list to write something better. *sigh*
  273.  
  274. 19.     Some minor speedups in "References:" header checking (when doing
  275.         threading). Primarily because the check for "Re: " is now case
  276.         sensitive per RFC.
  277.  
  278. 20.     Some preparation for future implementation. Code was written, but
  279.         it was ifdef'ed out because I didn't have time to test it.
  280.  
  281. 21.     The GRn BUG Report has been changed to send mail to Michael B. Smith
  282.         instead of Mike Schwartz.
  283.  
  284. Changes in 1.16b:
  285.  
  286. 1.      Save article now appends instead of overwriting.
  287.  
  288. 2.      Space bar in article mode now goes down a full screen.
  289.  
  290. 3.      'b' key does prev article instead of prev group!
  291.  
  292. 4.      Added code in article mode to open 1x1 requester (disable gadgets,
  293.         IDCMP) during processing of events.  This should prevent people from
  294.         causing intuition/gadtools from queueing up bunches of events.
  295.         Apparently there is a bug in one or the other if too many events get
  296.         queued.
  297.  
  298. 5.      A problem with HFS support was corrected.
  299.  
  300. Changes in 1.16a:
  301.  
  302. 1.      Mike Smith added HFS support.
  303.  
  304. 2.      The GRn version number is changed to match the current release of
  305.         Dillon's AmigaUUCP (1.16).
  306.  
  307. ******** Version Number Order Change
  308.  
  309. Changes in 1.29:
  310.  
  311. 1.      Found the bug with the article view gadget not resetting to the top of
  312.         the listview when using the thread and next unread gadgets.  I normally
  313.         don't use these, so I couldn't figure out what people were complaining
  314.         about.  But a very clear message from Norman R. Kraft made me see the
  315.         problem and it was an easy one to fix.
  316.  
  317. 2.      Found a bug in the thread logic that can cause GURUs.  No new guru
  318.         bugs have been reported since V1.28 was released, but this will
  319.         make GRn more bulletproof.
  320.  
  321. 3.      GRn is now being compiled with the DICE compiler.  I am attempting
  322.         to keep it SAS source compatible, but I can make no guarantees
  323.         that if I stick with DICE that GRn sources will always be this way.
  324.         GRn V1.28 compiled with SAS was 70844 bytes (LARGE CODE/DATA).  With
  325.         DICE, it is 52724 bytes (SMALL CODE/DATA).  And DICE's library routines
  326.         appear to work MUCH MUCH MUCH faster than those that SAS supplies.
  327.  
  328. 4.      Found a nasty bug in DICE startup code that kept GRn from working from
  329.         workbench.  This kept a new release of GRn from happening for a couple
  330.         of weeks.  Thanks to Georg Sassen for tracking this down for me!!!
  331.  
  332. Changes in 1.28:
  333.  
  334. 1.      News editor and mail editor not parsed correctly.  Fixed.
  335.  
  336. 2.      Use GetVPModeID() to find out workbench screen resolution.  This makes
  337.         GRn truly open its own custom interlace screen when necessary.
  338.  
  339. 3.      Added UUCP bug report.  This posts a bug report to alt.sys.amiga.uucp
  340.         in Matt Dillon's standard bug report format...
  341.  
  342. 4.      Improved the article display code to try to find a magical guru bug
  343.         that I have yet to see for myself.  The program is also now compiled
  344.         with stack checking enabled.  I would appreciate bug reports from
  345.         people who get the crash and then run GRN from the CLI to see if
  346.         it is a stack problem.  Naturally, the fix for this would be to
  347.         increase your STACK size in the CLI and the GRN icon!  I personally
  348.         run with a 64K stacksize in my CLI, and a 16K stack in my GRn icon
  349.         and never see the problem.  I always run GRn from the workbench/icon.
  350.  
  351. 5.      Actually added the 'b' key, which I missed in V1.27... :)
  352.  
  353. 6.      Added initial ToolType support for a few of the things that people
  354.         are asking me for.  I am not going to test these things thouroughly,
  355.         however.  I am depending on those of you who NEED these features to
  356.         report problems to me and I will make the fixes.  The tooltypes are:
  357.  
  358.         TOP=top y coordinate of window
  359.         LEFT=left x coordinate of window
  360.         WIDTH=width of window
  361.         HEIGHT=height of window
  362.         MSGFONT=name of font
  363.         MSGFONTSIZE=size of font
  364.         LOGFILE=filename (full path!)
  365.         WRAPCOL=column
  366.  
  367.         The grn.icon that comes with this release has these tooltypes commented
  368.         out so you can see the exact format.  Note for MSGFONT, you MUST use
  369.         fontname.font format or GRn will fail with an unpredictable error
  370.         message :). If the TOP,LEFT,WIDTH,and HEIGHT are specified, then GRn
  371.         will NOT attempt top open its custom screen.  Also, if you specify
  372.         screen dimensions, you must they will override GRn's concept of what
  373.         they should be.  The WRAPCOL tooltype allows you to specify what column
  374.         to wrap article text at.  You will need to specify this if you use a
  375.         font of your own choosing.  TOPAZ 8 point font requires a wrap at
  376.         somewhere between 60 and 64, while grn.font requires it at 80-84.
  377.  
  378.         The LOGFILE tooltype lets you specify the name of a file which GRn uses
  379.         to print error messages and other log messages (currently only errors).
  380.         Type the logfile out to see why GRn is failing when run from workbench.
  381.         Logfile defaults to uuspool:logfile (always when run from CLI) unless
  382.         overridden by the tooltype.  If GRn fails for some reason before
  383.         getting to figure out your logfile, it will print its panic message to
  384.         uuspool:logfile as well.
  385.  
  386. 7.      Fixed a bug in my ParseName() routine which didn't handle nested
  387.         parenthesis correctly in usernames.
  388.  
  389. 8.      GRn bug report feature now puts the version number in the subject field
  390.         so I know which version of GRN you are "bugging" me about :)
  391.  
  392. 9.      When posting news, GRn now looks for the file uulib:user.nrefs. The
  393.         contents of this file are appended to the header portion of your
  394.         article that will be posted.  I've been asked to add this feature,
  395.         though I don't know what real use it will be (please email me the
  396.         answers :)!!  Anyhow, GRn has already been doing something similar
  397.         by adding the line "X-NewsSoftware: GRn..." to your news articles.
  398.         Incidentally, even with hide-headers selected, any article posted
  399.         by GRn will still show the X-NewsSoftware line in the message body -
  400.         this way we all know who is using GRn :)
  401.  
  402. 10.     Fixed a nit in the publish feature.  It included the full pathname to
  403.         the file that was uuencoded (i.e. begin code:grn-src/grn.lzh 777).
  404.         Now it just uses the filename.
  405.  
  406. Changes in 1.27:
  407.  
  408. 1.      QueryOverscan used to determine window height.
  409.  
  410. 2.      A bug in v1.26 caused blank lines to be deleted from articles displayed.
  411.         This is fixed.
  412.  
  413. 3.      Catch Up button added to articles mode.
  414.  
  415. 4.      The 'u' key (next unread) wasn't being processed in articles mode.
  416.  
  417. 5.      The 'b' key is aliased (does same thing as) the 'p' key in articles
  418.         mode. I find it easier to hit n/b together to go next/prev article
  419.         than to hunt for the 'p' key.  This key is not shown as a GT_Underscore,
  420.         as the 'p' key is still implemented.
  421.  
  422. 6.      GRn used to fail if PostNews or SendMail variables were not set.  Now,
  423.         these default to PostNews and SendMail.  If these aren't on your path,
  424.         or GRn is not in the same directory as your binaries, this will cause
  425.         GRn to fail to find those binaries when run from Workbench.  This is a
  426.         WARNING so beware!
  427.  
  428. 7.      The panic routine now writes its error messages to uuspool:logfile as
  429.         well as attempting to print to the cli window.  GRn does not print error
  430.         messages if run from workbench.
  431.  
  432. 8.      GT_Underscore added to YES/NO requester for "Quit".
  433.  
  434. 9.      GRnrc program implemented.  It simply reads in the existing tree, if
  435.         found, updates it, and writes it back out.  Useful for cron to launch
  436.         in the background and will speed up the launch of grn itself.
  437.  
  438. 10.     Increased size of internal buffers for from: and subject: fields to
  439.         512 bytes. Some turkeys out there actually have strings longer than
  440.         128 here :)
  441.  
  442. 11.     Increased size of all internal buffers that were 128 bytes to 256 bytes,
  443.         except as in 10 above.
  444.  
  445. 12.     Added the publish feature.  Now there is a way to post multipart
  446.         binaries from directly within GRn.  Additional information is in the
  447.         grn.doc file.
  448.  
  449. Changes in 1.26:
  450.  
  451. I accidentally posted 1.25 with a bug in it.  I tried to delete it from
  452. my UUSPOOL: before it got out. It should not be used.  1.26 is the one to use!
  453.  
  454. 1.      Lines starting with capital X are not stripped from headers when the
  455.         hide-headers option is on.  This way, we will all know who is using
  456.         GRn :).  Also, there might be other interesting items in the headers
  457.         worth seeing!
  458.  
  459. 2.      Added date text gadget to the articles mode.
  460.  
  461. Changes in 1.25:
  462.  
  463. 1.      Fixed problem with program openning its own custom screen in LoRes.
  464.  
  465. 2.      Window height will never exceed 400 pixels.
  466.  
  467. 3.      Tried to make requesters more system friendly (less tendancy to
  468.         block others)
  469.  
  470. 4.      Fixed a bug in the Save feature.
  471.  
  472. 5.      Added my first cut at threading support!
  473.  
  474. 6.      TaskID added to tempfile names for posting and mail functions.
  475.  
  476. 7.      Long lines are split into two lines in article browser listview.
  477.  
  478. 8.      Tabs expanded into spaces in article browser listview.
  479.  
  480. Changes in 1.24:
  481.  
  482.         Beta 1.24 was skipped because it was only sent to a few testers.
  483.  
  484. Changes in 1.23:
  485.  
  486. 1.      GT_Underscore added to all requesters.
  487.  
  488. 2.      GT_Underscore added to junk gadget.  If you use the key, the group is
  489.         junked without asking you if it is ok.  This is to make it very fast
  490.         to trim a lot of newsgroups down to the few you want.  I suggest you
  491.         use the mouse and gadget, because it will ask, especially if it is only
  492.         a few to junk!
  493.  
  494. 3.      GRn no longer chokes if a newsgroup has no .next file in it.
  495.  
  496. Changes in 1.22:
  497.  
  498. 1.      The program now uses significantly less memory.  It used to allocate
  499.         128 bytes for each article for the "From:" and "Subject:" headers.
  500.         Now it allocates what it needs. The savings is dramatic!  For my 30
  501.         groups and 3000 articles, the old GRn used 1,650,624 bytes.  This new
  502.         beta version, for the same newstree, uses 711,864 bytes.
  503.  
  504. 2.      The bug report button now sends bug reports to
  505.         grnbugs@amiga0.sf-bay.org, so I can keep them separate from my regular
  506.         mail.
  507.  
  508. Changes in 1.20:
  509.  
  510. 1.      GRn is fully compliant with Dillon's UUCP package.  It now uses the
  511.         UUNews config entry instead of requiring a uunews: assign.  GRn now
  512.         looks for s:uuconfig first before looking for uulib:config.  And if
  513.         s:uuconfig exists, and there is a uulib config variable in it, it is
  514.         used instead of the hard assign uulib:.
  515.  
  516. 2.      A single enforcer hit was found and squashed.  I have egg all over my
  517.         face after misreading the autodocs for gadtools and posting about the
  518.         problem in csa.programmer.
  519.  
  520. 3.      GT_Underscore has been added to the various gadgets that now have
  521.         keyboard equivalents. Keep in mind that the keyboard equivalents ARE
  522.         case sensitive! All the gadgets are rendered in Topaz80 font now.  The
  523.         grn.font is still used for the listviews only!  grn.font allows 84
  524.         columns of text in the listviews, while topaz allows about 60.
  525.  
  526. 4.      A new button has been added to the groups mode display called Junk.
  527.         If you click on this, you will be asked if you really want to junk
  528.         the selected newsgroup.  When you junk a newsgroup, it is deleted from
  529.         the news tree (but not your uunews:) so you can filter out the
  530.         newsgroups you don't care to see in the group list LISTVIEW.
  531.  
  532. 5.      Fancier signature support has been added.  The program now looks for
  533.         user.signature in the uunews:newsgroup/ directory first.  Then it
  534.         looks for uulib:user.signature. Then it looks for uulib:.signature.
  535.         The theory behind this is that you can have a unique .signature for
  536.         each newsgroup you post to.
  537.  
  538. 6.      Full key support has been added to groups mode.  The cursor keys scroll
  539.         the group list LISTVIEW.
  540.  
  541. 7.      The requester package I wrote has been cleaned up quite a bit.  It now
  542.         uses Topaz 8-point font and should never mess up again!!! (famous last
  543.         words...)
  544.  
  545. 8.      The very first grn.font I sent with the first beta (1.10) required you
  546.         to run FixFonts on it to make it work.  Many people got the now famous
  547.         "Can't CreateGadget" error message. Sorry the message is so crude, but
  548.         gadtools doesn't tell me why the gadget wasn't created... The new
  549.         distribution will come with the fixed font.
  550.  
  551. 9.      GRn is designed for an interlaced display.  If I cut out half the
  552.         vertical resolution, the program would be unusable.  However, some of
  553.         you actually use a non-interlace workbench... This release of GRn
  554.         detects that you aren't in interlace and will open its own custom
  555.         screen.
  556.  
  557. 10.     Minor glitches in Next Unread, Next Group, and Prev Group have been
  558.         fixed.  These should work just fine now.
  559.  
  560. 11.     TEXT_KIND gadtools gadgets require that your software uses a static
  561.         buffer to hold the text that the gadget will display.  As I wrote
  562.         earlier, I misunderstood the autodocs and thought that gadtools would
  563.         copy the string to a safe place.  Therefore, in the last release, some
  564.         of the Text gadgets would display garbage at times.  This is no longer
  565.         the case.
  566.  
  567. 12.     The previous version of GRn was imploded (compressed).  I will no
  568.         longer distribute it in this form.  You can go implode it yourself.
  569.         I only imploded the binary because it is a sure way to ensure that
  570.         debug hunks and symbol hunks are stripped from the executable. (SAS
  571.         adds these hunks for debugging purposes only - but the executable
  572.         loads real real real slow if they are in the file).
  573.  
  574. 13.     And best news of all.  The grnrc file has been totally redone to
  575.         reduce the disk space it uses and also speed up the initialization
  576.         time.  My grnrc went from 350K down to < 60K for 30 newsgroups and
  577.         2000 articles.  GRn takes about 10 seconds to load it and be up and
  578.         running now.
  579.  
  580. 14.     The grnrc file now has a version number embedded in it.  The software
  581.         will tell you to delete old grnrc files so it can create new ones.
  582.         In the future, the grnrc file is likely to change when I add
  583.         preferences items to it, kill files, and threading information.
  584.  
  585. Changes in 1.10:
  586.  
  587. 1.      When the program was run from an Icon, the followup and reply functions
  588.         broke. This is due to Execute() not being passed the full path to the
  589.         PostNews and SendMail program.  It works if you put the GRn executable
  590.         in the same directory as your UUCP binaries.
  591.  
  592. 2.      Added spacebar to amode, which pages down a page.
  593.  
  594. 3.      Added cursor keys up/down to scroll listview up/down in amode.
  595.  
  596. 4.      Implemented Post button in gmode and amode.
  597.  
  598. 5.      Made the window open against the right edge of the screen.  This is
  599.         handy for when your news/mail editor opens on the left side...
  600.  
  601. 6.      Added my nifty (pat pat pat my own back :) requester package.
  602.  
  603.