Home

fsky / j2i

public
Overview Code History Branches Pull requestsIssuesInsights
main
HomeOverview Code PRsIssues

Enhance IRC puppet functionality with improved presence and kick handling

2 weeks ago

adc2e25
Authored
Kruno9/11/2026, 4:12:15 PM
This update introduces several enhancements to the IRC puppet feature, focusing on occupancy management and message handling. Key changes include:

- Nick puppets now utilize the original XMPP nick as their GECOS, ensuring better attribution in IRC.
- XMPP MUC kicks and bans now trigger appropriate QUIT actions on the IRC side, including the reason for the action.
- The handling of message edits has been improved, allowing XEP-0308 corrections to relay the original message ID for replies.
- The `irc_puppet_presence` setting has been refined to manage puppet presence more effectively, with options for eager or lazy joining.

These improvements enhance the overall user experience by ensuring accurate representation of XMPP occupants in IRC channels.

Parent76d23dc

15 files changed
  • CHANGELOG.md+4−0
  • README.md+4−2
  • src/j2i/bridge.py+165−116
  • src/j2i/irc/client.py+43−6
  • src/j2i/irc/nicks.py+22−0
  • src/j2i/irc/puppets.py+30−6
  • src/j2i/xmpp/client.py+50−38
  • src/j2i/xmpp/component.py+5−32
src/j2i/xmpp/presence.py
+9
−1
  • tests/test_bansync.py+15−1
  • tests/test_bridge.py+165−3
  • tests/test_irc_client.py+66−0
  • tests/test_nicks.py+27−0
  • tests/test_presence.py+16−0
  • tests/test_puppets.py+37−1