Daniel Oaks
d854bac78e
Fix broken modes tests
6 роки тому
Daniel Oaks
3634d0601e
Split modes into a subpackage (this is painful, but will force us to simplify and improve the API for interacting with modes)
6 роки тому
Daniel Oaks
9f71d9ce12
Add right copyright to handlers.go
6 роки тому
Daniel Oaks
afd6ca610c
Split language into a subpackage
6 роки тому
Daniel Oaks
1b14230758
...fix info string, how did that get messed up?
6 роки тому
Daniel Oaks
47d2ce351c
Centralise all command handlers in handlers.go
6 роки тому
Daniel Oaks
29266ce80f
nickserv: Fix help display
6 роки тому
Daniel Oaks
6784cf82bf
nickserv: Add NS REGISTER and NS IDENTIFY
6 роки тому
Daniel Oaks
ed1fa7704c
nickserv: Point users to an actual help entry (not a great one, but very slightly better)
6 роки тому
Shivaram Lingamneni
2a7f055ef3
support unix domain sockets
6 роки тому
Shivaram Lingamneni
bec39ee8cb
log new listener creation
6 роки тому
Shivaram Lingamneni
2d6ddf7eb9
kiwi's gateway uses the flag `secure` instead of `tls`
6 роки тому
Shivaram Lingamneni
b7f66fb1de
allow WEBIRC to set the TLS flag over local plaintext connections
6 роки тому
Shivaram Lingamneni
09a17b32be
disallow WEBIRC after PROXY
6 роки тому
Daniel Oaks
7b88d21e58
Possible IdleTimer lock fix
6 роки тому
Daniel Oaks
cabb3b219d
Fix some config loading issues
6 роки тому
Daniel Oaks
fc9b501a77
Show translator names in INFO
6 роки тому
Daniel Oaks
ddd7f0dc99
Add 'are supported by this server' to translatable strings
6 роки тому
Daniel Oaks
c5a6d22192
Hopefully apply new languages better, esp. during rehash
6 роки тому
Daniel Oaks
638b0c03fc
Better translate HELP entries and indexes
6 роки тому
Daniel Oaks
099fd7c08f
Update translation backend stuff a little more
6 роки тому
Daniel Oaks
1a5ff05493
Update translation framework
6 роки тому
Daniel Oaks
ddec79f8d0
Update translation framework a touch more
6 роки тому
Daniel Oaks
75dcff7183
Update translation framework, add badge to readme
6 роки тому
Shivaram Lingamneni
4b1aa2b952
remove unused member ChannelRegistry.channels
6 роки тому
Shivaram Lingamneni
7edd9032d3
remove newConns channel
6 роки тому
Shivaram Lingamneni
728863a17c
move Commands initialization to an init()
6 роки тому
Shivaram Lingamneni
62fc2c0cc3
remove Server.commands
6 роки тому
Daniel Oaks
b2afd55285
Don't load example translation file, make example actually list all translatable strings
6 роки тому
Daniel Oaks
090095b2b9
Set default client language when creating them
6 роки тому
Daniel Oaks
275227a461
Make like every client-facing string translatable
6 роки тому
Daniel Oaks
0569b5cfaa
RESUME: Fix a few bugs, play modestrings 'n' all
6 роки тому
Daniel Oaks
f8b39cfe61
Send fake channel joins on RESUME
6 роки тому
Daniel Oaks
7760634efe
Actually let the takeover work somewhat more properly
6 роки тому
Daniel Oaks
0d5327de8a
Fix some issues, add RPL_WHOISACCOUNT
6 роки тому
Daniel Oaks
ac99e82192
Fix build issues
6 роки тому
Daniel Oaks
d09f085b1a
Add very initial RESUME cap and command
6 роки тому
Daniel Oaks
e99f22488f
Make LANGUAGE support work
6 роки тому
Daniel Oaks
a7fdade41d
Extend to include example translation stuff
6 роки тому
Daniel Oaks
ba77a95c81
Very initial beginning of languages implementation
6 роки тому
Daniel Oaks
3b3c1c733a
Support bot mode +B
6 роки тому
Daniel Oaks
3ba8af714e
Use base 36 when generating message IDs, gives us full 0-9a-z to use while preserving uniqueness nicely
6 роки тому
Daniel Oaks
63bd52d471
Make message IDs much shorter (thanks @prawnsalad!)
6 роки тому
Daniel Oaks
713fc59691
CAP: Correctly suspend registration for CAP REQ as per the spec
6 роки тому
Daniel Oaks
7c624f9a38
Setup v0.10.4-unreleased devel ver
6 роки тому
Daniel Oaks
5e9f0fd411
Release v0.10.3
6 роки тому
Daniel Oaks
197ab520bf
Change casemapping name and advertisement to match new spec
6 роки тому
Shivaram Lingamneni
d8d1705035
refactor idle timeouts again
6 роки тому
Daniel Oaks
e0519a6387
caps: Rename maxline cap
6 роки тому
Shivaram Lingamneni
ad1e00629b
fix a race condition in idle timeouts
squigz on freenode reported an issue where bots were responding to PING
on time, but were occasionally being timed out regardless. This was a race
condition: timeout was detected as idleTime >= it.quitTimeout, but if
the client responded promptly to its PING message and sent no further messages,
but the main loop subsequently slept for longer than expected (i.e., significantly
longer than quitTimeout), this condition would be met through no fault of the
client's.
The fix here is to explicitly track the last time the ping was sent, then test
!lastSeen.After(lastPinged) instead (making use of time.Time's monotonicity).
It is sufficient that the measurement of lastPinged happens-before the PING is sent.
6 роки тому