{"action":"created","issue":{"url":"https://api.github.com/repos/ethereum/go-ethereum/issues/15676","repository_url":"https://api.github.com/repos/ethereum/go-ethereum","labels_url":"https://api.github.com/repos/ethereum/go-ethereum/issues/15676/labels{/name}","comments_url":"https://api.github.com/repos/ethereum/go-ethereum/issues/15676/comments","events_url":"https://api.github.com/repos/ethereum/go-ethereum/issues/15676/events","html_url":"https://github.com/ethereum/go-ethereum/pull/15676","id":282224583,"number":15676,"title":"accounts/abi: Abi binding support for nested arrays, fixes #15648, including nested array unpack fix","user":{"login":"protolambda","id":19571989,"avatar_url":"https://avatars2.githubusercontent.com/u/19571989?v=4","gravatar_id":"","url":"https://api.github.com/users/protolambda","html_url":"https://github.com/protolambda","followers_url":"https://api.github.com/users/protolambda/followers","following_url":"https://api.github.com/users/protolambda/following{/other_user}","gists_url":"https://api.github.com/users/protolambda/gists{/gist_id}","starred_url":"https://api.github.com/users/protolambda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/protolambda/subscriptions","organizations_url":"https://api.github.com/users/protolambda/orgs","repos_url":"https://api.github.com/users/protolambda/repos","events_url":"https://api.github.com/users/protolambda/events{/privacy}","received_events_url":"https://api.github.com/users/protolambda/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"karalabe","id":129561,"avatar_url":"https://avatars2.githubusercontent.com/u/129561?v=4","gravatar_id":"","url":"https://api.github.com/users/karalabe","html_url":"https://github.com/karalabe","followers_url":"https://api.github.com/users/karalabe/followers","following_url":"https://api.github.com/users/karalabe/following{/other_user}","gists_url":"https://api.github.com/users/karalabe/gists{/gist_id}","starred_url":"https://api.github.com/users/karalabe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/karalabe/subscriptions","organizations_url":"https://api.github.com/users/karalabe/orgs","repos_url":"https://api.github.com/users/karalabe/repos","events_url":"https://api.github.com/users/karalabe/events{/privacy}","received_events_url":"https://api.github.com/users/karalabe/received_events","type":"User","site_admin":false},"assignees":[{"login":"karalabe","id":129561,"avatar_url":"https://avatars2.githubusercontent.com/u/129561?v=4","gravatar_id":"","url":"https://api.github.com/users/karalabe","html_url":"https://github.com/karalabe","followers_url":"https://api.github.com/users/karalabe/followers","following_url":"https://api.github.com/users/karalabe/following{/other_user}","gists_url":"https://api.github.com/users/karalabe/gists{/gist_id}","starred_url":"https://api.github.com/users/karalabe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/karalabe/subscriptions","organizations_url":"https://api.github.com/users/karalabe/orgs","repos_url":"https://api.github.com/users/karalabe/repos","events_url":"https://api.github.com/users/karalabe/events{/privacy}","received_events_url":"https://api.github.com/users/karalabe/received_events","type":"User","site_admin":false}],"milestone":null,"comments":20,"created_at":"2017-12-14T20:11:41Z","updated_at":"2018-02-21T11:37:55Z","closed_at":null,"author_association":"NONE","pull_request":{"url":"https://api.github.com/repos/ethereum/go-ethereum/pulls/15676","html_url":"https://github.com/ethereum/go-ethereum/pull/15676","diff_url":"https://github.com/ethereum/go-ethereum/pull/15676.diff","patch_url":"https://github.com/ethereum/go-ethereum/pull/15676.patch"},"body":"The binding generator only matched one level of the multi-dimensional array types that were parsed by the other binding code.\r\n\r\nFix:\r\n- Method that reads the unmatched characters\r\n- Looks for a valid array declaration\r\n- Returns array-sizes of each level (empty if no array)\r\n- Each language wraps their old (but cleaner) type-translator with the array reader.\r\n- Each language has a method that translates the combination of inner-type and array-sizes into a typed array declaration.\r\n- Minor fix: Java used \"bool\" while this should have been a \"boolean\". Not that anyone would pick Java bindings over Go 😄 \r\n- Another minor fix: Java used int, also for non-32 bit numbers. I changed this to byte/short/int/long (8/16/32/64 bits) but I'm not sure about the implications. However, it should be better than previously in any case, as a Java int doesn't have sufficient space for the (u)int64.\r\n- Edit: another bugfix: argument unpacking shifts to the correct index after nested arrays now.\r\n\r\n*Before merging*: This is my first PR here, suggestions & reviews are very much appreciated 👍 "},"comment":{"url":"https://api.github.com/repos/ethereum/go-ethereum/issues/comments/367299445","html_url":"https://github.com/ethereum/go-ethereum/pull/15676#issuecomment-367299445","issue_url":"https://api.github.com/repos/ethereum/go-ethereum/issues/15676","id":367299445,"user":{"login":"protolambda","id":19571989,"avatar_url":"https://avatars2.githubusercontent.com/u/19571989?v=4","gravatar_id":"","url":"https://api.github.com/users/protolambda","html_url":"https://github.com/protolambda","followers_url":"https://api.github.com/users/protolambda/followers","following_url":"https://api.github.com/users/protolambda/following{/other_user}","gists_url":"https://api.github.com/users/protolambda/gists{/gist_id}","starred_url":"https://api.github.com/users/protolambda/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/protolambda/subscriptions","organizations_url":"https://api.github.com/users/protolambda/orgs","repos_url":"https://api.github.com/users/protolambda/repos","events_url":"https://api.github.com/users/protolambda/events{/privacy}","received_events_url":"https://api.github.com/users/protolambda/received_events","type":"User","site_admin":false},"created_at":"2018-02-21T11:37:55Z","updated_at":"2018-02-21T11:37:55Z","author_association":"NONE","body":"@karalabe @gballet Is this PR still being looked at?"}}
{"actor":{"display_login":"protolambda"}}