summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2021-06-09rbot-remote: allow override of functionGiuseppe Bilotta
2021-06-09fix: webservice dispatch syntax checkGiuseppe Bilotta
Early bailout if the command field is not specified in the POST request. (Not doing this actually leads to an exception in the subsequent debug because command is an Array and it can't be added to a String, but ayway the early catch is cleaner error handling.) Also add a TODO about a potential improvement for permission error handling.
2021-06-09fix: webservice message user typeGiuseppe Bilotta
When the user logs in, m.source is already a botuser.
2021-06-09Partial revert: reintroduce rbot-remoteGiuseppe Bilotta
It now interfaces with the webservice 'dispatch' feature instead of the previous remotectl plugin, but the external API remains the same, for compatibility with existing users.
2021-06-09webhook: define number for watch/star actions tooGiuseppe Bilotta
When a star is added/removed, we get notified with a message that has no number, title or link. The pseudo-sentence is also very bare (X started/created/deleted, without an object). Show the number of watchers and/or stars (as appropriate) to produce a more meaningful phrase.
2021-06-05bot: reorder fork sequenceGiuseppe Bilotta
We do the actual fork as the last step, after redirecting the standard I/O streams. This also ensures that no log messages are shown on console _after_ forking.
2021-06-05logger: don't actually close the console loggerGiuseppe Bilotta
We nil the internal variable, but we should not close the logger itself, since this leads to STDERR being closed and the interpreter reopening it for its own needs, or something like that, which ultimately leads to the interpreter's warning appearing in console (probably due to ruby itself reopening stderr to be able to output the messages). If we simply nil the variable, the interpreter is content with sending us the messages per our shenanigangs, and everything works just as expected.
2021-06-05fix: write override behaviorGiuseppe Bilotta
IO.write() takes an arbitrary number of argumens, that are converted to string and joined on write. We should behave the same way. Moreover, the returned value is the number of bytes, and this is bytesize in modern Ruby.
2021-06-05fix: restore logging of session start/endGiuseppe Bilotta
2021-06-05logger: fix STDERR recursionGiuseppe Bilotta
Overriding (as we should do) the standard error write method when daemonizing introduces a recursion in the logger, due to the persistent presence of the console logger. The solution is obviously to stop logging on console after daemonization.
2021-06-05fix: stderr vs stdout write overrideGiuseppe Bilotta
In 96d13521d the STDOUT/STDERR write overrides were replaced by overrides to $stdout, but the second should have been to $stderr (obviously).
2021-06-01chucknorris: fix loadingGiuseppe Bilotta
There was an extra read.
2021-05-31webhook: include target ref for pull/merge requestsGiuseppe Bilotta
Also add a TODO about a possible event-based output filter.
2021-05-31webhook: typo preventing unwatchGiuseppe Bilotta
2021-05-31webhook: gitlab supportGiuseppe Bilotta
2021-05-31new plugin: webhookGiuseppe Bilotta
This plugin provides webhook support for GitHub and similar services, through the webservice feature. Hosting services and output formats can be customized through filters as usual.
2021-05-31plugin(rss): fix config descriptionGiuseppe Bilotta
2021-05-29fix: restart logger thread after forkGiuseppe Bilotta
Logging was broken when daemonizing, due to the logger thread being dead after the fork. This can be solved by restarting the thread, if necessary when setting the log file (which we conveniently do right after the fork).
2021-05-29fix: preserve loglevels across options and filesGiuseppe Bilotta
2021-05-29Catch another non-standard errorGiuseppe Bilotta
2021-05-29Properly quote salut-italianGiuseppe Bilotta
2021-05-29chucknorris: read gzip stream before passing it to YAML.loadGiuseppe Bilotta
Prevents errors about external_encoding not being defined for the gzip stream in ruby 1.9+
2021-05-29quiz: hint presentation fix for ruby 1.9+Giuseppe Bilotta
2021-05-26Merge pull request #61 from ruby-rbot/dependabot/bundler/nokogiri-1.11.4Matthias Hecker
build(deps): bump nokogiri from 1.11.1 to 1.11.4
2021-05-19build(deps): bump nokogiri from 1.11.1 to 1.11.4dependabot[bot]
Bumps [nokogiri](https://github.com/sparklemotion/nokogiri) from 1.11.1 to 1.11.4. - [Release notes](https://github.com/sparklemotion/nokogiri/releases) - [Changelog](https://github.com/sparklemotion/nokogiri/blob/main/CHANGELOG.md) - [Commits](https://github.com/sparklemotion/nokogiri/compare/v1.11.1...v1.11.4) Signed-off-by: dependabot[bot] <support@github.com>
2021-04-22Merge pull request #59 from ruby-rbot/dependabot/bundler/mechanize-2.7.7Matthias Hecker
build(deps): bump mechanize from 2.7.6 to 2.7.7
2021-04-22Merge pull request #60 from ruby-rbot/dependabot/bundler/oauth-0.5.5Matthias Hecker
build(deps-dev): bump oauth from 0.5.4 to 0.5.5
2021-04-22build(deps-dev): bump oauth from 0.5.4 to 0.5.5dependabot[bot]
Bumps [oauth](https://github.com/oauth-xx/oauth-ruby) from 0.5.4 to 0.5.5. - [Release notes](https://github.com/oauth-xx/oauth-ruby/releases) - [Changelog](https://github.com/oauth-xx/oauth-ruby/blob/master/HISTORY) - [Commits](https://github.com/oauth-xx/oauth-ruby/compare/v0.5.4...v0.5.5) Signed-off-by: dependabot[bot] <support@github.com>
2021-02-02build(deps): bump mechanize from 2.7.6 to 2.7.7dependabot[bot]
Bumps [mechanize](https://github.com/sparklemotion/mechanize) from 2.7.6 to 2.7.7. - [Release notes](https://github.com/sparklemotion/mechanize/releases) - [Changelog](https://github.com/sparklemotion/mechanize/blob/master/CHANGELOG.rdoc) - [Commits](https://github.com/sparklemotion/mechanize/compare/v2.7.6...v2.7.7) Signed-off-by: dependabot[bot] <support@github.com>
2020-07-09Merge pull request #52 from ruby-rbot/dependabot/bundler/rack-2.2.3Matthias Hecker
build(deps): bump rack from 2.2.2 to 2.2.3
2020-06-24build(deps): bump rack from 2.2.2 to 2.2.3dependabot[bot]
Bumps [rack](https://github.com/rack/rack) from 2.2.2 to 2.2.3. - [Release notes](https://github.com/rack/rack/releases) - [Changelog](https://github.com/rack/rack/blob/master/CHANGELOG.md) - [Commits](https://github.com/rack/rack/compare/v2.2.2...2.2.3) Signed-off-by: dependabot[bot] <support@github.com>
2020-04-25plugin(imdb): fix title regex, closes #44Matthias Hecker
2020-04-24refactor: remove global bot instance, closes #42Matthias Hecker
2020-04-24plugin(keywords): remove export to file, see #42Matthias Hecker
2020-04-23plugin(factoids): use registry for storage see #42Matthias Hecker
2020-04-22ensures the path reported by gems does existsMatthias Hecker
2020-04-20plugin(quotes): use registry for storage see #42Matthias Hecker
2020-04-20plugin(alias): use registry for storage see #42Matthias Hecker
2020-04-17plugin(lart): fix not save before loadMatthias Hecker
2020-04-17plugin(salut): use registry for storage see #42Matthias Hecker
2020-04-16plugin(lart): refactor to use registry to persistMatthias Hecker
see #42
2020-04-16core: sets plugin_path to loaded pluginsMatthias Hecker
While loading a plugin in the manager using #load_botmodule_file this will remember the directory of the file that is being loaded in @next_plugin_path. In the plugin/BotModule initialization we set the path in plugin_path of the plugin. This was the only solution I could find to get this information in the plugin. It is useful because this allows the plugin to know in which directory it is located, it can then easily access data files stored alongside the plugin. Some built-in plugins (see #42) use the data/rbot/templates to copy data files on bot load (see #repopulate_botclass_directory) into the profile directory (~/.rbot/).
2020-04-15refactor: wordlist shouldn't use bot singleton #35Matthias Hecker
also related to #41 and #6
2020-04-15refactor: remove unused userdata moduleMatthias Hecker
I never saw a plugin use this feature besides wof, IRC user objects should not hold persistent data like this, I rather have the IRC interface clean. The general idea is a good though, especially easier per-channel, per-user data persistence.
2020-04-15plugin(wheelfortune): remove botdata dependencyMatthias Hecker
2020-04-14plugin(translator): removed google translateMatthias Hecker
yandex still works surprisingly enough
2020-04-14fix nick renaming during connectionMatthias Hecker
2020-04-14refactor: httputil no longer core module see #38Matthias Hecker
This is intended to make testing/mocking of the http client easier.
2020-04-14httputil: remove obsolete version_1_2 declarationMatthias Hecker
2020-04-14remove obsolete require of net/httpsMatthias Hecker