Sinon: require function is used in a way in which dependencies cannot be statically extracted

Created on 7 Sep 2016  路  5Comments  路  Source: sinonjs/sinon

We understand you have a problem and are in a hurry, but please provide us with some info to make it much more likely for your issue to be understood, worked on and resolved quickly.

  • Sinon version : 1.17.5
  • Environment : MAC and Windows
  • Example URL :
  • Other libraries you are using:

What did you expect to happen?
npm i --save-dev sinon

then I tried to use sinon in my code

What actually happens

webpack prints a lot of warnings:

WARNING in ./~/sinon/lib/sinon.js
Critical dependencies:
40:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon.js 40:25-32

WARNING in ./~/sinon/lib/sinon/assert.js
Critical dependencies:
236:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/assert.js 236:25-32

WARNING in ./~/sinon/lib/sinon/call.js
Critical dependencies:
230:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/call.js 230:25-32

WARNING in ./~/sinon/lib/sinon/behavior.js
Critical dependencies:
362:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/behavior.js 362:25-32

WARNING in ./~/sinon/lib/sinon/collection.js
Critical dependencies:
164:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/collection.js 164:25-32

WARNING in ./~/sinon/lib/sinon/extend.js
Critical dependencies:
102:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/extend.js 102:25-32

WARNING in ./~/sinon/lib/sinon/log_error.js
Critical dependencies:
75:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/log_error.js 75:25-32

WARNING in ./~/sinon/lib/sinon/format.js
Critical dependencies:
84:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/format.js 84:25-32

WARNING in ./~/sinon/lib/sinon/match.js
Critical dependencies:
252:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/match.js 252:25-32

WARNING in ./~/sinon/lib/sinon/mock.js
Critical dependencies:
482:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/mock.js 482:25-32

WARNING in ./~/sinon/lib/sinon/sandbox.js
Critical dependencies:
161:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/sandbox.js 161:25-32

WARNING in ./~/sinon/lib/sinon/spy.js
Critical dependencies:
454:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/spy.js 454:25-32

WARNING in ./~/sinon/lib/sinon/stub.js
Critical dependencies:
191:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/stub.js 191:25-32

WARNING in ./~/sinon/lib/sinon/test.js
Critical dependencies:
94:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/test.js 94:25-32

WARNING in ./~/sinon/lib/sinon/test_case.js
Critical dependencies:
97:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/test_case.js 97:25-32

WARNING in ./~/sinon/lib/sinon/typeOf.js
Critical dependencies:
44:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/typeOf.js 44:25-32

WARNING in ./~/sinon/lib/sinon/times_in_words.js
Critical dependencies:
40:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/times_in_words.js 40:25-32

WARNING in ./~/sinon/lib/sinon/util/event.js
Critical dependencies:
107:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/util/event.js 107:25-32

WARNING in ./~/sinon/lib/sinon/util/fake_server_with_clock.js
Critical dependencies:
97:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/util/fake_server_with_clock.js 97:25-32

WARNING in ./~/sinon/lib/sinon/util/fake_server.js
Critical dependencies:
243:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/util/fake_server.js 243:25-32

WARNING in ./~/sinon/lib/sinon/util/fake_timers.js
Critical dependencies:
69:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/util/fake_timers.js 69:25-32

WARNING in ./~/sinon/lib/sinon/util/fake_xdomain_request.js
Critical dependencies:
235:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/util/fake_xdomain_request.js 235:25-32

WARNING in ./~/sinon/lib/sinon/util/fake_xml_http_request.js
Critical dependencies:
729:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/util/fake_xml_http_request.js 729:25-32

WARNING in ./~/sinon/lib/sinon/walk.js
Critical dependencies:
70:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/walk.js 70:25-32

WARNING in ./~/sinon/lib/sinon/util/core.js
Critical dependencies:
392:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/util/core.js 392:25-32

How to reproduce

Describe _with code_ how to reproduce the faulty behaviour,
or link to code on JSBin or similar


Really long code sample or stacktrace

If you need to provide a dump of a stack trace or
other lengthy material, such as 80 lines of example code,
please stuff it in a `<details>` tag such as this
to make the issue more readable. Thanks.

See this for an example

Most helpful comment

Use Sinon 2.0

All 5 comments

Noticed the warning ...

So what was the solution? It's not clear to me here, and I'm running into the same issue.

Use Sinon 2.0

That worked. Thanks!

Use Sinon 2.0

How?

c:\ws\ulog>npm install --save-dev sinon
[email protected] c:\ws\ulog
`-- [email protected]
  +-- [email protected]
  +-- [email protected]
  `-- [email protected]

Edit: figured it out:

c:\ws\ulog>npm install --save-dev [email protected]
[email protected] c:\ws\ulog
`-- [email protected]
  +-- [email protected]
  +-- [email protected]
  | `-- [email protected]
  +-- [email protected]
  +-- [email protected]
  +-- [email protected]
  | `-- [email protected]
  +-- [email protected]
  `-- [email protected]
Was this page helpful?
0 / 5 - 0 ratings