title: Async/Await with Request-Promise returns Undefined
body: <p>I have two files; server.js and scrape.js, below are the code snippets as they currently stand.</p>
  
  <p>server.js:</p>
  
  <pre><code>const scrape = require("./scrape");
  
  async function start() {
      const response = await scrape.start();
      console.log(response);
  }
  
  start();
  </code></pre>
  
  <p>and scrape.js:</p>
  
  <pre><code>const cheerio = require("cheerio");
  const request = require("request-promise");
  
  go = async () =&gt; {
  
  const options = {
    uri: "http://www.somewebsite.com/something",
    transform: function(body) {
      return cheerio.load(body);
    }
  };
  
  request(options)
    .then($ =&gt; {
      let scrapeTitleArray = [];
      $(".some-class-in-html").each(function(i, obj) {
        const data = $(this)
          .text()
          .trim();
        scrapeTitleArray.push(data);
      });
      return scrapeTitleArray;
    })
    .catch(err =&gt; {
      console.log(err);
    });
  };
  
  module.exports = {
    start: go
  };
  </code></pre>
  
  <p>So when I spin up server.js, I return undefined to the console.log(response), when I actually want to return the array i've been pushing to, can you see where I'm going wrong?</p>