home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 35 Internet / 35-Internet.zip / wrpdis20.zip / NEWNEWS.NEW < prev    next >
Text File  |  1996-04-21  |  16KB  |  326 lines

  1. ---
  2. NEWNEWS Change History
  3.  
  4. 1.64 Cleanup up lck files if NEWNEWS fails as suggested by Paul Ratcliffe
  5.      <70630.647@compuserve.com>
  6.  
  7. 1.63 Introduced a bug somewhere around 1.60 which resulted in some articles
  8.      being killed when they shouldn't have been.  Fixed this now.
  9.  
  10. 1.62 Miss-spelt a variable (headerend) in one place, that resulted in the
  11.      reporting of a bad artithmetic conversion.  Fixed.
  12.  
  13. 1.61 GET file must override any kill action - had fixed this once before,
  14.      but when kill_afterthefact was added, forgot to override in that case.
  15.  
  16. 1.60 GetWholeArticles needed to expose some variables
  17.  
  18. 1.59 added an option 'kill_afterthefact' which fetches whole articles from
  19.      the newsserver, ignoring the kill file, and then discards any articles
  20.      which are killed by the kill file.  Some people may find this gives
  21.      better performance than normal kill file processing, even though killed
  22.      articles are still fetched from the server, if they use kill files to
  23.      avoid reading a particle person's posts, for example.
  24.  
  25. 1.58 rnews_patch works for fetching news with a kill file now (cf 1.22)
  26.  
  27. 1.57 improved messages during news collection, since I had missed a few
  28.      places where double line messages were still displayed.
  29.  
  30. 1.56 430 message abbreviated to just one line, and no longer displaying
  31.      '???' for the newsgroup.
  32.  
  33. 1.55 added an option 'kill_headers' which will prevent headers of killed
  34.      articles being written to the batch file.
  35.  
  36. 1.54 server now responding with 111 rather than 101 from date command.
  37.      changed code so it accepts any response less than 300.
  38.  
  39. 1.53 move determining of hostname outside restart, because otherwise on
  40.      restarts the server name cannot be looked up and the program quits.
  41.      This is a tribute to Demon that it hasn't been reported to me as a
  42.      problem, since it would only happen when the newsserver was too
  43.      busy !
  44.  
  45. 1.52 don't read history file every retry, but just read once - same
  46.      applies to kill file and perhaps another
  47.  
  48. 1.51 implement use of server DATE command so that date and time on the
  49.      server are fetched are recorded in your nntp.dat - this should
  50.      ensure that all news is correctly fetched - although the proper
  51.      solution is still to handle the TZ environment variable
  52.  
  53. 1.50 temporary fix for suspected missing news by rewinding the time in
  54.      your nntp.dat back one hour - but doesn't work if between midnight
  55.      and 1am
  56.  
  57. 1.49 use GMT on NEWNEWS and NEWGROUPS commands - previously it used the
  58.      local time.  However, this is still not ideal, since unless the
  59.      server and your machine are running at GMT news could still be lost
  60.  
  61. 1.48 force unlock problem fixed, as a result of moving stuff into an
  62.      ini file, the lock files were not known when the force unlock
  63.      wanted to delete them.
  64.  
  65. 1.47 get file not overriding the kill file, so if you had something in
  66.      your get file which would be killed by your kill file you could
  67.      never fetch it.  Now all articles in your get file are fetched first.
  68.  
  69. 1.46 Martin McCarthy reported max_articles = -1 still not working, and
  70.      provided a fix which has been integrated.  Hopefully it all works
  71.      fine now.
  72.  
  73. 1.45 add I param for ini file selection, defaults to NEWNEWS.INI, but
  74.      can now be overriden with 'newnews Iother.ini'
  75.  
  76. 1.44 fixed problem in non-kill file reporting of newsgroup to which
  77.      article has been posted
  78.  
  79. 1.43 add option to run unbatcher after collection, through the use of
  80.      unbatch_news and unbatch_command in the ini file, news can be
  81.      automatically unbatched upon successful collection.
  82.  
  83. 1.42 display newsgroups to which article posted
  84.  
  85. 1.41 move queue settings into ini file, which allows the name to be
  86.      changed.  Also removed the Q parameter, which is now redundant, and
  87.      replaced by the use of queue_messages and queue_name in the ini file
  88.  
  89. 1.40 Second beta release of newnews w/ kill file support
  90.  
  91. 1.39 And one more... fairly confident this time
  92.  
  93. 1.38 And another.  Lucky these were never released ;)
  94.  
  95. 1.37 Fixed another problem in the implementation of stacking
  96.  
  97. 1.36 Fixed a problem in the implementation of stacking
  98.  
  99. 1.35 Implementing stacking in kill file fetching
  100.  
  101. 1.34 Fixed max_articles disabling feature.  If you set max_articles to
  102.      a negative number, then it wouldn't collect anything.
  103.  
  104. 1.33 The Rexx Queue used for sending messages to a control program (if
  105.      one is being used) was hardcoded to WARPDIS.  Previously you had to pass
  106.      the queue name in as a parameter (since the only way I could get queues
  107.      to work, was to get os/2 to generate a queue name for me).  Since
  108.      learning how to create queues of my own name, it seemed sensible to
  109.      use WARPDIS, and thereby remove the need for the parameter.
  110.  
  111. 1.32 beta release of newnews (NWNWS132.ZIP)
  112.  
  113. 1.31 fixed one or two problems with kill files, all requests are still
  114.      unstacked.
  115.  
  116. 1.30 First attempt at unstacked kill file implementation
  117.  
  118. 1.29 Added first part of kill file support, which just involves the reading
  119.      of the kill file into corresponding variables
  120.  
  121. 1.28 Added extra functions to handle the collecting of articles.  This
  122.      doesn't change any existing functionality, just makes it easier to
  123.      implement KILL files in the future.
  124.  
  125. 1.27 a message is displayed when the 'NEWGROUP' command is sent to the news
  126.      server.
  127.  
  128. 1.26 setting max_articles to a negative number successfully passed the test
  129.      added for 1.25, but would still cause problems :(  I have added another
  130.      test for negative numbers, and treat this as an attempt to disable the
  131.      max_articles feature.  i.e. if you don't want to set an upper limit on
  132.      the number of articles to download, then set max_articles to -1
  133.  
  134. 1.25 If max_articles setting was removed from newnews.ini or set invalid,
  135.      then no articles would be retrieved.  A routine has been added which
  136.      checks this (and in the future possible other) parameters read back
  137.      from the ini file, and reports an error if it finds the setting invalid.
  138.  
  139. 1.24 fixed writing to NEWGROUP_FILE.  It was simply overwriting what was
  140.      already there, whilst now it appends to the end of the file.
  141.  
  142. 1.23 added support for NEWGROUPS command.  By adding FETCH_NEWGROUPS = YES
  143.      and a NEWGROUP_FILE to your NEWNEWS.INI file, new groups will be
  144.      appended to the file as they are created at the newsserver.
  145.  
  146. 1.22 moved call to readinifile, since RexxUtil DLL wasn't loaded early
  147.      enough to execute one of the commands in the function
  148.  
  149. 1.21 ka9q thinks that crlf is one character, rnews thinks that crlf is two
  150.      characters.  This means that rnews.exe (which pays attention to the
  151.      character count) truncated articles.  I've provided 2 fixes, which can
  152.      be selected with the rnews_patch variable in newnews.ini.  I've
  153.      defaulted it to 2 which should mean that ka9q style unbatchers and
  154.      readers work fine and so does rnews.  The only noticeable difference
  155.      might be on very long articles, when you may notice that in snews or
  156.      cppnews there are a couple of blank lines at the end of the article.
  157.  
  158. 1.20 parameters are now read from newnews.ini (which can be placed anywhere
  159.      along your PATH) which means that each time you upgrade you no longer
  160.      need to change the settings (unless a new parameter has been added).
  161.  
  162. 1.12 Added a max_articles to download variable to limit the number of
  163.      articles that are to be downloaded in any session.  First saw this
  164.      suggested by Michael Collins <mrcollins@tiwc.demon.co.uk> in a post
  165.      to demon.ip.developers <735401898wnr@tiwc.demon.co.uk>
  166.  
  167. 1.11 Added ControlQ to the expose line of all the procedures.  When the
  168.      files were already locked and LockFiles was failing, it was unable
  169.      to correctly report this via the Queue mechanism because ControlQ
  170.      wasn't in scope.
  171.  
  172. 1.10 Fixed ReadNNTP which was putting a blank line in as one of the groups,
  173.      and consequently the group list when formatted for the NEWNEWS command
  174.      was starting with a comma.  I suspect that this was upsetting the news
  175.      server if you only had one newsgroup in the list.
  176.  
  177. 1.09 Added a call to UnLockFiles in halt: routine which will hopefully
  178.      remove the *.lck files when the user presses CTRL+BREAK for whatever
  179.      reason.
  180.  
  181. 1.08 Implemented code from Pete Appleton <Pete@rayko.demon.co.uk> to read
  182.      the ka9q_root variable from the os/2 environment variable KA9Q if it
  183.      exists and default to c:\nos otherwise
  184.  
  185. 1.05 Implemented a retry count.  If the reply from the nntp server is
  186.      400 (indicating it is too busy at the moment) then the program
  187.      will restart and try again.  Optionally a time delay can be set
  188.      to ensure that it waits for a bit before retrying, the parameters
  189.      to change are 'retries' and 'retry_delay' near the top of the
  190.      program.  If these are set to 0 then the behaviour is the same as
  191.      it was in versions prior to this (i.e. no retry).
  192.  
  193. 1.04 Had some code from Friday <friday@cobalt.demon.co.uk> to calculate
  194.      julian dates, as a suggestion of handling wind back of 5 minutes.
  195.      Was going to implement it, but decided in the end to just wind back
  196.      5 minutes in all instances except when it was less than 5 minutes
  197.      after midnight.  In that instance just wind back to midnight.
  198.  
  199. 1.03 Andy Grieve <andy@andyg.demon.co.uk> reported that I wasn't closing
  200.      sockets upon receiving a 400 reply from the nntp server.  Have now
  201.      fixed this.  It was causing lots of open sockets to be left around
  202.      when the demon news server was busy.
  203.  
  204. 1.02 Implemented dot transparency to match that in getmail.cmd
  205.  
  206. 1.01 Paul Barnett <paul@barnett.demon.co.uk> has implemented an improvement
  207.      to the stacking of article requests.  The aim is to always keep 'stack'
  208.      requests queued at the server, so it is always kepy fully occupied.
  209.  
  210. 1.00 First Release
  211.  
  212. 0.52 Removed time kludge in ReadNNTP, since it had problems around midnight
  213.      and I don't think it was necessary really.  Might look at putting
  214.      something similar back in later, but not for now.
  215.  
  216. 0.51 Division by zero error in the ReportTimes function.
  217.  
  218. 0.50 Final Beta Release.
  219.  
  220. 0.29 added a condition to the update nntp.dat call, so that it will only
  221.      happen if there have been at least one article downloaded.  This is
  222.      in response to a report by evapor8@evap.demon.co.uk that it has
  223.      been updating the nntp.dat erroneously after reporting that there
  224.      were 0 articles when in fact there were about 600 or so.
  225.  
  226. 0.28 added a ControlQ parameter to allow the passing of a queue name, so
  227.      that a control program can get some indication of how newnews is
  228.      doing.  It will queue messages on this queue with the format:
  229.       <NEWNEWS> START
  230.       <NEWNEWS> FAIL NNTP 400
  231.       <NEWNEWS> STOP
  232.  
  233. 0.27 implemented stacked article requests.  To stack article requests (i.e.
  234.      send multiple ARTICLE commands and then receive multiple articles)
  235.      increase the stack variable at the top of the program.  Leaving it at
  236.      1 results in unstacked article requests (i.e. same as before).
  237.      Increasing it should improve performance, however, there may be problems
  238.      if it is increased too high.  Experiments will need to be done to
  239.      measure if it really does make any difference.  Increasing it to 6
  240.      gave me 25% improvement on one test run, but increasing it further to
  241.      12 reduced the improvement.
  242.  
  243. 0.26 changed logging to report version number, and also implemented a measure
  244.      of throughput.
  245.  
  246. 0.25 bug in 0.24 prevented it running properly.  Fixed that and also added
  247.      an 'F' parameter (f for force) to start collecting news even if the
  248.      lock files exist.  It actually just deletes all the lock files before
  249.      starting.
  250.  
  251. 0.24 os/2 rexx considers that ' .' = '.'  This was having the disasterous
  252.      effect of causing newnews to think that an article had finished when
  253.      it had a line with leading blanks and a single period.  Instead of
  254.      testing for just a period, I now also test the length of the line.
  255.  
  256. 0.23 When newnews was run successfully in a morning, the time written into
  257.      nntp.dat was invalid.  Specifically if the hours < 10 then it was not
  258.      being prefixed with a zero.  This was probably the case for minutes
  259.      and seconds also.  This would only have occured since version 0.17
  260.      because it was the logic which set back the clock 5 minutes that was
  261.      messed up.
  262.  
  263. 0.22 newnews now reads the getfile before checking the history file and
  264.      adds the message ids to those returned by the NEWNEWS command sent
  265.      to the NNTP server.  Once all news has been gathered, the getfile
  266.      is deleted, irrespective of whether the specific message ids within
  267.      the getfile are retrieved successfully or not.
  268.  
  269. 0.21 Put MySockSend() into newnews the same way that it is in GETMAIL, and
  270.      checked a few additional return codes.  Also implemented logging.
  271.  
  272. 0.20 Removed it again, because it makes transmission time of beta copies
  273.      so long :(  Will add it back in if the code is to be released.
  274.  
  275. 0.19 Added in GNU public license
  276.  
  277. 0.18 LockFiles routine was not checking return code from open-writes, and
  278.      the UnLockFiles was shelling out to execute an ERASE command rather
  279.      than using SysFileDelete to unlock the files.  Both of these have now
  280.      been corrected.
  281.  
  282. 0.17 At the suggestion of Paul Hodges <paul@hodges.demon.co.uk> I now set
  283.      the newtime that I will write to nntp.dat on successful collection of
  284.      news, back by 5 minutes to help prevent any news falling through the
  285.      gaps.
  286.  
  287. 0.16 The reply upon connection was being ignored, even when it was a bad
  288.      one.  The reply must now be 200 or 201, since we don't really care
  289.      about whether we can post or not, otherwise we call unlock and close
  290.      the connection.
  291.  
  292. 0.15 RFC977 allows the NEWNEWS command to be followed by multiple
  293.      newsgroups, separated by commas, as long as a total command length of
  294.      512 (including CRLF) is never exceeded.  Modifications have been
  295.      made to do this, although I haven't tested it with enough newsgroups
  296.      to actually span 512 characters yet.  This change appears to have
  297.      significantly improved the speed, as Peter said it would.
  298.  
  299. 0.14 changed logging of '#! rnews 1234' line between articles in batch,
  300.      after reading rfc1036.  ka9q/2 writes 10 zeros and goes back to
  301.      patch in the size once it knows it.  Consequently, the size is
  302.      always 10 digits long.  Originally I copied this behaviour, but
  303.      after an exchange in demon.ip.developers it is clear that I can
  304.      just write the size as I see it, without padding to 10 digits.
  305.  
  306. 0.13 when a newsgroup had 0 articles since the lastdate lasttime, the
  307.      total number of msgids accumulated so far was being reset.  This
  308.      has been fixed to behave properly.
  309.  
  310. 0.12 improved messages to give progress messages during article downloads
  311.      Fixed the problem with the history file, by detecting an eof as the
  312.      last character in the history, and overwriting if it exists.  Bit of
  313.      a kludge and I would have expected REXX to understand x1a, but
  314.      apparently not.
  315.      Also fixed a problem of spurious #! rnews 000000000 records being
  316.      inserted in batch.txt when an article did not exist (reply 430).
  317.      An #! rnews 000nnnnnn should now only be written if there is at
  318.      least one line of an article to download, otherwise it is assumed
  319.      that the article is unavailable for whatever reason.  The reply
  320.      from the newserver is displayed on the screen.
  321.  
  322. 0.11 Fixed the problem with nntp.dat, where the new data and time were
  323.      not being written in the correct place, and were leaving the nntp.dat
  324.      file corrupted.
  325.  
  326.