Age | Commit message (Collapse) | Author |
|
Freshmeat now provides the news in XML form under /index.xml, which
provides more information, and in a more computer-friendly way. Use that
if possible (correctly-configured API token), fall back to RSS parsing
otherwise.
|
|
When a redirect has a Set-Cookie: header, check if the cookie domain is
valid for the host we are redirected to. If not, don't set the cookie
in the new request.
|
|
|
|
|
|
We sometimes skip releases for such a long time that we forget what
exactly we have to do, and in what order. Let's keep this list in view
and up-to-date
|
|
|
|
|
|
This allows lazy players to specify the color after playing the wild by
pressing up-arrow and adding the color to the previous line, without
running the risk of playing their precious second wild.
|
|
The public announcement is now a generic "can't do that", with the
specific message being notified to the user. This reduces the chance of
other players guessing what the current player has from the error
messages.
|
|
This prevents a game from starting after it has ended.
|
|
The drop is still counted, to prevent people from leaving and then
rejoining until they have nice cards.
|
|
The old XML files are not accessible, sadly, and the new API requires an
auth token. But at least it works again. For updates, we use the RSS
feed, parsing it manually.
|
|
|
|
|
|
Add myself, reformat, minor tuneups to the text, complete missing
information, etc
|
|
It's loaded by gempackagetask anyway ...
|
|
|
|
|
|
|
|
Define a rule in the Rakefile to generate them, and change the Dir[]
into a FileList[] into the gemspec. The latter change has the downside
of requiring Rake's FileList, but the upside of listing non-existing
files, so that Rake can create them, if possible, or complain if they
are just missing.
|
|
|
|
Set up gettext strings properly, adjust case, and cope more cleanly with
the case of multiple address prefixes.
|
|
|
|
|
|
Use the time parsing routines in utils, and compute the split at blob
parse time rather than at command recognition time.
|
|
|
|
|
|
shortenurls: Add a favorite service config option.
Auto-shortening URLs is mutually exclusive with showing information about them as the output would be very confusing.
The favorite shortenting service option only really applies when other plugins call shortenurls.shorten, so they don't have to hard-code which shortening service to use.
|
|
Polls can be brief (2 minutes) or longer lasting (2 weeks).
|
|
|
|
be autoopped.
There's also a config item (autoop.seed_format) that lets you control how much, if any
of a users hostmask is globbed.
|
|
This goes through the list of hostmasks that would be opped in the channel, and
checks to see if any of them are currently not opped. If they're not, they're opped.
Nobody is ever deopped.
|
|
|
|
|
|
|
|
|
|
|
|
When using gettext, the bot will look for English messages in the 'en'
locale, rather than en_US. This causes some Ruby GetText version to
not find the .mo files, which used to be stored as en_US instead. Since
Ruby's GetText seems to be too stupid to fall back to en_US when en is
not found, we move the messages to en.
This is also probably more correct from a linguistic standpoint, since
the messages are actually mostly British English due to the bot origin.
|
|
This prevents a dead loop when learning lines starting with whitespace,
which could otherwise happen e.g. when learning from a file.
|
|
|
|
|
|
|
|
|
|
This allows us to support servers that (ab)use the CASEMAPPING
to indicate the set of allowed characters for nicks (e.g. Inspire
IRCd).
|
|
|
|
Fix an error in commit 027b6965f5abf5d05a95 which causes @lang_list to
be undefined but used in BabelFish.
|
|
Previously the translation services in the plugin would connect to their
respective websites on initialize. Now they will only do this when the first
time they are used. WorldLingo still connects on initialialize in order to list
the supported language pairs, but the Mechanize object is not saved here, so
the connection should be closed after initialize, and only reopened if
translation by WorldLingo is requested later.
Previously the services are assumed to fail if they raise any Exception in
initialize, and in that case the service is disabled, and its command as well
as the help translate [failed] commands state this. Now this exception catch is
done for any do_translate method call.
|
|
Somebody should hang the ActiveSupport developers by their balls
with barbed wire. Their MissingSourceFile extension to LoadError
_expects_ a second argument, breaking the usual Exception interface
(instead, the smart thing to do would have been to make the second
parameter optional and run the code in the from_message method if
it was missing).
|
|
|
|
We get cooler github readme.
|