diamondburned
6c332ac145
{Voice,}Gateway: Fixed various race conditions
...
This commit fixes race conditions in both package voice, package
voicegateway and package gateway.
Originally, several race conditions exist when both the user's and the
pacemaker's goroutines both want to do several things to the websocket
connection. For example, the user's goroutine could be writing, and the
pacemaker's goroutine could trigger a reconnection. This is racey.
This issue is partially fixed by removing the pacer loop from package
heart and combining the ticker into the event (pacemaker) loop itself.
Technically, a race condition could still be triggered with care, but
the API itself never guaranteed any of those. As events are handled
using an internal loop into a channel, a race condition will not be
triggered just by handling events and writing to the websocket.
2020-10-22 10:47:27 -07:00
diamondburned (Forefront)
9ce0620652
Cleaned up go.mod
2020-06-01 13:52:15 -07:00
diamondburned (Forefront)
bafeb1082a
CI: Added Dismock, better coverage parsing
2020-05-30 14:32:23 -07:00
diamondburned (Forefront)
f22d6eaa9f
Utils/API: Replaced semaphore-mutex API
2020-05-06 00:40:31 -07:00
diamondburned (Forefront)
e07784a03a
Utils: Swapped go-csync with /x/sync/semaphore
2020-05-06 00:32:21 -07:00
diamondburned (Forefront)
450a112878
Utils: Removed go-deadlock dependency meant to be used for debugging
2020-05-06 00:20:25 -07:00
diamondburned (Forefront)
e9d81f67eb
Cleaned up go.sum
2020-05-03 18:36:04 -07:00
diamondburned (Forefront)
10bdb19f68
Added a root package to allow go get
2020-04-27 11:41:28 -07:00
diamondburned (Forefront)
c1ace1829b
API: Added an integration test for React
2020-04-26 17:27:08 -07:00
diamondburned (Forefront)
3005c7b44a
Voice: Separated UDP and WS into packages, added io.Writer API
2020-04-24 19:36:33 -07:00
Matthew Penner
1e5e0ac38a
Update go.sum, add voice/README.md with basic information on how the voice package functions
2020-04-21 16:37:22 -06:00
diamondburned (Forefront)
9f5c2ac958
Gateway: Switched to gorilla/websocket, fixes #11
2020-04-06 13:27:29 -07:00
diamondburned (Forefront)
b5f7af70f3
Gateway: Changed UpdateStatus to be more valid
2020-03-31 20:45:56 -07:00
diamondburned (Forefront)
b59d9bfed7
Arikawa: Updated /x/errors; Gateway: Added TestInvalidToken
2020-03-16 18:29:23 -07:00
diamondburned (Forefront)
f33dc2ee75
API: Fixed major rate limiters not working
2020-02-09 12:54:16 -08:00
diamondburned (Forefront)
85b793a1a7
Fixed some race conditions
2020-02-02 14:12:54 -08:00
diamondburned (Forefront)
6255d1d1d5
Tidied go.mod
2020-01-25 22:15:49 -08:00
diamondburned (Forefront)
afe1b4621f
Bot: parser changed to a slimmed down version
2020-01-25 22:15:39 -08:00
diamondburned (Forefront)
f8a1bfe4bc
Tidied go.mod
2020-01-25 21:58:15 -08:00
diamondburned (Forefront)
0751f45bdb
Bot: changed to a better command parser
2020-01-25 21:58:06 -08:00
diamondburned (Forefront)
6fb68be631
More Reaction API changes
2020-01-22 21:13:53 -08:00
diamondburned (Forefront)
73f5cdec9e
Added HTTP retry, fixed async JSON body corrupting
2020-01-20 11:28:55 -08:00
diamondburned (Forefront)
b2171d8784
Added state storage, WIP state
2020-01-17 23:07:52 -08:00
diamondburned (Forefront)
03d226e23d
WIP integration test
2020-01-14 23:34:18 -08:00
diamondburned (Forefront)
67450c4872
Added wsutil
2020-01-08 21:24:45 -08:00
diamondburned (Forefront)
e4cd4f9b69
Experimenting with rate limits
2020-01-07 23:10:37 -08:00
diamondburned (Forefront)
a386f6a359
More things, what a pain in the ass
2020-01-05 19:48:39 -08:00
diamondburned
e41a2c7c42
Moved Discord structs to package discord
2020-01-02 11:53:08 -08:00
diamondburned
09d9651507
Initial commit
2020-01-01 21:39:52 -08:00