{"action":"created","comment":{"url":"https://api.github.com/repos/airalab/hs-web3/pulls/comments/188535488","pull_request_review_id":120528950,"id":188535488,"diff_hunk":"@@ -35,18 +35,14 @@ import           Network.HTTP.Client.TLS    (tlsManagerSettings)\n import           Network.HTTP.Client        (defaultManagerSettings)\n #endif\n \n-import           Network.JsonRpc.TinyClient (Remote, ServerUri)\n-\n -- | Any communication with Ethereum node wrapped with 'Web3' monad\n-newtype Web3 a = Web3 { unWeb3 :: ReaderT (ServerUri, Manager) IO a }\n+newtype Web3 a = Web3 { unWeb3 :: ReaderT (Provider, Manager) IO a }\n     deriving (Functor, Applicative, Monad, MonadIO, MonadThrow)\n \n-instance MonadReader (ServerUri, Manager) Web3 where\n+instance MonadReader (Provider, Manager) Web3 where\n     ask = Web3 ask\n     local f = Web3 . local f . unWeb3\n \n-instance FromJSON a => Remote Web3 (Web3 a)","path":"src/Network/Ethereum/Web3/Provider.hs","position":25,"original_position":25,"commit_id":"4cfd0ae428828de2a942e22e2825ea4539a312c2","original_commit_id":"4cfd0ae428828de2a942e22e2825ea4539a312c2","user":{"login":"akru","id":786394,"avatar_url":"https://avatars0.githubusercontent.com/u/786394?v=4","gravatar_id":"","url":"https://api.github.com/users/akru","html_url":"https://github.com/akru","followers_url":"https://api.github.com/users/akru/followers","following_url":"https://api.github.com/users/akru/following{/other_user}","gists_url":"https://api.github.com/users/akru/gists{/gist_id}","starred_url":"https://api.github.com/users/akru/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/akru/subscriptions","organizations_url":"https://api.github.com/users/akru/orgs","repos_url":"https://api.github.com/users/akru/repos","events_url":"https://api.github.com/users/akru/events{/privacy}","received_events_url":"https://api.github.com/users/akru/received_events","type":"User","site_admin":false},"body":"It's instance for `Web3` type and it should be defined in file of type declaration.","created_at":"2018-05-16T08:06:40Z","updated_at":"2018-05-16T08:10:40Z","html_url":"https://github.com/airalab/hs-web3/pull/61#discussion_r188535488","pull_request_url":"https://api.github.com/repos/airalab/hs-web3/pulls/61","author_association":"MEMBER","_links":{"self":{"href":"https://api.github.com/repos/airalab/hs-web3/pulls/comments/188535488"},"html":{"href":"https://github.com/airalab/hs-web3/pull/61#discussion_r188535488"},"pull_request":{"href":"https://api.github.com/repos/airalab/hs-web3/pulls/61"}}},"pull_request":{"url":"https://api.github.com/repos/airalab/hs-web3/pulls/61","id":186792719,"html_url":"https://github.com/airalab/hs-web3/pull/61","diff_url":"https://github.com/airalab/hs-web3/pull/61.diff","patch_url":"https://github.com/airalab/hs-web3/pull/61.patch","issue_url":"https://api.github.com/repos/airalab/hs-web3/issues/61","number":61,"state":"open","locked":false,"title":"Implementing offnode signing","user":{"login":"aupiff","id":804266,"avatar_url":"https://avatars1.githubusercontent.com/u/804266?v=4","gravatar_id":"","url":"https://api.github.com/users/aupiff","html_url":"https://github.com/aupiff","followers_url":"https://api.github.com/users/aupiff/followers","following_url":"https://api.github.com/users/aupiff/following{/other_user}","gists_url":"https://api.github.com/users/aupiff/gists{/gist_id}","starred_url":"https://api.github.com/users/aupiff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aupiff/subscriptions","organizations_url":"https://api.github.com/users/aupiff/orgs","repos_url":"https://api.github.com/users/aupiff/repos","events_url":"https://api.github.com/users/aupiff/events{/privacy}","received_events_url":"https://api.github.com/users/aupiff/received_events","type":"User","site_admin":false},"body":"Resolves #10.\r\n\r\n- Signing configuration requires supplying both a __private key__ and a __chainId__. The chainId will be different depending on what network a user is submitting transactions to (mainnet, Rinkby, etc.)\r\n\r\n```haskell\r\n-- | Web3 Provider\r\ndata Provider = Provider { jsonRpc :: JsonRpcProvider\r\n                         , signingConfiguration :: Maybe SigningConfiguration\r\n                         }\r\n\r\ndata SigningConfiguration = SigningConfiguration { privateKey      :: ByteString\r\n                                                 , chainIdentifier :: Integer }\r\n```\r\n\r\n- The `Web3` type has been updated to have the full `Provider` type in its Reader context so that the private key and chain identifier can be used when signing transactions.\r\n\r\n```haskell\r\nnewtype Web3 a = Web3 { unWeb3 :: ReaderT (Provider, Manager) IO a }\r\n```","created_at":"2018-05-09T00:57:27Z","updated_at":"2018-05-16T08:10:40Z","closed_at":null,"merged_at":null,"merge_commit_sha":"8cea884627e390f3128b8bfce85dc0fde6800f9a","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/airalab/hs-web3/pulls/61/commits","review_comments_url":"https://api.github.com/repos/airalab/hs-web3/pulls/61/comments","review_comment_url":"https://api.github.com/repos/airalab/hs-web3/pulls/comments{/number}","comments_url":"https://api.github.com/repos/airalab/hs-web3/issues/61/comments","statuses_url":"https://api.github.com/repos/airalab/hs-web3/statuses/4cfd0ae428828de2a942e22e2825ea4539a312c2","head":{"label":"aupiff:offnode-sign","ref":"offnode-sign","sha":"4cfd0ae428828de2a942e22e2825ea4539a312c2","user":{"login":"aupiff","id":804266,"avatar_url":"https://avatars1.githubusercontent.com/u/804266?v=4","gravatar_id":"","url":"https://api.github.com/users/aupiff","html_url":"https://github.com/aupiff","followers_url":"https://api.github.com/users/aupiff/followers","following_url":"https://api.github.com/users/aupiff/following{/other_user}","gists_url":"https://api.github.com/users/aupiff/gists{/gist_id}","starred_url":"https://api.github.com/users/aupiff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aupiff/subscriptions","organizations_url":"https://api.github.com/users/aupiff/orgs","repos_url":"https://api.github.com/users/aupiff/repos","events_url":"https://api.github.com/users/aupiff/events{/privacy}","received_events_url":"https://api.github.com/users/aupiff/received_events","type":"User","site_admin":false},"repo":{"id":100914045,"name":"hs-web3","full_name":"aupiff/hs-web3","owner":{"login":"aupiff","id":804266,"avatar_url":"https://avatars1.githubusercontent.com/u/804266?v=4","gravatar_id":"","url":"https://api.github.com/users/aupiff","html_url":"https://github.com/aupiff","followers_url":"https://api.github.com/users/aupiff/followers","following_url":"https://api.github.com/users/aupiff/following{/other_user}","gists_url":"https://api.github.com/users/aupiff/gists{/gist_id}","starred_url":"https://api.github.com/users/aupiff/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aupiff/subscriptions","organizations_url":"https://api.github.com/users/aupiff/orgs","repos_url":"https://api.github.com/users/aupiff/repos","events_url":"https://api.github.com/users/aupiff/events{/privacy}","received_events_url":"https://api.github.com/users/aupiff/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/aupiff/hs-web3","description":"Ethereum API for Haskell","fork":true,"url":"https://api.github.com/repos/aupiff/hs-web3","forks_url":"https://api.github.com/repos/aupiff/hs-web3/forks","keys_url":"https://api.github.com/repos/aupiff/hs-web3/keys{/key_id}","collaborators_url":"https://api.github.com/repos/aupiff/hs-web3/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/aupiff/hs-web3/teams","hooks_url":"https://api.github.com/repos/aupiff/hs-web3/hooks","issue_events_url":"https://api.github.com/repos/aupiff/hs-web3/issues/events{/number}","events_url":"https://api.github.com/repos/aupiff/hs-web3/events","assignees_url":"https://api.github.com/repos/aupiff/hs-web3/assignees{/user}","branches_url":"https://api.github.com/repos/aupiff/hs-web3/branches{/branch}","tags_url":"https://api.github.com/repos/aupiff/hs-web3/tags","blobs_url":"https://api.github.com/repos/aupiff/hs-web3/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/aupiff/hs-web3/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/aupiff/hs-web3/git/refs{/sha}","trees_url":"https://api.github.com/repos/aupiff/hs-web3/git/trees{/sha}","statuses_url":"https://api.github.com/repos/aupiff/hs-web3/statuses/{sha}","languages_url":"https://api.github.com/repos/aupiff/hs-web3/languages","stargazers_url":"https://api.github.com/repos/aupiff/hs-web3/stargazers","contributors_url":"https://api.github.com/repos/aupiff/hs-web3/contributors","subscribers_url":"https://api.github.com/repos/aupiff/hs-web3/subscribers","subscription_url":"https://api.github.com/repos/aupiff/hs-web3/subscription","commits_url":"https://api.github.com/repos/aupiff/hs-web3/commits{/sha}","git_commits_url":"https://api.github.com/repos/aupiff/hs-web3/git/commits{/sha}","comments_url":"https://api.github.com/repos/aupiff/hs-web3/comments{/number}","issue_comment_url":"https://api.github.com/repos/aupiff/hs-web3/issues/comments{/number}","contents_url":"https://api.github.com/repos/aupiff/hs-web3/contents/{+path}","compare_url":"https://api.github.com/repos/aupiff/hs-web3/compare/{base}...{head}","merges_url":"https://api.github.com/repos/aupiff/hs-web3/merges","archive_url":"https://api.github.com/repos/aupiff/hs-web3/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/aupiff/hs-web3/downloads","issues_url":"https://api.github.com/repos/aupiff/hs-web3/issues{/number}","pulls_url":"https://api.github.com/repos/aupiff/hs-web3/pulls{/number}","milestones_url":"https://api.github.com/repos/aupiff/hs-web3/milestones{/number}","notifications_url":"https://api.github.com/repos/aupiff/hs-web3/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/aupiff/hs-web3/labels{/name}","releases_url":"https://api.github.com/repos/aupiff/hs-web3/releases{/id}","deployments_url":"https://api.github.com/repos/aupiff/hs-web3/deployments","created_at":"2017-08-21T04:59:05Z","updated_at":"2017-08-21T04:59:07Z","pushed_at":"2018-05-09T21:17:29Z","git_url":"git://github.com/aupiff/hs-web3.git","ssh_url":"git@github.com:aupiff/hs-web3.git","clone_url":"https://github.com/aupiff/hs-web3.git","svn_url":"https://github.com/aupiff/hs-web3","homepage":"","size":498,"stargazers_count":0,"watchers_count":0,"language":"Haskell","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":null,"url":null},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"airalab:master","ref":"master","sha":"d84b40ef8868cf44c91e53deef6ae0d606cb2d11","user":{"login":"airalab","id":13998040,"avatar_url":"https://avatars0.githubusercontent.com/u/13998040?v=4","gravatar_id":"","url":"https://api.github.com/users/airalab","html_url":"https://github.com/airalab","followers_url":"https://api.github.com/users/airalab/followers","following_url":"https://api.github.com/users/airalab/following{/other_user}","gists_url":"https://api.github.com/users/airalab/gists{/gist_id}","starred_url":"https://api.github.com/users/airalab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/airalab/subscriptions","organizations_url":"https://api.github.com/users/airalab/orgs","repos_url":"https://api.github.com/users/airalab/repos","events_url":"https://api.github.com/users/airalab/events{/privacy}","received_events_url":"https://api.github.com/users/airalab/received_events","type":"Organization","site_admin":false},"repo":{"id":69875468,"name":"hs-web3","full_name":"airalab/hs-web3","owner":{"login":"airalab","id":13998040,"avatar_url":"https://avatars0.githubusercontent.com/u/13998040?v=4","gravatar_id":"","url":"https://api.github.com/users/airalab","html_url":"https://github.com/airalab","followers_url":"https://api.github.com/users/airalab/followers","following_url":"https://api.github.com/users/airalab/following{/other_user}","gists_url":"https://api.github.com/users/airalab/gists{/gist_id}","starred_url":"https://api.github.com/users/airalab/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/airalab/subscriptions","organizations_url":"https://api.github.com/users/airalab/orgs","repos_url":"https://api.github.com/users/airalab/repos","events_url":"https://api.github.com/users/airalab/events{/privacy}","received_events_url":"https://api.github.com/users/airalab/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/airalab/hs-web3","description":"Ethereum API for Haskell.","fork":false,"url":"https://api.github.com/repos/airalab/hs-web3","forks_url":"https://api.github.com/repos/airalab/hs-web3/forks","keys_url":"https://api.github.com/repos/airalab/hs-web3/keys{/key_id}","collaborators_url":"https://api.github.com/repos/airalab/hs-web3/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/airalab/hs-web3/teams","hooks_url":"https://api.github.com/repos/airalab/hs-web3/hooks","issue_events_url":"https://api.github.com/repos/airalab/hs-web3/issues/events{/number}","events_url":"https://api.github.com/repos/airalab/hs-web3/events","assignees_url":"https://api.github.com/repos/airalab/hs-web3/assignees{/user}","branches_url":"https://api.github.com/repos/airalab/hs-web3/branches{/branch}","tags_url":"https://api.github.com/repos/airalab/hs-web3/tags","blobs_url":"https://api.github.com/repos/airalab/hs-web3/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/airalab/hs-web3/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/airalab/hs-web3/git/refs{/sha}","trees_url":"https://api.github.com/repos/airalab/hs-web3/git/trees{/sha}","statuses_url":"https://api.github.com/repos/airalab/hs-web3/statuses/{sha}","languages_url":"https://api.github.com/repos/airalab/hs-web3/languages","stargazers_url":"https://api.github.com/repos/airalab/hs-web3/stargazers","contributors_url":"https://api.github.com/repos/airalab/hs-web3/contributors","subscribers_url":"https://api.github.com/repos/airalab/hs-web3/subscribers","subscription_url":"https://api.github.com/repos/airalab/hs-web3/subscription","commits_url":"https://api.github.com/repos/airalab/hs-web3/commits{/sha}","git_commits_url":"https://api.github.com/repos/airalab/hs-web3/git/commits{/sha}","comments_url":"https://api.github.com/repos/airalab/hs-web3/comments{/number}","issue_comment_url":"https://api.github.com/repos/airalab/hs-web3/issues/comments{/number}","contents_url":"https://api.github.com/repos/airalab/hs-web3/contents/{+path}","compare_url":"https://api.github.com/repos/airalab/hs-web3/compare/{base}...{head}","merges_url":"https://api.github.com/repos/airalab/hs-web3/merges","archive_url":"https://api.github.com/repos/airalab/hs-web3/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/airalab/hs-web3/downloads","issues_url":"https://api.github.com/repos/airalab/hs-web3/issues{/number}","pulls_url":"https://api.github.com/repos/airalab/hs-web3/pulls{/number}","milestones_url":"https://api.github.com/repos/airalab/hs-web3/milestones{/number}","notifications_url":"https://api.github.com/repos/airalab/hs-web3/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/airalab/hs-web3/labels{/name}","releases_url":"https://api.github.com/repos/airalab/hs-web3/releases{/id}","deployments_url":"https://api.github.com/repos/airalab/hs-web3/deployments","created_at":"2016-10-03T13:56:19Z","updated_at":"2018-05-13T20:46:50Z","pushed_at":"2018-05-15T19:57:19Z","git_url":"git://github.com/airalab/hs-web3.git","ssh_url":"git@github.com:airalab/hs-web3.git","clone_url":"https://github.com/airalab/hs-web3.git","svn_url":"https://github.com/airalab/hs-web3","homepage":"http://hackage.haskell.org/package/web3","size":497,"stargazers_count":78,"watchers_count":78,"language":"Haskell","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":22,"mirror_url":null,"archived":false,"open_issues_count":6,"license":{"key":"other","name":"Other","spdx_id":null,"url":null},"forks":22,"open_issues":6,"watchers":78,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/airalab/hs-web3/pulls/61"},"html":{"href":"https://github.com/airalab/hs-web3/pull/61"},"issue":{"href":"https://api.github.com/repos/airalab/hs-web3/issues/61"},"comments":{"href":"https://api.github.com/repos/airalab/hs-web3/issues/61/comments"},"review_comments":{"href":"https://api.github.com/repos/airalab/hs-web3/pulls/61/comments"},"review_comment":{"href":"https://api.github.com/repos/airalab/hs-web3/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/airalab/hs-web3/pulls/61/commits"},"statuses":{"href":"https://api.github.com/repos/airalab/hs-web3/statuses/4cfd0ae428828de2a942e22e2825ea4539a312c2"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"akru"}}