{"action":"created","comment":{"url":"https://api.github.com/repos/btcsuite/btcd/pulls/comments/91876526","pull_request_review_id":12385355,"id":91876526,"diff_hunk":"@@ -116,15 +120,10 @@ func TestHaveBlock(t *testing.T) {\n // combinations of inputs to the CalcSequenceLock function in order to ensure\n // the returned SequenceLocks are correct for each test instance.\n func TestCalcSequenceLock(t *testing.T) {\n-\tfileName := \"blk_0_to_4.dat.bz2\"\n-\tblocks, err := loadBlocks(fileName)\n-\tif err != nil {\n-\t\tt.Errorf(\"Error loading file: %v\\n\", err)\n-\t\treturn\n-\t}\n+\tnetParams := &chaincfg.SimNetParams\n \n \t// Create a new database and chain instance to run tests against.\n-\tchain, teardownFunc, err := chainSetup(\"haveblock\", &chaincfg.MainNetParams)\n+\tchain, teardownFunc, err := chainSetup(\"haveblock\", netParams)","path":"blockchain/chain_test.go","position":null,"original_position":30,"commit_id":"0674f945a0a9a627700f6d72ffcb1d99c470fed7","original_commit_id":"bccfd4d8ed4a1ab50c1e555a64514e5b2dd7ceb4","user":{"login":"Roasbeef","id":998190,"avatar_url":"https://avatars.githubusercontent.com/u/998190?v=3","gravatar_id":"","url":"https://api.github.com/users/Roasbeef","html_url":"https://github.com/Roasbeef","followers_url":"https://api.github.com/users/Roasbeef/followers","following_url":"https://api.github.com/users/Roasbeef/following{/other_user}","gists_url":"https://api.github.com/users/Roasbeef/gists{/gist_id}","starred_url":"https://api.github.com/users/Roasbeef/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Roasbeef/subscriptions","organizations_url":"https://api.github.com/users/Roasbeef/orgs","repos_url":"https://api.github.com/users/Roasbeef/repos","events_url":"https://api.github.com/users/Roasbeef/events{/privacy}","received_events_url":"https://api.github.com/users/Roasbeef/received_events","type":"User","site_admin":false},"body":"Haven't seen any signs of negative interactions yet myself, but changing to `calcseqlock` just to be safe :)","created_at":"2016-12-12T02:48:21Z","updated_at":"2016-12-12T02:48:21Z","html_url":"https://github.com/btcsuite/btcd/pull/775#discussion_r91876526","pull_request_url":"https://api.github.com/repos/btcsuite/btcd/pulls/775","_links":{"self":{"href":"https://api.github.com/repos/btcsuite/btcd/pulls/comments/91876526"},"html":{"href":"https://github.com/btcsuite/btcd/pull/775#discussion_r91876526"},"pull_request":{"href":"https://api.github.com/repos/btcsuite/btcd/pulls/775"}}},"pull_request":{"url":"https://api.github.com/repos/btcsuite/btcd/pulls/775","id":86994171,"html_url":"https://github.com/btcsuite/btcd/pull/775","diff_url":"https://github.com/btcsuite/btcd/pull/775.diff","patch_url":"https://github.com/btcsuite/btcd/pull/775.patch","issue_url":"https://api.github.com/repos/btcsuite/btcd/issues/775","number":775,"state":"open","locked":false,"title":"Implement the CSV-Package soft-fork via BIP0009 VersionBits","user":{"login":"Roasbeef","id":998190,"avatar_url":"https://avatars.githubusercontent.com/u/998190?v=3","gravatar_id":"","url":"https://api.github.com/users/Roasbeef","html_url":"https://github.com/Roasbeef","followers_url":"https://api.github.com/users/Roasbeef/followers","following_url":"https://api.github.com/users/Roasbeef/following{/other_user}","gists_url":"https://api.github.com/users/Roasbeef/gists{/gist_id}","starred_url":"https://api.github.com/users/Roasbeef/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Roasbeef/subscriptions","organizations_url":"https://api.github.com/users/Roasbeef/orgs","repos_url":"https://api.github.com/users/Roasbeef/repos","events_url":"https://api.github.com/users/Roasbeef/events{/privacy}","received_events_url":"https://api.github.com/users/Roasbeef/received_events","type":"User","site_admin":false},"body":"This commit fully implements the CSV-package soft-fork. The CSV-package soft-fork bundles the deployment of the following BIPs: [68](https://github.com/bitcoin/bips/blob/master/bip-0068.mediawiki), [112](https://github.com/bitcoin/bips/blob/master/bip-0112.mediawiki), and [113](https://github.com/bitcoin/bips/blob/master/bip-0113.mediawiki). The activation logic of the soft-fork is governed by [BIP 9](https://github.com/bitcoin/bips/blob/master/bip-0009.mediawiki), VersionBits. \n\nThis PR currently is built upon a combined branch includes #713, #628, #712, and #755. Therefore, **only the last 3 commits** should be examined during code-review. As the aforementioned pending PR's re merged into master, this PR will be updated accordingly to increasingly reflect the final diff. \n\nA summary of the proposed changes follows: \n- A new `ConsensusDeployment` has been added to the chain parameters for mainnet, testnet, simnet, and regtestnet. This new deployment defines the BIP0009 parameters (bit #, start time, end time) for the CSV-package soft-fork. A new constant, `DeploymentCSV` has been added which uniquely identifies the new deployment within the `Deployments` array for each of the target networks. \n- During non-contextual, and contextual block validation, we now examine the `ThresholdState` for the `CSV` deployment, activating the observance of the new consensus rules once the soft-fork switches to the `ThresholdActive` state. \n  - If the soft-fork is active, then MTP is used for transaction finality checks, the CSV op-code is recognized and validated during Script execution, and a transaction can only be included within a block if the sequence locks for _all_ its inputs have been met. \n- Finally, when selecting transactions for inclusion into the current block template, the version bits state is again checked in order to guard the observance of the new consensus rules. If the soft-fork is active, then transactions can only be included into the to-be-constructed block iff they don't violate any of the new consensus rules. \n","created_at":"2016-09-27T19:19:27Z","updated_at":"2016-12-12T02:48:21Z","closed_at":null,"merged_at":null,"merge_commit_sha":"20b2205f844fce87a5291431f205304890e6a297","assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/btcsuite/btcd/milestones/1","html_url":"https://github.com/btcsuite/btcd/milestone/1","labels_url":"https://api.github.com/repos/btcsuite/btcd/milestones/1/labels","id":2087437,"number":1,"title":"0.13.0","description":"Release 0.1.3.0","creator":{"login":"dajohi","id":3308193,"avatar_url":"https://avatars.githubusercontent.com/u/3308193?v=3","gravatar_id":"","url":"https://api.github.com/users/dajohi","html_url":"https://github.com/dajohi","followers_url":"https://api.github.com/users/dajohi/followers","following_url":"https://api.github.com/users/dajohi/following{/other_user}","gists_url":"https://api.github.com/users/dajohi/gists{/gist_id}","starred_url":"https://api.github.com/users/dajohi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dajohi/subscriptions","organizations_url":"https://api.github.com/users/dajohi/orgs","repos_url":"https://api.github.com/users/dajohi/repos","events_url":"https://api.github.com/users/dajohi/events{/privacy}","received_events_url":"https://api.github.com/users/dajohi/received_events","type":"User","site_admin":false},"open_issues":18,"closed_issues":93,"state":"open","created_at":"2016-10-23T17:50:30Z","updated_at":"2016-12-09T22:38:31Z","due_on":null,"closed_at":null},"commits_url":"https://api.github.com/repos/btcsuite/btcd/pulls/775/commits","review_comments_url":"https://api.github.com/repos/btcsuite/btcd/pulls/775/comments","review_comment_url":"https://api.github.com/repos/btcsuite/btcd/pulls/comments{/number}","comments_url":"https://api.github.com/repos/btcsuite/btcd/issues/775/comments","statuses_url":"https://api.github.com/repos/btcsuite/btcd/statuses/0674f945a0a9a627700f6d72ffcb1d99c470fed7","head":{"label":"Roasbeef:csv-soft-fork","ref":"csv-soft-fork","sha":"0674f945a0a9a627700f6d72ffcb1d99c470fed7","user":{"login":"Roasbeef","id":998190,"avatar_url":"https://avatars.githubusercontent.com/u/998190?v=3","gravatar_id":"","url":"https://api.github.com/users/Roasbeef","html_url":"https://github.com/Roasbeef","followers_url":"https://api.github.com/users/Roasbeef/followers","following_url":"https://api.github.com/users/Roasbeef/following{/other_user}","gists_url":"https://api.github.com/users/Roasbeef/gists{/gist_id}","starred_url":"https://api.github.com/users/Roasbeef/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Roasbeef/subscriptions","organizations_url":"https://api.github.com/users/Roasbeef/orgs","repos_url":"https://api.github.com/users/Roasbeef/repos","events_url":"https://api.github.com/users/Roasbeef/events{/privacy}","received_events_url":"https://api.github.com/users/Roasbeef/received_events","type":"User","site_admin":false},"repo":{"id":21504517,"name":"btcd","full_name":"Roasbeef/btcd","owner":{"login":"Roasbeef","id":998190,"avatar_url":"https://avatars.githubusercontent.com/u/998190?v=3","gravatar_id":"","url":"https://api.github.com/users/Roasbeef","html_url":"https://github.com/Roasbeef","followers_url":"https://api.github.com/users/Roasbeef/followers","following_url":"https://api.github.com/users/Roasbeef/following{/other_user}","gists_url":"https://api.github.com/users/Roasbeef/gists{/gist_id}","starred_url":"https://api.github.com/users/Roasbeef/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Roasbeef/subscriptions","organizations_url":"https://api.github.com/users/Roasbeef/orgs","repos_url":"https://api.github.com/users/Roasbeef/repos","events_url":"https://api.github.com/users/Roasbeef/events{/privacy}","received_events_url":"https://api.github.com/users/Roasbeef/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/Roasbeef/btcd","description":"An alternative full node bitcoin implementation written in Go (golang)","fork":true,"url":"https://api.github.com/repos/Roasbeef/btcd","forks_url":"https://api.github.com/repos/Roasbeef/btcd/forks","keys_url":"https://api.github.com/repos/Roasbeef/btcd/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Roasbeef/btcd/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Roasbeef/btcd/teams","hooks_url":"https://api.github.com/repos/Roasbeef/btcd/hooks","issue_events_url":"https://api.github.com/repos/Roasbeef/btcd/issues/events{/number}","events_url":"https://api.github.com/repos/Roasbeef/btcd/events","assignees_url":"https://api.github.com/repos/Roasbeef/btcd/assignees{/user}","branches_url":"https://api.github.com/repos/Roasbeef/btcd/branches{/branch}","tags_url":"https://api.github.com/repos/Roasbeef/btcd/tags","blobs_url":"https://api.github.com/repos/Roasbeef/btcd/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Roasbeef/btcd/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Roasbeef/btcd/git/refs{/sha}","trees_url":"https://api.github.com/repos/Roasbeef/btcd/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Roasbeef/btcd/statuses/{sha}","languages_url":"https://api.github.com/repos/Roasbeef/btcd/languages","stargazers_url":"https://api.github.com/repos/Roasbeef/btcd/stargazers","contributors_url":"https://api.github.com/repos/Roasbeef/btcd/contributors","subscribers_url":"https://api.github.com/repos/Roasbeef/btcd/subscribers","subscription_url":"https://api.github.com/repos/Roasbeef/btcd/subscription","commits_url":"https://api.github.com/repos/Roasbeef/btcd/commits{/sha}","git_commits_url":"https://api.github.com/repos/Roasbeef/btcd/git/commits{/sha}","comments_url":"https://api.github.com/repos/Roasbeef/btcd/comments{/number}","issue_comment_url":"https://api.github.com/repos/Roasbeef/btcd/issues/comments{/number}","contents_url":"https://api.github.com/repos/Roasbeef/btcd/contents/{+path}","compare_url":"https://api.github.com/repos/Roasbeef/btcd/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Roasbeef/btcd/merges","archive_url":"https://api.github.com/repos/Roasbeef/btcd/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Roasbeef/btcd/downloads","issues_url":"https://api.github.com/repos/Roasbeef/btcd/issues{/number}","pulls_url":"https://api.github.com/repos/Roasbeef/btcd/pulls{/number}","milestones_url":"https://api.github.com/repos/Roasbeef/btcd/milestones{/number}","notifications_url":"https://api.github.com/repos/Roasbeef/btcd/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Roasbeef/btcd/labels{/name}","releases_url":"https://api.github.com/repos/Roasbeef/btcd/releases{/id}","deployments_url":"https://api.github.com/repos/Roasbeef/btcd/deployments","created_at":"2014-07-04T18:01:29Z","updated_at":"2016-09-30T16:57:11Z","pushed_at":"2016-12-12T02:48:10Z","git_url":"git://github.com/Roasbeef/btcd.git","ssh_url":"git@github.com:Roasbeef/btcd.git","clone_url":"https://github.com/Roasbeef/btcd.git","svn_url":"https://github.com/Roasbeef/btcd","homepage":null,"size":18411,"stargazers_count":1,"watchers_count":1,"language":"Go","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":2,"mirror_url":null,"open_issues_count":0,"forks":2,"open_issues":0,"watchers":1,"default_branch":"master"}},"base":{"label":"btcsuite:master","ref":"master","sha":"7a4cc89bbcce6ef560ac729a536eb6e939bf58fe","user":{"login":"btcsuite","id":10235229,"avatar_url":"https://avatars.githubusercontent.com/u/10235229?v=3","gravatar_id":"","url":"https://api.github.com/users/btcsuite","html_url":"https://github.com/btcsuite","followers_url":"https://api.github.com/users/btcsuite/followers","following_url":"https://api.github.com/users/btcsuite/following{/other_user}","gists_url":"https://api.github.com/users/btcsuite/gists{/gist_id}","starred_url":"https://api.github.com/users/btcsuite/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/btcsuite/subscriptions","organizations_url":"https://api.github.com/users/btcsuite/orgs","repos_url":"https://api.github.com/users/btcsuite/repos","events_url":"https://api.github.com/users/btcsuite/events{/privacy}","received_events_url":"https://api.github.com/users/btcsuite/received_events","type":"Organization","site_admin":false},"repo":{"id":11931032,"name":"btcd","full_name":"btcsuite/btcd","owner":{"login":"btcsuite","id":10235229,"avatar_url":"https://avatars.githubusercontent.com/u/10235229?v=3","gravatar_id":"","url":"https://api.github.com/users/btcsuite","html_url":"https://github.com/btcsuite","followers_url":"https://api.github.com/users/btcsuite/followers","following_url":"https://api.github.com/users/btcsuite/following{/other_user}","gists_url":"https://api.github.com/users/btcsuite/gists{/gist_id}","starred_url":"https://api.github.com/users/btcsuite/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/btcsuite/subscriptions","organizations_url":"https://api.github.com/users/btcsuite/orgs","repos_url":"https://api.github.com/users/btcsuite/repos","events_url":"https://api.github.com/users/btcsuite/events{/privacy}","received_events_url":"https://api.github.com/users/btcsuite/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/btcsuite/btcd","description":"An alternative full node bitcoin implementation written in Go (golang)","fork":false,"url":"https://api.github.com/repos/btcsuite/btcd","forks_url":"https://api.github.com/repos/btcsuite/btcd/forks","keys_url":"https://api.github.com/repos/btcsuite/btcd/keys{/key_id}","collaborators_url":"https://api.github.com/repos/btcsuite/btcd/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/btcsuite/btcd/teams","hooks_url":"https://api.github.com/repos/btcsuite/btcd/hooks","issue_events_url":"https://api.github.com/repos/btcsuite/btcd/issues/events{/number}","events_url":"https://api.github.com/repos/btcsuite/btcd/events","assignees_url":"https://api.github.com/repos/btcsuite/btcd/assignees{/user}","branches_url":"https://api.github.com/repos/btcsuite/btcd/branches{/branch}","tags_url":"https://api.github.com/repos/btcsuite/btcd/tags","blobs_url":"https://api.github.com/repos/btcsuite/btcd/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/btcsuite/btcd/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/btcsuite/btcd/git/refs{/sha}","trees_url":"https://api.github.com/repos/btcsuite/btcd/git/trees{/sha}","statuses_url":"https://api.github.com/repos/btcsuite/btcd/statuses/{sha}","languages_url":"https://api.github.com/repos/btcsuite/btcd/languages","stargazers_url":"https://api.github.com/repos/btcsuite/btcd/stargazers","contributors_url":"https://api.github.com/repos/btcsuite/btcd/contributors","subscribers_url":"https://api.github.com/repos/btcsuite/btcd/subscribers","subscription_url":"https://api.github.com/repos/btcsuite/btcd/subscription","commits_url":"https://api.github.com/repos/btcsuite/btcd/commits{/sha}","git_commits_url":"https://api.github.com/repos/btcsuite/btcd/git/commits{/sha}","comments_url":"https://api.github.com/repos/btcsuite/btcd/comments{/number}","issue_comment_url":"https://api.github.com/repos/btcsuite/btcd/issues/comments{/number}","contents_url":"https://api.github.com/repos/btcsuite/btcd/contents/{+path}","compare_url":"https://api.github.com/repos/btcsuite/btcd/compare/{base}...{head}","merges_url":"https://api.github.com/repos/btcsuite/btcd/merges","archive_url":"https://api.github.com/repos/btcsuite/btcd/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/btcsuite/btcd/downloads","issues_url":"https://api.github.com/repos/btcsuite/btcd/issues{/number}","pulls_url":"https://api.github.com/repos/btcsuite/btcd/pulls{/number}","milestones_url":"https://api.github.com/repos/btcsuite/btcd/milestones{/number}","notifications_url":"https://api.github.com/repos/btcsuite/btcd/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/btcsuite/btcd/labels{/name}","releases_url":"https://api.github.com/repos/btcsuite/btcd/releases{/id}","deployments_url":"https://api.github.com/repos/btcsuite/btcd/deployments","created_at":"2013-08-06T18:10:52Z","updated_at":"2016-12-11T22:54:04Z","pushed_at":"2016-12-12T02:48:11Z","git_url":"git://github.com/btcsuite/btcd.git","ssh_url":"git@github.com:btcsuite/btcd.git","clone_url":"https://github.com/btcsuite/btcd.git","svn_url":"https://github.com/btcsuite/btcd","homepage":"https://github.com/btcsuite/btcd/blob/master/docs/README.md","size":18690,"stargazers_count":996,"watchers_count":996,"language":"Go","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":275,"mirror_url":null,"open_issues_count":58,"forks":275,"open_issues":58,"watchers":996,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/btcsuite/btcd/pulls/775"},"html":{"href":"https://github.com/btcsuite/btcd/pull/775"},"issue":{"href":"https://api.github.com/repos/btcsuite/btcd/issues/775"},"comments":{"href":"https://api.github.com/repos/btcsuite/btcd/issues/775/comments"},"review_comments":{"href":"https://api.github.com/repos/btcsuite/btcd/pulls/775/comments"},"review_comment":{"href":"https://api.github.com/repos/btcsuite/btcd/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/btcsuite/btcd/pulls/775/commits"},"statuses":{"href":"https://api.github.com/repos/btcsuite/btcd/statuses/0674f945a0a9a627700f6d72ffcb1d99c470fed7"}}}}
{"actor":{"display_login":"Roasbeef"}}