defunctzombie / node-required

identifies which modules your script is using
67 stars 15 forks source link

Returning different results when promisified with bluebird #18

Open reggi opened 8 years ago

reggi commented 8 years ago

It's returning a different result when promisified. Thoughts?

var Promise = require("bluebird")
var required = require('required')
var requiredAsync = Promise.promisify(required)

required('./test-1.js', function(err, deps){
  console.log("/////callback/////")
  console.log(deps)
})

requiredAsync('./test-1.js').then(function(deps){
  console.log("/////promise/////")
  console.log(deps)
})

Here's the output

thomas@workstation:wiskers$ node modules-loaded.js
/////callback/////
[ { id: 'underscore',
    filename: '/Users/thomas/Desktop/wiskers/node_modules/underscore/underscore.js',
    deps: [] },
  { id: 'express',
    filename: '/Users/thomas/node_modules/express/index.js',
    deps: [ [Object] ] },
  { id: './test-2',
    filename: '/Users/thomas/Desktop/wiskers/test-2.js',
    deps: [ [Object], [Object] ] } ]
/////promise/////
[ [ { id: 'underscore',
      filename: '/Users/thomas/Desktop/wiskers/node_modules/underscore/underscore.js',
      deps: [] },
    { id: 'express',
      filename: '/Users/thomas/node_modules/express/index.js',
      deps: [Object] },
    { id: './test-2',
      filename: '/Users/thomas/Desktop/wiskers/test-2.js',
      deps: [Object] } ],
  'var _ = require("underscore")\nvar express = require("express")\nvar routes = require("./test-2")\nvar app = express()\nmodule.exports = app\n' ]