V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
• 请不要在回答技术问题时复制粘贴 AI 生成的内容
VDimos
V2EX  ›  程序员

这个 bug 真的是不容易找

  •  
  •   VDimos · 2018-11-29 19:35:00 +08:00 via Android · 3163 次点击
    这是一个创建于 2211 天前的主题,其中的信息可能已经有所发展或是发生改变。
    刚在开发一个页面,关掉终端 install 了一个依赖然后继续 npm start,发现无论如何都报错。
    首先认为是依赖出错了,毕竟刚安装了一个依赖,结果 remove 了这个依赖,依然不行。根据报错内容,是某个依赖的文件不见了,去看了下的确不见了。
    可是我没动过这个依赖呀?
    删除掉 node_modules 重新安装全部依赖,发现依然报错,npm list 出这个出问题的包,发现很多都依赖了这个包。
    这就很玄学了,我想了半天。
    突然,灵机一动,难道是这个包在我开发的时候被作者更新了,而且删掉了包里的某个文件,去 npm 一看历史,这个包的最新的版本(语义化版本),竟然在几分钟前被作者更新了!!!
    更坑爹的是,这个作者完全没有遵守语义化版本规矩,明明是同样的 6.x.x,竟然出现了不兼容 api 的现象!!!
    然后作者赶紧又更新了一个新版本,修复了这个文件。。。
    前后距离几分钟,我正好在这几分钟内更新了这个有问题的版本。。。我的运气可真的是。。
    如果不是突然灵机一动,我估计不会想到这个问题。。。
    11 条回复    2018-11-30 13:31:54 +08:00
    tonylau
        1
    tonylau  
       2018-11-29 19:41:29 +08:00 via Android   ❤️ 1
    灵气逼人
    rabbbit
        2
    rabbbit  
       2018-11-29 19:54:15 +08:00
    经常能遇见这种莫名其妙的 bug
    比如安装包导致别的包没了。啥都没动第二天再启动却报错,只能把整个 node modules 删了重装
    rizon
        3
    rizon  
       2018-11-29 20:11:59 +08:00
    npm 的包管理啊~
    前几天的 flat-map 事件~
    xiangyuecn
        4
    xiangyuecn  
       2018-11-29 20:55:40 +08:00
    "dependencies": {"less": "2.7.3"} 想被升级?门都没有
    Pastsong
        5
    Pastsong  
       2018-11-29 21:11:03 +08:00
    解决办法 用 yarn
    yinanc
        6
    yinanc  
       2018-11-29 21:11:37 +08:00 via iPhone
    可真是个小机灵鬼
    FakeLeung
        7
    FakeLeung  
       2018-11-29 21:19:00 +08:00 via Android
    lock 就为了防止这种情况吧。
    xuanbg
        8
    xuanbg  
       2018-11-29 23:01:48 +08:00
    node 的包依赖真是令人陶醉。。。唯一的解决方案是装个私服,把依赖的包都放私服上,然后手动更新。。。
    Sparetire
        9
    Sparetire  
       2018-11-30 02:21:18 +08:00 via Android
    想起今天写完没测发布一个大版本一气呵成,第二秒觉得不对有 bug 立马重构,结果又是一个 breaking change。。我犹豫了下,还是决定发个小版本吧。。中间大约二十分钟,不过还好没什么人用我写的东西😂
    sharkrice
        10
    sharkrice  
       2018-11-30 08:53:20 +08:00
    直接写死版本号,用得好好的不要经常升级
    duzhihao
        11
    duzhihao  
       2018-11-30 13:31:54 +08:00
    next.js 有个以前有个问题,每次运行的时候都会连服务器检查新版本,有段时间公司网不好,就一直运行不了项目。其实也算自己配置有问题没注意到
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1018 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 21:06 · PVG 05:06 · LAX 13:06 · JFK 16:06
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.