ESLint 2023 年度回顾

2023 年见证了备受期待的新配置系统及更多功能的发布。

2023 年的计划围绕我们的首个主要版本 自 2021 年以来 的 ESLint v9.0.0 展开。大部分时间都用于为发布做准备,构建新的配置系统(扁平配置),并在全年与生态系统沟通其影响。

ESLint v9.0.0 和新配置系统的发布

尽管 v9.0.0 中有 许多更改,但最大的变化是使扁平配置成为默认配置系统。旧的 (eslintrc) 配置仍然可以通过环境变量使用,并且我们发布了 推出计划,概述了从 v8.x 到 v10.x 的过渡将如何进行。

在年底之前,我们 发布了 ESLint v9.0.0-alpha.0。我们预计最终的 v9.0.0 版本将于 2024 年春季发布。

其他变更

  • 弃用格式化规则 - 从 ESLint 的根基出发的重大转变,我们决定正式弃用格式化规则
  • 规则 API 的更改 - 对于那些编写自己规则的人,我们宣布了规则 API 的重要更改,这将为 ESLint 的下一步做好准备:语言插件

更新以支持最新的 ECMAScript 功能

团队花费了大量时间来预测新的 ECMAScript 功能并相应地更新 ESLint。2023 年是一个例外,因为大多数更改与语法无关,因此没有额外的工作。最重要的语法更改是 hashbang 注释,ESLint 已经处理过这个问题以支持 Node.js。

财务回顾

接下来的几个部分深入探讨项目财务状况。所有这些信息都来自 Open Collective 交易列表,Tidelift 付款除外(Tidelift 付款直接从 Tidelift 检索)。由于交易在一整天内陆续到来,我们决定将 2023 年 1 月 1 日午夜 UTC 开始至 2023 年 12 月 31 日 11:59 UTC 结束的交易视为我们的 2023 财年。

收入回顾

2023 年期间,ESLint 从所有收入来源共收到 180,646.53 美元。您可以在下表中看到我们的收入来源明细。

来源 金额
Open Collective $118,381.30
GitHub Sponsors $25,190.89
Tidelift $30,077.84
Carbon Ads $6,380.89
Thanks.dev $524.61
Stackaid.us $91.00
总计 $180,646.53

像往常一样,我们的大部分捐款来自 Open Collective。值得注意的是,我们的网站广告收入较 2022 年下降了约 50%,这与展示广告业务的整体疲软有关。我们将在 2024 年寻找改善网站广告收入的方案。

较新的赞助选项 Thanks.dev 和 Stackaid.us 没有提供太多收入,但都是有趣的想法,我们将继续参与。

我们感谢慷慨捐赠以支持 ESLint 的公司和个人。我们知道过去一年科技行业动荡不安,我们非常感谢仍然决定赞助 ESLint 的每个人。

主要赞助商

我们感谢所有赞助商,无论大小,但我们尤其感谢那些在 2023 年捐赠 1,000 美元或更多的人。这些人在 2023 年共捐赠了 127,377.42 美元,占我们总收入的 70%。

赞助商 2023 年捐赠总额
Chrome Frameworks Fund $24,000.00
Automattic $24,000.00
Salesforce $12,000.00
Airbnb $12,000.00
Indeed $10,000.00
Liftoff $6,000.00
Cybozu $4,976.00
Sentry $4,624.00
American Express $4,467.74
RIDI $4,000.00
ThemeIsle $2,400.00
Icons8 $2,400.00
Discord $2,400.00
Anagram Solver $2,400.00
Ignition $2,400.00
HeroCoders $2,400.00
Transloadit $2,309.68
Nx (by Nrwl) $1,800.00
QuickBooks Tool hub $1,600.00
Yannick Croissant $1,200.00

支出回顾

2023 年,我们在 ESLint 项目上总共花费了 185,646.98 美元。这包括常规维护和开发以及与项目相关的其他费用。有关概述,请参见下表。

类别 金额
维护和开发 -$66,910.37
TSC 津贴 (Tidelift) -$30,077.84
分类和支持 -$10,307.78
技术写作 -$8,155.00
贡献者池 -$4,500.00
健康保险 -$13,447.41
Open Source Collective 费用 -$9,206.88
生态系统/依赖项 -$24,400.00
社区管理 -$15,599.84
支付处理器费用 -$2,854.51
Google Workspace -$187.35
总计 -$185,646.98

提醒一下,“贡献者池”是我们为非 ESLint 团队的贡献者提供的资金,以感谢他们为项目做出的有影响力的贡献。“社区管理”是指管理 ESLint 社区 GitHub 组织所需的持续工作。

您可能会注意到,我们在 2023 年的支出超过了收入。幸运的是,我们保留了大量的储备金,以便能够应对任何意外支出并对冲赞助损失。

支持我们的依赖项和生态系统

2023 年,ESLint 项目向生态系统项目和我们的依赖项捐赠了 24,400.00 美元(在上表中列为“生态系统/依赖项”)。这是我们持续致力于支持对 ESLint 很重要的项目的一部分。

项目 捐款
typescript-eslint -$11,800.00
Ajv -$1,800.00
debug -$1,800.00
eslint-plugin-import -$1,800.00
jsx-eslint -$1,800.00
lint-staged -$1,800.00
Rollup -$1,800.00
Sindre Sorhus -$1,800.00
总计 -$24,400.00

展望 2024 年

一旦 v9.0.0 发布,我们将处于有利位置,可以完成语言插件的工作,然后继续进行我们在 2023 年谈到的 完全重写。很难相信 ESLint 即将迎来第 11 个年头,我们正在做准备,以确保该项目在未来十年内继续对 JavaScript 社区有用。

我们知道 ESLint 是您工具链的重要组成部分,我们感谢您在我们志愿者团队推动项目前进的过程中给予的持续支持。

最新的 ESLint 新闻、案例研究、教程和资源。

Evolving flat config with extends
5 分钟阅读

通过 extends 演进扁平配置

您的 eslint.config.js 文件现在可以使用 extends 来简化您的配置。

ESLint v9.22.0 released
1 分钟阅读

ESLint v9.22.0 发布

我们刚刚推送了 ESLint v9.22.0,这是一个 ESLint 的次要版本升级。此版本添加了一些新功能,并修复了先前版本中发现的几个错误。

ESLint v9.21.0 released
2 分钟阅读

ESLint v9.21.0 发布

我们刚刚推送了 ESLint v9.21.0,这是一个 ESLint 的次要版本升级。此版本添加了一些新功能,并修复了先前版本中发现的几个错误。