AminetParse v1.05 © 1997 by Daniel J. Andrea II NOTE: This software is offered as GIFTWARE. If you like it, then you can send me something in payment of your choice (other programs, disks, computers, cars, etc.) at the address at the end of this document. No warranty of any kind is offered with this software or implied, or for suitability of purpose. It's use is entirely at your own risk. No fees can be charged for this software, other than the nominal fees for the cost of magnetic media and copying of the software onto that media, not to exceed the amount of US $5 for a disk containing this software. Copies of this software must include this documentation file for redistribution through Fred Fish or other similar software collections. What is it? =========== AminetParse is a small utility to parse Aminet RECENT or INDEX lists into Thor's file database. This is quite a bit faster than the arexx script supplied with Thor. I experimented quite a bit with the arexx script, but the best I could get with it was approximately 22 files added per second. AminetParse is quite fast. On my system, it reaches speeds in excess of 150 files added per second. In some cases I've seen it hit peaks of over 200 files per second! Recent files can be filtered with the Sortmail.excl file, just like in Sortmail. Also, as of AminetParse 1.05, a NewFiles.txt file will be created in the proper directory just like Sortmail does. This will only be done on RECENT listings. AminetParse does absolutely nothing with the NewFiles.txt file when parsing INDEX listings. Note: NewFiles.txt will be replaced completely every time AminetParse is run with a RECENT listing. AminetParse requires Thor 2.3+ (at least ver 4 of bbsread.library) and AmigaOS 2.04+. Installation ============ Well, it's real simple. AminetParse is a cli-only program, and can be run from anywhere. Probably the best place would be in the bin sub-directory of Thor's main directory. Just copy it to wherever you want to run it from. Usage ===== AminetParse is a shell-only program. If you try to start it from the Workbench, you will most likely crash your machine. Just type AminetParse in a shell and you'll get output like this: AminetParse 1.05 (29-Apr-97) © 1997 Daniel J. Andrea II Usage: AminetParse EXCLUDE where is name of system to add files to is full path and name of INDEX/RECENT file EXCLUDE (optional) tells AminetParse to use the Sortmail.excl file from inside the BBS's data directory to exclude certain file areas from being added to the database. All you need is the name of your System in Thor, as in EMail&News (that's my BBS system name), and the full path and name of the INDEX/RECENT file. For example: AminetParse EMail&News SYS:temp/INDEX will add the file INDEX from the drawer SYS:temp/ to the file database in the Thor system EMail&News. Or add EXCLUDE: AminetParse EMail&News SYS:temp/INDEX EXCLUDE will do the same as the previous example, but will use the Sortmail.excl file from inside the data directory of the BBS you enter. If there is no Sortmail.excl file, AminetParse will continue as if the EXCLUDE option hadn't been entered along with a warning message. That's it! While AminetParse is running, you will get occasional status messages. First it will tell you whether this is a RECENT listing, such as daily or weekly, or a full INDEX. Then it will print out numbers periodically to show how many files have been processed. Whenever a file area is parsed that is not in the file database, it will automatically add it and print out a message that it did so. When it's finished, AmintParse will print out some statistics about the file parsing. Note: The file supplied to AminetParse as an INDEX/RECENT listing must not have any extra info before the first line starting with the "|" character and containing either the word "Complete" or "Recent". AminetParse will check for the existence of that info in the very first line it reads in from the text file to verify this is an Aminet INDEX/RECENT file listing. If these items are not present, AminetParse will quit with an error message without modifying anything in Thor's file database. I'm going to change this in the near future, so files with info before the first "|" line will be ignored by AminetParse. Bugs ==== There are no known bugs at this time. If you find any, please contact me at the E-Mail address or Snail-Mail address below with bug reports. Be sure to include information on what other software was running and what kind of system you have. Bug fixes will be incorporated into AminetParse as soon as possible. History ======= v1.00 -- Initial release. v1.01 -- Added filtering based on the Sortmail script's filtering. AminetParse uses the same file format, and will read the file Sortmail.excl from the BBS's data directory. v1.02 -- Well, it did have a bug. Found my date calculation was off by a couple of days. Now shows correct date. v1.03 -- Added Checking for valid INDEX/RECENT file. Removed a warning message that wasn't needed. Should fix some problems noted by Trevor Daley. v1.04 -- Changed data calculation again. This version should work better now. v1.05 -- Added NewFiles.txt creation during parsing of RECENT listings. Author ====== I can be contacted through Internet E-Mail at: dandrea@unix.tfs.net or through Snail-Mail at: Daniel J. Andrea II 1331 Metropolitan St. Leavenworth, KS 66048 U.S.A. To check up on AminetParse development and other projects when they arise, point your web browser at http://www.tfs.net/~dandrea/ AminetParse was developed on a 25 MHz A3000 using SAS/C v6.57. Future ====== I will be adding an Arexx script to run from Sortmail that uses AminetParse to do the Aminet Daily/Weekly listings. When it is finished, I will add it to the archive and upload a new version to Aminet. Have you got an idea for improvement? Let me know and I'll see what I can do. Thanks ====== Special thanks to Petter Nilsen of the Thor team for help with my early version of AminetParse. I couldn't see the trees in the forest so to speak, and he helped me sort it out. Thanks, Petter! Also, thanks to Trevor Daley for pointing out the date calculation problems.