一名开发者损坏自己的开源库,破坏了成千上万个应用程序:以抗议大公司免费使用其代码库的行径

2022-03-18 18:31:16 浏览数 (1)

•一名开发者损坏了自己编写的两个广泛使用的开源代码库,此举明显是一种抗议行为。

•每个库已下载数百万人次,用于成千上万个软件项目。

•这名开发者之前炮轰过大公司不付钱就使用免费工具的行径。

据报道,一名编写了两个广泛使用的开源代码库的程序员有意损坏了代码库,以抗议大公司免费使用其代码库的行径。

科技新闻网站Bleeping Computer最先报道,因而,使用修改后代码的一些用户看到他们的项目崩溃或屏幕输出内容令人费解。

这两个库都托管在GitHub的开源存储库NPM上,该存储库似乎已暂停这名程序员的帐户。GitHub是微软旗下的软件开发平台,许多大公司使用该平台来组织管理和共享计算机代码。

NPM已回复到fakker.js软件包的以前版本,Github已暂停我用来访问所有公开和私有项目的帐户。我有数百个项目。

一个库名为“Colors.js”,每周下载量超过2300万次,近19000个项目使用它。另一个库名为“Faker.js”,每周下载量为240万次,超过2500个项目使用它。

Faker.js和Colors.js之类的库本质上相当于开发人员的快捷方式,那样他们就可以迅速将基本功能添加到其开发的软件中,无需花时间为每个新项目重新发明轮子。

在许多情况下,开发人员将他们的软件设置为自动下载和使用这些库的最新版本,这些库由GitHub的NPM等服务托管。

但是一旦出现了乱子(就像本文中发生的事情),可能会导致依赖该库的任何项目出现连锁反应式的故障。2016年,一名程序员在删除了一个由11行代码组成的NPM软件包后,互联网的底层软件基本上坏掉。

AWS云开发工具包(Cloud Development Kit)的用户披露的屏幕截图显示,他们的编程终端显示“LIBERTY LIBERTY LIBERTY”这个短语输出了三遍,后面是一堆看不懂的文本字符。

这些库背后的那名程序员还发布了关于Colors库的声明,声明中含有讽刺的信息,而其他用户寻求帮助,以解决该库在他们的项目中造成的问题。

这名程序员写道:“尽管我们很想回复到以前的工作版本,但我们强烈认为我们最好能真正解决这个实际的问题,而不是及时回复。”

有人留言称此举是“依赖项恐怖主义行动”(dependency terrorism),指的是下游项目依赖出于好意而维护的代码库。

Bleeping Computer挖出了这名程序员较早前写的一篇帖子,该帖子可能表明了此举的潜在动机。

这位开发者在2020年曾写道:“我不再用我的免费工作来支持《财富》500强(及其他小型公司)。趁这个机会给我发一份年薪六位数的合同,或者fork项目,让别人来做开发和维护工作。”

这起事件暴露了免费开发开源软件的独立开发者与将这些软件集成到商业应用程序和服务中牟利的大科技公司之间一直存在的紧张关系。

Faker.js ReadMe页面(https://www.npmjs.com/package/faker)显示,目前版本号为6.6.6,文本显示“Aaron Swartz到底发生了什么事?”可能是指最近坊间盛传的有关Reddit的这位联合创始人在2013年自杀的QAnon阴谋论。

0 人点赞