This was due to the fact that server sends a websocket CLOSE protocol,
to which the library tried to respond to, but since it was done during
the "connect" handshake under the connection lock, this caused a
deadlock.
Resolves#925
Signed-off-by: Ivan Kozlovic <ivan@synadia.com>
The new `gospel` tool, <https://github.com/kortschak/gospel>, uses hunspell
libraries but pre-registers as acceptable words every symbol from the Go
source, massively reducing the noise and making comment spell-checking a
tractable problem. It recently gained support for a `.words` file located in
the same directory as the `go.mod` file, to define local words. With this, we
can fix real issues too.
This PR reduces the complaints down to 4:
1. A reference to `syncSubscribers` which I can't figure out
2. A reference to a `pubArg`
3. Two references to `splitArgs`.
I made two actual code changes:
1. Fixing a **non-exported** const type for consistency with all the others:
`apiStreamList` -> `apiStreamListT`.
2. Changing an error message to refer to a field which exist
Lots of typo fixes; references to since-renamed fields; etc.
A reference to `PublishAsynMsg` might have been intended to be
`PublishAsyncMsg` but that doesn't exist either, so I removed it.
Similarly, `SubjectIsDelivery` lived briefly but a stale reference was left in
a comment, so I removed that.
To reproduce:
go install github.com/kortschak/gospel@latest
gospel .
When compression is used, the full message payload need to be
assembled (in case there are continuation frames) before being
decompressed.
Signed-off-by: Ivan Kozlovic <ivan@synadia.com>