1 | ## [4.0.3](https://github.com/socketio/engine.io-parser/compare/4.0.2...4.0.3) (2021-08-29)
|
---|
2 |
|
---|
3 |
|
---|
4 | ### Bug Fixes
|
---|
5 |
|
---|
6 | * respect the offset and length of TypedArray objects ([6d7dd76](https://github.com/socketio/engine.io-parser/commit/6d7dd76130690afda6c214d5c04305d2bbc4eb4d))
|
---|
7 |
|
---|
8 |
|
---|
9 | ## [4.0.2](https://github.com/socketio/engine.io-parser/compare/4.0.1...4.0.2) (2020-12-07)
|
---|
10 |
|
---|
11 |
|
---|
12 | ### Bug Fixes
|
---|
13 |
|
---|
14 | * add base64-arraybuffer as prod dependency ([2ccdeb2](https://github.com/socketio/engine.io-parser/commit/2ccdeb277955bed8742a29f2dcbbf57ca95eb12a))
|
---|
15 |
|
---|
16 |
|
---|
17 | ## [2.2.1](https://github.com/socketio/engine.io-parser/compare/2.2.0...2.2.1) (2020-09-30)
|
---|
18 |
|
---|
19 |
|
---|
20 | ## [4.0.1](https://github.com/socketio/engine.io-parser/compare/4.0.0...4.0.1) (2020-09-10)
|
---|
21 |
|
---|
22 |
|
---|
23 | ### Bug Fixes
|
---|
24 |
|
---|
25 | * use a terser-compatible representation of the separator ([886f9ea](https://github.com/socketio/engine.io-parser/commit/886f9ea7c4e717573152c31320f6fb6c6664061b))
|
---|
26 |
|
---|
27 |
|
---|
28 | # [4.0.0](https://github.com/socketio/engine.io-parser/compare/v4.0.0-alpha.1...4.0.0) (2020-09-08)
|
---|
29 |
|
---|
30 | This major release contains the necessary changes for the version 4 of the Engine.IO protocol. More information about the new version can be found [there](https://github.com/socketio/engine.io-protocol#difference-between-v3-and-v4).
|
---|
31 |
|
---|
32 | Encoding changes between v3 and v4:
|
---|
33 |
|
---|
34 | - encodePacket with string
|
---|
35 | - input: `{ type: "message", data: "hello" }`
|
---|
36 | - output in v3: `"4hello"`
|
---|
37 | - output in v4: `"4hello"`
|
---|
38 |
|
---|
39 | - encodePacket with binary
|
---|
40 | - input: `{ type: 'message', data: <Buffer 01 02 03> }`
|
---|
41 | - output in v3: `<Buffer 04 01 02 03>`
|
---|
42 | - output in v4: `<Buffer 01 02 03>`
|
---|
43 |
|
---|
44 | - encodePayload with strings
|
---|
45 | - input: `[ { type: 'message', data: 'hello' }, { type: 'message', data: '€€€' } ]`
|
---|
46 | - output in v3: `"6:4hello4:4€€€"`
|
---|
47 | - output in v4: `"4hello\x1e4€€€"`
|
---|
48 |
|
---|
49 | - encodePayload with string and binary
|
---|
50 | - input: `[ { type: 'message', data: 'hello' }, { type: 'message', data: <Buffer 01 02 03> } ]`
|
---|
51 | - output in v3: `<Buffer 00 06 ff 34 68 65 6c 6c 6f 01 04 ff 04 01 02 03>`
|
---|
52 | - output in v4: `"4hello\x1ebAQID"`
|
---|
53 |
|
---|
54 | Please note that the parser is now dependency-free! This should help reduce the size of the browser bundle.
|
---|
55 |
|
---|
56 | ### Bug Fixes
|
---|
57 |
|
---|
58 | * keep track of the buffer initial length ([8edf2d1](https://github.com/socketio/engine.io-parser/commit/8edf2d1478026da442f519c2d2521af43ba01832))
|
---|
59 |
|
---|
60 |
|
---|
61 | ### Features
|
---|
62 |
|
---|
63 | * restore the upgrade mechanism ([6efedfa](https://github.com/socketio/engine.io-parser/commit/6efedfa0f3048506a4ba99e70674ddf4c0732e0c))
|
---|
64 |
|
---|
65 |
|
---|
66 |
|
---|
67 | # [4.0.0-alpha.1](https://github.com/socketio/engine.io-parser/compare/v4.0.0-alpha.0...v4.0.0-alpha.1) (2020-05-19)
|
---|
68 |
|
---|
69 |
|
---|
70 | ### Features
|
---|
71 |
|
---|
72 | * implement the version 4 of the protocol ([cab7db0](https://github.com/socketio/engine.io-parser/commit/cab7db0404e0a69f86a05ececd62c8c31f4d97d5))
|
---|
73 |
|
---|
74 |
|
---|
75 |
|
---|
76 | # [4.0.0-alpha.0](https://github.com/socketio/engine.io-parser/compare/2.2.0...v4.0.0-alpha.0) (2020-02-04)
|
---|
77 |
|
---|
78 |
|
---|
79 | ### Bug Fixes
|
---|
80 |
|
---|
81 | * properly decode binary packets ([5085373](https://github.com/socketio/engine.io-parser/commit/50853738e0c6c16f9cee0d7887651155f4b78240))
|
---|
82 |
|
---|
83 |
|
---|
84 | ### Features
|
---|
85 |
|
---|
86 | * remove packet type when encoding binary packets ([a947ae5](https://github.com/socketio/engine.io-parser/commit/a947ae59a2844e4041db58ff36b270d1528b3bee))
|
---|
87 |
|
---|
88 |
|
---|
89 | ### BREAKING CHANGES
|
---|
90 |
|
---|
91 | * the packet containing binary data will now be sent without any transformation
|
---|
92 |
|
---|
93 | Protocol v3: { type: 'message', data: <Buffer 01 02 03> } => <Buffer 04 01 02 03>
|
---|
94 | Protocol v4: { type: 'message', data: <Buffer 01 02 03> } => <Buffer 01 02 03>
|
---|
95 |
|
---|
96 |
|
---|
97 |
|
---|
98 | # [2.2.0](https://github.com/socketio/engine.io-parser/compare/2.1.3...2.2.0) (2019-09-13)
|
---|
99 |
|
---|
100 |
|
---|
101 | * [refactor] Use `Buffer.allocUnsafe` instead of `new Buffer` (#104) ([aedf8eb](https://github.com/socketio/engine.io-parser/commit/aedf8eb29e8bf6aeb5c6cc68965d986c4c958ae2)), closes [#104](https://github.com/socketio/engine.io-parser/issues/104)
|
---|
102 |
|
---|
103 |
|
---|
104 | ### BREAKING CHANGES
|
---|
105 |
|
---|
106 | * drop support for Node.js 4 (since Buffer.allocUnsafe was added in v5.10.0)
|
---|
107 |
|
---|
108 | Reference: https://nodejs.org/docs/latest/api/buffer.html#buffer_class_method_buffer_allocunsafe_size
|
---|