重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要介绍“Python编写的Py-EVM怎么使用”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“Python编写的Py-EVM怎么使用”文章能帮助大家解决问题。
目前成都创新互联已为近千家的企业提供了网站建设、域名、网页空间、网站托管运营、企业网站设计、坡头网站维护等服务,公司将坚持客户导向、应用为本的策略,正道将秉承"和谐、参与、激情"的文化,与客户和合作伙伴齐心协力一起成长,共同发展。
Py-EVM是用Python编写的以太坊虚拟机的新实现。目前github上695个star,正在积极开发中,但正在通过以太坊/测试提供的测试套件快速推进。我们感谢有Vitalik和现有的PyEthereum代码,使得我们有的快速进步,因为许多设计决策都受到启发,甚至直接从PyEthereum代码库移植。
Py-EVM旨在最终成为EVM的事实Python实现,为公共和私有链提供广泛的用例。开发将侧重于创建具有良好定义的API的EVM,友好且易于理解的文档,可作为功能齐全的主网节点运行。
特别是Py-EVM目标旨在:
提供是一种使用最广泛使用和理解的语言之一Python的EVM的示例实现。
为客户提供低级API,以构建完整或轻量级节点。
易于理解和修改。
高度灵活地支持研究以及私有区块链等替代用例。
虽然Py-EVM提供EVM的低级API,但它并不旨在直接实现完整节点或轻节点。
我们提供了一个基于Py-EVM的称为Trinity的完整节点的基本实现。
将来可能会有基于Py-EVM的替代客户端。
第1步:Alpha发布
该计划首先是适用于测试目的的MVP,alpha级发布。我们将寻找早期采用者,以提供有关我们的架构和API选择的反馈,以及一般反馈和错误发现。
Py-EVM依赖于所有客户端的常见测试的子模块,因此你需要使用--recursive标记克隆repo。例如:
git clone --recursive git@github.com:ethereum/py-evm.git
Py-EVM需要Python 3。通常,保证干净的Python 3环境的最佳方法是使用virtualenv,例如:
# once: $ virtualenv -p python3 venv # each session: $ . venv/bin/activate
然后通过以下方式安装所需的python包:
pip install -e .[dev]
可以使用以下命令运行测试:
pytest
或者你可以安装tox
来运行完整的测试套件。
需要Pandoc才能将markdown README转换为正确的格式,以便在pypi上正确呈现。
对于类似Debian的系统:
apt install pandoc
在OSX上:
brew install pandoc
要发布新版本:
bumpversion $$VERSION_PART_TO_BUMP$$ git push && git push --tags make release
去新建一个docker镜像:
make create-docker-image version=
默认情况下,这将创建一个新镜像,其中有两个标记指向它:
ethereum/trinity:
:(显示版本)
ethereum/trinity:latest
:(最新的,直到用未来的“最新”覆盖)
然后,推送到docker hub。
docker push ethereum/trinity:# the following may be left out if we were pushing a patch for an older version docker push ethereum/trinity:latest
此repo的版本格式为{major}.{minor}.{patch}
表示stable,{patch}.{minor}.{patch}-{stage}.{devnum}
表示unstable(stage可以是alpha或beta))。
要在发布下一个版本,请使用bumpversion并指定要调整的部分,例如bumpversion minor或bumpversion devnum。
如果你处于beta版,则bumpversion stage阶段将切换为稳定版。
要在当前版本稳定时发出不稳定版本,请明确指定新版本,例如bumpversion --new-version 4.0.0-alpha.1 devnum
关于“Python编写的Py-EVM怎么使用”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注创新互联行业资讯频道,小编每天都会为大家更新不同的知识点。