删库跑路的「faker.js」又能用了,8位开发者维护新项目

简介: 删库跑路的「faker.js」又能用了,8位开发者维护新项目
上周删库跑路的「faker.js」现在有了一个可用的版本。


上周,项目作者 Marak Squires 主动删除了开源库「faker.js」的所有代码,导致数千个应用程序无限输出乱码。此事迅速掀起开源社区热议。

由于此事给开源社区造成了巨大损失,为了恢复使用 Faker 的功能,现在一个由 8 位开发者组成的团队决定维护一个新项目 faker-js/faker。


项目地址:https://github.com/faker-js/faker

维护团队表示经过他们的努力,「faker.js」主包被删除之后依然可以在产品中使用 Faker。目前维护团队已做出的努力包括:

在 faker-js/faker 项目下为新的 Faker 包创建了一个 GitHub org;

在 npm 上 faker-js/faker 中发布了所有以前的 Faker 版本;

发布了 6 Alpha 版本;

几乎完成了向 TypeScript 的迁移,因此 DefinitelyTyped 不再需要维护其外部 types/faker 包;

创建了一个公共 Twitter 帐号,用于社区交流;

发布了首个官方 Faker 文档网站:https://fakerjs.dev/

清理了 Prettier、CI、Netlify Deploy Previews 和 GitHub Actions 等工具;

完成了大量问题分类和 PR review。



值得注意的是,在此之前,Faker 从未有过官方文档网站,只有由 Jeff Beltran 维护了 3 年的非官方 faker.js 文档。而此次官方文档正是基于 Jeff Beltran 的非官方文档创建的。此外,该维护团队已经与社区管理平台 Open Collective 取得联系,并讨论了该项目的过渡计划。

该维护团队计划全面扩展和持续开发 Faker,并将制定一套完整的路线图,预计将包含如下改进:

  • 支持 ESM;
  • 将 Browserify 转变为 Rollup/Vite;
  • 改进测试基础设施;
  • 提供 typegen 文档;
  • 保持与 Faker 生态系统的现有维护者进行互动;
  • 文档中提供交互式 Playground;
  • ......


此外,该研究团队表示 Faker 项目的原始赞助商将持续为新项目提供支持。

开源社区内的开发者们对于此次维护基本持支持态度。根据该维护团队统计的数据,在项目基本完成合并后,新项目的 star 量一路攀升。

图源:https://twitter.com/faker_js/status/1481918305669627905


但也有人认为这种「打包式」维护,似乎是在利用 faker.js 的原始项目谋取利益:


同时也有人从开源角度分析道:「这说明没有人是不可替代的。开源本不该用于谋生,只能是开发者用额外的时间和热情去做出贡献。」


也许在「开源」这件事上,我们还有很多值得讨论和改进的地方。但毫无疑问,开源精神是值得尊重和发扬的。

参考链接:

https://news.ycombinator.com/item?id=29961274
https://fakerjs.dev/update.html#who-are-the-current-maintainers
https://developers.slashdot.org/story/22/01/16/2357203/library-intentionally-corrupted-by-developer-relaunches-as-a-community-driven-project

相关文章
|
2月前
|
JavaScript 前端开发 Python
用python执行js代码:PyExecJS库
文章讲述了如何使用PyExecJS库在Python环境中执行JavaScript代码,并提供了安装指南和示例代码。
109 1
用python执行js代码:PyExecJS库
|
10天前
|
JavaScript 前端开发 搜索推荐
Moment.js、Day.js、Miment,日期时间库怎么选?
【10月更文挑战第29天】如果你需要一个功能强大、插件丰富的日期时间库,并且对性能要求不是特别苛刻,Moment.js是一个不错的选择;如果你追求极致的轻量级和高性能,那么Day.js可能更适合你;而如果你有一些特定的日期时间处理需求,并且希望在性能和功能之间取得平衡,Miment也是可以考虑的。
|
15天前
|
存储 JavaScript 前端开发
decimal.js库的安装和使用方法
【10月更文挑战第24天】decimal.js 是一个非常实用的高精度计算库,通过合理的安装和使用,可以在 JavaScript 中实现精确的数值计算和处理。你可以根据具体的需求和项目情况,灵活运用该库来解决数字精度丢失的问题。
|
22天前
|
JavaScript 测试技术 API
跟随通义灵码一步步升级vue2(js)项目到vue3版本
Vue 3 相较于 Vue 2 在性能、特性和开发体验上都有显著提升。本文介绍了如何利用通义灵码逐步将 Vue 2 项目升级到 Vue 3,包括备份项目、了解新特性、选择升级方式、升级依赖、迁移组件和全局 API、调整测试代码等步骤,并提供了注意事项和常见问题的解决方案。
|
2月前
|
算法 JavaScript 前端开发
第一个算法项目 | JS实现并查集迷宫算法Demo学习
本文是关于使用JavaScript实现并查集迷宫算法的中国象棋demo的学习记录,包括项目运行方法、知识点梳理、代码赏析以及相关CSS样式表文件的介绍。
第一个算法项目 | JS实现并查集迷宫算法Demo学习
|
26天前
|
JavaScript 前端开发 测试技术
JavaScript与TypeScript:为何TypeScript成为大型项目的首选
JavaScript与TypeScript:为何TypeScript成为大型项目的首选
28 1
|
26天前
|
人工智能 JavaScript 网络安全
ToB项目身份认证AD集成(三完):利用ldap.js实现与windows AD对接实现用户搜索、认证、密码修改等功能 - 以及针对中文转义问题的补丁方法
本文详细介绍了如何使用 `ldapjs` 库在 Node.js 中实现与 Windows AD 的交互,包括用户搜索、身份验证、密码修改和重置等功能。通过创建 `LdapService` 类,提供了与 AD 服务器通信的完整解决方案,同时解决了中文字段在 LDAP 操作中被转义的问题。
|
1月前
|
JavaScript 前端开发 开发者
jQuery:JavaScript库的瑰宝
jQuery:JavaScript库的瑰宝
41 3
|
2月前
vite.config.js中vite.defineConfig is not defined以及创建最新版本的vite项目
本文讨论了在配置Vite项目时遇到的`vite.defineConfig is not defined`错误,这通常是由于缺少必要的导入语句导致的。文章还涉及了如何创建最新版本的Vite项目以及如何处理`configEnv is not defined`的问题。
102 3
vite.config.js中vite.defineConfig is not defined以及创建最新版本的vite项目
|
28天前
|
存储 JavaScript 前端开发
Vue.js项目中全面解析定义全局变量的常用方法与技巧
Vue.js项目中全面解析定义全局变量的常用方法与技巧
36 0