Thread: [pybot-commits] CVS: pybot/pybot/modules freshmeat.py,1.4,1.5 log.py,1.6,1.7 modulecontrol.py,1.4,1.
Brought to you by:
niemeyer
From: Gustavo N. <nie...@us...> - 2003-05-08 19:11:37
|
Update of /cvsroot/pybot/pybot/pybot/modules In directory sc8-pr-cvs1:/tmp/cvs-serv4664/pybot/modules Modified Files: freshmeat.py log.py modulecontrol.py plock.py Log Message: - Fixed bugs in the recently introduced functionality. - Made plock.py and freshmeat.py get configuration from the config file. Index: freshmeat.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/freshmeat.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** freshmeat.py 3 Apr 2002 23:32:06 -0000 1.4 --- freshmeat.py 8 May 2003 19:11:34 -0000 1.5 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, options, servers import urllib import thread --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, options, servers, config import urllib import thread *************** *** 30,40 **** """,)] - URL = "http://freshmeat.net/backend/recentnews.txt" - PROXY = None - # PROXY = {"http":"http://proxy.url.com:3128"} - FETCHINTERVAL = 10 - class Freshmeat: def __init__(self, bot): self.newslast = options.gethard("Freshmeat.newslast", [None]) self.newstargets = options.gethard("Freshmeat.newstargets", []) --- 30,41 ---- """,)] class Freshmeat: def __init__(self, bot): + self.url = config.get("freshmeat", "url") + if config.has_option("freshmeat", "proxy"): + self.proxy = config.get("freshmeat", "proxy") + else: + self.proxy = None + self.interval = config.getint("freshmeat", "interval") self.newslast = options.gethard("Freshmeat.newslast", [None]) self.newstargets = options.gethard("Freshmeat.newstargets", []) *************** *** 52,56 **** def unload(self): hooks.unregister("Message", self.message) ! mm.unhooktimer(0, FETCHINTERVAL*60, self.checknews, ()) mm.unregister_help(0, HELP) --- 53,57 ---- def unload(self): hooks.unregister("Message", self.message) ! mm.unhooktimer(0, self.interval*60, self.checknews, ()) mm.unregister_help(0, HELP) *************** *** 74,81 **** def fetchnews(self): urlopener = urllib.URLopener() ! if PROXY: ! urlopener.proxies.update(PROXY) try: ! url = urlopener.open(URL) except: pass --- 75,83 ---- def fetchnews(self): urlopener = urllib.URLopener() ! if self.proxy: ! proxy = {"http": self.proxy} ! urlopener.proxies.update(proxy) try: ! url = urlopener.open(self.url) except: pass Index: log.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/log.py,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** log.py 8 May 2003 18:30:59 -0000 1.6 --- log.py 8 May 2003 19:11:34 -0000 1.7 *************** *** 38,42 **** class LogMsg: ! def __init__(self, data) self.time = int(data.time) self.servername = data.servername --- 38,42 ---- class LogMsg: ! def __init__(self, data): self.time = int(data.time) self.servername = data.servername *************** *** 107,111 **** l = [] cursor = db.cursor() ! cursor.execute("select * from log where src != '' and dest != ''") row = cursor.fetchone() while row: --- 107,112 ---- l = [] cursor = db.cursor() ! cursor.execute("select * from log where src != '' and dest != '' " ! "order by timestamp desc") row = cursor.fetchone() while row: *************** *** 196,200 **** else: target = msg.target ! self.log.append(msg.server.servername, "MESSAGE", msg.user.nick(), msg.user.string, target, msg.rawline) --- 197,201 ---- else: target = msg.target ! self.log.append(msg.server.servername, "MESSAGE", msg.user.nick, msg.user.string, target, msg.rawline) *************** *** 205,209 **** else: target = msg.target ! self.log.append(msg.server.servername, "ACTION", msg.user.nick(), msg.user.string, target, msg.rawline) --- 206,210 ---- else: target = msg.target ! self.log.append(msg.server.servername, "ACTION", msg.user.nick, msg.user.string, target, msg.rawline) Index: modulecontrol.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/modulecontrol.py,v retrieving revision 1.4 retrieving revision 1.5 diff -C2 -d -r1.4 -r1.5 *** modulecontrol.py 8 May 2003 18:30:59 -0000 1.4 --- modulecontrol.py 8 May 2003 19:11:34 -0000 1.5 *************** *** 89,93 **** msg.answer("%:", ["There are no", "No"], "loaded modules", [".", "!"]) else: ! msg.answer("%:", ["These are the loaded modules:", "The following modules are loaded:", ", ".join(self.modules)) else: msg.answer("%:", ["You're not that good", "You are not able to work with modules", "No, you can't do this"], [".", "!",". I'm sorry!"]) --- 89,93 ---- msg.answer("%:", ["There are no", "No"], "loaded modules", [".", "!"]) else: ! msg.answer("%:", ["These are the loaded modules:", "The following modules are loaded:"], ", ".join(self.modules)) else: msg.answer("%:", ["You're not that good", "You are not able to work with modules", "No, you can't do this"], [".", "!",". I'm sorry!"]) Index: plock.py =================================================================== RCS file: /cvsroot/pybot/pybot/pybot/modules/plock.py,v retrieving revision 1.5 retrieving revision 1.6 diff -C2 -d -r1.5 -r1.6 *** plock.py 19 Mar 2002 18:32:06 -0000 1.5 --- plock.py 8 May 2003 19:11:34 -0000 1.6 *************** *** 17,21 **** # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, options import time import sys --- 17,21 ---- # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA ! from pybot import mm, hooks, options, config import time import sys *************** *** 37,41 **** def __init__(self, dir, name): self.name = name ! self.file = dir + name self.line = None self.isfile = os.path.isfile(self.file) --- 37,41 ---- def __init__(self, dir, name): self.name = name ! self.file = os.path.join(dir, name) self.line = None self.isfile = os.path.isfile(self.file) *************** *** 64,85 **** class PLock: def __init__(self, bot): ! self.pdir = "/cnc/distro/locks/" hooks.register("Message", self.message) options.gethard("UserData.type", {}).setdefault("email", "~") # Match '[force] plock <package> [,<package>] [!|.]' ! self.re1 = re.compile(r"(?P<force>force\s+)?plock\s+(?P<package>[\w_-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_-]+)*)\s*[!.]*$") # Match '[force] (unplock|punlock) <package> [,<package>] [!|.]' ! self.re2 = re.compile(r"(?P<force>force\s+)?(?:unplock|punlock)\s+(?P<package>[\w_-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_-]+)*)\s*[!.]*$") # Match '(my plocks|plocks of <user>) [?]' ! self.re3 = re.compile(r"(?:(?P<my>my)\s+plocks|plocks\s+of\s+(?P<user>[\w.@_-]+))\s*(?:!*\?[?!]*)?$") # Match '([who] [has] plocked|plocker [of]) <package> [,<package>] [?]' ! self.re4 = re.compile(r"(?:(?:who\s+)?(?:has\s+)plocked|plocker\s+(?:of\s+)?)(?P<package>[\w_-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_-]+)*)\s*(?:!*\?[?!]*)?$") # Match 'plock <package> [,<package>] ?' ! self.re5 = re.compile(r"plock\s+(?P<package>[\w_-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_-]+)*)\s*(?:!*\?[?!]*)$") # Match '[un]plock[ing] | <package|pkg> lock[ing] --- 64,85 ---- class PLock: def __init__(self, bot): ! self.pdir = config.get("plock", "dirpath") hooks.register("Message", self.message) options.gethard("UserData.type", {}).setdefault("email", "~") # Match '[force] plock <package> [,<package>] [!|.]' ! self.re1 = re.compile(r"(?P<force>force\s+)?plock\s+(?P<package>[\w_\.-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_\.-]+)*)\s*[!.]*$") # Match '[force] (unplock|punlock) <package> [,<package>] [!|.]' ! self.re2 = re.compile(r"(?P<force>force\s+)?(?:unplock|punlock)\s+(?P<package>[\w_\.-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_\.-]+)*)\s*[!.]*$") # Match '(my plocks|plocks of <user>) [?]' ! self.re3 = re.compile(r"(?:(?P<my>my)\s+plocks|plocks\s+of\s+(?P<user>[\w\.@_-]+))\s*(?:!*\?[?!]*)?$") # Match '([who] [has] plocked|plocker [of]) <package> [,<package>] [?]' ! self.re4 = re.compile(r"(?:(?:who\s+)?(?:has\s+)plocked|plocker\s+(?:of\s+)?)(?P<package>[\w_\.-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_\.-]+)*)\s*(?:!*\?[?!]*)?$") # Match 'plock <package> [,<package>] ?' ! self.re5 = re.compile(r"plock\s+(?P<package>[\w_\.-]+(?:(?:\s*,?\s*and\s+|[, ]+)[\w_\.-]+)*)\s*(?:!*\?[?!]*)$") # Match '[un]plock[ing] | <package|pkg> lock[ing] |