]> kaliko git repositories - sid.git/commitdiff
bugs: intercepts bug id in URLs as well (closes #1)
authorkaliko <kaliko@azylum.org>
Mon, 20 Dec 2021 13:18:47 +0000 (14:18 +0100)
committerkaliko <kaliko@azylum.org>
Mon, 20 Dec 2021 13:18:47 +0000 (14:18 +0100)
sid/bts.py

index 2835efff9127701d4d8b4724ad992717bde0f348..03eef515ea078797cbcdd7cb978df6b95f60d0f7 100644 (file)
@@ -1,7 +1,7 @@
 # -*- coding: utf-8 -*-
 
 # Copyright (C) 2010, 2011 AnaĆ«l Verrier <elghinn@free.fr>
-# Copyright (C) 2015, 2020 kaliko <kaliko@azylum.org>
+# Copyright (C) 2015, 2021 kaliko <kaliko@azylum.org>
 
 # This program is free software: you can redistribute it and/or modify
 # it under the terms of the GNU General Public License as published by
@@ -29,7 +29,9 @@ class Bugs(Plugin):
     .. note::
       This plugin depends on external module: **python-debianbts**
     """
-    re_bugs = re_compile(r'(?<=#)(\d{6,7})')
+    #: Bug id regexp, intercepts bug id in strings : "#629234", "bugs.debian.org/629234" and "bugreport.cgi?bug=629234"
+    re_bugs = re_compile(r'(?:(?<=#)|(?<=bugreport\.cgi\?bug=)|(?<=bugs\.debian\.org/))(\d{6,7})')
+    #: Package name regexp
     re_pkg = re_compile(r'(?P<package>[0-9a-z.+-]+)$')
 
     def __init__(self, bot):
@@ -45,8 +47,6 @@ class Bugs(Plugin):
         # Does not reply to myself
         if msg['mucnick'] == self.bot.nick:
             return
-        if '#' not in msg['body']:
-            return
         bugs = list()
         for bug_id in set(Bugs.re_bugs.findall(msg['body'].strip())):
             self.log.debug('got bug id: %s', bug_id)