2023 年度 npm 回顾

Socket 发文对包管理器 npm 在 2023 年的表现进行了回顾。主要聚焦于生态系统中的一些主要趋势、npm 在过去一年中的发展情况,以及深入探讨 npm 在这一年中所面临的一些恶意软件和垃圾邮件问题等等。

Socket 是一家提供扫描工具来检测开源代码中安全漏洞的初创公司,旨在保护应用程序免受潜伏在开源供应链中的恶意依赖项的影响。

文中指出,截至 2023 年底,Socket 已经从 npm 注册表中摄取了来自近 90 万个维护者的近 40 万个软件包。npm 的官方统计数据则显示,到 2023 年底,实时包数量超过 250 万个,每月下载量超过 1840 亿次。250 万和 400 万的数据差异表明,许多软件包最终都会从平台中删除。

在 npm 上发布软件包不需要走审查流程,因此操作起来十分简单;也正因此,npm 注册表拥有一个“比其他语言生态系统存在更多恶意软件包”的名声。但 Socket 指出,根据其在 Python 生态系统中的一些发现表明,有关 npm 的这一认知并不完全正确。

数据显示,2023 年 npm 注册表共发布了 10,518,566 个软件包版本,还有 1,241,583 个未发布版本。其中 3 月和 4 月更新的软件包最多,可能是源于 2023 年 3 月和 4 月发生的大规模以 John Wick 为主题的垃圾邮件和网络钓鱼活动。

2023 年共新增了 165,486 个维护者,按照这一增长速度,预计将在 2024 年突破 100 万软件包维护者大关。

Socket 还统计了发布和使用最多的软件包类型,并依赖包的数量显示了排名前 50 的 npm 软件包:

一个明显的现象是,TypeScript 已经变得非常流行。排在第二位的是 React,这一结果也并不令人意外;因为它拥有庞大的组件生态系统,且在生态系统中占据主导地位。榜单中唯一的前端库是 Vue.js,Angular (@angular/core) 则出现在第 62 位。

按照每周下载量来计算,排名前 20 的 npm 软件包有:

其中,多产的开源开发者和维护者 Sindre Sorhus 在此榜单中占有重要地位,榜单中一半的软件包都与其有关。

2023 年首次发布的软件包角度看,Top 20 结果如下:

值得一提的是,Socket AI 扫描了 npm 软件包内的数百万个文件发现,2023 年有五千多个软件包被识别为恶意软件,不过这些软件包已经被删除。除了恶意软件的增加之外,npm 还面临多次垃圾邮件活动。

还有一些有趣的发现包括:

更多详情可查看官方博客。 

优秀的个人博客,低调大师

微信关注我们

原文链接:https://www.oschina.net/news/275280/socket-2023-npm-retrospective

转载内容版权归作者及来源网站所有!

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

相关文章

发表评论

资源下载

更多资源
Mario,低调大师唯一一个Java游戏作品

Mario,低调大师唯一一个Java游戏作品

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Eclipse(集成开发环境)

Eclipse(集成开发环境)

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Sublime Text 一个代码编辑器

Sublime Text 一个代码编辑器

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。