Package detail

require-so-slow

ofrobots710Apache-2.02.0.5

requires taking too much time? Profile 'em.

require, profiler, timeline, trace_events

readme

require-so-slow

  • Wondering why your applications is slow to start?
  • require seems to take an eternity?
  • Wonder no more!

This module produces a timeline of your requires and produces an output that you can load in the Chrome Timeline Viewer.

Trace Viewer

Click on the image above to go see an interactive version.

Command Line Usage

# Profiles the timeline of requiring `request@latest` and generates a trace
# output file you can load in Chrome Timeline viewer [1]
$ npx require-so-slow request

# You can specify specific versions or dist-tags.
$ npx require-so-slow got@9.0.0
$ npx require-so-slow got@rc

# You can specify what output filename to use:
$ npm require-so-slow -o lodash.trace.json lodash

You can also preload require-so-slow from node:

npm i -D require-so-slow

# Traces the entire execution of entrypoint and writes to
# ./require-so-slow.trace by default
$ node -r require-so-slow [entrypoint]

# The output path can be changed with the TRACE_OUTFILE environent variable

API

const requireSoSlow = require('require-so-slow');

// load stuff, run stuff.
require('request');

// Write a trace file at some point.
requireSoSlow.write('require-trace.trace');

changelog

Changelog

2.0.5 (2021-01-10)

Bug Fixes

  • deps: update dependency meow to v9 (#85) (c8e1c62)

2.0.4 (2020-10-29)

Bug Fixes

  • deps: update dependency meow to v8 (#82) (a908d9c)

2.0.3 (2020-09-29)

Bug Fixes

  • deps: update dependency update-notifier to v5 (#78) (0d63a51)

2.0.2 (2020-05-18)

Bug Fixes

  • deps: update dependency meow to v7 (#75) (0a66336)

2.0.1 (2020-04-29)

Bug Fixes

  • deps: update dependency tmp to v0.2.0 (#69) (3ddd571)
  • deps: update dependency tmp to v0.2.1 (#71) (2385ba3)
  • improve output file name for scoped packages (#72) (3506da5)

2.0.0 (2020-04-15)

⚠ BREAKING CHANGES

  • Node.js is reaching EOL. Stop supporting it.
  • The CLI format has changed.

Features

Bug Fixes

  • audit fix (#38) (10c53e7)
  • include node-fetch as a dependency (#23) (13d68f9)
  • require relative to working dir (#20) (aacde1f)
  • upgrade all dependencies (#16) (acd23a2)
  • deps: update dependency meow to v6 (#54) (8d61a2e)
  • deps: update dependency npm-package-arg to v7 (#53) (7b6cbe2)
  • deps: update dependency npm-package-arg to v8 (#56) (ae6dddb)
  • deps: update dependency tmp to v0.1.0 (#35) (0f2dcee)
  • deps: update dependency update-notifier to v3 (#42) (c01d916)
  • deps: update dependency update-notifier to v4 (#55) (8c9f454)

Build System