You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/v3-to-v4.md
+42-6Lines changed: 42 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,14 +2,54 @@
2
2
3
3
Version 4 of Node Redis is a major refactor. While we have tried to maintain backwards compatibility where possible, several interfaces have changed. Read this guide to understand the differences and how to implement version 4 in your application.
4
4
5
-
## Breaking Changes
5
+
## All of the Breaking Changes
6
6
7
7
See the [Change Log](../packages/client/CHANGELOG.md).
8
8
9
-
## Promises
9
+
###Promises
10
10
11
11
Node Redis now uses native [Promises](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) by default for all functions.
12
12
13
+
### `createClient`
14
+
15
+
The configuration object passed to `createClient` has changed significantly with this release. See the [client configuration guide](./client-configuration.md) for details.
16
+
17
+
### No Auto Connect
18
+
19
+
In V4, the client does not automatically connect to the server, you need to run `.connect()` before any command, or you will receive error `ClientClosedError: The client is closed`.
20
+
21
+
```typescript
22
+
import { createClient } from'redis';
23
+
24
+
const client =createClient();
25
+
26
+
awaitclient.connect();
27
+
28
+
awaitclient.ping();
29
+
```
30
+
31
+
### No `message` event
32
+
33
+
In V4, you don't need to add listener to the `message` and `message_buffer` events, you can get the message directly in `subscribe`-like commands.
34
+
35
+
The second argument of these commands is a callback, which will be triggered every time there is a message published to the channel.
36
+
37
+
The third argument to these commands is a boolean to set `bufferMode` (default `false`). If it's set to `true` you will receive a buffer instead of a string.
38
+
39
+
The `subscribe`-like commands return a promise. If the server returns `ok` the promise will be fulfilled, otherwise the promise will be rejected.
The configuration object passed to `createClient` has changed significantly with this release. See the [client configuration guide](./client-configuration.md) for details.
0 commit comments