Age | Commit message (Collapse) | Author |
|
Due to historical bugs, some database entries may have ended up being
serialized as strings. Recover from this by making them into arrays.
|
|
|
|
|
|
|
|
This ensures that joining after identification (config setting
irc.join_after_identify) works correctly with quake auth too.
|
|
Previously, if units was false (no units specified), wu_units would
become "_false" instead of "_<whatever was in the config value>".
|
|
"I've updated the forecast plugin, the two API URLs used had been updated and
the NOAA SOAP API method call now requires 6 arguments instead of the 5 it was
passing previously." (Ticket #89)
|
|
|
|
Google changed their layout again. To be a little more future-proof,
split the html into as many <br/> sections as there are, and pick the
first one that contains the literal string ' = ' if there is one.
|
|
|
|
The score is now saved in a look-up table, that also allows more
detailed output when showing the score. Also, the dice rolling
potentially allows for a different number of dices to be rolled (e.g. if
some are held).
Take the opportunity to also gettextize outuput.
|
|
Sort dices when rolling and separate values with spaces.
|
|
|
|
|
|
This allows the link info published by URL in the new /#!/ format to be
more meaningful than the warning about missing JavaScript support caused
by the new "web 2.0" Twitter site.
|
|
The way they were, specifying channel, email, password and group caused
the password to be merged with the email and the group to become the
password.
|
|
|
|
|
|
See tracker issue #79
|
|
|
|
|
|
|
|
|
|
Aside from gettexting, this separates out all the data that is available
in both metric and imperial units, to allow a potential extension for
support for the user choice of units.
Fix heat index and windchill in the mean time.
|
|
If a user uses NWS as default service and asks for a location that the
our NWS implementation can't retrieve, fall back to the Weather
Underground service.
To simplify this management, rewrite the code to use the bot HTTP util
and its caching functionality.
|
|
The NWS code assumed that the station could be used as-is in the URL,
which is actually true for the station codes accepted by NWS, but
incorrect in general. People with NWS as the default weather service
would get strange errors about bad URIs if trying something like
"weather birmingham, uk".
Solve by URI-encoding the station name: even if the resulting URL will
still give a 404, at least it doesn't give out odd errors.
|
|
|
|
|
|
|
|
This prevents spurious timers from running after a rescan
|
|
Also respect autoask delay when autoskipping
|
|
|
|
|
|
|
|
|
|
|
|
|
|
The refactoring that introduced google removed them erroneously.
|
|
|
|
Get rid of wu_clean and replace it with ircify_html or riphtml depending
on context.
|
|
|
|
Fix most ruby 1.9 warnings about shadowed variables (still one remaining in
keywords.rb). The only significant changes are in the quiz game plugin.
Also fix an issue in dictclient where the block parameter of a method
was not correctly isolated from the previous parameter.
|
|
Proper support for a 'modified' element actually requires its model
to be defined and added to the RSS Atom namespace.
|
|
An Atom item can reply to updated even though its value is nil, so
check for it actually being valued instead. Also, some malformed Atom
feeds use the nonstandard 'modified' element instead, so check for that
too.
|
|
Although the reply method for fake messages was actually relying on the
original, we still need to set 'replied' to prevent the fake message
from being wrongly delegated to 'unreplied'.
The most obvious bug this commit fixes is the potentially infinite loop
triggered by defining a command reaction triggered by the command name
itself (e.g. reply to ping with cmd:ping).
|
|
When !time <somenick> was being used and the user <somenick> hadn't set
his or her location, the bot would wrongly assume the argument was some
timezone.
Fix by checking against local nicks first.
|
|
Sadly, the new ipinfodb API requires an API key, and I don't know yet if
I'm allowed to redistributed it (I'm betting on no, but in case I can
it will added with an appropriate patch).
|
|
|
|
If someone joins after a challengeable W+4, he would be inserted between
the last and first player, and if there is a challenge _his_ cards would
be exposed. So prevent joining in such a situation.
|
|
After a successful challenge, the challenged player can choose to
pick&pass instead of playing one of its allowed cards. In such a case,
the must_play array would not get reset, preventing the next player to
be able to play any of its card.
Fix by resetting must_play on next_turn rather than on set_discard.
|