问题标签 [brownie]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
289 浏览

ethereum - 试图编译合约但得到“ParserError: Source "@openzeppelin/contracts/token/ERC1155/IERC1155.sol" not found: File not found.”

我正在尝试编译一份合同,以便我可以启动巧克力蛋糕控制台,但我不断收到我尝试导入的合同的错误。

我将如何解决这个问题?非常感激!

0 投票
1 回答
156 浏览

python - Brownie 不导出 .env 变量

我正在关注一个在 python 中使用 brownie 来部署合同的教程。如果要将合约部署到测试网(在本例中为 rinkeby),程序应该从环境变量中获取私钥,但是当尝试运行 deploy.py 脚本时:

我收到以下错误:

关于此错误的一些背景信息:我在与 brownie-config.yml 相同的目录中有一个 .env 文件,其中包含以下内容:

其中 {my_private_key} 是我的十六进制实际私钥。

brownie-config.yml 看起来像这样:

据我了解,brownie 应该使用 .env 文件将密钥导出为环境变量,然后将其放入某个 brownie 配置文件(可能是在编译代码时?),当合约部署时,brownie 会在其中查找它。如果我在执行代码之前手动导出此环境变量,它也不会改变任何内容。

PS:似乎导致错误的功能:

0 投票
1 回答
83 浏览

python - 用布朗尼运行 python 文件

我不知道如何处理这个问题,可能是安装错误的东西,idk,正在寻找你的帮助

在此处输入图像描述

0 投票
0 回答
180 浏览

python - 布朗尼安装在 python 3 中不起作用

我使用以下命令安装了巧克力蛋糕

安装成功,但是当我尝试检查巧克力蛋糕的版本时,它没有按预期工作。出现以下错误

0 投票
2 回答
321 浏览

brownie - brownie.exceptions.RPCRequestError:Web3 未连接

我正在尝试使用 brownie 部署 helloWorld.sol。当我尝试运行brownie run scripts/deploy.py时出现以下错误。

正在终止本地 RPC 客户端...线程 Thread-5 中的异常:回溯(最后一次调用):文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\urllib3\connection .py”,第 175 行,在 _new_conn (self._dns_host, self.port), self.timeout, **extra_kw 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages \urllib3\util\connection.py”,第 96 行,在 create_connection 中
引发错误文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\urllib3\util\connection.py” ,第 86 行,在 create_connection
sock.connect(sa) ConnectionRefusedError: [WinError 10061] 无法建立连接,因为目标机器主动拒绝了它

在处理上述异常的过程中,又出现了一个异常:

回溯(最后一次调用):文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\urllib3\connectionpool.py”,第 706 行,在 urlopen chunked=chunked,文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\urllib3\connectionpool.py”,第 394 行,在 _make_request conn.request(method, url, **httplib_request_kw) 文件中” C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\urllib3\connection.py",第 239 行,在请求 super(HTTPConnection, self).request(method, url, body= body, headers=headers) 文件“C:\Program Files\Python37\lib\http\client.py”,第 1229 行,在请求中 self._send_request(method, url, body, headers, encode_chunked) 文件“C:\Program Files\Python37\lib\http\client.py",第 1275 行,在 _send_request self.endheaders(body,encode_chunked=encode_chunked) 文件“C:\Program Files\Python37\lib\http\client.py”,第 1224 行,在 endheaders self._send_output(message_body, encode_chunked=encode_chunked) 文件“C:\Program Files\Python37\lib\ http\client.py”,第 1016 行,在 _send_output self.send(msg) 文件“C:\Program Files\Python37\lib\http\client.py”,第 956 行,在发送 self.connect() 文件“C :\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\urllib3\connection.py”,第 205 行,在 connect conn = self._new_conn() 文件“C:\Users\mmasn. local\pipx\venvs\eth-brownie\lib\site-packages\urllib3\connection.py”,第 187 行,在 _new_conn self 中,“无法建立新连接:%s”% e urllib3.exceptions.NewConnectionError: < urllib3.connection.HTTPConnection 对象位于 0x0000021DAA2A0F28>:无法建立新连接:[WinError 10061] 由于目标机器主动拒绝,无法建立连接

在处理上述异常的过程中,又出现了一个异常:

回溯(最后一次调用):文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\requests\adapters.py”,第 449 行,在发送超时=超时文件中C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\urllib3\connectionpool.py",第 756 行,在 urlopen 方法中,url,error=e,_pool=self,_stacktrace=sys .exc_info()[2] 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\urllib3\util\retry.py”,第 574 行,增量提高 MaxRetryError(_pool , url, error or ResponseError(cause)) urllib3.exceptions.MaxRetryError: HTTPConnectionPool(host='127.0.0.1', port=8545): url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection)位于 0x0000021DAA2A0F28> 的对象:无法建立新连接:[WinError 10061] 由于目标机器主动拒绝,无法建立连接'))

在处理上述异常的过程中,又出现了一个异常:

Traceback(最近一次调用最后一次):文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\brownie\network\rpc\ganache.py”,第 82 行,在 _request 响应中= web3.provider.make_request(method, args) # 类型:忽略文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\web3\providers\rpc.py”,行91,在 make_request **self.get_request_kwargs() 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\web3_utils\request.py”,第 48 行,在 make_post_request 响应 = session.post(endpoint_uri, data=data, *args, **kwargs) # type: ignore File "C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\requests\sessions. py",第 590 行,在 post 中返回 self.request('POST', url, data=data, json=json, **kwargs) File "C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\requests\sessions.py”,第 542 行,在请求 resp = self.send(prep, **send_kwargs) 文件“C:\Users\mmasn.local \pipx\venvs\eth-brownie\lib\site-packages\requests\sessions.py”,第 655 行,在发送 r = adapter.send(request, **kwargs) 文件“C:\Users\mmasn.local\ pipx\venvs\eth-brownie\lib\site-packages\requests\adapters.py",第 516 行,在发送中引发 ConnectionError(e, request=request) requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1' , port=8545): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x0000021DAA2A0F28>: 无法建立新连接: [WinError 10061] 由于目标机器无法建立连接主动拒绝'))))))**send_kwargs) 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\requests\sessions.py”,第 655 行,在发送 r = adapter.send(request, * *kwargs) 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\requests\adapters.py”,第 516 行,发送引发 ConnectionError(e, request=request) 请求.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8545): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x0000021DAA2A0F28>: 无法建立新连接: [WinError 10061] 无法建立连接,因为目标机器主动拒绝它'))**send_kwargs) 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\requests\sessions.py”,第 655 行,在发送 r = adapter.send(request, * *kwargs) 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\requests\adapters.py”,第 516 行,发送引发 ConnectionError(e, request=request) 请求.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8545): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.HTTPConnection object at 0x0000021DAA2A0F28>: 无法建立新连接: [WinError 10061] 无法建立连接,因为目标机器主动拒绝它'))发送(请求,**kwargs)文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\requests\adapters.py”,第 516 行,在发送中引发 ConnectionError(e, request=request) requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8545): Max retries exceeded with url: / (由 NewConnectionError('<urllib3.connection.HTTPConnection object at 0x0000021DAA2A0F28>: Failed建立新连接:[WinError 10061] 无法建立连接,因为目标机器主动拒绝它'))发送(请求,**kwargs)文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\requests\adapters.py”,第 516 行,在发送中引发 ConnectionError(e, request=request) requests.exceptions.ConnectionError: HTTPConnectionPool(host='127.0.0.1', port=8545): Max retries exceeded with url: / (由 NewConnectionError('<urllib3.connection.HTTPConnection object at 0x0000021DAA2A0F28>: Failed建立新连接:[WinError 10061] 无法建立连接,因为目标机器主动拒绝它'))/(由NewConnectionError引起('<urllib3.connection.HTTPConnection object at 0x0000021DAA2A0F28>: 无法建立新连接:[WinError 10061] 由于目标机器主动拒绝,无法建立连接'))/(由NewConnectionError引起('<urllib3.connection.HTTPConnection object at 0x0000021DAA2A0F28>: 无法建立新连接:[WinError 10061] 由于目标机器主动拒绝,无法建立连接'))

在处理上述异常的过程中,又出现了一个异常:

回溯(最后一次调用):文件“C:\Program Files\Python37\lib\threading.py”,第 917 行,在 _bootstrap_inner self.run() 文件“C:\Program Files\Python37\lib\threading.py ”,第 865 行,在运行 self._target(*self._args, **self._kwargs) 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\brownie\network \state.py”,第 332 行,在add_to_undo_buffer
self.sleep(0) 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\brownie\network\state.py”中,第 375 行,处于睡眠状态。time_offset = int(rpc.Rpc().sleep(seconds)) 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\brownie\network\ rpc_init.py”,第 45 行,在包装中返回 fn(*args, **kwargs) 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\brownie\network\rpc_ init
.py”,第 166 行,在睡眠中返回 self.backend.sleep(seconds) 文件“C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\brownie\network\rpc\ganache .py",第 91 行,在睡眠中返回 _request("evm_increaseTime", [seconds]) 文件 "C:\Users\mmasn.local\pipx\venvs\eth-brownie\lib\site-packages\brownie\network\rpc \ganache.py",第 86 行,在 _request 中引发 RPCRequestError("Web3 is not connected.") brownie.exceptions.RPCRequestError: Web3 is not connected。

我的 deploy.py 代码如下。

能否请你帮忙?

0 投票
1 回答
117 浏览

python - 添加新的开发网络时,“ValueError:参数必须以 key=value 的形式给出”

在我正在使用的终端中:

它返回:

我检查了 importlib 的函数,它正在寻找 cmd 密钥,但它似乎不愿意接受 ganche-cli 或者当 import lib 正在寻找 cmd 密钥时 cmd 不是有效密钥。

这可能是因为 brownie 网络列表在网络列表中显示了一个带有 ganache-cli 的主网分叉,即使新名称是 mainnet-fork-dev?

0 投票
0 回答
103 浏览

python - 当我想在布朗尼中导出我的私钥时如何解决 .env 问题

我有完全相同的问题我正在使用以下代码在这部分的 Patrick Collins 课程中学习

  • 我有布朗尼 v1.14.6
  • 我在同一个存储库中有 .env 和 brownie-config.ymal
  • 我已经尝试过 import os 一行,然后 print(os.getenv("PRIVATE_KEY")) 并返回相同的错误和“none”

我认为这是 .env 的问题(变量环境,以及我已经尝试手动添加 PATH 变量但仍然不起作用)返回相同的错误:

注意:我使用的是 Windows 10

0 投票
1 回答
97 浏览

ethereum - 从脚本调用智能合约中的函数并检查变量的值

我目前正在使用 Brownie 学习智能合约和区块链开发。我无法理解如何使用 python 脚本从智能合约中调用函数和检查变量的值。我怎么能做到这一点?

下面我有一个合同DutchAuction,我在其中定义了一个函数,该函数仅出于测试目的bid()而返回'Hello world',我试图调用它。

0 投票
0 回答
96 浏览

python - Brownie 将依赖项编译成合约

我有一个引用 openzeppelin 合同的可靠项目。编译我正在使用pythoneth-brownie.

当我用它编译项目时,brownie compile它完美地工作了一个警告。所有依赖项都进入依赖项文件夹。

我想要的是只生成一个合同文件,其中包括标题部分中的所有导入库。

我的brownie-config.yaml文件看起来像这样

我在互联网上搜索了很多,但找不到与

使用 brownie 编译依赖项

布朗尼平面文件

除了在我读到布朗尼的某些地方不支持这一点外,什么都没有出现。必须有办法做到这一点

任何人都可以帮助我在一个文件中生成合同,包括顶部的所有依赖项吗?

谢谢

0 投票
1 回答
362 浏览

python - pipx install eth-brownie 错误:来自 pip 的致命错误阻止了安装。文件中的完整 pip 输出:

嗨,我正在尝试安装 Brownie,但我似乎遇到了以下问题。