graphprotocol / graphprotocol/graph-node

CallHandler: Doesn't work for function with tuple[][] arguments

オープン
#3,768 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

Stale
主要言語
Rust
スター
3.2k
フォーク
1.1k
平均マージ
4日 1時間
マージ済み PR(30日)
1

説明

Do you want to request a feature or report a bug?
bug
What is the current behavior?
Failed to generate types for contract ABIs: Failed to generate types for contract ABI: Conversion from 'ethereum' to 'AssemblyScript' for source type 'tuple[][]' is not supported
If the current behavior is a bug, please provide the steps to reproduce and if possible a minimal demo of the problem.

{
			"inputs": [
				{
					"internalType": "bytes32[]",
					"name": "accounts",
					"type": "bytes32[]"
				},
				{
					"components": [
						{
							"internalType": "enum ResourceData.ResourceType",
							"name": "resourceType",
							"type": "uint8"
						},
						{
							"internalType": "uint256[]",
							"name": "amounts",
							"type": "uint256[]"
						}
					],
					"internalType": "struct ResourceData.AmountPayload[][]",
					"name": "payloads",
					"type": "tuple[][]"
				}
			],
			"name": "registerAndDripMult",
			"outputs": [],
			"stateMutability": "nonpayable",
			"type": "function"
		}

run graph codegen with this abi
What is the expected behavior?
should support tuple[][]

コントリビューションガイド

コントリビューションガイドを開く

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

まず、issue に示されている ABI を使って graph codegen を実行し、引数 tuple[][] で失敗を再現します。サポートされていない変換を報告している ABI 型変換のエントリポイントを追跡し、その後、既存の ABI ケースをリグレッションさせることなく、ネストされた tuple 配列のコード生成が成功することを確認します。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
rust
領域
blockchain, tooling
issue の種類
バグ
難易度
3/5
見積もり時間
1〜2日
活発さ
停滞
明瞭さ
おおむね明確
初心者へのやさしさ
35/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。