Go to file
Valentin Lorentz 78dc45e99e Aka: eliminate race condition in tests?
Sometimes (very rarely), the test errors with:

```
======================================================================
FAIL: testHistsearch (Aka.test.AkaChannelTestCase)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python3/dist-packages/supybot/test.py", line 214, in runTest
    originalRunTest()
  File "/usr/lib/python3/dist-packages/supybot/plugins/Aka/test.py", line 67, in testHistsearch
    self.assertResponse('histsearch .*', '@echo foo')
  File "/usr/lib/python3/dist-packages/supybot/test.py", line 402, in assertResponse
    self.assertEqual(m.args[1], expectedResponse,
AssertionError: '@aka add histsearch "last --from [cif true[80 chars]"]]"' != '@echo foo'
- @aka add histsearch "last --from [cif true \"echo test\" \"echo test\"] --regexp [concat \"m/$1/\" [re s/g// \"@2\"]]"
+ @echo foo
 : '@echo foo' != '@aka add histsearch "last --from [cif true \\"echo test\\" \\"echo test\\"] --regexp [concat \\"m/$1/\\" [re s/g// \\"@2\\"]]"'
```

ie. histsearch returns the 'aka add' message instead of the 'echo foo'
one.

My guess is that if they happen too closely to each other, they get
added to the history in the wrong order (how? it's not threaded)

So this commit works around the issue by making the regexp unambiguous.
2021-02-21 00:18:03 +01:00
locales Fix msgfmt warnings. 2020-03-26 22:10:28 +01:00
man remove docs/ && move manpages to man/ 2014-12-08 09:52:42 +02:00
plugins Aka: eliminate race condition in tests? 2021-02-21 00:18:03 +01:00
sandbox Remove fix_basestring. 2015-08-10 20:24:11 +02:00
scripts resolve warnings about 'is not' and integer comparisons (#1435) 2020-10-29 12:22:34 -07:00
src Make the email regexp less strict. 2021-01-25 19:49:08 +01:00
test When getting STS policy over insecure connection, reuse the exact same IP address 2021-01-11 23:22:21 +01:00
.gitattributes Remove test from .gitattributes 2015-03-04 00:32:40 -05:00
.gitignore Revert changes to the structure of sdist packages. 2019-02-23 00:12:06 +01:00
.mailmap .mailmap: update my email 2020-05-15 11:28:09 -07:00
.travis.yml .travis.yml: Add use releases for python 3.8 and 3.9 2021-01-27 18:19:23 +01:00
ChangeLog Use gender-neutral pronouns everywhere 2014-07-13 17:23:11 +02:00
CONTRIBUTING.md Fix broken links in CONTRIBUTING.md. 2019-01-02 14:32:22 +01:00
LICENSE.md License: Fix formatting again. (GH-862) 2014-09-22 05:27:09 +00:00
Makefile Add a symlink supybot pointing to src/ + move locales/ to src/ 2019-01-02 14:29:32 +01:00
MANIFEST.in Explicitly include test/ in release tarballs. Closes GH-1384. 2019-10-28 18:17:13 +01:00
pyproject.toml Autocomplete (+ Fediverse): configure Black. 2020-08-29 18:44:32 +02:00
README.md README: point support channel to #limnoria 2020-07-23 20:46:13 +02:00
RELNOTES supybot-botchk: Directly execute supybot instead of running it in sh 2013-08-23 21:42:01 -04:00
requirements.txt Add a 'limnoria.plugins entrypoint, to discover plugins installed via pip/setuptools. 2020-05-08 22:02:05 +02:00
setup.py Add python 3.8 classifier. 2020-05-05 19:54:51 +02:00
supybot Add a symlink supybot pointing to src/ + move locales/ to src/ 2019-01-02 14:29:32 +01:00

Supybot is a robust (it doesnt crash), user friendly (its easy to configure) and programmer friendly (plugins are extremely easy to write) Python IRC bot. It aims to be an adequate replacement for most existing IRC bots. It includes a very flexible and powerful ACL system for controlling access to commands, as well as more than 50 builtin plugins providing around 400 actual commands.

Limnoria is the project which continues development of Supybot since 2010.

Build status

Master branch: Build Status (master branch)

Testing branch: Build Status (testing branch)

Limnoria supports CPython 3.4, 3.5, 3.6, 3.7, 3.8, nightly; and Pypy 3.

Support

Documentation

If this is your first install, there is an install guide. You will probably be pointed to it if you ask on IRC how to install Limnoria. TL;DR version:

sudo apt-get install python3 python3-pip python3-wheel
pip3 install --user limnoria
# You might need to add $HOME/.local/bin to your PATH
supybot-wizard

There is extensive documentation at docs.limnoria.net and at Gribble wiki. We took the time to write it; you should take the time to read it.

IRC channels

In English

If you have any trouble, feel free to swing by #limnoria on freenode and ask questions. Well be happy to help wherever we can. And by all means, if you find anything hard to understand or think you know of a better way to do something, please post it on the issue tracker so we can improve the bot!

In Other languages

Only in French at the moment, located at #supybot-fr on freenode.