Update ancillary documentation for release release-2.2.3
authorclinton <clinton@unknownlamer.org>
Thu, 13 Nov 2008 00:44:16 +0000 (00:44 +0000)
committerclinton <clinton@unknownlamer.org>
Thu, 13 Nov 2008 00:44:16 +0000 (00:44 +0000)
NEWS
README
TODO

diff --git a/NEWS b/NEWS
index 654c220..fb87505 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -23,8 +23,21 @@ IMPORTANT NOTES:
 ====== The News =====================================================
 =====================================================================
 
-Version 2.2.3:
+Version 2.2.3 (2008-11-12):
 - Building with Guile in a non-standard location now works
+- Building without Guile now works again
+- Building with GCC 4.x now works
+  + GCC prior to 4.x's libc headers exported the libc symbols from
+    both :: and std:: leading to a few unqualified libc calls sneaking
+    into Bobot++'s source
+- All uses of the long deprecated GH API have been removed
+  + Building against libguile 1.8 built with --disable-deprecated now
+    works
+  + Building against Guile 1.6 likely no longer works
+  + However, building against guile-vm libguile does work and Bobot++
+    is the first application built this way
+- This will be the last of the 2.2.x series; a 2.3.x series /might/ be
+  started to enhance the scripting interface and finish the manual
 
 Version 2.2.2 (2006-06-28):
 - No longer segfaults when loading bobot-utils.scm
diff --git a/README b/README
index bfdfb53..4ed890f 100644 (file)
--- a/README
+++ b/README
@@ -2,7 +2,7 @@ THIS IS BOBOT++ VERSION 2.2 (this file is also -*- text -*-)
 
 === REQUIREMENTS (Compile) === 
 
-Guile Scheme (http://www.gnu.org/software/guile/) Version 1.6 is used
+Guile Scheme (http://www.gnu.org/software/guile/) Version 1.8+ is used
 for scripting. It is optional and may be disabled by passing
 `--disable-scripting' to configure.
 
@@ -48,4 +48,4 @@ License version 2 or later. See the COPYING file for details.
 === CONTACT INFO ===
 
 Clinton Ebadi <clinton@unknownlamer.org> (Maintainer)
-Official IRC Channel: #bobotpp on freenode
\ No newline at end of file
+Official IRC Channel: #bobotpp on freenode
diff --git a/TODO b/TODO
index db39a60..524470c 100644 (file)
--- a/TODO
+++ b/TODO
@@ -12,57 +12,52 @@ Done (2.2):
 * Add DCC_CHAT_END hook for Scheme
 * Implement ctcp-quote
 
-2.2.1:
-* Finish Texinfo manual
-* Implement ctcp-dequote
-* Finish adding commands to Scheme for sending messages
-* Finish adding hooks/send hooks
+Solved By  Inactivity:
+* Remove gh_* when Guile 1.8 is released
+  Guile 1.8 was released ages ago; no need to put this off to 3.0
+* Add a networked interface to guile repl
+  Guile Debugging Server (GDS) does a fine job of this albeit only
+  intentionally on the localhost. The bot is not particularly
+  threadsafe and so the usefulness of GDS is limited...
 
 2.4: 
-* Use configuration database class
+* Finish converting UserCommands to use Commands
+* Eliminate String class
+* Make internals threadsafe
+  - Need to lock *List, Hooks, and ServerQueue it seems
+* Convert Hooks and ServerQueue to internally use a std::priority_queue<>
 * Extend AOP to support +v (0 = no op, 1 = +o, 2 = +v)
 * Add !setcommandlevel (move ScriptCommands implementation to Commands
   and add a UserCommands)
 * Improve the help system
+  - Generate help dynamically rather than using a static file
+  - Commands register help entries
 * Enhance the scripting layer
+ - Implement ctcp-dequote
+ - Finish adding commands to Scheme for sending messages
+ - Finish adding hooks/send hooks
+ - Add commands to delete a hook
+ - Saner module loading
+ - Higher level interface (e.g. define-command NAME (ARGS) vs define +
+   bot:addcommand)
+ - New API in module (bobot++ FOO) instead of (bobotpp ...) to allow
+   old script to continue working with the old interface
+* DCC FILE support (sending and recieving)
+* Finish configuration database class
+* Finish Texinfo manual
 
 2.4/3.0 (2.4 iff backwards compatibility is maintained, 3.0 otherwise):
 General:
-* Eliminate String class
-* Finish converting UserCommands to use Commands
 * Audit code and see what data in classes should be made private and
   have getters/setters added (e.g. logFileName in Bot--if this is
   changed the log file doesn't change after the Bot is started).
-* DCC FILE support (sending and recieving)
 * Possibly convert BotConfig to use boost::any instead of std::string
   as t_value
 * Remove StrinkTokenizer, replace with boost::tokenizer
 * Remove string procedures from Utils, replace with boost::string_algo
 * Use boost::timer for internal timers
 
-Scripting:
-* Add commands to delete a hook
-   - return an iterator to the Hook
-   - this would require a new SMOB to be created
-   - Scheme could pass Hook objects around and do nifty things
-   - At least allow all hooks of a type with the same name field to be
-     deleted at once (also all hooks with the same name). Also allow
-     deleting based on the regexp
-
-Networking:
-* Add a networked interface to guile repl
-   - This can (should) be done as a script, but requires non-coop threads
-     support to be done easily (and thus requires Guile 1.8)
-   - Admins only
-   - Telnet
-   - Store authorized users and passwords in bot.telnet file
-   - Bot master can add new telnet users
-   - MUST HAVE PASSWORD
-* See if Socket::readLine could be sped up (profile it first to see if
-   it even matters)
-
 Definitely 3.0:
-* Remove gh_* when Guile 1.8 is released
 * Replace large select-loop in Bot::waitForInput with multithreaded
    - To clarify: There will be one thread for DCCs and another thread
       for the current irc server connection, each with its own select