The Ethereum Improvement Proposal repository
以太坊改进提案 (EIPs)
注意:EIPs 存储库最近进行了 ERCs 和 EIPs 的分离。现在可以在https://github.com/ethereum/ercs 访问 ERCs。所有新的 ERCs 以及对现有 ERCs 的更新都应指向这个新的存储库。编辑者为此不便表示歉意。
EIP 项目的目标是标准化并为以太坊本身及其之上的约定提供高质量文档。此存储库跟踪以往和正在进行中的以太坊改进,以以太坊改进提案 (EIPs) 的形式呈现。EIP-1 规定了 EIPs 的发布方式。
状态页面 跟踪并列出 EIPs,可以分为以下几类:
- 核心 EIPs 是对以太坊共识协议的改进。
- 网络 EIPs 指定了以太坊的点到点网络层。
- 接口 EIPs 规范了与以太坊交互的接口,决定了用户和应用如何与区块链互动。
- ERCs 指定了应用层标准,决定了在以太坊上运行的应用程序如何相互交互。
- 元 EIPs 是各种杂项改进,但仍然需要某种形式的共识。
- 信息性 EIPs 是不需要任何形式共识的非标准改进。
在撰写 EIP 之前,想法必须在 Ethereum Magicians 或 Ethereum Research 上彻底讨论。一旦达成共识,请仔细阅读和审阅 EIP-1,该文档描述了 EIP 流程。
请注意,此存储库用于记录标准,而不是帮助实施它们。这些类型的咨询应指向 Ethereum Stack Exchange。对于有关 EIPs 的具体问题和关注,最好在 EIP 的序言中由 discussions-to 标签指明的相关讨论线程上发表评论。
如果您想成为 EIP 编辑者,请阅读 EIP-5069。
推荐引用格式
任何在任何时候达到草案状态的 EIP 的规范网址为 https://eips.ethereum.org/。例如,EIP-1 的规范网址为 https://eips.ethereum.org/EIPS/eip-1。
将未在 https://eips.ethereum.org/ 发布的任何文档视为工作文件。此外,将状态为“草案”、“审查”或“最后征求”的已发布 EIP 视为不完整的草案,并注意其规范可能会发生变化。
验证与自动合并
此存储库中的所有拉取请求在自动合并之前必须通过自动检查:
- eip-review-bot 确定 PRs 何时可以自动合并 [1]
- 使用
eipw[2] 执行 EIP-1 规则 - 使用 HTMLProofer[2:1] 执行 HTML 格式和断链检查
- 使用 CodeSpell[2:2] 执行拼写检查
- 有时会出现误报。当这种情况发生时,请提交一个编辑 .codespell-whitelist 的 PR,并且仅编辑 .codespell-whitelist
- 使用 markdownlint[2:3] 检查 Markdown 最佳实践
请确保将 cargo 的 bin 目录添加到您的环境中(通常是 $HOME/.cargo/bin 在您的 PATH 环境变量中)
cargo install eipw
eipw --config ./config/eipw.toml <INPUT FILE / DIRECTORY>
在本地构建状态页面
安装先决条件
-
打开终端。
-
检查是否已安装 Ruby 3.1.4。后续版本不支持。
ruby --version -
如果未安装 Ruby,请安装 Ruby 3.1.4。
-
安装 Bundler:
gem install bundler -
安装依赖项:
bundle install
构建您的本地 Jekyll 网站
-
打包资源并启动服务器:
bundle exec jekyll serve -
在您的网络浏览器中预览本地 Jekyll 网站,地址为
http://localhost:4000。
更多关于 Jekyll 和 GitHub Pages 的信息请参考这里。