Shivaram Lingamneni
0f39fde647
remove insecure reattach check
See #2013 ; given that plaintext is deprecated now, it seems like there is no
added value from continuing to police this.
11 月之前
Shivaram Lingamneni
f100c1d0fa
fix incorrect chathistory batch types
This was introduced in 38a6d17ee5
11 月之前
Shivaram Lingamneni
60af8ee491
clean up force-trailing logic
11 月之前
Shivaram Lingamneni
38a6d17ee5
clean up nested batch logic
11 月之前
Shivaram Lingamneni
d082ec7ab9
don't send multiline responses to CAP LS 301 (#2068)
* don't send multiline responses to CAP LS 301
This is more or less explicitly prohibited by the spec:
https://ircv3.net/specs/extensions/capability-negotiation.html#multiline-replies-to-cap-ls-and-cap-list
* switch to whitelist model to be future-proof
* bump irctest to include test
* add a unit test
11 月之前
Val Lorentz
48f8c341d7
Implement draft/message-redaction (#2065)
* Makefile: Add dependencies between targets
* Implement draft/message-redaction for channels
Permission to use REDACT mirrors permission for 'HistServ DELETE'
* Error when the given targetmsg does not exist
* gofmt
* Add CanDelete enum type
* gofmt
* Add support for PMs
* Fix documentation of allow-individual-delete.
* Remove 'TODO: add configurable fallback'
slingamn says it's probably not desirable, and I'm on the fence.
Out of laziness, let's omit it for now, as it's not a regression
compared to '/msg HistServ DELETE'.
* Revert "Makefile: Add dependencies between targets"
This reverts commit 2182b1da69 .
---------
Co-authored-by: Val Lorentz <progval+git+ergo@progval.net >
11 月之前
Shivaram Lingamneni
00cfe98461
fix #2066
CHATHISTORY TARGETS response should not be in a batch unless the client has
explicitly requested the batch cap.
11 月之前
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
db0910d82d
fix linter error
See #2052
1 年之前
Shivaram Lingamneni
eb83df420b
tweak KILL message
Remove `<no reason supplied>`, make default KILL anonymous
1 年之前
Shivaram Lingamneni
7c53b9430a
support implicit TLS for mail submission agents
Fixes #2048
1 年之前
Shivaram Lingamneni
1da11ae8ae
implement draft/pre-away (#2044)
* implement draft/pre-away
* clean up some subtleties in auto-away aggregation.
* consistently apply auto-away only to always-on
* `AWAY *` should not produce user-visible changes wherever possible
1 年之前
Shivaram Lingamneni
fc89d72045
publish MSGREFTYPES 005 token
https://github.com/ircv3/ircv3-specifications/pull/510
1 年之前
Pratyush Desai
0653f90b4f
update response when killing alwayson targets
1 年之前
Shivaram Lingamneni
abc71684f3
always validate UTF8 from websockets
1 年之前
Shivaram Lingamneni
9439e9b9e1
allow resizing the ws read buffer
1 年之前
Shivaram Lingamneni
5eaf7b37e5
reduce websocket read allocations
See #2037
1 年之前
Shivaram Lingamneni
16e214e4fb
fix #2031
Sanitize the in-band error message from REHASH
1 年之前
Shivaram Lingamneni
46d32520c7
recommended default: advertise SCRAM
Fixes #1782
1 年之前
Shivaram Lingamneni
f72a6fa011
round wait times to the nearest millisecond
1 年之前
Shivaram Lingamneni
3ceff6a8b1
make ReloadableListener lock-free
Also stop attaching the *tls.Config to the wrapped connection,
since this forces it to be retained beyond its natural lifetime.
1 年之前
Shivaram Lingamneni
7ce0636276
refactor of channel persistence to use UUIDs
1 年之前
Shivaram Lingamneni
bceae9b739
add standard-replies capability
1 年之前
Shivaram Lingamneni
f6f7315458
bump version for new development cycle
1 年之前
Shivaram Lingamneni
df8eef5b0a
bump version for stable release
1 年之前
William Rehwinkel
63c08ce537
Fix SAREGISTER short help in SAVERIFY command
1 年之前
Shivaram Lingamneni
d0c01301fd
update version number for v2.11.0-rc1
1 年之前
Shivaram Lingamneni
a052b82c78
don't reference SIGUSR1 on windows (#2018)
1 年之前
Shivaram Lingamneni
d17faf6bcb
fix #1975
Provide a nondestructive stack trace dump option even when the http pprof
listener is disabled
1 年之前
Shivaram Lingamneni
77de026961
persistence broadcast needs a cap check
1 年之前
Shivaram Lingamneni
898f84c613
update persistence spec link
1 年之前
Shivaram Lingamneni
ae1de2554e
add persistence broadcasting
1 年之前
Shivaram Lingamneni
893922afe0
don't report PERSISTENCE STATUS in reg burst for anonymous clients
1 年之前
Shivaram Lingamneni
99d27ff737
initial implementation of draft/persistence
1 年之前
Shivaram Lingamneni
fa3de3e149
fix #1983
TAGMSG should not get automatic RPL_AWAY replies
1 年之前
Shivaram Lingamneni
825cdab67d
fix #1850
Add WHO responses for services
1 年之前
Shivaram Lingamneni
35b5613349
re-add draft/CHATHISTORY 005
Kiwi expects it due to https://github.com/kiwiirc/kiwiirc/pull/1244 , but
the corresponding spec change only altered the cap name, not the 005 name.
1 年之前
Shivaram Lingamneni
e40f550af8
fix CHATHISTORY 005 token name
Unclear where we got draft/CHATHISTORY from, it looks like the merged drafts
have always used unprefixed CHATHISTORY as the token name.
1 年之前
Shivaram Lingamneni
e20c983b57
fix #2002 (#2003)
* fix #2002
`CS AMODE #channel +f nickname` is invalid, but was being accepted
incorrectly.
* simplify logic
1 年之前
Valentin Lorentz
dd8073208c
Use ratified extended-monitor cap name
https://github.com/ircv3/ircv3-specifications/pull/508
1 年之前
Shivaram Lingamneni
4e0d2d65e8
fix #1996
According to the de facto standard, `AWAY :\r\n` is equivalent to `AWAY\r\n`.
Our behavior was inconsistent before, now it consistently matches the de facto
standard.
1 年之前
Shivaram Lingamneni
746309e386
replace some utils.Semaphore with (*sync.Mutex).TryLock
See #1994
1 年之前
Shivaram Lingamneni
7ad31497c2
exempt a configurable number of MARKREAD commands from fakelag
1 年之前
Shivaram Lingamneni
68bd2d87e0
fix #1991
WHO <nickname> should not respect +i
1 年之前
Pratyush Desai
df234b842e
uban list explicitly shows indefinite durations
1 年之前
Shivaram Lingamneni
35128bfc23
use new aligned atomic types everywhere
See 69448b13a1 / #1969 ; the compiler can now ensure that a uint64
intended for atomic access is always aligned to a 64-bit boundary.
Convert atomic operations on uint32s and pointers as well.
1 年之前
Shivaram Lingamneni
a99c8a42f9
remove utils.ConfigStore in favor of atomic.Pointer[T]
1 年之前
Shivaram Lingamneni
5b72cd8622
apply go1.19 gofmt
1 年之前
Shivaram Lingamneni
1d10eb934a
fix #1980
Sanitize ::1 to 0::1 in WHOX output
1 年之前