微博上说 npm 咋滴了?

2016-03-24 00:00:33 +08:00
 wjfz
http://weibo.com/5042408187/DnCD72Bev

后端随便一个语言个个比我年纪大。
前端近几年出了很多搞不懂的东西,逼格一下子高了许多。
可有些东西甚至还没来及看就已经被摒弃了。。

实在是搞不懂。
9697 次点击
所在节点    Node.js
75 条回复
zhangchioulin
2016-03-24 03:47:30 +08:00
让我安安静静做一个 iOS 的美男子。。。
@yangxin0
Slienc7
2016-03-24 07:25:44 +08:00
@jybox 据某新闻说, NPM 已经 un-unpublish 那个包含 left-pad 的包?
kn007
2016-03-24 07:41:14 +08:00
@xgowex 是作者吧。
Slienc7
2016-03-24 07:58:08 +08:00
zhujinliang
2016-03-24 08:13:06 +08:00
我一直对 node 这帮人搞不懂,一个 leftpad 也有必要做成包?两三行代码的事,你需要这个功能为什么不是写在 util.js 里而是引入个别人的包?
kn007
2016-03-24 08:16:24 +08:00
@xgowex A couple of hours ago, Azer Koçulu unpublished more than 250 of his modules from NPM
Unfortunately, one of those dependencies was left-pad.

Azer Koçulu 是作者吧?
Slienc7
2016-03-24 08:22:20 +08:00
@kn007 "un-un" <-> "un" 我们俩说得并不是同一个。
ChefIsAwesome
2016-03-24 08:27:20 +08:00
66beta
2016-03-24 08:34:13 +08:00
npm 就是包太多了,各种依赖,当然 php 的 composer 也一样
很多功能就应该集成到内核里去

去中心化的包管理器,也有弊端,没有统一的维护啊
yyfearth
2016-03-24 08:53:27 +08:00
@66beta 任何的包管理器都是这样啊
所以才会有很多人会把各种依赖直接手动包含到项目里面

比如 Java 和 Android 很多人都喜欢直接把 Jar 包包含在项目里面
甚至直接提交的代码库里面
NodeJs 也有不少人会直接把 node_modules 直接包含在代码库里面
janxin
2016-03-24 08:55:41 +08:00
nodejs 依赖问题终于爆发了吗…
janxin
2016-03-24 08:57:57 +08:00
@yyfearth 这样的问题不是代码体积几何级膨胀吗
dtysky
2016-03-24 09:04:01 +08:00
看来我能自己造的轮子就不随便用 lib 还是有道理的。。。不过最麻烦的还是构建工具
Phariel
2016-03-24 09:04:17 +08:00
讲道理 我认为 npm 就不应该有 unpublish 的机制 这次的事就是个教训 得轮子者岂不是掌控一切?
rannnn
2016-03-24 09:07:58 +08:00
LOL 昨天公司所有 build 全是红的, notice 乱飞,好不壮观
abcdabcd987
2016-03-24 09:14:10 +08:00
事件梳理(按时间序):一致力于开源社区的程序员 Azer 的某 npm module 因为和一公司重名,被 npm 强行更换了所有权,于是他愤然从 npm 中撤下了所有自己的 module ,其中包括只有 11 行代码的 left-pad 。于是,把它作为依赖的众多库纷纷编译失败,其中包括 React, Babel 等。有人写了篇文章批评现在程序员都不懂得写程序了吗?在 HN 上引发热议。

https://medium.com/@azerbike/i-ve-just-liberated-my-modules-9045c06be67c#.403drisws

https://news.ycombinator.com/item?id=11348798
est
2016-03-24 09:19:55 +08:00
1. npm 包数量远超 PYPI, CPAN 。原来是通过这种方式。。。

2. theregister 居然都能报道这新闻,国内媒体汗颜啊。
yyfearth
2016-03-24 09:21:19 +08:00
@Phariel 其实不一定有用
如果不可以 unpublish
作者也可以随时换上一个爆掉的版本 并且标示为版本兼容
比如大家用了 “~1.0.0 ” 然后他出个 1.0.1 兼容 1.0.0 那么默认情况下 结果也是一样的
除非有人手动锁定版本 “ 1.0.0 ” 但是 我记得 npm 允许对已发布的版本做强行修正
比如 发一个爆掉的版本 仍然是 1.0.0
那么你也没办法了

除非像 svn 那样 完全禁止修改历史
JenJieJu
2016-03-24 09:31:11 +08:00
咱圈真乱。。。。。。
youxiachai
2016-03-24 09:38:37 +08:00
@zhujinliang 怎么说呢。。 unix 的哲学问题

这次的问题。。不是 left-pad (作者还有其他 200 多个库呢,而且作者也是早期 npm 活跃用户。。),不是说代码少。。这个库就没价值(这个是一个价值观的问题,如果大家都是可信的,我又何必写一个 util 自己维护呢?)。这次的危机算是一个潜在问题的大爆发

怎么说呢。这次的危机到今天才爆发。。可以说明之前大家还是挺自律的。。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/265909

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX