Meteor 1.6 upgrades to Node 8 which adds this deprecation of root as an alias for global. vsivsi:file-collection does not seem to use the root alias. Nonetheless, I'm getting a DeprecationWarning on the last line of this compiled JavaScript:
which comes from this line of CoffeeScript. (If you want to test, set environment variable NODE_OPTIONS to --throw-deprecation so that you can see what line is causing the warning.)
I don't understand why this DeprecationWarning is triggering. The relevant nodejs code seems to just make a global variable called root that behaves in this way, but root is clearly an argument to FileCollection. OK, here are some experiments in Node 8 (meteor node):
> function f(root) { console.log(root) }
undefined
> f(5)
5
undefined
> function g(root) { this.root = root; }
undefined
> g(5)
DeprecationWarning: 'root' is deprecated, use 'global'
at g (repl:1:30)
at repl:1:1
at ContextifyScript.Script.runInThisContext (vm.js:50:33)
at REPLServer.defaultEval (repl.js:240:29)
at bound (domain.js:301:14)
at REPLServer.runBound [as eval] (domain.js:314:12)
at REPLServer.onLine (repl.js:441:10)
at emitOne (events.js:120:20)
at REPLServer.emit (events.js:210:7)
at REPLServer.Interface._onLine (readline.js:282:10)
[restart Node to reset warning]
> function h() { this.root = 5; }
undefined
> h()
DeprecationWarning: 'root' is deprecated, use 'global'
at h (repl:1:26)
at repl:1:1
at ContextifyScript.Script.runInThisContext (vm.js:50:33)
at REPLServer.defaultEval (repl.js:240:29)
at bound (domain.js:301:14)
at REPLServer.runBound [as eval] (domain.js:314:12)
at REPLServer.onLine (repl.js:441:10)
at emitOne (events.js:120:20)
at REPLServer.emit (events.js:210:7)
at REPLServer.Interface._onLine (readline.js:282:10)
>
So this means that this is getting set to the global environment... Oops, this is because I'm calling FileCollection instead of doing new FileCollection. My bad.
Meteor 1.6 upgrades to Node 8 which adds this deprecation of
root
as an alias forglobal
. vsivsi:file-collection does not seem to use the root alias. Nonetheless, I'm getting aDeprecationWarning
on the last line of this compiled JavaScript:which comes from this line of CoffeeScript. (If you want to test, set environment variable
NODE_OPTIONS
to--throw-deprecation
so that you can see what line is causing the warning.)I don't understand why this
DeprecationWarning
is triggering. The relevant nodejs code seems to just make a global variable calledroot
that behaves in this way, butroot
is clearly an argument toFileCollection
. OK, here are some experiments in Node 8 (meteor node
):So this means that
this
is getting set to the global environment... Oops, this is because I'm callingFileCollection
instead of doingnew FileCollection
. My bad.