{"action":"created","comment":{"url":"https://api.github.com/repos/typelevel/paiges/pulls/comments/204187629","pull_request_review_id":139232787,"id":204187629,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwNDE4NzYyOQ==","diff_hunk":"@@ -442,60 +444,39 @@ sealed abstract class Doc extends Product with Serializable {\n     loop(Left(this) :: Nil, Doc.empty)\n   }\n \n-  /**\n-   * This method is similar to flatten, but returns None if no\n-   * flattening was needed (i.e. if no newlines or unions were present).\n-   *\n-   * As with flatten, the resulting Doc (if any) will never render any\n-   * newlines, no matter what width is used.\n-   */\n-  def flattenOption: Option[Doc] = {\n-    val res = flattenBoolean\n-    if (res._2) Some(res._1) else None\n-  }\n+  private[paiges] def tryFlatten: Doc = flatten getOrElse this\n \n-  /**\n-   * Convert this Doc to a single-line representation.\n-   *\n-   * All newlines are replaced with spaces (and optional indentation\n-   * is ignored). The resulting Doc will never render any newlines, no\n-   * matter what width is used.\n-   */\n-  def flatten: Doc = flattenOption getOrElse this\n-\n-  // return the flattened doc, and if it is different\n-  private def flattenBoolean: (Doc, Boolean) = {","path":"core/src/main/scala/org/typelevel/paiges/Doc.scala","position":115,"original_position":115,"commit_id":"f38c91c33439068944ded238c6318d3640c00e02","original_commit_id":"f38c91c33439068944ded238c6318d3640c00e02","user":{"login":"johnynek","id":67958,"node_id":"MDQ6VXNlcjY3OTU4","avatar_url":"https://avatars0.githubusercontent.com/u/67958?v=4","gravatar_id":"","url":"https://api.github.com/users/johnynek","html_url":"https://github.com/johnynek","followers_url":"https://api.github.com/users/johnynek/followers","following_url":"https://api.github.com/users/johnynek/following{/other_user}","gists_url":"https://api.github.com/users/johnynek/gists{/gist_id}","starred_url":"https://api.github.com/users/johnynek/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/johnynek/subscriptions","organizations_url":"https://api.github.com/users/johnynek/orgs","repos_url":"https://api.github.com/users/johnynek/repos","events_url":"https://api.github.com/users/johnynek/events{/privacy}","received_events_url":"https://api.github.com/users/johnynek/received_events","type":"User","site_admin":false},"body":"previously we were using that flattenBoolean simplifies the Doc also (it makes sure we have the correct associativity on Concat, and it removes needless Align, Nest, etc...","created_at":"2018-07-20T23:01:13Z","updated_at":"2018-07-20T23:13:31Z","html_url":"https://github.com/typelevel/paiges/pull/99#discussion_r204187629","pull_request_url":"https://api.github.com/repos/typelevel/paiges/pulls/99","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/typelevel/paiges/pulls/comments/204187629"},"html":{"href":"https://github.com/typelevel/paiges/pull/99#discussion_r204187629"},"pull_request":{"href":"https://api.github.com/repos/typelevel/paiges/pulls/99"}}},"pull_request":{"url":"https://api.github.com/repos/typelevel/paiges/pulls/99","id":201869276,"node_id":"MDExOlB1bGxSZXF1ZXN0MjAxODY5Mjc2","html_url":"https://github.com/typelevel/paiges/pull/99","diff_url":"https://github.com/typelevel/paiges/pull/99.diff","patch_url":"https://github.com/typelevel/paiges/pull/99.patch","issue_url":"https://api.github.com/repos/typelevel/paiges/issues/99","number":99,"state":"open","locked":false,"title":"Add hard line break that is unmodifed by 'grouped'","user":{"login":"seanmcl","id":110393,"node_id":"MDQ6VXNlcjExMDM5Mw==","avatar_url":"https://avatars3.githubusercontent.com/u/110393?v=4","gravatar_id":"","url":"https://api.github.com/users/seanmcl","html_url":"https://github.com/seanmcl","followers_url":"https://api.github.com/users/seanmcl/followers","following_url":"https://api.github.com/users/seanmcl/following{/other_user}","gists_url":"https://api.github.com/users/seanmcl/gists{/gist_id}","starred_url":"https://api.github.com/users/seanmcl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/seanmcl/subscriptions","organizations_url":"https://api.github.com/users/seanmcl/orgs","repos_url":"https://api.github.com/users/seanmcl/repos","events_url":"https://api.github.com/users/seanmcl/events{/privacy}","received_events_url":"https://api.github.com/users/seanmcl/received_events","type":"User","site_admin":false},"body":"Addresses #76.  There are still a couple failing tests, but I figured I'd publish\r\nmy work so far so @olafurpg can see progress is being made, and\r\nothers can take a look.","created_at":"2018-07-17T08:57:44Z","updated_at":"2018-07-20T23:13:31Z","closed_at":null,"merged_at":null,"merge_commit_sha":"5d802f9d707d98831e5c0a8d5056659a785d25cb","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/typelevel/paiges/pulls/99/commits","review_comments_url":"https://api.github.com/repos/typelevel/paiges/pulls/99/comments","review_comment_url":"https://api.github.com/repos/typelevel/paiges/pulls/comments{/number}","comments_url":"https://api.github.com/repos/typelevel/paiges/issues/99/comments","statuses_url":"https://api.github.com/repos/typelevel/paiges/statuses/f38c91c33439068944ded238c6318d3640c00e02","head":{"label":"seanmcl:sm/flat-alt","ref":"sm/flat-alt","sha":"f38c91c33439068944ded238c6318d3640c00e02","user":{"login":"seanmcl","id":110393,"node_id":"MDQ6VXNlcjExMDM5Mw==","avatar_url":"https://avatars3.githubusercontent.com/u/110393?v=4","gravatar_id":"","url":"https://api.github.com/users/seanmcl","html_url":"https://github.com/seanmcl","followers_url":"https://api.github.com/users/seanmcl/followers","following_url":"https://api.github.com/users/seanmcl/following{/other_user}","gists_url":"https://api.github.com/users/seanmcl/gists{/gist_id}","starred_url":"https://api.github.com/users/seanmcl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/seanmcl/subscriptions","organizations_url":"https://api.github.com/users/seanmcl/orgs","repos_url":"https://api.github.com/users/seanmcl/repos","events_url":"https://api.github.com/users/seanmcl/events{/privacy}","received_events_url":"https://api.github.com/users/seanmcl/received_events","type":"User","site_admin":false},"repo":{"id":94467926,"node_id":"MDEwOlJlcG9zaXRvcnk5NDQ2NzkyNg==","name":"paiges","full_name":"seanmcl/paiges","owner":{"login":"seanmcl","id":110393,"node_id":"MDQ6VXNlcjExMDM5Mw==","avatar_url":"https://avatars3.githubusercontent.com/u/110393?v=4","gravatar_id":"","url":"https://api.github.com/users/seanmcl","html_url":"https://github.com/seanmcl","followers_url":"https://api.github.com/users/seanmcl/followers","following_url":"https://api.github.com/users/seanmcl/following{/other_user}","gists_url":"https://api.github.com/users/seanmcl/gists{/gist_id}","starred_url":"https://api.github.com/users/seanmcl/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/seanmcl/subscriptions","organizations_url":"https://api.github.com/users/seanmcl/orgs","repos_url":"https://api.github.com/users/seanmcl/repos","events_url":"https://api.github.com/users/seanmcl/events{/privacy}","received_events_url":"https://api.github.com/users/seanmcl/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/seanmcl/paiges","description":"an implementation of Wadler's a prettier printer","fork":true,"url":"https://api.github.com/repos/seanmcl/paiges","forks_url":"https://api.github.com/repos/seanmcl/paiges/forks","keys_url":"https://api.github.com/repos/seanmcl/paiges/keys{/key_id}","collaborators_url":"https://api.github.com/repos/seanmcl/paiges/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/seanmcl/paiges/teams","hooks_url":"https://api.github.com/repos/seanmcl/paiges/hooks","issue_events_url":"https://api.github.com/repos/seanmcl/paiges/issues/events{/number}","events_url":"https://api.github.com/repos/seanmcl/paiges/events","assignees_url":"https://api.github.com/repos/seanmcl/paiges/assignees{/user}","branches_url":"https://api.github.com/repos/seanmcl/paiges/branches{/branch}","tags_url":"https://api.github.com/repos/seanmcl/paiges/tags","blobs_url":"https://api.github.com/repos/seanmcl/paiges/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/seanmcl/paiges/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/seanmcl/paiges/git/refs{/sha}","trees_url":"https://api.github.com/repos/seanmcl/paiges/git/trees{/sha}","statuses_url":"https://api.github.com/repos/seanmcl/paiges/statuses/{sha}","languages_url":"https://api.github.com/repos/seanmcl/paiges/languages","stargazers_url":"https://api.github.com/repos/seanmcl/paiges/stargazers","contributors_url":"https://api.github.com/repos/seanmcl/paiges/contributors","subscribers_url":"https://api.github.com/repos/seanmcl/paiges/subscribers","subscription_url":"https://api.github.com/repos/seanmcl/paiges/subscription","commits_url":"https://api.github.com/repos/seanmcl/paiges/commits{/sha}","git_commits_url":"https://api.github.com/repos/seanmcl/paiges/git/commits{/sha}","comments_url":"https://api.github.com/repos/seanmcl/paiges/comments{/number}","issue_comment_url":"https://api.github.com/repos/seanmcl/paiges/issues/comments{/number}","contents_url":"https://api.github.com/repos/seanmcl/paiges/contents/{+path}","compare_url":"https://api.github.com/repos/seanmcl/paiges/compare/{base}...{head}","merges_url":"https://api.github.com/repos/seanmcl/paiges/merges","archive_url":"https://api.github.com/repos/seanmcl/paiges/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/seanmcl/paiges/downloads","issues_url":"https://api.github.com/repos/seanmcl/paiges/issues{/number}","pulls_url":"https://api.github.com/repos/seanmcl/paiges/pulls{/number}","milestones_url":"https://api.github.com/repos/seanmcl/paiges/milestones{/number}","notifications_url":"https://api.github.com/repos/seanmcl/paiges/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/seanmcl/paiges/labels{/name}","releases_url":"https://api.github.com/repos/seanmcl/paiges/releases{/id}","deployments_url":"https://api.github.com/repos/seanmcl/paiges/deployments","created_at":"2017-06-15T18:31:25Z","updated_at":"2017-06-15T18:31:26Z","pushed_at":"2018-07-17T10:10:14Z","git_url":"git://github.com/seanmcl/paiges.git","ssh_url":"git@github.com:seanmcl/paiges.git","clone_url":"https://github.com/seanmcl/paiges.git","svn_url":"https://github.com/seanmcl/paiges","homepage":null,"size":200,"stargazers_count":0,"watchers_count":0,"language":"Scala","has_issues":false,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"typelevel:master","ref":"master","sha":"0439c4353cab451610352a38669caebf9b6c68d2","user":{"login":"typelevel","id":3731824,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM3MzE4MjQ=","avatar_url":"https://avatars0.githubusercontent.com/u/3731824?v=4","gravatar_id":"","url":"https://api.github.com/users/typelevel","html_url":"https://github.com/typelevel","followers_url":"https://api.github.com/users/typelevel/followers","following_url":"https://api.github.com/users/typelevel/following{/other_user}","gists_url":"https://api.github.com/users/typelevel/gists{/gist_id}","starred_url":"https://api.github.com/users/typelevel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/typelevel/subscriptions","organizations_url":"https://api.github.com/users/typelevel/orgs","repos_url":"https://api.github.com/users/typelevel/repos","events_url":"https://api.github.com/users/typelevel/events{/privacy}","received_events_url":"https://api.github.com/users/typelevel/received_events","type":"Organization","site_admin":false},"repo":{"id":86292872,"node_id":"MDEwOlJlcG9zaXRvcnk4NjI5Mjg3Mg==","name":"paiges","full_name":"typelevel/paiges","owner":{"login":"typelevel","id":3731824,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM3MzE4MjQ=","avatar_url":"https://avatars0.githubusercontent.com/u/3731824?v=4","gravatar_id":"","url":"https://api.github.com/users/typelevel","html_url":"https://github.com/typelevel","followers_url":"https://api.github.com/users/typelevel/followers","following_url":"https://api.github.com/users/typelevel/following{/other_user}","gists_url":"https://api.github.com/users/typelevel/gists{/gist_id}","starred_url":"https://api.github.com/users/typelevel/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/typelevel/subscriptions","organizations_url":"https://api.github.com/users/typelevel/orgs","repos_url":"https://api.github.com/users/typelevel/repos","events_url":"https://api.github.com/users/typelevel/events{/privacy}","received_events_url":"https://api.github.com/users/typelevel/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/typelevel/paiges","description":"an implementation of Wadler's a prettier printer","fork":false,"url":"https://api.github.com/repos/typelevel/paiges","forks_url":"https://api.github.com/repos/typelevel/paiges/forks","keys_url":"https://api.github.com/repos/typelevel/paiges/keys{/key_id}","collaborators_url":"https://api.github.com/repos/typelevel/paiges/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/typelevel/paiges/teams","hooks_url":"https://api.github.com/repos/typelevel/paiges/hooks","issue_events_url":"https://api.github.com/repos/typelevel/paiges/issues/events{/number}","events_url":"https://api.github.com/repos/typelevel/paiges/events","assignees_url":"https://api.github.com/repos/typelevel/paiges/assignees{/user}","branches_url":"https://api.github.com/repos/typelevel/paiges/branches{/branch}","tags_url":"https://api.github.com/repos/typelevel/paiges/tags","blobs_url":"https://api.github.com/repos/typelevel/paiges/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/typelevel/paiges/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/typelevel/paiges/git/refs{/sha}","trees_url":"https://api.github.com/repos/typelevel/paiges/git/trees{/sha}","statuses_url":"https://api.github.com/repos/typelevel/paiges/statuses/{sha}","languages_url":"https://api.github.com/repos/typelevel/paiges/languages","stargazers_url":"https://api.github.com/repos/typelevel/paiges/stargazers","contributors_url":"https://api.github.com/repos/typelevel/paiges/contributors","subscribers_url":"https://api.github.com/repos/typelevel/paiges/subscribers","subscription_url":"https://api.github.com/repos/typelevel/paiges/subscription","commits_url":"https://api.github.com/repos/typelevel/paiges/commits{/sha}","git_commits_url":"https://api.github.com/repos/typelevel/paiges/git/commits{/sha}","comments_url":"https://api.github.com/repos/typelevel/paiges/comments{/number}","issue_comment_url":"https://api.github.com/repos/typelevel/paiges/issues/comments{/number}","contents_url":"https://api.github.com/repos/typelevel/paiges/contents/{+path}","compare_url":"https://api.github.com/repos/typelevel/paiges/compare/{base}...{head}","merges_url":"https://api.github.com/repos/typelevel/paiges/merges","archive_url":"https://api.github.com/repos/typelevel/paiges/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/typelevel/paiges/downloads","issues_url":"https://api.github.com/repos/typelevel/paiges/issues{/number}","pulls_url":"https://api.github.com/repos/typelevel/paiges/pulls{/number}","milestones_url":"https://api.github.com/repos/typelevel/paiges/milestones{/number}","notifications_url":"https://api.github.com/repos/typelevel/paiges/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/typelevel/paiges/labels{/name}","releases_url":"https://api.github.com/repos/typelevel/paiges/releases{/id}","deployments_url":"https://api.github.com/repos/typelevel/paiges/deployments","created_at":"2017-03-27T04:56:35Z","updated_at":"2018-07-20T22:58:23Z","pushed_at":"2018-07-20T22:58:25Z","git_url":"git://github.com/typelevel/paiges.git","ssh_url":"git@github.com:typelevel/paiges.git","clone_url":"https://github.com/typelevel/paiges.git","svn_url":"https://github.com/typelevel/paiges","homepage":null,"size":233,"stargazers_count":80,"watchers_count":80,"language":"Scala","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":16,"mirror_url":null,"archived":false,"open_issues_count":6,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":16,"open_issues":6,"watchers":80,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/typelevel/paiges/pulls/99"},"html":{"href":"https://github.com/typelevel/paiges/pull/99"},"issue":{"href":"https://api.github.com/repos/typelevel/paiges/issues/99"},"comments":{"href":"https://api.github.com/repos/typelevel/paiges/issues/99/comments"},"review_comments":{"href":"https://api.github.com/repos/typelevel/paiges/pulls/99/comments"},"review_comment":{"href":"https://api.github.com/repos/typelevel/paiges/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/typelevel/paiges/pulls/99/commits"},"statuses":{"href":"https://api.github.com/repos/typelevel/paiges/statuses/f38c91c33439068944ded238c6318d3640c00e02"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"johnynek"}}