Skip to content

Sinon is not playing nicely with webpack #3

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
SonofNun15 opened this issue Sep 25, 2015 · 5 comments
Open

Sinon is not playing nicely with webpack #3

SonofNun15 opened this issue Sep 25, 2015 · 5 comments

Comments

@SonofNun15
Copy link
Owner

Sinon and webpack are not getting along well. Seems to be caused by the fact that sinon is using dynamic resolve statements. Regardless, if sinon is imported via webpack, the following error is generated at runtime:

 Uncaught TypeError: Cannot read property 'call' of undefined
  at C:/Renovo/rl21/components/test-bootstrapper.js:20

And the following warnings are listed while bundling:

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/call.js
Critical dependencies:
226:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/call.js 226:25-32

WARNING in ./~/sinon/lib/sinon/assert.js
Critical dependencies:
216:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/assert.js 216: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/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/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/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/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/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/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/stub.js
Critical dependencies:
190:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/stub.js 190:25-32

WARNING in ./~/sinon/lib/sinon/test.js
Critical dependencies:
96:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/test.js 96: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/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/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/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

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.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_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_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:
219:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/util/fake_xdomain_request.js 219:25-32

WARNING in ./~/sinon/lib/sinon/util/fake_xml_http_request.js
Critical dependencies:
706: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 706:25-32

WARNING in ./~/sinon/lib/sinon/walk.js
Critical dependencies:
61:25-32 require function is used in a way in which dependencies cannot be statically extracted
 @ ./~/sinon/lib/sinon/walk.js 61: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
@idostern
Copy link

idostern commented Dec 6, 2015

+1

@SonofNun15
Copy link
Owner Author

@idostern: For the record, this issue is created against a test / example repo, not sinon or webpack. I created this here not so much looking for action as to document the behavior and how I worked around it. We should probably create an issue against sinon in order to see this resolved ultimately.

@SonofNun15
Copy link
Owner Author

In general, I find that resolving webpack dependencies through npm occasionally fails because the dependencies have node specific features in them since npm is typically used to resolve "node" packages and not necessarily front-end libraries. I'm hoping jspm will ultimately resolve some of these issues since it is a bit more focused on front-end deps. Unfortunately, jspm is still a bit immature at the moment.

@charliehavak
Copy link

+1

1 similar comment
@brianyang
Copy link

+1

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants