{"action":"created","comment":{"url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/comments/207753622","pull_request_review_id":143428407,"id":207753622,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIwNzc1MzYyMg==","diff_hunk":"@@ -60,170 +78,356 @@ end\n \n open Cmdliner\n \n+module C : sig\n+  type config = t\n+\n+  type 'a t\n+\n+  val choice :\n+       name:string\n+    -> all:(string * 'a) list\n+    -> update:(config -> 'a -> config)\n+    -> default:'a\n+    -> env:Term.env_info\n+    -> doc:string\n+    -> allow_inline:bool\n+    -> 'a t\n+\n+  val flag :\n+       names:string list\n+    -> update:(config -> bool -> config)\n+    -> default:bool\n+    -> env:Term.env_info\n+    -> doc:string\n+    -> allow_inline:bool\n+    -> bool t\n+\n+  val int :\n+       names:string list\n+    -> update:(config -> int -> config)\n+    -> default:int\n+    -> env:Term.env_info\n+    -> doc:string\n+    -> docv:string\n+    -> allow_inline:bool\n+    -> int t\n+\n+  val get : 'a t -> 'a\n+\n+  val update_config :\n+       config:config\n+    -> name:string\n+    -> value:string\n+    -> inline:bool\n+    -> ( config\n+       , [ `Unknown of string * string\n+         | `Bad_value of string * string\n+         | `Malformed of string\n+         | `Misplaced of string * string ] )\n+       Result.t\n+end = struct\n+  type config = t\n+\n+  type 'a t =\n+    { names: string list\n+    ; parse: string -> 'a\n+    ; update: config -> 'a -> config\n+    ; allow_inline: bool\n+    ; r: 'a ref }\n+\n+  type pack = Pack: 'a t -> pack [@@ocaml.boxed]","path":"src/Conf.ml","position":null,"original_position":86,"commit_id":"d6a4e42a4b8d63109bdc6afe137d644b0cded187","original_commit_id":"f79d0df21cd9dda56434f7d0e63c2f3caa64873e","user":{"login":"hhugo","id":835209,"node_id":"MDQ6VXNlcjgzNTIwOQ==","avatar_url":"https://avatars2.githubusercontent.com/u/835209?v=4","gravatar_id":"","url":"https://api.github.com/users/hhugo","html_url":"https://github.com/hhugo","followers_url":"https://api.github.com/users/hhugo/followers","following_url":"https://api.github.com/users/hhugo/following{/other_user}","gists_url":"https://api.github.com/users/hhugo/gists{/gist_id}","starred_url":"https://api.github.com/users/hhugo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hhugo/subscriptions","organizations_url":"https://api.github.com/users/hhugo/orgs","repos_url":"https://api.github.com/users/hhugo/repos","events_url":"https://api.github.com/users/hhugo/events{/privacy}","received_events_url":"https://api.github.com/users/hhugo/received_events","type":"User","site_admin":false},"body":"It's not needed anymore. I was initially using an inline record ","created_at":"2018-08-06T00:03:43Z","updated_at":"2018-08-06T00:03:43Z","html_url":"https://github.com/ocaml-ppx/ocamlformat/pull/286#discussion_r207753622","pull_request_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/286","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/comments/207753622"},"html":{"href":"https://github.com/ocaml-ppx/ocamlformat/pull/286#discussion_r207753622"},"pull_request":{"href":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/286"}},"in_reply_to_id":207749281},"pull_request":{"url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/286","id":206205882,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA2MjA1ODgy","html_url":"https://github.com/ocaml-ppx/ocamlformat/pull/286","diff_url":"https://github.com/ocaml-ppx/ocamlformat/pull/286.diff","patch_url":"https://github.com/ocaml-ppx/ocamlformat/pull/286.patch","issue_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/issues/286","number":286,"state":"open","locked":false,"title":"Improve: configure ocamlformat using attributes","user":{"login":"hhugo","id":835209,"node_id":"MDQ6VXNlcjgzNTIwOQ==","avatar_url":"https://avatars2.githubusercontent.com/u/835209?v=4","gravatar_id":"","url":"https://api.github.com/users/hhugo","html_url":"https://github.com/hhugo","followers_url":"https://api.github.com/users/hhugo/followers","following_url":"https://api.github.com/users/hhugo/following{/other_user}","gists_url":"https://api.github.com/users/hhugo/gists{/gist_id}","starred_url":"https://api.github.com/users/hhugo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hhugo/subscriptions","organizations_url":"https://api.github.com/users/hhugo/orgs","repos_url":"https://api.github.com/users/hhugo/repos","events_url":"https://api.github.com/users/hhugo/events{/privacy}","received_events_url":"https://api.github.com/users/hhugo/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-08-04T19:12:24Z","updated_at":"2018-08-06T00:03:43Z","closed_at":null,"merged_at":null,"merge_commit_sha":"57c069a1c183d1158bf2833328c04ca3e28eced8","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[{"id":726912631,"node_id":"MDU6TGFiZWw3MjY5MTI2MzE=","url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/labels/CLA%20Signed","name":"CLA Signed","color":"c2e0c6","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/286/commits","review_comments_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/286/comments","review_comment_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/comments{/number}","comments_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/issues/286/comments","statuses_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/statuses/d6a4e42a4b8d63109bdc6afe137d644b0cded187","head":{"label":"hhugo:scope","ref":"scope","sha":"d6a4e42a4b8d63109bdc6afe137d644b0cded187","user":{"login":"hhugo","id":835209,"node_id":"MDQ6VXNlcjgzNTIwOQ==","avatar_url":"https://avatars2.githubusercontent.com/u/835209?v=4","gravatar_id":"","url":"https://api.github.com/users/hhugo","html_url":"https://github.com/hhugo","followers_url":"https://api.github.com/users/hhugo/followers","following_url":"https://api.github.com/users/hhugo/following{/other_user}","gists_url":"https://api.github.com/users/hhugo/gists{/gist_id}","starred_url":"https://api.github.com/users/hhugo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hhugo/subscriptions","organizations_url":"https://api.github.com/users/hhugo/orgs","repos_url":"https://api.github.com/users/hhugo/repos","events_url":"https://api.github.com/users/hhugo/events{/privacy}","received_events_url":"https://api.github.com/users/hhugo/received_events","type":"User","site_admin":false},"repo":{"id":126765007,"node_id":"MDEwOlJlcG9zaXRvcnkxMjY3NjUwMDc=","name":"ocamlformat","full_name":"hhugo/ocamlformat","owner":{"login":"hhugo","id":835209,"node_id":"MDQ6VXNlcjgzNTIwOQ==","avatar_url":"https://avatars2.githubusercontent.com/u/835209?v=4","gravatar_id":"","url":"https://api.github.com/users/hhugo","html_url":"https://github.com/hhugo","followers_url":"https://api.github.com/users/hhugo/followers","following_url":"https://api.github.com/users/hhugo/following{/other_user}","gists_url":"https://api.github.com/users/hhugo/gists{/gist_id}","starred_url":"https://api.github.com/users/hhugo/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/hhugo/subscriptions","organizations_url":"https://api.github.com/users/hhugo/orgs","repos_url":"https://api.github.com/users/hhugo/repos","events_url":"https://api.github.com/users/hhugo/events{/privacy}","received_events_url":"https://api.github.com/users/hhugo/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/hhugo/ocamlformat","description":"Auto-formatter for OCaml code","fork":true,"url":"https://api.github.com/repos/hhugo/ocamlformat","forks_url":"https://api.github.com/repos/hhugo/ocamlformat/forks","keys_url":"https://api.github.com/repos/hhugo/ocamlformat/keys{/key_id}","collaborators_url":"https://api.github.com/repos/hhugo/ocamlformat/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/hhugo/ocamlformat/teams","hooks_url":"https://api.github.com/repos/hhugo/ocamlformat/hooks","issue_events_url":"https://api.github.com/repos/hhugo/ocamlformat/issues/events{/number}","events_url":"https://api.github.com/repos/hhugo/ocamlformat/events","assignees_url":"https://api.github.com/repos/hhugo/ocamlformat/assignees{/user}","branches_url":"https://api.github.com/repos/hhugo/ocamlformat/branches{/branch}","tags_url":"https://api.github.com/repos/hhugo/ocamlformat/tags","blobs_url":"https://api.github.com/repos/hhugo/ocamlformat/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/hhugo/ocamlformat/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/hhugo/ocamlformat/git/refs{/sha}","trees_url":"https://api.github.com/repos/hhugo/ocamlformat/git/trees{/sha}","statuses_url":"https://api.github.com/repos/hhugo/ocamlformat/statuses/{sha}","languages_url":"https://api.github.com/repos/hhugo/ocamlformat/languages","stargazers_url":"https://api.github.com/repos/hhugo/ocamlformat/stargazers","contributors_url":"https://api.github.com/repos/hhugo/ocamlformat/contributors","subscribers_url":"https://api.github.com/repos/hhugo/ocamlformat/subscribers","subscription_url":"https://api.github.com/repos/hhugo/ocamlformat/subscription","commits_url":"https://api.github.com/repos/hhugo/ocamlformat/commits{/sha}","git_commits_url":"https://api.github.com/repos/hhugo/ocamlformat/git/commits{/sha}","comments_url":"https://api.github.com/repos/hhugo/ocamlformat/comments{/number}","issue_comment_url":"https://api.github.com/repos/hhugo/ocamlformat/issues/comments{/number}","contents_url":"https://api.github.com/repos/hhugo/ocamlformat/contents/{+path}","compare_url":"https://api.github.com/repos/hhugo/ocamlformat/compare/{base}...{head}","merges_url":"https://api.github.com/repos/hhugo/ocamlformat/merges","archive_url":"https://api.github.com/repos/hhugo/ocamlformat/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/hhugo/ocamlformat/downloads","issues_url":"https://api.github.com/repos/hhugo/ocamlformat/issues{/number}","pulls_url":"https://api.github.com/repos/hhugo/ocamlformat/pulls{/number}","milestones_url":"https://api.github.com/repos/hhugo/ocamlformat/milestones{/number}","notifications_url":"https://api.github.com/repos/hhugo/ocamlformat/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/hhugo/ocamlformat/labels{/name}","releases_url":"https://api.github.com/repos/hhugo/ocamlformat/releases{/id}","deployments_url":"https://api.github.com/repos/hhugo/ocamlformat/deployments","created_at":"2018-03-26T02:52:22Z","updated_at":"2018-05-07T21:48:56Z","pushed_at":"2018-08-06T00:03:09Z","git_url":"git://github.com/hhugo/ocamlformat.git","ssh_url":"git@github.com:hhugo/ocamlformat.git","clone_url":"https://github.com/hhugo/ocamlformat.git","svn_url":"https://github.com/hhugo/ocamlformat","homepage":"","size":1081,"stargazers_count":0,"watchers_count":0,"language":"OCaml","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":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"ocaml-ppx:master","ref":"master","sha":"362db8bdc045d7d9a1797e75144ddc28bddaae59","user":{"login":"ocaml-ppx","id":31065556,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMxMDY1NTU2","avatar_url":"https://avatars2.githubusercontent.com/u/31065556?v=4","gravatar_id":"","url":"https://api.github.com/users/ocaml-ppx","html_url":"https://github.com/ocaml-ppx","followers_url":"https://api.github.com/users/ocaml-ppx/followers","following_url":"https://api.github.com/users/ocaml-ppx/following{/other_user}","gists_url":"https://api.github.com/users/ocaml-ppx/gists{/gist_id}","starred_url":"https://api.github.com/users/ocaml-ppx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ocaml-ppx/subscriptions","organizations_url":"https://api.github.com/users/ocaml-ppx/orgs","repos_url":"https://api.github.com/users/ocaml-ppx/repos","events_url":"https://api.github.com/users/ocaml-ppx/events{/privacy}","received_events_url":"https://api.github.com/users/ocaml-ppx/received_events","type":"Organization","site_admin":false},"repo":{"id":106263946,"node_id":"MDEwOlJlcG9zaXRvcnkxMDYyNjM5NDY=","name":"ocamlformat","full_name":"ocaml-ppx/ocamlformat","owner":{"login":"ocaml-ppx","id":31065556,"node_id":"MDEyOk9yZ2FuaXphdGlvbjMxMDY1NTU2","avatar_url":"https://avatars2.githubusercontent.com/u/31065556?v=4","gravatar_id":"","url":"https://api.github.com/users/ocaml-ppx","html_url":"https://github.com/ocaml-ppx","followers_url":"https://api.github.com/users/ocaml-ppx/followers","following_url":"https://api.github.com/users/ocaml-ppx/following{/other_user}","gists_url":"https://api.github.com/users/ocaml-ppx/gists{/gist_id}","starred_url":"https://api.github.com/users/ocaml-ppx/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ocaml-ppx/subscriptions","organizations_url":"https://api.github.com/users/ocaml-ppx/orgs","repos_url":"https://api.github.com/users/ocaml-ppx/repos","events_url":"https://api.github.com/users/ocaml-ppx/events{/privacy}","received_events_url":"https://api.github.com/users/ocaml-ppx/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/ocaml-ppx/ocamlformat","description":"Auto-formatter for OCaml code","fork":false,"url":"https://api.github.com/repos/ocaml-ppx/ocamlformat","forks_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/forks","keys_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/keys{/key_id}","collaborators_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/teams","hooks_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/hooks","issue_events_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/issues/events{/number}","events_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/events","assignees_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/assignees{/user}","branches_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/branches{/branch}","tags_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/tags","blobs_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/git/refs{/sha}","trees_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/git/trees{/sha}","statuses_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/statuses/{sha}","languages_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/languages","stargazers_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/stargazers","contributors_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/contributors","subscribers_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/subscribers","subscription_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/subscription","commits_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/commits{/sha}","git_commits_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/git/commits{/sha}","comments_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/comments{/number}","issue_comment_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/issues/comments{/number}","contents_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/contents/{+path}","compare_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/compare/{base}...{head}","merges_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/merges","archive_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/downloads","issues_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/issues{/number}","pulls_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls{/number}","milestones_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/milestones{/number}","notifications_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/labels{/name}","releases_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/releases{/id}","deployments_url":"https://api.github.com/repos/ocaml-ppx/ocamlformat/deployments","created_at":"2017-10-09T09:34:08Z","updated_at":"2018-08-05T23:39:32Z","pushed_at":"2018-08-06T00:03:10Z","git_url":"git://github.com/ocaml-ppx/ocamlformat.git","ssh_url":"git@github.com:ocaml-ppx/ocamlformat.git","clone_url":"https://github.com/ocaml-ppx/ocamlformat.git","svn_url":"https://github.com/ocaml-ppx/ocamlformat","homepage":"","size":903,"stargazers_count":157,"watchers_count":157,"language":"OCaml","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":21,"mirror_url":null,"archived":false,"open_issues_count":42,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"forks":21,"open_issues":42,"watchers":157,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/286"},"html":{"href":"https://github.com/ocaml-ppx/ocamlformat/pull/286"},"issue":{"href":"https://api.github.com/repos/ocaml-ppx/ocamlformat/issues/286"},"comments":{"href":"https://api.github.com/repos/ocaml-ppx/ocamlformat/issues/286/comments"},"review_comments":{"href":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/286/comments"},"review_comment":{"href":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/ocaml-ppx/ocamlformat/pulls/286/commits"},"statuses":{"href":"https://api.github.com/repos/ocaml-ppx/ocamlformat/statuses/d6a4e42a4b8d63109bdc6afe137d644b0cded187"}},"author_association":"COLLABORATOR"}}
{"actor":{"display_login":"hhugo"}}