I am writing an Atom plugin for running Karma, which currently uses the Atom process to start the Karma server. I believe that Atom runs its plugins in a limited execution environment (I had a similar issue when loading the karma plugin, but found an Atom-specific workaround).
However, I keep getting an Illegal Invocation exception in lib/launchers/capture_timeout.js on line 15, when trying to set a timeout. It appears that the exception is caused by setTimeout being called as a method of the timer object.
Changing the timer definition in lib/server.js to delegate to the setTimeout/clearTimeout functions, rather than pass by reference, eliminates the exception.
Is this a valid use-case for making a change in Karma's code base?
I am writing an Atom plugin for running Karma, which currently uses the Atom process to start the Karma server. I believe that Atom runs its plugins in a limited execution environment (I had a similar issue when loading the karma plugin, but found an Atom-specific workaround).
However, I keep getting an Illegal Invocation exception in
lib/launchers/capture_timeout.json line 15, when trying to set a timeout. It appears that the exception is caused bysetTimeoutbeing called as a method of thetimerobject.Changing the timer definition in
lib/server.jsto delegate to thesetTimeout/clearTimeoutfunctions, rather than pass by reference, eliminates the exception.Is this a valid use-case for making a change in Karma's code base?