Skip to content

Releases: chrj/ircbot

ircbot-v0.7.0

Choose a tag to compare

@chrj-release-app chrj-release-app released this 10 Oct 08:59
52d3e6e

Added

  • add the ops plugin (#201)

  • [breaking] let a role match the hostmask, the services account, or either (#196)

    with_role takes impl Into<Role> instead of a list of patterns, so a call with an iterator that is not an array or a Vec must use Role::hostmask, and the public authorized function has a new account argument.

  • add the notify plugin (#194)

  • add the ircbot-plugins crate with the seen plugin (#192)

  • [breaking] add a built-in !help command (#190)

    CommandOwner is now #[non_exhaustive] and has a new variant Help, so a match on it needs a wildcard arm.

  • [breaking] run plugins on #[bot], and connect in main_loop (#189)

    The new and new_with_state constructors of a #[bot] no longer connect and are no longer async, so remove the .await? after them; main_loop now connects and returns the connection error, and it refuses to start, with a StartError, when a command needs a role that no with_role defines.

  • add typed key/value data to the store (#186)

  • add a SQLite store for bot data (#185)

  • add no_default flag for bot state without Default (#181)

  • add new_with_state constructor for bots with state (#179)

Fixed

  • keep !seen of the sqlite_bot example inside the channel that asks (#193)
  • let an Option argument come before other arguments (#191)

Other

  • use the store in the SQLite example (#187)
  • run the unit tests of the examples (#183)
  • add a SQLite example with no_default state (#182)

ircbot-v0.6.0

Choose a tag to compare

@chrj-release-app chrj-release-app released this 22 Sep 08:47
04af11a

Added

  • [breaking] [171] Remove hot-reload: high complexity, low value, no TLS support (#172)

    The hot-reload feature is removed. It was a high-complexity feature that brought little value, and it never worked for a TLS connection, because a TLS session cannot survive an exec. The hot_reload module, State::try_inherit_from_env and State::raw_fd go with it, and a bot takes a restart to run a new binary now.

  • [165] Retry the reconnect with a growing delay (#166)

ircbot-v0.5.0

Choose a tag to compare

@chrj-release-app chrj-release-app released this 17 Sep 11:13
dc9dae9

Added

  • [153] Ignore senders by hostmask before the dispatch (#163)
  • [breaking] [156] Add a scope option for channel or private handlers (#162)
  • [breaking] match triggers on the text without IRC formatting codes (#161)
  • [155] Add a helper that removes the IRC formatting codes (#160)
  • [breaking] [154] Do not give the messages of the bot to handlers (#159)
  • [152] Add TestBot to send a raw IRC line through the dispatch (#157)
  • [breaking] add action and ctcp triggers, keep CTCP out of text triggers (#150)

ircbot-v0.4.3

Choose a tag to compare

@chrj-release-app chrj-release-app released this 17 Aug 10:41
3bc14e7

Added

  • SASL authentication and IRCv3 capability negotiation (#138)

Other

  • (deps) bump testcontainers from 0.27.3 to 0.28.0 (#135)
  • warn on missing documentation (#131)

ircbot-v0.4.2

Choose a tag to compare

@chrj-release-app chrj-release-app released this 04 Aug 11:34
463392e

Fixed

  • preserve every setting across a reconnect (#115)

Other

  • bump the documented dependency version to 0.4 (#116)

ircbot-v0.4.1

Choose a tag to compare

@chrj-release-app chrj-release-app released this 26 Jul 10:46
daedae4

Fixed

  • preserve every setting across a reconnect (#115)

Other

  • bump the documented dependency version to 0.4 (#116)

ircbot-v0.4.0

Choose a tag to compare

@chrj-release-app chrj-release-app released this 26 Jul 10:30
2dc3e4c

Added

  • [breaking] TLS support via rustls (#112)

ircbot-v0.3.0

Choose a tag to compare

@chrj-release-app chrj-release-app released this 25 Jul 10:31
68e6b8d

Added

  • role-based command access control (#102)
  • typed positional command arguments (#101)
  • opt-in keepnick to reclaim the desired nick (#97)

Other

  • (deps) bump cron from 0.15.0 to 0.17.0 (#108)
  • bump README dependency version to 0.3 (#103)

ircbot-v0.2.1

Choose a tag to compare

@chrj-release-app chrj-release-app released this 04 Jun 11:19
9789a0d

Added

  • structured logging via tracing with opt-in protocol logs (#96)

Other

  • Bump crate version in README.md, add agent instructions. (#94)

ircbot-v0.2.0

Choose a tag to compare

@chrj-release-app chrj-release-app released this 04 Jun 01:12
42b1fac

Added

  • (types) derive standard traits on Error, User, Trigger, CtcpMessage (#88)

Other

  • align doc comments with the Target enum and is_channel method (#93)
  • (context) [breaking] replace target + is_channel with a Target enum (#92)
  • (types) [breaking] introduce Nick and Channel newtypes (#90)
  • (context) [breaking] make notice and whisper synchronous (#89)
  • derive Error impl via thiserror (#87)
  • (bot) use leaky-bucket crate for write-loop flood control (#85)