def testAuthorExpand(self): # The standard 3 pair: name, nick, email self.assertEqual(str(supybot.authors.progval), 'Valentin Lorentz (progval) <*****@*****.**>') # All 3 provided, but name == nick self.assertEqual( str(supybot.Author('foobar', 'foobar', '*****@*****.**')), 'foobar <*****@*****.**>') # Only name provided self.assertEqual(str(supybot.Author('somedev')), 'somedev') # Only nick provided self.assertEqual(str(supybot.Author(nick='somedev')), 'somedev') # Only name and nick provided self.assertEqual(str(supybot.Author('James Lu', 'tacocat')), 'James Lu (tacocat)') # Only name and nick provided, but name == nick self.assertEqual(str(supybot.Author('tacocat', 'tacocat')), 'tacocat') # Only name and email self.assertEqual(str(supybot.authors.jlu), 'James Lu <*****@*****.**>') # Only nick and email self.assertEqual( str(supybot.Author(nick='abcdef', email='*****@*****.**')), 'abcdef <*****@*****.**>') # Only email? self.assertEqual( str(supybot.Author(email='*****@*****.**')), 'Unknown author <*****@*****.**>')
### """ Provides Git integration capabilities. """ import supybot import supybot.world as world import importlib # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "" # Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('Mike Mueller', 'mmueller', '*****@*****.**') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = 'http://github.com/mmueller/supybot-git' from . import config from . import plugin importlib.reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well! if world.testing:
# Shamelessly borrowed from quantumlemur! https://github.com/quantumlemur """ Allows you to 'regexbomb' people in the channel. If they get the get the wire (Match to a random regex based on a string) wrong, they get kicked. (It's a game) """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('wekeden', 'wekeden', '*****@*****.**') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = '' # 'http://supybot.com/Members/yourname/Regexbomb/download' import config import plugin reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well! if world.testing:
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. ### ''' Pastebin: Provide administrative control over wiki to authorized users. ''' import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "0.1.0" if not hasattr(supybot.authors, 'mteck'): supybot.authors.mteck = supybot.Author('Michael Lustfield', 'MTecknology', '') __author__ = supybot.authors.mteck # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = 'https://github.com/ngx/ngxbot-plugins' from . import config from . import plugin from imp import reload # In case we're being reloaded. reload(config)
""" Automatically kickbans users who join a channel if they are joined to other channels which are considered hostile. """ import supybot import supybot.world as world __version__ = "" __author__ = supybot.Author('haliphax', 'haliphax', 'haliphax@nope') __contributors__ = {} __url__ = 'https://github.com/haliphax/supybot-guiltbyassociation' from . import config from . import plugin if world.testing: from . import test Class = plugin.Class configure = config.configure
### """ Add a description of the plugin (to be presented to the user inside the wizard) here. This should describe *what* the plugin does. """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('Terje Hoås', 'Hoaas', '*****@*****.**') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = '' # 'http://supybot.com/Members/yourname/DuckDuckGo/download' from . import config from . import plugin from imp import reload reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well!
### """ lets the bot communicate with openttd via its adminport, and to control same """ import supybot import supybot.world as world import importlib # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "SUDS" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('Taede Werkhoven', 'TWerkhoven', '*****@*****.**') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = 'https://github.com/luaduck/suds' from . import config from . import enums from . import soaputils from . import soapclient import libottdadmin2 from . import plugin importlib.reload(config)
# POSSIBILITY OF SUCH DAMAGE. ### """ Shows some information about a LastFM account (see: www.last.fm) """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "2017.01.16+git" # Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author("Kevin Funk", "KRF", "*****@*****.**") # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = { supybot.Author("Ilya Kuznetsov", "worklez", "*****@*****.**"): ["profile"], supybot.Author("Pavel Dvořák", "czshadow", "*****@*****.**"): ["misc"], supybot.Author('James Lu', 'GLolol', '*****@*****.**'): ['Python 3 support', 'rewriting most of the plugin'] } # This is a url where the most recent plugin package can be downloaded. __url__ = 'https://github.com/GLolol/SupyPlugins/tree/master/LastFM' from . import config from . import plugin
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. ### """ Plugin for matching PCI-Ids with kernel modules and for looking up kernel config options """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "" __author__ = supybot.Author('Stuart Prescott', 'themill', '*****@*****.**') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = 'http://git.vireo.org/~stew/git/judd.git/' import config import plugin reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well!
# ### """ MQTT: listens to an mqtt stream and dumps messages into the channel """ import supybot import supybot.world as world from importlib import reload # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "1" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('David Young', 'sciguy16', '*****@*****.**') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = '' from . import config from . import plugin from imp import reload # In case we're being reloaded. reload(config) reload(plugin) # Add more reloads here if you add third-party modules and want them to be
# POSSIBILITY OF SUCH DAMAGE. ### """ TVMaze: plugin to fetch TV show information and schedules from the tvmaze.com API """ import sys import supybot from supybot import world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "2020.02.24+git" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('cottongin', 'cottongin', '*****@*****.**') __maintainer__ = getattr( supybot.authors, 'oddluck', supybot.Author('oddluck', 'oddluck', '*****@*****.**')) # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = 'https://github.com/oddluck/limnoria-plugins/' from . import config from . import plugin if sys.version_info >= (3, 4): from importlib import reload
""" Pulls memes off of KnowYourMeme. """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('Alice Smith', 'fruitymang0', '') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = '' # 'https://github.com/fruitymang0/animals' from . import config from . import plugin from imp import reload reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well! if world.testing: from . import test
### """ LAZOR """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('quantumlemur', 'quantumlemur', '*****@*****.**') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = '' # 'http://supybot.com/Members/yourname/Timebomb/download' import config import plugin reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well! if world.testing:
This is useful for those cases when you want a bot response even when the bot was not explicitly addressed by name or prefix character. An updated page of this plugin's documentation is located here: https://sourceforge.net/p/gribble/wiki/MessageParser_Plugin/ """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "0.1" __author__ = supybot.Author('Daniel Folkinshteyn', 'nanotube', '*****@*****.**') __maintainer__ = supybot.authors.limnoria_core # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = '' from . import config from . import plugin from importlib import reload reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well!
### """ This is a basic but highly configurable plugin that allows to call a Seeks node (ie. a search engine). """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "0.1.1" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('Pablo Joubert', 'piti', '*****@*****.**') # This is a dictionary mapping supybot.Author instances to lists of # contributions. if not hasattr(supybot.authors, 'progval'): supybot.authors.progval = supybot.Author('Valentin Lorentz', 'ProgVal', '*****@*****.**') __contributors__ = { supybot.authors.progval: ['code enhancements', 'unit test', 'configurability'] } # This is a url where the most recent plugin package can be downloaded. __url__ = '' # 'http://supybot.com/Members/yourname/Seeks/download' import config
### """ This plugin resolves Twitter URLs and is able to control a Twitter profile. This includes: tweets, replies, favs and RTs. Fun guaranteed! Handle with care! """ import supybot import supybot.world as world import imp # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author("buckket", "buckket", "*****@*****.**") # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = "https://github.com/buckket/supybot-twitter" from . import config from . import plugin imp.reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well! if world.testing:
# POSSIBILITY OF SUCH DAMAGE. ### """ Returns stats about current TagPro games. """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('S Teppin', 'steppin', '*****@*****.**') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = '' # 'http://supybot.com/Members/yourname/TagproStats/download' import config import plugin reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well!
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. ### """ Tweety: retrieve tweets from the Twitter API """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "2020.02.24+git" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author("reticulatingspline", "spline", "spline") __maintainer__ = getattr( supybot.authors, "oddluck", supybot.Author("oddluck", "oddluck", "*****@*****.**"), ) # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = "https://github.com/oddluck/limnoria-plugins/" from . import config from . import plugin
# # ### """ Repl: Lulz maria script """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "1.0.0" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('Weasel') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = '' from . import config from . import plugin from imp import reload # In case we're being reloaded. reload(config) reload(plugin) # Add more reloads here if you add third-party modules and want them to be
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. ### """ Monitors UT2k4 servers and reports joins """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "0.3" __author__ = supybot.Author("Collin Eggert", 'AHelper', '*****@*****.**') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = '' # 'http://supybot.com/Members/yourname/UnrealTournament/download' import config import plugin reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well! if world.testing:
import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "%%VERSION%%" __author__ = supybot.authors.jemfinch __maintainer__ = supybot.authors.limnoria_core # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = { supybot.authors.progval: ['tztime'], supybot.Author('Ken Spencer', 'kspencer', '*****@*****.**'): ['ddate'] } from . import config from . import plugin from imp import reload reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well! if world.testing: from . import test Class = plugin.Class configure = config.configure
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. ### """ Restart plugin: provides a command to restart Limnoria from IRC. """ import supybot import supybot.world as world __version__ = "2020.01.05+git" __author__ = getattr( supybot.authors, 'jlu', supybot.Author('James Lu', 'GLolol', '*****@*****.**')) __contributors__ = {} __url__ = 'https://github.com/jlu5/SupyPlugins/' from . import config from . import plugin from imp import reload # In case we're being reloaded. reload(config) reload(plugin) # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well! if world.testing: from . import test
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS # INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN # CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) # ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE # POSSIBILITY OF SUCH DAMAGE. ### """ History replacer using sed-style expressions. """ import supybot import supybot.world as world __version__ = supybot.version.version __author__ = supybot.Author("Michael Daniel Telatynski", "t3chguy", "*****@*****.**") __contributors__ = { supybot.authors.jlu: [ "options bolding the replacement text", "misc. bug fixes and enhancements" ], supybot.Author('nyuszika7h', 'nyuszika7h', '*****@*****.**'): ["_unpack_sed method within plugin.py"] } __maintainer__ = supybot.authors.limnoria_core __url__ = 'https://github.com/ProgVal/Limnoria/tree/master/plugins/SedRegex' from . import config from . import plugin from . import constants
""" Provides a plugin that generates weblogs and push them daily to S3. """ import supybot # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you\'re keeping the plugin in CVS or some similar system. __version__ = "%%VERSION%%" __author__ = supybot.Author("Patric Stout", "TrueBrain", "*****@*****.**") __maintainer__ = supybot.Author("Patric Stout", "TrueBrain", "*****@*****.**") # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} from . import config from . import plugin from importlib import reload reload(plugin) # In case we're being reloaded. Class = plugin.Class configure = config.configure
### """ WeatherBot: A weather script that uses APIXU's api. """ import sys import supybot from supybot import world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "1.0" # Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author("Bruce Olivier", "*****@*****.**") # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = "" from . import config, models, plugin, utils if sys.version_info >= (3, 4): from importlib import reload else: from imp import reload
### """ PGA: Fetches golf scores """ import sys import supybot from supybot import world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "2020.02.24+git" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author("cottongin", "cottongin", "*****@*****.**") __maintainer__ = getattr( supybot.authors, "oddluck", supybot.Author("oddluck", "oddluck", "*****@*****.**"), ) # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = "https://github.com/oddluck/limnoria-plugins/" from . import config from . import plugin
### """ Corona: Return coronavirus information """ import supybot import supybot.world as world import imp # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "2020.02.24+git" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author("oddluck", "oddluck", "*****@*****.**") __maintainer__ = {} # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = "https://github.com/oddluck/limnoria-plugins/" from . import config from . import plugin from imp import reload reload(plugin) reload(config)
""" Convert text according to the rules of NACO normalization. Nominally used for comparing authority text, it may prove entertaining in an IRC context. """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "0.1" __author__ = supybot.Author("Dan Scott", "dbs", "*****@*****.**") # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = { } import config import plugin reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well! if world.testing: import test Class = plugin.Class configure = config.configure
# POSSIBILITY OF SUCH DAMAGE. ### """ MCInfo: Fetches crafting recipes and other interesting information from the Minecraft Wiki. """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "2016.09.26+git" # XXX Replace this with an appropriate author or supybot.Author instance. __author__ = supybot.Author('James Lu', 'GLolol', '*****@*****.**') # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = 'https://github.com/GLolol/SupyPlugins/' from . import config from . import plugin from imp import reload # In case we're being reloaded. reload(config) reload(plugin) # Add more reloads here if you add third-party modules and want them to be
""" AttackProtectors provides a highly configurable protection against flood and other attacks. Triggering, punishment, and exceptions can be configured easily. """ import supybot import supybot.world as world # Use this for the version of this plugin. You may wish to put a CVS keyword # in here if you're keeping the plugin in CVS or some similar system. __version__ = "0.2" # XXX Replace this with an appropriate author or supybot.Author instance. if not hasattr(supybot.authors, 'progval'): supybot.authors.progval =supybot.Author('Valentin Lorentz', 'ProgVal', '*****@*****.**') __author__ = supybot.authors.progval # This is a dictionary mapping supybot.Author instances to lists of # contributions. __contributors__ = {} # This is a url where the most recent plugin package can be downloaded. __url__ = 'http://supybot.fr.cr/AttackProtector' # 'http://supybot.com/Members/yourname/AttackProtector/download' import config import plugin reload(plugin) # In case we're being reloaded. # Add more reloads here if you add third-party modules and want them to be # reloaded when this plugin is reloaded. Don't forget to import them as well!