Shivaram Lingamneni
7ce0636276
refactor of channel persistence to use UUIDs
1年前
Shivaram Lingamneni
a549827f17
upgrade to go 1.18, use generics
2年前
Shivaram Lingamneni
6851901e20
fix #1756
A default channel mode of +i would block channel creation; fix this by treating
initial joins as SAJOINs.
Note that it's nontrivial to detect initial join in (*Channel).Join, because
having 0 members does not necessarily indicate a new channel.
3年前
Shivaram Lingamneni
c99b2be403
fix #1757
Allow SAJOIN or implicit always-on join to override channels.operator-only-creation
3年前
Shivaram Lingamneni
5b317d4846
fix #1751
RENAME (channel rename) that was a simple case change (e.g.
renaming #chan to #CHAN) would delete the channel :-|
3年前
Shivaram Lingamneni
23c7218bf1
first pass at renaming Oragono to Ergo
3年前
Shivaram Lingamneni
3cca1e2c39
fix #1619
Clean up channels during unregistration if necessary.
3年前
Shivaram Lingamneni
18b6e2f1cd
implement CHATHISTORY TARGETS
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
fd71b79bb8
Enhancements to CS PURGE
1. Consolidate PURGE and UNPURGE into subcommands
2. Add PURGE LIST
3. PURGE ADD now requires a confirmation code
Fixes #1294
3年前
Shivaram Lingamneni
cc2b6d27a0
fix critical bugs in RENAME
Channel rename (both of registered and unregistered channels) would leave
the old name unreclaimable.
3年前
Shivaram Lingamneni
ba72d3acfc
implement a channel forwarding mode
Fixes #1260
3年前
Hubert Hirtz
f6d5fe812f
Update draft/rename implementation
Link to the new draft PR:
<https://github.com/ircv3/ircv3-specifications/pull/420 >
Changes in the spec:
- Use standard replies instead of numerics:
<https://github.com/ircv3/ircv3-specifications/pull/420/files#diff-70e90beef48dc9cf5d784d1e179ea822R44 >
- Allow RENAME to a different case:
<https://github.com/ircv3/ircv3-specifications/pull/420/files#diff-70e90beef48dc9cf5d784d1e179ea822R42 >
This commit makes oragono send the PART-JOIN fallback even on case-only
changes. This is so that clients don't have to worry about oragono's
UTF8 casefolding. See the following comments for further info:
<https://github.com/ircv3/ircv3-specifications/pull/420#issuecomment-668770837 >
Misc fixes:
- Remove unused variable,
- Add missing calls to utils.SafeErrorParam,
- Don't fill replies with the user-provided "oldName", for the same
reason as sending the PART-JOIN fallback.
4年前
Shivaram Lingamneni
df8be72c6f
move StringSet to utils package
4年前
Shivaram Lingamneni
6ea2eb367d
fix #328 (implement DEFCON)
4年前
Shivaram Lingamneni
067e62ad5e
fix #1166 and #1168
4年前
Shivaram Lingamneni
811da03ab5
fix #889
4年前
Shivaram Lingamneni
3005e95c1f
rename IncludeAllChannelAttrs
4年前
Shivaram Lingamneni
90b428b416
fix #745
4年前
Shivaram Lingamneni
76a8768d05
make rehash-enable logic a little more uniform
4年前
Shivaram Lingamneni
c5a81d59ff
fix #581
4年前
Shivaram Lingamneni
07865b8f63
chanserv enhancements and miscellaneous fixes
* Fix #684
* Fix #683
* Add `CHANSERV CLEAR`
* Allow mode changes from channel founders even when they aren't joined
* Operators with the chanreg capability are exempt from max-channels-per-account
* Small fixes and cleanup
4年前
Shivaram Lingamneni
3b71be3bf0
fix #537
5年前
Shivaram Lingamneni
4b88a60ba6
clean up some old getters
5年前
Shivaram Lingamneni
63149e754a
update registeredChannels cache on rename as well
5年前
Shivaram Lingamneni
8a11768c6a
disallow squatting a registered channel name via RENAME
5年前
Shivaram Lingamneni
63029e2ff5
refactor channel registration
5年前
Shivaram Lingamneni
495705f538
implement SAJOIN, allow channel founders to join unconditionally
6年前
Shivaram Lingamneni
8fb5a38851
Updates to channel persistence
1. Implement persistent channel keys (#208 )
2. Persist changes to registered channel modes
3. Backend changes for persisting operator status (partial #198 )
6年前
Shivaram Lingamneni
ef99bc48d1
fix #204
Empty channels were only cleaned up on PART, not QUIT.
6年前
Daniel Oaks
e0fa97d344
Get labeled-reply working just fine
6年前
Daniel Oaks
2419f69879
Move all errors into errors.go
6年前
Shivaram Lingamneni
ca8a0b7091
fix a wide-ranging assortment of crash bugs
6年前
Shivaram Lingamneni
d4cb15354f
remove registeredChannelsMutex
This moves channel registration to an eventual consistency model,
where the in-memory datastructures (Channel and ChannelManager)
are the exclusive source of truth, and updates to them get persisted
asynchronously to the DB.
6年前
Shivaram Lingamneni
9b74c47b74
rename some getters
Rename getters in conformance with the "Effective Go" styleguide recommendation:
https://golang.org/doc/effective_go.html#Getters
6年前
Shivaram Lingamneni
94cf438f51
remove channelJoinPartMutex
6年前