https://code.facebook.com/posts/1840075619545360
可能取代 npm ? 有几个特性:
- 通过 lockfile 锁定了包的版本和 node_modules 文件夹的结构
- 更快的安装
- 兼容 npm 和 bower 的 workflow
- 对已安装包的 licenses 进行约束
- 给 build 工具暴露出更好用的 API
- 更好读、好看的命令行输出
https://code.facebook.com/posts/1840075619545360
可能取代 npm ? 有几个特性:
|
1
God bless 2016
|
|
ETiVOct 12, 2016
3
FB 服务器都被墙了吧, 23333 ……这玩意儿在国内能流行起来?
|
|
atanOct 12, 2016
4
Bootstrap 还是 twitter 的呢,不照样流行嘛,关键看是不是好用
|
|
kfllOct 12, 2016 via iPhone
6
对 npm 有意见很久了,明天看看
|
|
xwartzOct 12, 2016
7
这个必然会火的
|
|
8
快如风,稳如狗。。 npm 💊
|
|
run2Oct 12, 2016
9
是这个么? https://github.com/yarnpkg/yarn
他们的 license 里都去掉 facebook 的名字 看样子是要独立发展啊 remove patents and facebook license headers https://github.com/yarnpkg/yarn/commit/46e8be5a9b5e692ac9307a79342d0c1e03ffc3da |
|
ZhaoMiingOct 12, 2016
10
用的还是 npm 的源只是替换了 cli ,不过光是 lockfile 和全局缓存估计就足以让人抛弃 npm 了吧。
|
|
11
那篇 <在 2016 年学 JavaScript 是一种什么样的体验> 又可以加一段了...
npm 仓库是什么 是一个公开的仓库,用于放置可依赖的模块。不过现在已经是 2016 年了, 没有人用 NPM 了...现在大家都用 Yarn 了. Yarn 又是什么? 是 Facebook 的 Node 模块管理器 好吧,我知道了,所以我应该用 Yarn 来安装依赖。 对的。我举个例子吧,如果你要使用 React ,你直接用 Yarn 安装 React ,然后在代码里导入 React 就可以了。大部分 JS 库都能这么安装。 .................. May the force be with Front-End development.. |
|
kitalphajOct 12, 2016
12
yarn.中国 域名还没注册,同志们速度了
|
|
okampferOct 12, 2016
13
前端换得太快了吧?????
|
|
scnaceOct 12, 2016
14
May the force be with Front-End development..
|
|
cismousOct 12, 2016
15
https://github.com/yarnpkg/yarn/issues/513
这个 issue 没解决,暂时还用不了 |
|
SourceManOct 12, 2016
16
坐等 cYarn
|
|
17
|
|
btjokerOct 12, 2016
18
某宝 Yam 源赶赴前线中?
|
|
zhqyOct 12, 2016
19
try cnpm
|
|
fanyerOct 12, 2016
20
```
Yarn wouldn't exist if it wasn't for excellent prior art. Yarn has been inspired by the following projects: Bundler Cargo npm ``` 这 3 个货加上 yarn ,全都和 wycats 大神的痕迹,其实我是想来安利一波 cargo 和 rust 的 |
|
qweweretrt515Oct 12, 2016
21
有大神能解释下这个意思吗? [通过 lockfile 锁定了包的版本和 node_modules 文件夹的结构]
|
|
22
@qweweretrt515 参考 https://yarnpkg.com/en/docs/yarn-lock
就是说会生成个 yarn.lock 文件,这个文件应该放入版本管理中。它比 package.json 更具体,指定了版本号、包的 hash 等等,可以确保在别的地方安装时仍然下到同样的包,而不是别的版本。 |
|
imswingOct 12, 2016
23
可消停点吧,天呐。
|
|
lei40251Oct 12, 2016
24
为什么我下载了一个 yarn-0.15.0.msi win10 不让我装啊?说是未识别的应用。
|
|
xingoOct 12, 2016
25
@lei40251 我记得有更多信息,点一下然后就可以仍然安装,大概 msi 没签名? yarn 也可以通过 npm install --global 的方式安装,可以看 others 篇
|
|
xingoOct 12, 2016
26
说错不是 others 篇,是 Alternatives 篇
|
|
SasasuOct 12, 2016 via Android
27
Yet Another Reliable NPM
|
|
cheetahOct 12, 2016
28
拜一下 wycats 大神
|
|
xcatliuOct 12, 2016
29
|
|
joyeuOct 12, 2016
30
怎么和 Hadoop YARN 重名呢
|
|
xi_linOct 12, 2016
31
May the force be with Front-End development..
|
|
BiwoodOct 12, 2016
32
不知道有没有解决 npm 的重复依赖问题, npm 项目的安装包太碎片化了,一个项目需要依赖几百个包,还有大量的重复包,非常浪费空间
|
|
sodateaOct 12, 2016
35
@xcatliu https://github.com/cyarnpkg/cyarn 为什么是自己重新 push 而不是 fork 过来的项目?
|
|
crystoneOct 12, 2016
37
静静的看你们被虐
|
|
xcatliuOct 12, 2016
40
|
|
xcatliuOct 12, 2016
43
@ynyounuo 确实,我看漏了,多谢
@xwartz https://yarnpkg.com/en/docs/install 在 Altermatives 标签里, npm install -g yarn |
|
xwartzOct 12, 2016
44
|
|
45
@xcatliu GitHub 的逻辑是除非你的发起 PR 合并回主干了,不然 fork 项目不能算成自己的贡献。或者如果你有充分的理由说明这个项目是独立项目,不需要合并回主干,那也可以联系 GitHub 官方支持让他们来做 detach 操作。
几乎什么都不改就把 fork 项目放到自己的个人主页宣传感觉不是很好的风气…… |
|
xcatliuOct 12, 2016
47
@sodatea 原来如此,等我先研究一下,看改动需不需要合并到主干。如果不需要合并的话,我会在醒目位置注明源仓库的,比如: https://github.com/xcatliu/jekyllcn
|
|
qweweretrt515Oct 12, 2016
48
npm 有个大问题, 一个项目,有 N 个包,文件数量有几十万个,吓死人
|
|
youxiachaiOct 12, 2016
49
@Biwood 没用 npm3?
|
|
catoncatOct 12, 2016
50
注册了个 yarnjs.com 感觉学费米
|
|
jukkaOct 13, 2016
52
may god bless the front-end developer.
|
|
evanmengOct 13, 2016
53
@xcatliu
不是,他们最近刚刚改了会自动把你当前 OS 相关的 installation guide 放到最前面。 https://github.com/yarnpkg/website/commit/93d7df56fcc28bc3914eec1a79902d19e9b312db 在那之前你进去最先看到的其实是用 npm 安装的 guide 。 |
|
TroevilOct 13, 2016
54
坐等 cyarn , npm 重复依赖的问题确实严重 ,每次 copy node_modules 目录 ,机器风扇就开始狂转
|
|
xcatliuOct 13, 2016
55
@Geeker 多谢提醒,本来是 fork 的,但是无法放到个人主页里面。我不希望将来有人贡献之后想放到他的个人主页里面也放不进去,所以重新 push 了一遍。
另外,它的开源协议是 BSD-2-Clause ,我认为这样子重新发布完全没有问题。况且我会标注源仓库的。 引用: BSD 开源协议是一个给于使用者很大自由的协议。 基本上使用者可以”为所欲为”,可以自由的使用,修改源代码,也可以将修改后的代码作为开源或者专有软件再发布。 但”为所欲为”的前提当你发布使用了 BSD 协议的代码,或者以 BSD 协议代码为基础做二次开发自己的产品时,需要满足三个条件: 1 、如果再发布的产品中包含源代码,则在源代码中必须带有原来代码中的 BSD 协议。 2 、如果再发布的只是二进制类库 /软件,则需要在类库 /软件的文档和版权声明中包含原来代码中的 BSD 协议。 3 、不可以用开源代码的作者 /机构名字和原来产品的名字做市场推广。 BSD 代码鼓励代码共享,但需要尊重代码作者的著作权。 BSD 由于允许使用者修改和重新发布代码,也允许使用或在 BSD 代码上开发商业软件发布和销售,因此是对商业集成很友好的协议。 而很多的公司企业在选用开源产品的时候都首选 BSD 协议,因为可以完全控制这些第三方的代码,在必要的时候可以修改或者二次开发。 |
|
xcatliuOct 13, 2016
56
@sodatea @Geeker 我改成了 Forked 的了,移动到了我的 account 下,这样的话应该贡献者都可以放到个人主页里面的 pinned repos 了。感谢你们的建议。
另外已发布 CYarn : https://www.v2ex.com/t/312455 |