{"action":"created","comment":{"url":"https://api.github.com/repos/uber/thriftrw/pulls/comments/42431387","id":42431387,"diff_hunk":"@@ -365,20 +365,29 @@ typedef map<Struct, Struct> (js.type = 'entries') StructsByStructs\n \n JavaScript numbers lack sufficient precision to represent all possible 64 bit\n integers.\n-ThriftRW decodes 64 bit integers into a Buffer, but can coerce various types\n-down to i64 for purposes of expressing them as JSON.\n+ThriftRW decodes 64 bit integers into a Buffer by default, and can coerce\n+various types down to i64 for purposes of expressing them as JSON or plain\n+JavaScript objects.\n \n - A number up to the maximum integer precision available in JavaScript.\n-- A `{hi, lo}` pair of 32 bit precision integers.\n+- A `{hi, lo}` or `{high, low}` pair of 32 bit precision integers.\n - A 16 digit hexadecimal string, like `0102030405060708`.\n - An array of 8 byte values. Ranges are not checked, but coerced.\n - An 8 byte buffer.\n \n-In a future version, we are likely to expose `js.type` annotations to read any\n-of these forms off the wire.\n-Currently, they can only be written.\n+ThriftRW supports a type annotation for i64 that reifies i64 as an instance of\n+[Long][], an object that models a 64 bit number as a `{high, low}` pair of 32","path":"README.md","position":21,"original_position":21,"commit_id":"a39a799c88d920444b8da66f44f707430b03fffa","original_commit_id":"a39a799c88d920444b8da66f44f707430b03fffa","user":{"login":"kriskowal","id":60294,"avatar_url":"https://avatars.githubusercontent.com/u/60294?v=3","gravatar_id":"","url":"https://api.github.com/users/kriskowal","html_url":"https://github.com/kriskowal","followers_url":"https://api.github.com/users/kriskowal/followers","following_url":"https://api.github.com/users/kriskowal/following{/other_user}","gists_url":"https://api.github.com/users/kriskowal/gists{/gist_id}","starred_url":"https://api.github.com/users/kriskowal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kriskowal/subscriptions","organizations_url":"https://api.github.com/users/kriskowal/orgs","repos_url":"https://api.github.com/users/kriskowal/repos","events_url":"https://api.github.com/users/kriskowal/events{/privacy}","received_events_url":"https://api.github.com/users/kriskowal/received_events","type":"User","site_admin":false},"body":"Markdown autonomous link syntax.","created_at":"2015-10-19T21:57:31Z","updated_at":"2015-10-19T21:57:31Z","html_url":"https://github.com/uber/thriftrw/pull/76#discussion_r42431387","pull_request_url":"https://api.github.com/repos/uber/thriftrw/pulls/76","_links":{"self":{"href":"https://api.github.com/repos/uber/thriftrw/pulls/comments/42431387"},"html":{"href":"https://github.com/uber/thriftrw/pull/76#discussion_r42431387"},"pull_request":{"href":"https://api.github.com/repos/uber/thriftrw/pulls/76"}}},"pull_request":{"url":"https://api.github.com/repos/uber/thriftrw/pulls/76","id":47999762,"html_url":"https://github.com/uber/thriftrw/pull/76","diff_url":"https://github.com/uber/thriftrw/pull/76.diff","patch_url":"https://github.com/uber/thriftrw/pull/76.patch","issue_url":"https://api.github.com/repos/uber/thriftrw/issues/76","number":76,"state":"open","locked":false,"title":"Introduce i64 Date annotation","user":{"login":"kriskowal","id":60294,"avatar_url":"https://avatars.githubusercontent.com/u/60294?v=3","gravatar_id":"","url":"https://api.github.com/users/kriskowal","html_url":"https://github.com/kriskowal","followers_url":"https://api.github.com/users/kriskowal/followers","following_url":"https://api.github.com/users/kriskowal/following{/other_user}","gists_url":"https://api.github.com/users/kriskowal/gists{/gist_id}","starred_url":"https://api.github.com/users/kriskowal/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kriskowal/subscriptions","organizations_url":"https://api.github.com/users/kriskowal/orgs","repos_url":"https://api.github.com/users/kriskowal/repos","events_url":"https://api.github.com/users/kriskowal/events{/privacy}","received_events_url":"https://api.github.com/users/kriskowal/received_events","type":"User","site_admin":false},"body":"This PR adds a feature where an i64 can be annotated with js.type = 'Date'. The millisecond precision i64 timestamp will be read as a JavaScript Date with 53 bits precision. ISO timestamp strings, epoch milliseconds, and Date instances will all be coerced to the i64 milliseconds when writing.\r\n\r\nWith this change, TCurl will accept and display ISO timestamps anywhere an `i64 (js.type = 'Date')` is bought or sold.\r\n\r\nr @malandrew @blampe @jcorbin ","created_at":"2015-10-18T01:59:24Z","updated_at":"2015-10-19T21:57:31Z","closed_at":null,"merged_at":null,"merge_commit_sha":"8446b5f9d8aae10e6b6dbf6134a6d914ba92c8c2","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/uber/thriftrw/pulls/76/commits","review_comments_url":"https://api.github.com/repos/uber/thriftrw/pulls/76/comments","review_comment_url":"https://api.github.com/repos/uber/thriftrw/pulls/comments{/number}","comments_url":"https://api.github.com/repos/uber/thriftrw/issues/76/comments","statuses_url":"https://api.github.com/repos/uber/thriftrw/statuses/a39a799c88d920444b8da66f44f707430b03fffa","head":{"label":"uber:time64","ref":"time64","sha":"a39a799c88d920444b8da66f44f707430b03fffa","user":{"login":"uber","id":538264,"avatar_url":"https://avatars.githubusercontent.com/u/538264?v=3","gravatar_id":"","url":"https://api.github.com/users/uber","html_url":"https://github.com/uber","followers_url":"https://api.github.com/users/uber/followers","following_url":"https://api.github.com/users/uber/following{/other_user}","gists_url":"https://api.github.com/users/uber/gists{/gist_id}","starred_url":"https://api.github.com/users/uber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uber/subscriptions","organizations_url":"https://api.github.com/users/uber/orgs","repos_url":"https://api.github.com/users/uber/repos","events_url":"https://api.github.com/users/uber/events{/privacy}","received_events_url":"https://api.github.com/users/uber/received_events","type":"Organization","site_admin":false},"repo":{"id":32355438,"name":"thriftrw","full_name":"uber/thriftrw","owner":{"login":"uber","id":538264,"avatar_url":"https://avatars.githubusercontent.com/u/538264?v=3","gravatar_id":"","url":"https://api.github.com/users/uber","html_url":"https://github.com/uber","followers_url":"https://api.github.com/users/uber/followers","following_url":"https://api.github.com/users/uber/following{/other_user}","gists_url":"https://api.github.com/users/uber/gists{/gist_id}","starred_url":"https://api.github.com/users/uber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uber/subscriptions","organizations_url":"https://api.github.com/users/uber/orgs","repos_url":"https://api.github.com/users/uber/repos","events_url":"https://api.github.com/users/uber/events{/privacy}","received_events_url":"https://api.github.com/users/uber/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/uber/thriftrw","description":"A thrift binary encoding library using bufrw","fork":false,"url":"https://api.github.com/repos/uber/thriftrw","forks_url":"https://api.github.com/repos/uber/thriftrw/forks","keys_url":"https://api.github.com/repos/uber/thriftrw/keys{/key_id}","collaborators_url":"https://api.github.com/repos/uber/thriftrw/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/uber/thriftrw/teams","hooks_url":"https://api.github.com/repos/uber/thriftrw/hooks","issue_events_url":"https://api.github.com/repos/uber/thriftrw/issues/events{/number}","events_url":"https://api.github.com/repos/uber/thriftrw/events","assignees_url":"https://api.github.com/repos/uber/thriftrw/assignees{/user}","branches_url":"https://api.github.com/repos/uber/thriftrw/branches{/branch}","tags_url":"https://api.github.com/repos/uber/thriftrw/tags","blobs_url":"https://api.github.com/repos/uber/thriftrw/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/uber/thriftrw/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/uber/thriftrw/git/refs{/sha}","trees_url":"https://api.github.com/repos/uber/thriftrw/git/trees{/sha}","statuses_url":"https://api.github.com/repos/uber/thriftrw/statuses/{sha}","languages_url":"https://api.github.com/repos/uber/thriftrw/languages","stargazers_url":"https://api.github.com/repos/uber/thriftrw/stargazers","contributors_url":"https://api.github.com/repos/uber/thriftrw/contributors","subscribers_url":"https://api.github.com/repos/uber/thriftrw/subscribers","subscription_url":"https://api.github.com/repos/uber/thriftrw/subscription","commits_url":"https://api.github.com/repos/uber/thriftrw/commits{/sha}","git_commits_url":"https://api.github.com/repos/uber/thriftrw/git/commits{/sha}","comments_url":"https://api.github.com/repos/uber/thriftrw/comments{/number}","issue_comment_url":"https://api.github.com/repos/uber/thriftrw/issues/comments{/number}","contents_url":"https://api.github.com/repos/uber/thriftrw/contents/{+path}","compare_url":"https://api.github.com/repos/uber/thriftrw/compare/{base}...{head}","merges_url":"https://api.github.com/repos/uber/thriftrw/merges","archive_url":"https://api.github.com/repos/uber/thriftrw/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/uber/thriftrw/downloads","issues_url":"https://api.github.com/repos/uber/thriftrw/issues{/number}","pulls_url":"https://api.github.com/repos/uber/thriftrw/pulls{/number}","milestones_url":"https://api.github.com/repos/uber/thriftrw/milestones{/number}","notifications_url":"https://api.github.com/repos/uber/thriftrw/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/uber/thriftrw/labels{/name}","releases_url":"https://api.github.com/repos/uber/thriftrw/releases{/id}","created_at":"2015-03-16T21:56:44Z","updated_at":"2015-08-26T07:36:40Z","pushed_at":"2015-10-19T21:56:51Z","git_url":"git://github.com/uber/thriftrw.git","ssh_url":"git@github.com:uber/thriftrw.git","clone_url":"https://github.com/uber/thriftrw.git","svn_url":"https://github.com/uber/thriftrw","homepage":null,"size":905,"stargazers_count":3,"watchers_count":3,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":13,"forks":1,"open_issues":13,"watchers":3,"default_branch":"master"}},"base":{"label":"uber:master","ref":"master","sha":"f95de1caa9e626cd211c8edfee7adba79ecf1cb3","user":{"login":"uber","id":538264,"avatar_url":"https://avatars.githubusercontent.com/u/538264?v=3","gravatar_id":"","url":"https://api.github.com/users/uber","html_url":"https://github.com/uber","followers_url":"https://api.github.com/users/uber/followers","following_url":"https://api.github.com/users/uber/following{/other_user}","gists_url":"https://api.github.com/users/uber/gists{/gist_id}","starred_url":"https://api.github.com/users/uber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uber/subscriptions","organizations_url":"https://api.github.com/users/uber/orgs","repos_url":"https://api.github.com/users/uber/repos","events_url":"https://api.github.com/users/uber/events{/privacy}","received_events_url":"https://api.github.com/users/uber/received_events","type":"Organization","site_admin":false},"repo":{"id":32355438,"name":"thriftrw","full_name":"uber/thriftrw","owner":{"login":"uber","id":538264,"avatar_url":"https://avatars.githubusercontent.com/u/538264?v=3","gravatar_id":"","url":"https://api.github.com/users/uber","html_url":"https://github.com/uber","followers_url":"https://api.github.com/users/uber/followers","following_url":"https://api.github.com/users/uber/following{/other_user}","gists_url":"https://api.github.com/users/uber/gists{/gist_id}","starred_url":"https://api.github.com/users/uber/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/uber/subscriptions","organizations_url":"https://api.github.com/users/uber/orgs","repos_url":"https://api.github.com/users/uber/repos","events_url":"https://api.github.com/users/uber/events{/privacy}","received_events_url":"https://api.github.com/users/uber/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/uber/thriftrw","description":"A thrift binary encoding library using bufrw","fork":false,"url":"https://api.github.com/repos/uber/thriftrw","forks_url":"https://api.github.com/repos/uber/thriftrw/forks","keys_url":"https://api.github.com/repos/uber/thriftrw/keys{/key_id}","collaborators_url":"https://api.github.com/repos/uber/thriftrw/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/uber/thriftrw/teams","hooks_url":"https://api.github.com/repos/uber/thriftrw/hooks","issue_events_url":"https://api.github.com/repos/uber/thriftrw/issues/events{/number}","events_url":"https://api.github.com/repos/uber/thriftrw/events","assignees_url":"https://api.github.com/repos/uber/thriftrw/assignees{/user}","branches_url":"https://api.github.com/repos/uber/thriftrw/branches{/branch}","tags_url":"https://api.github.com/repos/uber/thriftrw/tags","blobs_url":"https://api.github.com/repos/uber/thriftrw/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/uber/thriftrw/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/uber/thriftrw/git/refs{/sha}","trees_url":"https://api.github.com/repos/uber/thriftrw/git/trees{/sha}","statuses_url":"https://api.github.com/repos/uber/thriftrw/statuses/{sha}","languages_url":"https://api.github.com/repos/uber/thriftrw/languages","stargazers_url":"https://api.github.com/repos/uber/thriftrw/stargazers","contributors_url":"https://api.github.com/repos/uber/thriftrw/contributors","subscribers_url":"https://api.github.com/repos/uber/thriftrw/subscribers","subscription_url":"https://api.github.com/repos/uber/thriftrw/subscription","commits_url":"https://api.github.com/repos/uber/thriftrw/commits{/sha}","git_commits_url":"https://api.github.com/repos/uber/thriftrw/git/commits{/sha}","comments_url":"https://api.github.com/repos/uber/thriftrw/comments{/number}","issue_comment_url":"https://api.github.com/repos/uber/thriftrw/issues/comments{/number}","contents_url":"https://api.github.com/repos/uber/thriftrw/contents/{+path}","compare_url":"https://api.github.com/repos/uber/thriftrw/compare/{base}...{head}","merges_url":"https://api.github.com/repos/uber/thriftrw/merges","archive_url":"https://api.github.com/repos/uber/thriftrw/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/uber/thriftrw/downloads","issues_url":"https://api.github.com/repos/uber/thriftrw/issues{/number}","pulls_url":"https://api.github.com/repos/uber/thriftrw/pulls{/number}","milestones_url":"https://api.github.com/repos/uber/thriftrw/milestones{/number}","notifications_url":"https://api.github.com/repos/uber/thriftrw/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/uber/thriftrw/labels{/name}","releases_url":"https://api.github.com/repos/uber/thriftrw/releases{/id}","created_at":"2015-03-16T21:56:44Z","updated_at":"2015-08-26T07:36:40Z","pushed_at":"2015-10-19T21:56:51Z","git_url":"git://github.com/uber/thriftrw.git","ssh_url":"git@github.com:uber/thriftrw.git","clone_url":"https://github.com/uber/thriftrw.git","svn_url":"https://github.com/uber/thriftrw","homepage":null,"size":905,"stargazers_count":3,"watchers_count":3,"language":"JavaScript","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":1,"mirror_url":null,"open_issues_count":13,"forks":1,"open_issues":13,"watchers":3,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/uber/thriftrw/pulls/76"},"html":{"href":"https://github.com/uber/thriftrw/pull/76"},"issue":{"href":"https://api.github.com/repos/uber/thriftrw/issues/76"},"comments":{"href":"https://api.github.com/repos/uber/thriftrw/issues/76/comments"},"review_comments":{"href":"https://api.github.com/repos/uber/thriftrw/pulls/76/comments"},"review_comment":{"href":"https://api.github.com/repos/uber/thriftrw/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/uber/thriftrw/pulls/76/commits"},"statuses":{"href":"https://api.github.com/repos/uber/thriftrw/statuses/a39a799c88d920444b8da66f44f707430b03fffa"}}}}