Shivaram Lingamneni
f96f918ff1
fix #2144
RPL_NAMREPLY should send = for normal channels and @ for secret channels,
as per Modern docs.
3 月之前
Shivaram Lingamneni
8d082865da
fix #2133 (#2137)
* fix #2133
Don't record NICK and QUIT in history for invisible auditorium members
4 月之前
Shivaram Lingamneni
dfe2a21b17
add panic handler to async client/channel writes
See #2113 for motivation
6 月之前
Shivaram Lingamneni
4aa1aa371d
fix #2113
Persisting always-on clients was panicking if client X believed it was
a member of channel Y, but channel Y didn't have a record of client X.
7 月之前
Shivaram Lingamneni
f77d430d25
use maps.Clone from go1.21
11 月之前
Shivaram Lingamneni
3f74612e2b
implement draft/no-implicit-names
11 月之前
Shivaram Lingamneni
ad3ad97047
upgrade to irc-go v0.4.0
1 年之前
Shivaram Lingamneni
f100c1d0fa
fix incorrect chathistory batch types
This was introduced in 38a6d17ee5
1 年之前
Shivaram Lingamneni
38a6d17ee5
clean up nested batch logic
1 年之前
Shivaram Lingamneni
e84793d7ee
fix #2063
In #2058 we introduced two bugs:
* A nil dereference when an outside user attempts to speak
* Ordinary copy of a modes.ModeSet (which should only be accessed via atomics)
This fixes both issues.
1 年之前
Shivaram Lingamneni
eeec481b8d
tweaks to NAMES implementation (#2058)
* tweaks to NAMES implementation
* tweak member caching
* add a benchmark for NAMES
1 年之前
Shivaram Lingamneni
7ce0636276
refactor of channel persistence to use UUIDs
1 年之前
Shivaram Lingamneni
746309e386
replace some utils.Semaphore with (*sync.Mutex).TryLock
See #1994
1 年之前
Shivaram Lingamneni
32f7868bfd
implement draft/read-marker capability
2 年之前
Shivaram Lingamneni
a549827f17
upgrade to go 1.18, use generics
2 年之前
Shivaram Lingamneni
eb477c3793
fix #1901
AMODE +v should allow you to join a +i channel
2 年之前
Shivaram Lingamneni
e15c355f18
fix #1876
INVITE did not exempt from +b unless the channel was coincidentally also +i.
This was a regression introduced in v2.4.0.
2 年之前
Shivaram Lingamneni
ec4fb90d2b
+I should allow unregistered users to join a +R channel
See #1858 : this was the intent all along, but I missed this issue.
2 年之前
Shivaram Lingamneni
8be8f0f08d
fix #1858
The channel mode +R used to both prevent joins by unregistered users,
and prevent unregistered users who happened to be joined from speaking.
This changes the behavior so that +R only prevents joins:
1. This allows users who were invited or SAJOIN'ed to speak
2. To restore the old semantics, chanops can set +RM
2 年之前
Shivaram Lingamneni
4749d7e776
fix #1676, take 2
Ensure the pagination window is full by making sure that every history item
gets a replay line in CHATHISTORY output, even TAGMSG.
2 年之前
Shivaram Lingamneni
3ec5ffa340
Revert "fix #1676"
This reverts commit 5bbee02fe6 .
2 年之前
Shivaram Lingamneni
5bbee02fe6
fix #1676
Fix various pagination issues with CHATHISTORY; also undo #491
(msgid munging).
2 年之前
Alex Jaspersen
ff3f959d52
Allow +v users to talk in +R channels.
3 年之前
Shivaram Lingamneni
99b9312847
fix #1696
3 年之前
Shivaram Lingamneni
4910aefa37
use ergochat/irc-go instead of goshuirc/irc-go
3 年之前
Shivaram Lingamneni
23c7218bf1
first pass at renaming Oragono to Ergo
3 年之前
Shivaram Lingamneni
ba21987d03
remove draft/resume-0.5
3 年之前
Shivaram Lingamneni
a131507090
fix #1642
Fix auditorium JOIN lines with zero values for the time and msgid tags.
3 年之前
Shivaram Lingamneni
da216fc699
fix #1577
Remove debugging loglines for truncation
3 年之前
Shivaram Lingamneni
5b33cd436f
remove unnecessary indirection in semaphore
3 年之前
Shivaram Lingamneni
4052cd12fe
fix #1592
Implements the new `CHATHISTORY LISTCORRESPONDENTS` API.
3 年之前
Shivaram Lingamneni
e447c61c73
fix #1596
All truncation must be made UTF8-safe.
3 年之前
Shivaram Lingamneni
88b877fce4
ensure IsBot gets propagated into history
3 年之前
Shivaram Lingamneni
1efde964e1
Fix #1562
Implement the new bot mode spec:
https://github.com/ircv3/ircv3-specifications/pull/439
3 年之前
Shivaram Lingamneni
fe8e6551c3
fix #1502
RELAYMSG should respect mutes
3 年之前
Shivaram Lingamneni
03185ea4a9
deprecate message truncation
Implements #1577 , but the issue should remain open until we clean up
the debugging loglines.
3 年之前
Shivaram Lingamneni
42316bc04f
fix #1176
Transition most "is an operator" checks to require a specific operator
capability
3 年之前
Shivaram Lingamneni
6f1bc9896b
fix #1523
Let halfops change the channel topic
3 年之前
Shivaram Lingamneni
cc6be14c1d
fix #1507
Registered channels should be eagerly created on startup, and should
remain (and be visible in LIST) even when they have no members.
3 年之前
Shivaram Lingamneni
4a48e52518
fix #1490
Track channel join times, use them to optionally enforce history access
restrictions
3 年之前
Shivaram Lingamneni
ba72d3acfc
implement a channel forwarding mode
Fixes #1260
3 年之前
Shivaram Lingamneni
15a0cda78b
pointless refactor of stripMaskFromNick
3 年之前
Shivaram Lingamneni
853bb12c29
fix #1449
INVITE playback (#1409 ) was buggy, due to the double use of (Item).Params[0]
for the channel name and the recipient nick. Stuff the channel name in
(Item).Message.Message instead.
3 年之前
Shivaram Lingamneni
66d90bef5e
change FAIL codes from NOT_PRIVED to PRIVS_NEEDED
3 年之前
Shivaram Lingamneni
51f279289d
fix #1345
Store the channel-user modes of always-on clients along with their
channel memberships, restore them on server startup. This will coexist
alongside /CS AMODE, which autoapplies modes to clients on join regardless
of their always-on status.
3 年之前
Shivaram Lingamneni
32bbde49a8
fix #1409
Record INVITE in DM history for the benefit of offline always-on clients
3 年之前
Shivaram Lingamneni
9214d978d0
refactor services prefixes and notice handlers
3 年之前
Shivaram Lingamneni
ec15d367ba
fix #1387
Instead of building a new serialized message for each recipient,
try to cache them.
3 年之前
Shivaram Lingamneni
8d44fa3c3f
fix duplicated JOIN line sent to resuming clients
Resuming clients without the resume capability would receive
two JOIN lines per channel.
3 年之前
Shivaram Lingamneni
a6a8548466
fix SAJOIN not sending a MODE line where applicable
3 年之前