前段时间闹得沸沸扬扬的“faker.js删库跑路”事件终于有了后续。目前由8位开发者组成的团队决定开始维护一个新的项目faker-js/faker。
这意味着,原作者已经被完全踢出该项目。
事件起因Faker.js是一个非常流行的Node.js工具库,它提供了各种类型的模拟数据,被广泛用于开发调试。在npm上,faker.js每周下载量接近万,不仅中小型公司在用,许多大型公司也在使用它。
该开源项目由一名叫Marak的作者创造,并免费维护了十余年时间。
然而年1月5日,很多开发者发现,自己的应用程序出现了很多乱码,经过一番调查才发现,得出了一个令人震惊的结果,Faker.js项目竟然被原作者删除了。
该事件在技术圈引起了非常大的争议。
一方观点认为,作为一个知名的开源项目,作者要花费大量的精力去维护它,却几乎没有获得什么经济利益,对于作者删除Faker.js的行为表示理解,同时痛斥那些有实力,又只想白嫖的公司。
另一方观点认为,虽然Faker.js是一个开源项目,但作者在没有提前通知的情况下,突然“删库跑路”是一种极其不负责任的行为。此外,该行为也会让整个开源社区恐慌,特别是由个人进行维护的项目,一旦被作者删除,使用者只能耗费大量的人力物力去解决。
不论世人对这一行为如何评价,Faker.js被删已经成为既定的事实。
被团队接手由于该开源项目被删除产生了极大的影响,很多开发者纷纷寻求解决之道。近日,8名开发者组成了一个团队,决定维护一个新的项目fakeer-js/faker。
维护团队表示经过他们的努力,faker.js主包被删除之后,依然可以在产品中使用faker。维护团队所做出的努力包括:
在faker-js/faker项目下为新的Faker包创建了一个GitHuborg;
在npm上faker-js/faker发布了所有以前的消息Faker版本;
发布了6Alpha版本;
几乎完成了向TypeScript的迁移,因此DefinitelyTyped不再需要维护其外部types/faker包;
创建了一个公共Twitter帐号,用于社区交流;
发布了首个官方Faker文档网站
清理了Prettier、CI、NetlifyDeployPreviews和GitHubActions等工具;
完成了大量的问题分类和PRreview。
从项目仓库star数增长情况来看,新的faker.js项目已经得到了很多开发者的认可。
开源争议faker.js删库事件引起了关于开源的争议。很多个人开发者将自己的心血开源出去,并一直免费维护,却没有得到应用的回报,如果该项目出现漏洞,可能还要背负骂名。
去年年末,开源项目log4j2发现存在远程代码执行漏洞,该漏洞被称为有史以来最严重的漏洞之一。因为该漏洞,许多人开始对作者进行攻击,认为其学艺不精,应该为该漏洞所造成的损失负责。
然而log4j2作者并没有因为该项目获得任何工资收入,一直无私地维护该项目,本来就白嫖,如果出了问题去骂作者,显然不可取。
当然的开源模式,的确存在一些问题,这些问题很大程度上阻碍了开源项目的发展,迫切需要解决。