gpt4 book ai didi

visual-studio-code - vscode扩展: deprecation warning `Buffer()` ,如何诊断

转载 作者:行者123 更新时间:2023-12-04 05:58:37 24 4
gpt4 key购买 nike

我正在将我的评论荧光笔重建为新的 extension .
但是,我现在遇到了一个问题,我收到以下警告:

(node:4904) [DEP0005] DeprecationWarning:
Buffer() is deprecated due to security and usability issues.
Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
到目前为止,我可以在我的扩展中找到我从不使用函数 Buffer()我认为它来自 vscode模块。
当警告发生时, block 注释突出显示停止工作。
这个问题对于我在开发模式下的扩展来说是个问题。
但是我的 old extension在开发模式和发布版本中存在相同的问题。
仅在发布版本中不报告警告。
我很抱歉没有包含一个最小的、可重现的例子。
更新:
在我的评论突出显示的最新版本中,我修复了 block 评论突出显示。至少我已经修复了我的问题。 (node:4904) [DEP0005] DeprecationWarning在极少数情况下不断破坏我的扩展,这发生在我所有的环境中。
重新启动 vscode 或重新启动操作系统有时可以修复它。我注意到当我的扩展程序损坏时,其他扩展程序也会中断。
我运行的操作系统:
  • window 10
  • Ubuntu 20 LTS

  • 在这两个操作系统上,我都运行 nvm 来管理节点和 npm 版本。
    我目前有 2 台计算机都使用命名操作系统双启动
    两台计算机上都会出现此问题。

    最佳答案

    以下是我用来帮助诊断导致 Buffer deprecation 警告的原因的步骤。

  • 卸载您的扩展程序。在此之后您可能需要重新加载 vscode。
  • 终端:export NODE_OPTIONS=--throw-deprecation
  • 终端:code-insiders --install-extension arturodent.find-and-transform(或 code --install-extension arturodent.find-and-transform 如果不在 Insiders 上)

  • (替换为您在 package.json 中找到的扩展程序 ID)
    那应该使用有关弃用警告的堆栈跟踪重新安装扩展。
    buffer deprecation warning
    显然,如果你的扩展直接使用了 new Buffer()你可以修复它。
    如果您导入/需要使用 new Buffer() 的扩展名您有几个选择:寻找替代方案,将其 fork 或向该存储库提交问题。
    就我而言,以上都不是问题。你可以看到 fd-slicer是问题所在。这是 yauzl 的依赖项. yauzl由 vscode 本身使用,而不是由我或我的扩展程序的依赖项使用。
    fd-slicer 上提交了问题(维护者没有兴趣修复此问题, PR to fix)和 yauzl敦促切换到 fork fd-slicer2尚未合并( PR to fix - 考虑投票)。在 vscode 上: buffer warning, yauzl .
    我的节点版本:v15.9.0
    对我来说,这个缓冲区警告目前只是一种刺激,幸运的是,它不会影响我的扩展程序的功能。

    关于visual-studio-code - vscode扩展: deprecation warning `Buffer()` ,如何诊断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63673860/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com