2003-10-02 - version 1.4 * help command now builds the help string asking each available command for it's own help string. 2003-08-01 - version 1.4 * changed dictionaries.dtd to support the type of dictionary. * different kinds of databases can be easily added with the DatabaseFactory. * server commands all implemented as a class for each command implemeting the same interface: this makes adding of new commands easy. 2003-04-06 - version 1.3 * package name: changed from org.dict to ar.com.ktulu.dict. 2003-01-08 - version 1.2 * ServerThread.java: the version the server reported was not the correct one. 2003-01-07 - version 1.1 * support for compressed dictionaries. * regular expression strategies: when the server received an invalid regular expression, it returned a '250 ok' response and then no matches. 2002-11-25 - version 1.1 * JDK: JDK 1.4 is needed. * configuration files: the files are in XML. * SHOW DB: the short info on the database was shown incorrectly. 2002-03-24 - version 1.0 * full rfc compliance achieved. * "OPTION MIME" now working. * VirtualDatabase.java: when no dictionaries were present, a "DEFINE * word" throwed a NullPointerException. * build.xml: if there were old files in dist/ they were included in the .tar.gz when using "ant dist". * Server.java: the dictionaries are searched in the same order they are listed. 2002-03-14 - version 0.9 * Client input was not correctly parsed (quoted strings were not accepted). * Scanner2.java: Parses the client request as defined in the rfc. * ServerThread.java: maximum command length was not checked. 2002-03-11 - version 0.8 * ServerThread.java: if the client sent a line with spaces, the server broke the connection. * ExactStrategy.java: 1. it didn't worked 2. if it had worked, when there were multiple matches not all of them were returned. * JDBCDatabase.java: 1. NullPointerException when there were no matches. 2. If a strategy don't support SQL, then act as if there were no results instead of throwing the exception and breaking the connection with the client. * Strategy.java,DBify.java,JDBCDatabase.java: if a searched word had a ' then the SQL code failed. Now strings are quoted as necessary. * ServerThread.java: 1. "OPTION MIME" implemented 2. all responsed sent by the server end in LF. Although the rfc says to end responses with CRLF, dictd sends LF and gdict crashes if it receives responses with CRLF. 2002-03-09 - version 0.7 * new strategies: Soundex and Levenshtein. * JDBCDatabase.java: at instance creation time, it tries to connecto to the database, and if it fails, the dictionary is not added to the active dictionaries. 2002-03-06 - version 0.6 * ServerThread.java: the server crashed when an invalid strategy was used with MATCH. * Exceptions thrown by the server are shown as the error messages without the stack trace. * two new strategies: POSIX basic and Perl 5. 2002-03-01 - version 0.5 * completed documentation for javadoc. * removed old fixme comments from source. * BASE64Converter.java: (from jdict) placed in org/dict/kernel. 2002-02-23 - version 0.4 * DBify.java: number of inserts in each sql batch can be changed at user request. * dictd: command line arguments were not passed to the server. * Server.java: -p was not accepted. * Database.java: when name/short/info was looked up in the dictionary and they had multiple lines, only the first one was shown. * ServerThread.java: SHOW INFO was not working. CLIENT,STATUS,HELP implemented. 2002-02-16 - version 0.3 * jdbc support is complete. * if a word has multiple definitions and the dictionary is in a database, JDBCDatabase.getWordDefinition() now works ok. * ServerThread.java: when the client breaks the connection a nullpointer exception was thrown. 2002-02-15 - version 0.2.2 * when using a dictionary through jdbc, the amount of matches is now shown correctly. * messages sent by the server now end in CRLF, as defined in the rfc. * dbify, dictd: they are automatically generated to use the latest jar. 2002-02-14 - version 0.2.1 * jdbc support was not finished in version 0.2 (and not complete in this version either). 2002-02-14 - version 0.2 * use of Ant [http://jakarta.apache.org/ant/index.html] for building the project. * new directory hierarchy. * Can use a dictionary stored in a database with jdbc. See databases.conf for more info. Dictionaries can be dbified with dbify. * FileDatabase not always closed the dictionary file. * replaced Vector with ArrayList, because ArrayList is not synchronized and the vector's instances where never used by more than one thread concurrently. 2002-02-12 - version 0.1, first release.