+01Jan00=======================================================================
+1. Fixed Julian routines to get rid of the millenium bug! (do as I say, not
+as I do!).
+2. updated gdx.pl so that external programs can do a sh/dx just as a normal
+user can. On reflection this could be used as a model for all sorts of
+"external" interface routines.
+11Dec99=======================================================================
+1. added missing pc48 so that it calls the DXDb::process routine
+10Dec99=======================================================================
+1. allow msgs to marked as read or unread
+02Dec99=======================================================================
+1. DX command doesn't recognise '6M' as '6m' in SH/DX ON 6M.
+2. set/node now sets the homenode as the callsign.
+3. changed the label for the 18Mhz band from '18m' to '17m' in the bands
+table.
+01Dec99=======================================================================
+1. started the callbot which lives at n2tly.dxcluster.net 9000.
+2. added www.qrz.com
+3. added www.buck.com
+4. added k4ute at no4j.com
+28Nov99=======================================================================
+1. fixed all the stupid errors introduced in 1.36 confusing DXUser->get with
+DXCluster->get_exact.
+24Nov99=======================================================================
+1. extended badmsg.pl stuff so that it works like the forward file and allows
+one to reject on to, from, origin and subject fields.
+2. added a swop.pl again in a forward.pl like format that allows simple swop
+for a field or test on a field and set another.
+3. Fixed the problem that read private mail follows you around as well as
+unread private mail does.
+4. Change the logic of connections so that the node will accept callsigns with
+SSIDs to -8 as different entities from each other. SSIDs > 8 are subtracted
+from 15 and are assumed to be coming in via netrom diddled connections. This
+affects lots of the commands as well. I may not have got them all.
+5. Hangup clients on HUP signals. I originally ignored them, for reasons that
+are now lost in the mists of time. HUP signals now cause clients to die
+(cleanly) and disconnect everything correctly.
+6. Added show/time command
+21Nov99=======================================================================
+1. lose extraneous rubbish after the callsign as sent by BBSes.
+2. Change end label on sh/moon to RGain dB rather than Loss dB.
+3. Remove spurious call to DXCluster->get_exact in pc50.
+4. Allow rcmd to locally connected nodes that are not (for some reason) in the
+nodes table.
+5. Try and send a PC39 in more cases to a cluster that I want to disconnect
+from in the hope that it notices and disconnects its end.
+20Nov99=======================================================================
+1. Added set/unset logininfo which will tell anybody that has this set when
+someone has either logged in or out of this node.
+2. Added set/pinginterval command which alters the length of time between
+pings sent to nodes, the value is minutes < 120 and seconds above that, 0
+means disable pinging (not recommended).
+3. If someone does a sysop whilst connected via ax25, don't show privilege
+level or passwd in stat/user.
+4. Fixed the problem with the dx command where if the callsign ended in a ?
+then the call and the freq would be replicated in the remarks.
+5. Set/unset ann, dx, talk, beep, wx, wwv all are now permanent (ie stored in
+the user file)
+19Nov99=======================================================================
+1. Added new version of sh/sun and also sh/moon from Steve K9AN
+2. Added rtt to who.
+3. added Aliase for show/tnc_sta to who.
+4. added Alias for show/uptime to sh/cl
+18Nov99=======================================================================
+1. Added ping obs counter together with Time::HiRes timers. This will dis-
+connect nodes that fail to respond to 3 ping requests (on the 4th attempt).
+The default time is a ping every 3 mins, therefore a link will be struck out
+after 12 minutes of nil response.
+2. Maintain a table of outstanding connects to other nodes and prevent over-
+laps (special favour to G0RDI).
+17Nov99=======================================================================
+1. Started using Data::Dumper for things again
+2. 'Fixed' DXUser file corruption?
+3. Allow multiline (ie lines with \n in them) output in $DXChannel::send
+4. Added Andrew K9CW's updated wpxloc.raw, regenerated prefix_data.pl
+5. Put in callsign matching and stuff into sh/sun.
+14Nov99=======================================================================
+1. added BBS.pm to start BBS input of mail
+2. fixed eval in DXUser to log errors rather than banging out
+12Nov99=======================================================================
+1. added sh/sun command kindly supplied by Steve K9AN.
+2. allow ^Z on its own on a line to terminate a message
+08Nov99=======================================================================
+1. added spoofing (mk1 version) for sysops, useful for those little jobs like
+reseting a user's qra locator and such like "spoof g7brn set/qra jo02lq".
+2. fixed set/location so it stores the qra locator in the qra locator slot,
+NOT the lat/long (who wrote this stuff...?).
+07Nov99=======================================================================
+1. reduced the amount of stuff compared against for dup announces.
+2. Check the regex for DK0WCY announces produces results before storing it as
+a WWV.
+3. Added some logging for set/priv (un)set/lockout.
+4. Added test long path calc to sh/muf
+5. Only wonder down the msg queue every minute
+6. Put in the initial DB code (at last), you can create and remove local and
+standard remote dbs, you can import AK1A style .FUL ascii databases, you can
+enquire on a local or remote database.
+7. A return ping to a node will clear down all outstanding pings to
+that node (which might cause some confusion if more then one ping is
+outstanding for a node, but then - shit happens).
+04Nov99=======================================================================
+1. Removed ~ from the end of the PC18.
+2. Removed a hangover from duff character checking in cluster.pl
+3. Stop PC frames that are to be routed, being routed back to themselves.
+03Nov99=======================================================================
+1. Simplified command caching so it uses anonymous subroutines, you should
+also get error messages back on the console now when developing.
+2. Allow locally connected AK1A clusters that for some obscure reason don't
+issue PC19s to still appear as connected and allow them to acquire users.
+31Oct99=======================================================================
+1. updated Minimuf.pm and show/muf.pl to the fixed versions sent to me by
+Steve Franke K9AN.
+2. Made set/badnodes work, added show/badnodes. This is an interim fix until
+input spot filtering works.
+24Oct99=======================================================================
+1. fixed announces so that nodes only get one of them (not two).
+2. Altered the select timeouts to prevent apparent excessive CPU usage on
+multiprocessor machines (or at least that is what seems to be the trouble
+here).
+22Oct99=======================================================================
+1. allow filter CALLSIGNS to be in upper or lower case.
+2. create the concept of input and output filters, input filters are of the
+form "in_$call.pl" eg: "in_g1tlh.pl" (or "in_G1TLH.pl"), output filters are
+"g1tlh.pl" (or "G1TLH.pl").
+3. all users can now filter on spots, ann and wwv (assuming the sysop has set
+the filters up - still no user creatable filters. Nodes can filter on both
+input for announces and output for all of these. I would recommend setting
+up a few filters that are likely to be wanted and then symlinking callsigns
+to them as you get requests.
+4. added callsign and length of history/position of screen stats to console.
+If you want to change the colour of the callsign you will need to copy the
+Console.pm to your /spider/local directory and change the $mycallcolor equate.
+21Oct99=======================================================================
+1. fixed reply so that reply b or reply nop generate a bulletin with the
+correct address.
+2. implemented sh/muf command.
+3. reduced privilege of catchup and uncatchup to 5. This so that, suitably
+privileged, nodes that occasionally link can rcmd a "catchup <nodecall> all"
+to the node they are connecting to and thus prevent a large tranche of,
+potentially duplicate, mail. This isn't an issue for DXSpider, but may be
+an issue for any AK1A clusters you are connected to.
+20Oct99=======================================================================
+1. Translated all the subroutines of minimuf into perl as Minimuf.pm
+2. Limited the length of an ANN that is saved for de-duping to $pc12_dup_lth
+(def 72)
+3. help command should now return stuff that you expect.
+4. reduced necessary privilege to use 'MSG' command to 6.
+5. Correct the count of spots and wwv for a merge.
+6. Allow decodes of DK0WCY-3 WWV data beacon announces
+7. rewrote send so that an SB doesn't send a buckshee bull to NOPRIVATE!
+8. Changed default colouration on console so that all spots >= 50Mhz are red
+9. Fixed init command so that PC21s are sent down non-initted channels
+10. Allow forwarding of unknown private mail. This means that you can set up
+forwarding of 'foreign' mail across to and by gateways using the same
+mechanism as bulletins (/spider/msg/forward.pl).
+11. Allow line wrapping on the console (G0RDI, G0VGS et al).
+18Oct99=======================================================================
+1. changed help command so that it works correctly with multiple title lines.
+2. added to address to the list of things a message checks to see whether it
+is a duplicate (how on earth did it take _this_ long to find this one?).
+3. Changes S CC so that the callsign it says it has sent to is the real one
+(request from G8TIC)
+21Sep99=======================================================================
+1. allow zero messages to be stored (request from G4PDQ)
+2. make DX more flexible and change spotter syntax to be consistant with
+sh/dx (request from K9AN)
+30Aug99=======================================================================
+1. remove -@ as well as \d from SSIDs for spots
+2. remove WEB and/or NET from the front or rear of callsigns in Prefix.pm
+29Aug99=======================================================================
+1. Added msg command to allow the changing of To, From, Subject and so on the
+messages. This seems particularly important just now as a whole raft of G3's
+seem to be putting out non private bulls to callsigns.
+2. While I am at set messages to TO fields that appear to be users to private
+if they have been sent as bulls.
+3. Add DISTROs, if a callsign field appears in /spider/msg/distro in upper
+use that as a list of callsigns to send further. Note this is potentially
+recursive as callsigns in a distro can be distros.
+25Aug99=======================================================================
+1. check the date of a WWV much more carefully.
+24Aug99=======================================================================
+1. Prevented spots with lowercase callsigns being forwarded. This opens a
+much bigger can of worms which I shall have to address later.
+17Aug99=======================================================================
+1. all protocol except PC29 containing %XX characters will be dumped.
+2. Changed console.pl so that if you start typing it moves the top window
+back to the bottom.
+19Jul99=======================================================================
+1. Added iota and qra clauses to sh/dx as well, these take optional arguments
+and will look for the appropriate strings.
+17Jul99=======================================================================
+1. Started database integration.
+2. added qsl clause to sh/dx that searches for qsl or via in the dx info
+16Jul99=======================================================================
+1. drop frames with 'illegal' characters in them (but pass frames with
+embedded %XX characters).