Damien Arrachequesne
8c659bcccf
chore: regenerate lockfile
...
For some reason, the lockfile was not in sync anymore with the
package.json file:
> `npm ci` can only install packages when your package.json and package-lock.json or npm-shrinkwrap.json are in sync.
That may be linked to a new version of Node.js (v16.15.1).
2022-06-26 08:19:46 +02:00
Damien Arrachequesne
f0350a0100
chore(release): 4.5.1
...
Diff: https://github.com/socketio/socket.io-client/compare/4.5.0...4.5.1
2022-05-17 23:34:19 +02:00
Damien Arrachequesne
abdba07030
chore(release): 4.5.0
...
Diff: https://github.com/socketio/socket.io-client/compare/4.4.1...4.5.0
2022-04-24 00:37:51 +02:00
Damien Arrachequesne
6fdf3c9bfa
refactor: import single-file 3rd party modules
...
This commit allows to:
- provide an ESM version of those modules ([1])
- reduce the attack surface in case of supply chain attacks
- reduce the size of the bundle with tree-shaking
As a downside, we won't receive security updates for those modules
anymore.
[1]: socketio/socket.io-client#1536
Related: df32277c3f
2022-04-23 22:55:39 +02:00
Damien Arrachequesne
b862924b7f
feat: add details to the disconnect event
...
The "disconnect" event will now include additional details to help
debugging if anything has gone wrong.
Example when a payload is over the maxHttpBufferSize value in HTTP
long-polling mode:
```js
socket.on("disconnect", (reason, details) => {
console.log(reason); // "transport error"
// in that case, details is an error object
console.log(details.message); "xhr post error"
console.log(details.description); // 413 (the HTTP status of the response)
// details.context refers to the XMLHttpRequest object
console.log(details.context.status); // 413
console.log(details.context.responseText); // ""
});
```
Related: b9252e2074
2022-04-23 00:57:23 +02:00
Damien Arrachequesne
359d1e25e7
chore(release): 4.4.1
...
Diff: https://github.com/socketio/socket.io-client/compare/4.4.0...4.4.1
2022-01-06 07:24:53 +01:00
Gray Zhang
19836d9abf
chore: add types to exports field to be compatible with nodenext module resolution ( #1522 )
...
See [1] for detail, in `nodenext` module resolution it requires a
`types` field in `exports` with full filename including extension.
[1]: https://github.com/microsoft/TypeScript/issues/46770#issuecomment-966612103
Reference: https://www.typescriptlang.org/tsconfig/#module
2021-12-28 10:22:45 +01:00
Damien Arrachequesne
71e34a3826
chore(release): 4.4.0
...
Diff: https://github.com/socketio/socket.io-client/compare/4.3.2...4.4.0
2021-11-18 13:51:36 +01:00
Damien Arrachequesne
1e1952b817
chore: bump engine.io-client version
...
Diff: https://github.com/socketio/engine.io-client/compare/6.0.1...6.1.1
2021-11-18 13:47:41 +01:00
Damien Arrachequesne
da0b8282f3
chore(release): 4.3.2
...
Diff: https://github.com/socketio/socket.io-client/compare/4.3.1...4.3.2
2021-10-17 01:13:27 +02:00
Damien Arrachequesne
ca614b28f8
chore(release): 4.3.1
...
Diff: https://github.com/socketio/socket.io-client/compare/4.3.0...4.3.1
2021-10-16 01:13:08 +02:00
Damien Arrachequesne
c76d36778d
chore(release): 4.3.0
...
Diff: https://github.com/socketio/socket.io-client/compare/4.2.0...4.3.0
2021-10-14 14:37:33 +02:00
Damien Arrachequesne
91b948b860
refactor: move the typed events to @socket.io/component-emitter
...
The typed events have been moved to [1] in order to remove the
intermediary class and reduce the bundle size.
Diff: https://github.com/socketio/emitter/compare/2.0.0...3.0.0
[1]: https://github.com/socketio/emitter/
2021-10-14 14:09:23 +02:00
Damien Arrachequesne
0661564dc2
chore: migrate to rollup
...
This change allows us to:
- reduce the size of the bundle
- provide an ESM bundle (for usage in <script type="module">)
Related: https://github.com/socketio/socket.io-client/issues/1198
2021-10-13 18:09:41 +02:00
Damien Arrachequesne
16b65698ae
feat: provide an ESM build with and without debug
...
See also: 00d7e7d7ee
Related:
- https://github.com/socketio/socket.io-client/issues/1188
- https://github.com/socketio/socket.io-client/issues/1378
2021-10-13 18:09:41 +02:00
Damien Arrachequesne
718745305f
chore: bump socket.io-parser to version 4.1.0
...
Diff: https://github.com/socketio/socket.io-parser/compare/4.0.4...4.1.0
2021-10-11 23:19:51 +02:00
Damien Arrachequesne
91fbd47e1e
chore: bump engine.io-client to version 6.0.0
...
Release notes: https://github.com/socketio/engine.io-client/releases/6.0.0
Diff: https://github.com/socketio/engine.io-client/compare/5.2.0...6.0.0
2021-10-11 23:19:51 +02:00
Damien Arrachequesne
0a7efc8217
chore(release): 4.2.0
...
Diff: https://github.com/socketio/socket.io-client/compare/4.1.3...4.2.0
2021-08-30 09:15:30 +02:00
Damien Arrachequesne
ec3a784fa6
chore: bump dependencies
2021-08-30 08:21:47 +02:00
Michael Vartan
4e1b65699d
feat: add an option to use native timer functions ( #1479 )
...
This allows to control the behavior of mocked timers (@sinonjs/fake-timers),
depending on the value of the "useNativeTimers" option:
- true: use native setTimeout function
- false (default): use classic timers, that may be mocked
Related: 5d1d5bea11
2021-08-29 09:31:25 +02:00
Damien Arrachequesne
7326bd50df
chore(release): 4.1.3
...
Diff: https://github.com/socketio/socket.io-client/compare/4.1.2...4.1.3
2021-07-10 12:03:09 +02:00
Damien Arrachequesne
cef471bb93
chore: bump dependencies
...
`engine.io-client` diff: https://github.com/socketio/engine.io-client/compare/5.1.1...5.1.2
2021-07-04 00:53:16 +02:00
Damien Arrachequesne
b466c6f0b1
chore(release): 4.1.2
...
Diff: https://github.com/socketio/socket.io-client/compare/4.1.1...4.1.2
2021-05-17 23:08:31 +02:00
Damien Arrachequesne
7d6a71c91d
chore(release): 4.1.1
...
Diff: https://github.com/socketio/socket.io-client/compare/4.1.0...4.1.1
2021-05-11 23:54:24 +02:00
Damien Arrachequesne
411499ebcf
chore(release): 4.1.0
...
Diff: https://github.com/socketio/socket.io-client/compare/4.0.2...4.1.0
2021-05-11 09:16:28 +02:00
Damien Arrachequesne
70220b5333
chore: bump engine.io-client dependency
...
Diff: https://github.com/socketio/engine.io-client/compare/5.0.1...5.1.0
2021-05-11 09:12:12 +02:00
Damien Arrachequesne
6279065209
chore(release): 4.0.2
...
Diff: https://github.com/socketio/socket.io-client/compare/4.0.1...4.0.2
2021-05-06 14:31:00 +02:00
Damien Arrachequesne
2edf0f308c
chore(release): 4.0.1
...
Diff: https://github.com/socketio/socket.io-client/compare/4.0.0...4.0.1
2021-04-01 01:07:04 +02:00
Damien Arrachequesne
d28cde7afc
chore(release): 4.0.0
...
The major bump is due to some breaking changes on the server side.
Diff: https://github.com/socketio/socket.io-client/compare/3.1.2...4.0.0
2021-03-10 12:25:27 +01:00
KC Erb
6abfa1fa4c
feat: add autoUnref option
...
With autoUnref set to true (default: false), the Socket.IO client will
allow the program to exit if there is no other active timer/socket in
the event system.
```js
const socket = io({
autoUnref: true
});
```
Note: this option only applies to Node.js clients.
Related: https://github.com/socketio/socket.io-client/issues/1446
2021-03-10 12:16:12 +01:00
Damien Arrachequesne
59023657a0
feat: add support for typed events
...
Syntax:
```ts
interface ServerToClientEvents {
"my-event": (a: number, b: string, c: number[]) => void;
}
interface ClientToServerEvents {
hello: (message: string) => void;
}
const socket: Socket<ServerToClientEvents, ClientToServerEvents> = io();
socket.emit("hello", "world");
socket.on("my-event", (a, b, c) => {
// ...
});
```
The events are not typed by default (inferred as any), so this change
is backward compatible.
Related: https://github.com/socketio/socket.io/issues/3742
2021-03-10 01:24:56 +01:00
Damien Arrachequesne
78ec5a6e43
chore(release): 3.1.2
...
Diff: https://github.com/socketio/socket.io-client/compare/3.1.1...3.1.2
2021-02-26 01:10:30 +01:00
Damien Arrachequesne
311c5d14c3
chore(release): 3.1.1
...
Diff: https://github.com/socketio/socket.io-client/compare/3.1.0...3.1.1
2021-02-03 22:36:17 +01:00
Damien Arrachequesne
5529f34aaf
chore(release): 3.1.0
...
Diff: https://github.com/socketio/socket.io-client/compare/3.0.5...3.1.0
2021-01-15 02:15:57 +01:00
Damien Arrachequesne
5d9b4eb42b
chore: bump socket.io-parser version
...
Diff: https://github.com/socketio/socket.io-parser/compare/4.0.3...4.0.4
2021-01-15 01:59:56 +01:00
Damien Arrachequesne
13e16b9b79
chore: bump engine.io-client version
...
Diff: https://github.com/socketio/engine.io-client/compare/4.0.6...4.1.0
2021-01-15 01:56:01 +01:00
Damien Arrachequesne
bcdd3bef85
chore(release): 3.0.5
...
Diff: https://github.com/socketio/socket.io-client/compare/3.0.4...3.0.5
2021-01-05 12:02:52 +01:00
Damien Arrachequesne
cf9fc35836
chore: bump debug version
2021-01-05 11:46:06 +01:00
david-fong
7bc7a7b624
refactor: switch to native javascript bind ( #1423 )
...
The polyfill for the bind() method was necessary for IE6/7/8, which we
do not support anymore.
Related: https://caniuse.com/mdn-javascript_builtins_function_bind
2020-12-11 11:55:57 +01:00
Damien Arrachequesne
085cd6c56d
chore(release): 3.0.4
...
Diff: https://github.com/socketio/socket.io-client/compare/3.0.3...3.0.4
2020-12-07 11:43:11 +01:00
david-fong
226b491846
refactor(typings): make typing information more specific ( #1418 )
2020-12-07 09:06:57 +01:00
Damien Arrachequesne
66e4fdf2e6
chore(release): 3.0.3
...
Diff: https://github.com/socketio/socket.io-client/compare/3.0.2...3.0.3
2020-11-19 01:01:33 +01:00
Damien Arrachequesne
e2a4c56709
chore: cleanup dist folder before compilation
2020-11-19 00:59:42 +01:00
Damien Arrachequesne
a883e3238e
chore(release): 3.0.2
...
Diff: https://github.com/socketio/socket.io-client/compare/3.0.1...3.0.2
2020-11-18 00:00:42 +01:00
Damien Arrachequesne
969d5c95f8
chore(release): 3.0.1
...
Diff: https://github.com/socketio/socket.io-client/compare/3.0.0...3.0.1
2020-11-09 10:27:33 +01:00
Damien Arrachequesne
b7e07ba633
chore(release): 3.0.0
...
Diff: https://github.com/socketio/socket.io-client/compare/2.3.1...3.0.0
2020-11-05 22:06:25 +01:00
Damien Arrachequesne
ffa280450d
chore(release): 3.0.0-rc4
...
Diff: https://github.com/socketio/socket.io-client/compare/3.0.0-rc3...3.0.0-rc4
2020-10-30 23:02:06 +01:00
Damien Arrachequesne
a9127cee83
chore(release): 3.0.0-rc3
...
Diff: https://github.com/socketio/socket.io-client/compare/3.0.0-rc2...3.0.0-rc3
2020-10-27 00:41:32 +01:00
Damien Arrachequesne
13e1db7c94
refactor: rename ERROR to CONNECT_ERROR
...
The meaning is not modified: this packet type is still used by the
server when the connection to a namespace is refused.
Breaking change: the Socket instance will now emit a "connect_error"
event instead of "error" (which is not a reserved event anymore)
```js
// before
socket.on("error", () => {});
// after
socket.on("connect_error", () => {});
```
2020-10-26 10:04:05 +01:00
Damien Arrachequesne
71d60480af
feat: add bundle with msgpack parser
...
Pros:
- events with binary content are sent as 1 WebSocket frame (instead of 2 with the default parser)
- payloads with lots of numbers should be smaller
Cons:
- no IE9 support (https://caniuse.com/mdn-javascript_builtins_arraybuffer )
- a slightly bigger bundle size (61.1 vs 59.9 KB)
Source: https://github.com/darrachequesne/socket.io-msgpack-parser
2020-10-25 22:47:31 +01:00