2016-04-27 99 views
7

我刚升级到节点v6。一切都很好运行,但我得到以下堆栈跟踪指出的是,一些被弃用:nodejs升级导致堆栈跟踪

(node) v8::ObjectTemplate::Set() with non-primitive values is deprecated 
(node) and will stop working in the next major release. 

==== JS stack trace ========================================= 

Security context: 0x18c48b3c9fa9 <JS Object>#0# 
    1: .node [module.js:568] [pc=0x14a2e95935a4] (this=0x3e1b399e54e9 <an Object with map 0x31db83e17be1>#1#,module=0x1b9e891a8351 <a Module with map 0x31db83e181b9>#2#,filename=0x1b9e891a8319 <String[114]: /Users/alexanderray/WebstormProjects/skillx/node_modules/dtrace-provider/build/Release/DTraceProviderBindings.node>) 
    2: load [module.js:456] [pc=0x14a2e9438e72] (this=0x1b9e891a8351 <a Module with map 0x31db83e181b9>#2#,filename=0x1b9e891a8319 <String[114]: /Users/alexanderray/WebstormProjects/skillx/node_modules/dtrace-provider/build/Release/DTraceProviderBindings.node>) 
    3: tryModuleLoad(aka tryModuleLoad) [module.js:415] [pc=0x14a2e943899d] (this=0x18c48b304189 <undefined>,module=0x1b9e891a8351 <a Module with map 0x31db83e181b9>#2#,filename=0x1b9e891a8319 <String[114]: /Users/alexanderray/WebstormProjects/skillx/node_modules/dtrace-provider/build/Release/DTraceProviderBindings.nod 1: v8::Template::Set(v8::Local<v8::Name>, v8::Local<v8::Data>, v8::PropertyAttribute) 
2: node::DTraceProvider::Initialize(v8::Local<v8::Object>) 
3: node::DLOpen(v8::FunctionCallbackInfo<v8::Value> const&) 
4: v8::internal::FunctionCallbackArguments::Call(void (*)(v8::FunctionCallbackInfo<v8::Value> const&)) 
5: v8::internal::MaybeHandle<v8::internal::Object> v8::internal::(anonymous namespace)::HandleApiCallHelper<false>(v8::internal::Isolate*, v8::internal::(anonymous namespace)::BuiltinArguments<(v8::internal::BuiltinExtraArguments)1>) 
6: v8::internal::Builtin_HandleApiCall(int, v8::internal::Object**, v8::internal::Isolate*) 
7: 0x14a2e930961b 
8: 0x14a2e95935a4 

我明白,这要等到下一个版本重大更改,但没有人知道这是什么包来自哪里,我应该在哪里寻找修复?还有一种方法可以抑制这种情况?

+0

呀,拿到了这里与节点sass一样的东西。 – LoremIpsum

回答

6

各个项目(包括nodejs)的问题已经公开,有些PR已经提交;例如

我们可能只需要等待v6.0.1。

+0

非常感谢。我搜索了节点github回购,但显然不够硬。没什么大不了的。只是让我的测试输出看起来很丑陋 – aray12

+0

这是另一个添加到列表中的:https://github.com/tugrul/node-mcrypt/issues/54 – mpen

0

我在一些项目中遇到了同样的错误,我解决了所有这些错误,更新了依赖关系。

我知道您可能不会同意更新某些circrestances中的所有依赖关系,因此您可以编辑packake.json文件并逐个更改每个依赖关系以“最新”。

然后执行NPM安装更新所有的依赖到最新版本

例如,这是我的我的一个项目的package.json:

"dependencies": { "body-parser": "latest", "eris-contracts": "latest", "express": "latest", "mongodb": "latest", "promise": "latest", "rootpath": "latest" }