Changelog

13.0.0
breaking changes
#322
Support node v18 and hapi v21, drop node v12 and hapi v18/19
#323
Fix client reconnect retry attempts
#318
client - _reconnect update, single reconnection timer
#313
migrate to new travis format
#312
upgrade to hapi 20
#311
switch to validate and other package updates
#307
Upgrade deprecated `@hapi/call@6.x.x`
#306
fix: pass remoteAddress when injecting request
#305
request.info.remoteAddress is always 127.0.0.1 in request handler
#304
Prevent beat timeout from disconnecting newly connecting sockets
#303
Remove unused dep
12.0.0
breaking changes
#301
Change plugin name to @hapi/nes
#300
Require hapi 19
#299
Only node 12
#285
Unknown authentication strategy
#289
Update deps
#284
Add ability to revoke a socket ignoring if it is already closed
#283
cleanup called twice if there is an onUnsubscribe handler
#278
Passing remoteAddress and x-forwarded-for is in whitelist when connect
#279
Fix name
11.0.0
breaking changes
#276
Remove client dist
#248
eachSocket behaves as synchronous without filter, but async with filter
#275
Change module namespace
#270
Error in the browser with 10.0.1
#269
Update dependencies
10.0.0
breaking changes
#265
hapi v18
#263
Document minAuthVerifyInterval and make it less restrictive
#262
Close the socket when authentication verification fails
#260
Close the socket when authentication expires
#256
Cleanup
#247
Reconnect on error
#243
Add client.onHeartbeatTimeout hook
8.0.0
breaking changes
#229
Update ws to 5.x.x
#228
Mark NesErrors as coming from nes
#224
Add socket.info object
#223
Delay heartbeats until server is started
#222
Allow isSameSite cookie option to be passed
#221
Update hapijs/call to 5.x.x
#220
Ignore node network errors after opening client socket
#214
Do not replace message for all sockets with override from filter
#206
Handle ws socket error events
#198
Better error handling
7.0.0
breaking changes
#196
hapi v17
#195
Update ws
#194
Update babel script
#202
Fix test
#201
Update ws
#179
`maximum call stack exceeded` if web socket gets disconnected while nes is sending packets
#156
Handle undefined payloads from server in client
#171
server falls with bad cookie header
#169
Expose server and connection on socket
#168
Update deps
#145
Disable inject() validate
#144
Verify request Origin
#142
Reconnection timeout conflicts
#141
Add client.js and dist/ to npm tarball -Closes #140
#140
Missing root client.js and dist
#139
Update deps
#138
Always call onConnection before onSubscribe
#136
Reuse pre-stringified hapi response
#135
Cookie auth fails to register socket
#134
Per user connection limit
#133
Timeout sockets if hello takes too long
#132
Client indicates wasRequested when calling disconnect() on dead socket
#131
Incorrectly reports wasRequested when internally disconnects
#129
Include reason disconnected in log object
#127
Test on node v6
#126
Handle cases when client._ws is null
6.0.0
breaking changes
#125
Connect fails to check for previous internal socket when connecting.
#124
Adjust unsub processing timing on server
#123
Check is socket is still around while disconnecting
#122
Prevent server from sending data when stopping
5.0.0
breaking changes
#121
Properly clean up sockets and subscriptions on server stop
#120
Support user filter in eachSocket()
#119
Subscription revoke()
#118
Keep separate subscription per connection
#117
Race condition between unsubscribe and disconnect when using auth index on sub
#116
User-specific broadcast
#115
User-specific publish
#112
Expose socket and support publish override
#109
Typo: listners -> listeners
#108
Fix UMD global handling
#105
Client.js getting root as undefined
#107
Expose params on unsubscribe callback
#104
Provide a way to replace auth credentials before an automatic reconnect
4.0.0
breaking changes
#100
Add required callback to subscription onSubscribe option
#99
Pause heartbeat disconnect while sending
#98
Server disconnects client after a long message transmission
3.1.0
breaking changes
#97
Break large messages into smaller chunks
#94
Support sending initial subscription update
3.0.0
breaking changes
#96
Update Iron and increase auto-generated password to 32 characters
#95
Emit error when disconnecting due to missing server heartbeat
#93
Client requests fail if the request response takes longer than heartbeat timeout
#92
Return close event reason in onDisconnect
#90
NesError breaks if passed an error event from onerror.
#76
Pass the onclose information to onDisconnect
#89
Decorate errors with source type
#88
onDisconnect() reports reconnect state incorrectly
#87
The update to ws 1.0.x introduces breaking changes
#86
update ws to 1.0.x
2.0.0
breaking changes
#84
Change client.subscribe() to require a callback
#83
Add version check in hello
#81
Fix illegal invocation error when using default onError handler.
#79
Possible to subscribe, unsubscribe, and resubscribe? v1.2.0
1.2.0
breaking changes
#72
Update to create a es5 client artifact
#71
Add socket.app
#70
Decorate request with socket
#69
ES6 style changes
#67
Use internal auth endpoint id for lookup
#66
Plugin route prefix cause mismatch with default internal auth endpoint
#65
Return auth error message in response
#64
Implement internal data for filtering messages
#63
Add message metadata for publish
#62
Implement eachSocket iterator
#61
Implement per-subscription lifecycle
#60
Add onDisconnection callback
#56
Add disconnection callback
1.0.0
breaking changes
#46
socket.send()
#45
Rename onBroadcast to onUpdate
#44
Max reconnect retries
#43
Connection timeout
#22
Add heartbeat
#19
Allow for custom callback data to Client.connect()
#8
Request timeout
0.4.0
breaking changes
#42
Remove duplicated statusCode in errors
#41
Filter headers in responses
#40
Consistent error transmission
#38
Prevent client from including a request authorization header
#34
Prevent client from subscribing multiple times to same path
#32
Change server onConnect to onConnection and delay until after auth when required
#30
Block all client requests when channel requires auth
#29
Fix typo
#28
Implement unsubscribe on the server
#27
Expose socket authentication state
#26
Ability to force disconnect for specific clients
#25
'data' vs 'message' for incoming data
#24
Subscriptions are not cleaned on client disconnect
#21
Drop support for non-protocol messages
#20
Change default auth method to direct
#18
Race condition exists in client reconnect logic
#17
Allow for custom messages
#16
Turn auth on by default
#15
Add onConnect callback option
#14
Add event callback for client connection
#12
Add browser packaging entry points
#11
Initial publish/subscribe interface
#9
Use console.error() when no onError handler
#6
Re-auth on reconnect
#5
Allow any authentication method when using token auth
#4
Allow handler to handle unknown message types
#3
How will adding additional functionality work?