dgraph v0.13.0
dgraph
dgraph is a replacement for module-deps which:
- is almost fully compatible with
module-depsfor the exception of different caching mechanism, otherwise it reuses test suite frommodule-deps - allows you to extract dependencies and enrich modules via module transforms (in addition to source transform)
Installation
% npm install dgraphUsage
dgraph is fully compatible with module-deps so you all configuration options
and API are the same:
var dgraph = require('dgraph'),
JSONStream = require('JSONStream')
dgraph('./app.coffee', {transform: 'coffeeify'})
.pipe(JSONStream.stringify())
.pipe(process.stdout)Global transforms
Transforms specified via command line or function arguments only works for
modules not in node_modules/ (this is behaviour of module-deps also).
dgraph also supports globalTransform argument which allows to specify
transforms for all modules even those in node_modules/.
Module transforms
In addition to source transforms which are supported by module-deps, there's
module transforms which can transform modules themselves.
For dgraph to distinguish between source and module transforms you should
define a module transform as a function of two arguments — filename and
graph. That way module transforms can use Graph API to resolve dependencies.
Even extraction of CommonJS dependencies implemented as a module transform:
var detective = require('detective')
module.exports = function(mod, graph) {
if (graph.opts.noParse && graph.opts.noParse.indexOf(mod.id) > -1) return
var deps = detective(mod.source)
return graph.resolveMany(deps, mod)
.then(function(deps) { return {deps: deps} })
}12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago
12 years ago