use node-redis with node 8 util.promisify : <p>node -v : 8.1.2</p>

<p>I use redis client <a href="https://github.com/NodeRedis/node_redis" rel="noreferrer">node_redis</a> with node 8 util.promisify , no blurbird.  </p>

<p>the callback redis.get is ok, but promisify type get error message</p>

<blockquote>
  <p>TypeError: Cannot read property 'internal_send_command' of undefined<br>
      at get (D:\Github\redis-test\node_modules\redis\lib\commands.js:62:24)<br>
      at get (internal/util.js:229:26)<br>
      at D:\Github\redis-test\app.js:23:27<br>
      at Object. (D:\Github\redis-test\app.js:31:3)<br>
      at Module._compile (module.js:569:30)<br>
      at Object.Module._extensions..js (module.js:580:10)<br>
      at Module.load (module.js:503:32)<br>
      at tryModuleLoad (module.js:466:12)<br>
      at Function.Module._load (module.js:458:3)<br>
      at Function.Module.runMain (module.js:605:10)  </p>
</blockquote>

<p>my test code</p>

<pre><code>const util = require('util');

var redis = require("redis"),
    client = redis.createClient({
        host: "192.168.99.100",
        port: 32768,
    });

let get = util.promisify(client.get);

(async function () {
    client.set(["aaa", JSON.stringify({
        A: 'a',
        B: 'b',
        C: "C"
    })]);

    client.get("aaa", (err, value) =&gt; {
        console.log(`use callback: ${value}`);
    });

    try {
        let value = await get("aaa");
        console.log(`use promisify: ${value}`);
    } catch (e) {
        console.log(`promisify error:`);
        console.log(e);
    }

    client.quit();
})()
</code></pre>
