{"action":"created","comment":{"url":"https://api.github.com/repos/Microsoft/fsharplu/pulls/comments/204988352","pull_request_review_id":140168737,"id":204988352,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwNDk4ODM1Mg==","diff_hunk":"@@ -123,10 +123,18 @@ type CompactUnionJsonConverter(?tupleAsHeterogneousArray:bool) =\n                         // and serializing the nested object directly\n                         serializer.Serialize(writer, innerValue)\n         // Tuple\n-        else if tupleAsHeterogneousArray && isTupleType t then\n-            let v = FSharpValue.GetTupleFields value\n-            serializer.Serialize(writer, v)\n-\n+        else if isTupleType t then\n+            if tupleAsHeterogneousArray then\n+                let v = FSharpValue.GetTupleFields value\n+                serializer.Serialize(writer, v)\n+            else\n+                // need to serialize tuple as object format, but can't just call serializer.Serialize(writer, value) or will infinitely recur","path":"FSharpLu.Json/Compact.fs","position":13,"original_position":13,"commit_id":"5bd96718394dd97e55b7a617931bf1b4f1bd5df9","original_commit_id":"9d77a417e28f2c4f37f2c12c83dc6116d3c8b401","user":{"login":"blumu","id":3913258,"node_id":"MDQ6VXNlcjM5MTMyNTg=","avatar_url":"https://avatars3.githubusercontent.com/u/3913258?v=4","gravatar_id":"","url":"https://api.github.com/users/blumu","html_url":"https://github.com/blumu","followers_url":"https://api.github.com/users/blumu/followers","following_url":"https://api.github.com/users/blumu/following{/other_user}","gists_url":"https://api.github.com/users/blumu/gists{/gist_id}","starred_url":"https://api.github.com/users/blumu/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/blumu/subscriptions","organizations_url":"https://api.github.com/users/blumu/orgs","repos_url":"https://api.github.com/users/blumu/repos","events_url":"https://api.github.com/users/blumu/events{/privacy}","received_events_url":"https://api.github.com/users/blumu/received_events","type":"User","site_admin":false},"body":"Can we instead fall-back on the base class implementation of `WriteJson` (from `Newtonsoft.Json.JsonConverter`) to perform the serialization of the tuple as an JSON object? By just calling `base.WriteJson(...)`?","created_at":"2018-07-25T05:56:19Z","updated_at":"2018-07-25T05:56:19Z","html_url":"https://github.com/Microsoft/fsharplu/pull/42#discussion_r204988352","pull_request_url":"https://api.github.com/repos/Microsoft/fsharplu/pulls/42","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/Microsoft/fsharplu/pulls/comments/204988352"},"html":{"href":"https://github.com/Microsoft/fsharplu/pull/42#discussion_r204988352"},"pull_request":{"href":"https://api.github.com/repos/Microsoft/fsharplu/pulls/42"}}},"pull_request":{"url":"https://api.github.com/repos/Microsoft/fsharplu/pulls/42","id":203727021,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAzNzI3MDIx","html_url":"https://github.com/Microsoft/fsharplu/pull/42","diff_url":"https://github.com/Microsoft/fsharplu/pull/42.diff","patch_url":"https://github.com/Microsoft/fsharplu/pull/42.patch","issue_url":"https://api.github.com/repos/Microsoft/fsharplu/issues/42","number":42,"state":"open","locked":false,"title":"Add legacy tuple deserialization (and fix issue with serialization)","user":{"login":"MaxWilson","id":6829565,"node_id":"MDQ6VXNlcjY4Mjk1NjU=","avatar_url":"https://avatars3.githubusercontent.com/u/6829565?v=4","gravatar_id":"","url":"https://api.github.com/users/MaxWilson","html_url":"https://github.com/MaxWilson","followers_url":"https://api.github.com/users/MaxWilson/followers","following_url":"https://api.github.com/users/MaxWilson/following{/other_user}","gists_url":"https://api.github.com/users/MaxWilson/gists{/gist_id}","starred_url":"https://api.github.com/users/MaxWilson/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MaxWilson/subscriptions","organizations_url":"https://api.github.com/users/MaxWilson/orgs","repos_url":"https://api.github.com/users/MaxWilson/repos","events_url":"https://api.github.com/users/MaxWilson/events{/privacy}","received_events_url":"https://api.github.com/users/MaxWilson/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-07-25T05:43:04Z","updated_at":"2018-07-25T05:56:19Z","closed_at":null,"merged_at":null,"merge_commit_sha":"69ff644f5ee8250b6682d6f1b14b4a4178ddf4d9","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/Microsoft/fsharplu/pulls/42/commits","review_comments_url":"https://api.github.com/repos/Microsoft/fsharplu/pulls/42/comments","review_comment_url":"https://api.github.com/repos/Microsoft/fsharplu/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Microsoft/fsharplu/issues/42/comments","statuses_url":"https://api.github.com/repos/Microsoft/fsharplu/statuses/5bd96718394dd97e55b7a617931bf1b4f1bd5df9","head":{"label":"Microsoft:maxw/hackathon","ref":"maxw/hackathon","sha":"5bd96718394dd97e55b7a617931bf1b4f1bd5df9","user":{"login":"Microsoft","id":6154722,"node_id":"MDEyOk9yZ2FuaXphdGlvbjYxNTQ3MjI=","avatar_url":"https://avatars2.githubusercontent.com/u/6154722?v=4","gravatar_id":"","url":"https://api.github.com/users/Microsoft","html_url":"https://github.com/Microsoft","followers_url":"https://api.github.com/users/Microsoft/followers","following_url":"https://api.github.com/users/Microsoft/following{/other_user}","gists_url":"https://api.github.com/users/Microsoft/gists{/gist_id}","starred_url":"https://api.github.com/users/Microsoft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Microsoft/subscriptions","organizations_url":"https://api.github.com/users/Microsoft/orgs","repos_url":"https://api.github.com/users/Microsoft/repos","events_url":"https://api.github.com/users/Microsoft/events{/privacy}","received_events_url":"https://api.github.com/users/Microsoft/received_events","type":"Organization","site_admin":false},"repo":{"id":61918361,"node_id":"MDEwOlJlcG9zaXRvcnk2MTkxODM2MQ==","name":"fsharplu","full_name":"Microsoft/fsharplu","owner":{"login":"Microsoft","id":6154722,"node_id":"MDEyOk9yZ2FuaXphdGlvbjYxNTQ3MjI=","avatar_url":"https://avatars2.githubusercontent.com/u/6154722?v=4","gravatar_id":"","url":"https://api.github.com/users/Microsoft","html_url":"https://github.com/Microsoft","followers_url":"https://api.github.com/users/Microsoft/followers","following_url":"https://api.github.com/users/Microsoft/following{/other_user}","gists_url":"https://api.github.com/users/Microsoft/gists{/gist_id}","starred_url":"https://api.github.com/users/Microsoft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Microsoft/subscriptions","organizations_url":"https://api.github.com/users/Microsoft/orgs","repos_url":"https://api.github.com/users/Microsoft/repos","events_url":"https://api.github.com/users/Microsoft/events{/privacy}","received_events_url":"https://api.github.com/users/Microsoft/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Microsoft/fsharplu","description":"This library provides a set of F# helpers for string manipulations, logging, collection data structures, file operations, text processing, security, async, parsing, diagnostics, configuration files and Json serialization.","fork":false,"url":"https://api.github.com/repos/Microsoft/fsharplu","forks_url":"https://api.github.com/repos/Microsoft/fsharplu/forks","keys_url":"https://api.github.com/repos/Microsoft/fsharplu/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Microsoft/fsharplu/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Microsoft/fsharplu/teams","hooks_url":"https://api.github.com/repos/Microsoft/fsharplu/hooks","issue_events_url":"https://api.github.com/repos/Microsoft/fsharplu/issues/events{/number}","events_url":"https://api.github.com/repos/Microsoft/fsharplu/events","assignees_url":"https://api.github.com/repos/Microsoft/fsharplu/assignees{/user}","branches_url":"https://api.github.com/repos/Microsoft/fsharplu/branches{/branch}","tags_url":"https://api.github.com/repos/Microsoft/fsharplu/tags","blobs_url":"https://api.github.com/repos/Microsoft/fsharplu/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Microsoft/fsharplu/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Microsoft/fsharplu/git/refs{/sha}","trees_url":"https://api.github.com/repos/Microsoft/fsharplu/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Microsoft/fsharplu/statuses/{sha}","languages_url":"https://api.github.com/repos/Microsoft/fsharplu/languages","stargazers_url":"https://api.github.com/repos/Microsoft/fsharplu/stargazers","contributors_url":"https://api.github.com/repos/Microsoft/fsharplu/contributors","subscribers_url":"https://api.github.com/repos/Microsoft/fsharplu/subscribers","subscription_url":"https://api.github.com/repos/Microsoft/fsharplu/subscription","commits_url":"https://api.github.com/repos/Microsoft/fsharplu/commits{/sha}","git_commits_url":"https://api.github.com/repos/Microsoft/fsharplu/git/commits{/sha}","comments_url":"https://api.github.com/repos/Microsoft/fsharplu/comments{/number}","issue_comment_url":"https://api.github.com/repos/Microsoft/fsharplu/issues/comments{/number}","contents_url":"https://api.github.com/repos/Microsoft/fsharplu/contents/{+path}","compare_url":"https://api.github.com/repos/Microsoft/fsharplu/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Microsoft/fsharplu/merges","archive_url":"https://api.github.com/repos/Microsoft/fsharplu/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Microsoft/fsharplu/downloads","issues_url":"https://api.github.com/repos/Microsoft/fsharplu/issues{/number}","pulls_url":"https://api.github.com/repos/Microsoft/fsharplu/pulls{/number}","milestones_url":"https://api.github.com/repos/Microsoft/fsharplu/milestones{/number}","notifications_url":"https://api.github.com/repos/Microsoft/fsharplu/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Microsoft/fsharplu/labels{/name}","releases_url":"https://api.github.com/repos/Microsoft/fsharplu/releases{/id}","deployments_url":"https://api.github.com/repos/Microsoft/fsharplu/deployments","created_at":"2016-06-24T23:47:02Z","updated_at":"2018-07-24T09:03:15Z","pushed_at":"2018-07-25T05:49:12Z","git_url":"git://github.com/Microsoft/fsharplu.git","ssh_url":"git@github.com:Microsoft/fsharplu.git","clone_url":"https://github.com/Microsoft/fsharplu.git","svn_url":"https://github.com/Microsoft/fsharplu","homepage":"https://www.nuget.org/packages/Microsoft.FSharpLu/","size":155,"stargazers_count":183,"watchers_count":183,"language":"F#","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":17,"mirror_url":null,"archived":false,"open_issues_count":6,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":17,"open_issues":6,"watchers":183,"default_branch":"master"}},"base":{"label":"Microsoft:wiblum/hackathon","ref":"wiblum/hackathon","sha":"d6be7d666b4640244c3b058528597bf1aa3fd551","user":{"login":"Microsoft","id":6154722,"node_id":"MDEyOk9yZ2FuaXphdGlvbjYxNTQ3MjI=","avatar_url":"https://avatars2.githubusercontent.com/u/6154722?v=4","gravatar_id":"","url":"https://api.github.com/users/Microsoft","html_url":"https://github.com/Microsoft","followers_url":"https://api.github.com/users/Microsoft/followers","following_url":"https://api.github.com/users/Microsoft/following{/other_user}","gists_url":"https://api.github.com/users/Microsoft/gists{/gist_id}","starred_url":"https://api.github.com/users/Microsoft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Microsoft/subscriptions","organizations_url":"https://api.github.com/users/Microsoft/orgs","repos_url":"https://api.github.com/users/Microsoft/repos","events_url":"https://api.github.com/users/Microsoft/events{/privacy}","received_events_url":"https://api.github.com/users/Microsoft/received_events","type":"Organization","site_admin":false},"repo":{"id":61918361,"node_id":"MDEwOlJlcG9zaXRvcnk2MTkxODM2MQ==","name":"fsharplu","full_name":"Microsoft/fsharplu","owner":{"login":"Microsoft","id":6154722,"node_id":"MDEyOk9yZ2FuaXphdGlvbjYxNTQ3MjI=","avatar_url":"https://avatars2.githubusercontent.com/u/6154722?v=4","gravatar_id":"","url":"https://api.github.com/users/Microsoft","html_url":"https://github.com/Microsoft","followers_url":"https://api.github.com/users/Microsoft/followers","following_url":"https://api.github.com/users/Microsoft/following{/other_user}","gists_url":"https://api.github.com/users/Microsoft/gists{/gist_id}","starred_url":"https://api.github.com/users/Microsoft/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Microsoft/subscriptions","organizations_url":"https://api.github.com/users/Microsoft/orgs","repos_url":"https://api.github.com/users/Microsoft/repos","events_url":"https://api.github.com/users/Microsoft/events{/privacy}","received_events_url":"https://api.github.com/users/Microsoft/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Microsoft/fsharplu","description":"This library provides a set of F# helpers for string manipulations, logging, collection data structures, file operations, text processing, security, async, parsing, diagnostics, configuration files and Json serialization.","fork":false,"url":"https://api.github.com/repos/Microsoft/fsharplu","forks_url":"https://api.github.com/repos/Microsoft/fsharplu/forks","keys_url":"https://api.github.com/repos/Microsoft/fsharplu/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Microsoft/fsharplu/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Microsoft/fsharplu/teams","hooks_url":"https://api.github.com/repos/Microsoft/fsharplu/hooks","issue_events_url":"https://api.github.com/repos/Microsoft/fsharplu/issues/events{/number}","events_url":"https://api.github.com/repos/Microsoft/fsharplu/events","assignees_url":"https://api.github.com/repos/Microsoft/fsharplu/assignees{/user}","branches_url":"https://api.github.com/repos/Microsoft/fsharplu/branches{/branch}","tags_url":"https://api.github.com/repos/Microsoft/fsharplu/tags","blobs_url":"https://api.github.com/repos/Microsoft/fsharplu/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Microsoft/fsharplu/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Microsoft/fsharplu/git/refs{/sha}","trees_url":"https://api.github.com/repos/Microsoft/fsharplu/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Microsoft/fsharplu/statuses/{sha}","languages_url":"https://api.github.com/repos/Microsoft/fsharplu/languages","stargazers_url":"https://api.github.com/repos/Microsoft/fsharplu/stargazers","contributors_url":"https://api.github.com/repos/Microsoft/fsharplu/contributors","subscribers_url":"https://api.github.com/repos/Microsoft/fsharplu/subscribers","subscription_url":"https://api.github.com/repos/Microsoft/fsharplu/subscription","commits_url":"https://api.github.com/repos/Microsoft/fsharplu/commits{/sha}","git_commits_url":"https://api.github.com/repos/Microsoft/fsharplu/git/commits{/sha}","comments_url":"https://api.github.com/repos/Microsoft/fsharplu/comments{/number}","issue_comment_url":"https://api.github.com/repos/Microsoft/fsharplu/issues/comments{/number}","contents_url":"https://api.github.com/repos/Microsoft/fsharplu/contents/{+path}","compare_url":"https://api.github.com/repos/Microsoft/fsharplu/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Microsoft/fsharplu/merges","archive_url":"https://api.github.com/repos/Microsoft/fsharplu/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Microsoft/fsharplu/downloads","issues_url":"https://api.github.com/repos/Microsoft/fsharplu/issues{/number}","pulls_url":"https://api.github.com/repos/Microsoft/fsharplu/pulls{/number}","milestones_url":"https://api.github.com/repos/Microsoft/fsharplu/milestones{/number}","notifications_url":"https://api.github.com/repos/Microsoft/fsharplu/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Microsoft/fsharplu/labels{/name}","releases_url":"https://api.github.com/repos/Microsoft/fsharplu/releases{/id}","deployments_url":"https://api.github.com/repos/Microsoft/fsharplu/deployments","created_at":"2016-06-24T23:47:02Z","updated_at":"2018-07-24T09:03:15Z","pushed_at":"2018-07-25T05:49:12Z","git_url":"git://github.com/Microsoft/fsharplu.git","ssh_url":"git@github.com:Microsoft/fsharplu.git","clone_url":"https://github.com/Microsoft/fsharplu.git","svn_url":"https://github.com/Microsoft/fsharplu","homepage":"https://www.nuget.org/packages/Microsoft.FSharpLu/","size":155,"stargazers_count":183,"watchers_count":183,"language":"F#","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":17,"mirror_url":null,"archived":false,"open_issues_count":6,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":17,"open_issues":6,"watchers":183,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Microsoft/fsharplu/pulls/42"},"html":{"href":"https://github.com/Microsoft/fsharplu/pull/42"},"issue":{"href":"https://api.github.com/repos/Microsoft/fsharplu/issues/42"},"comments":{"href":"https://api.github.com/repos/Microsoft/fsharplu/issues/42/comments"},"review_comments":{"href":"https://api.github.com/repos/Microsoft/fsharplu/pulls/42/comments"},"review_comment":{"href":"https://api.github.com/repos/Microsoft/fsharplu/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Microsoft/fsharplu/pulls/42/commits"},"statuses":{"href":"https://api.github.com/repos/Microsoft/fsharplu/statuses/5bd96718394dd97e55b7a617931bf1b4f1bd5df9"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"blumu"}}