{"action":"created","comment":{"url":"https://api.github.com/repos/jmcardon/tsec/pulls/comments/176667526","pull_request_review_id":106411590,"id":176667526,"diff_hunk":"@@ -14,22 +15,24 @@ object jwtStatefulExample {\n \n   import ExampleAuthHelpers._\n \n+  type AuthService = TSecAuthService[User, AugmentedJWT[HMACSHA256, Int], IO]\n+\n   val jwtStore =\n     dummyBackingStore[IO, SecureRandomId, AugmentedJWT[HMACSHA256, Int]](s => SecureRandomId.coerce(s.id))\n \n   //We create a way to store our users. You can attach this to say, your doobie accessor\n   val userStore: BackingStore[IO, Int, User] = dummyBackingStore[IO, Int, User](_.id)\n \n   val signingKey\n-  : MacSigningKey[HMACSHA256] = HMACSHA256.generateKey[Id] //Our signing key. Instantiate in a safe way using GenerateLift\n+    : MacSigningKey[HMACSHA256] = HMACSHA256.generateKey[Id] //Our signing key. Instantiate in a safe way using GenerateLift\n \n   val jwtStatefulAuth =\n     JWTAuthenticator.withBackingStore(\n       expiryDuration = 10.minutes, //Absolute expiration time\n-      maxIdle        = None,\n-      tokenStore     = jwtStore,\n-      identityStore  = userStore,\n-      signingKey     = signingKey\n+      maxIdle = None,","path":"examples/src/main/scala/http4sExamples/jwtStatefulExample.scala","position":31,"original_position":31,"commit_id":"6031181db15137cda16276d70dbdbd5e4ac1ce97","original_commit_id":"6031181db15137cda16276d70dbdbd5e4ac1ce97","user":{"login":"rsoeldner","id":26225067,"avatar_url":"https://avatars2.githubusercontent.com/u/26225067?v=4","gravatar_id":"","url":"https://api.github.com/users/rsoeldner","html_url":"https://github.com/rsoeldner","followers_url":"https://api.github.com/users/rsoeldner/followers","following_url":"https://api.github.com/users/rsoeldner/following{/other_user}","gists_url":"https://api.github.com/users/rsoeldner/gists{/gist_id}","starred_url":"https://api.github.com/users/rsoeldner/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rsoeldner/subscriptions","organizations_url":"https://api.github.com/users/rsoeldner/orgs","repos_url":"https://api.github.com/users/rsoeldner/repos","events_url":"https://api.github.com/users/rsoeldner/events{/privacy}","received_events_url":"https://api.github.com/users/rsoeldner/received_events","type":"User","site_admin":false},"body":"what happens to your formating ?","created_at":"2018-03-23T08:40:11Z","updated_at":"2018-03-23T08:55:11Z","html_url":"https://github.com/jmcardon/tsec/pull/142#discussion_r176667526","pull_request_url":"https://api.github.com/repos/jmcardon/tsec/pulls/142","author_association":"COLLABORATOR","_links":{"self":{"href":"https://api.github.com/repos/jmcardon/tsec/pulls/comments/176667526"},"html":{"href":"https://github.com/jmcardon/tsec/pull/142#discussion_r176667526"},"pull_request":{"href":"https://api.github.com/repos/jmcardon/tsec/pulls/142"}}},"pull_request":{"url":"https://api.github.com/repos/jmcardon/tsec/pulls/142","id":176681210,"html_url":"https://github.com/jmcardon/tsec/pull/142","diff_url":"https://github.com/jmcardon/tsec/pull/142.diff","patch_url":"https://github.com/jmcardon/tsec/pull/142.patch","issue_url":"https://api.github.com/repos/jmcardon/tsec/issues/142","number":142,"state":"open","locked":false,"title":"QOL fixes for tsec-http4s","user":{"login":"jmcardon","id":15273652,"avatar_url":"https://avatars3.githubusercontent.com/u/15273652?v=4","gravatar_id":"","url":"https://api.github.com/users/jmcardon","html_url":"https://github.com/jmcardon","followers_url":"https://api.github.com/users/jmcardon/followers","following_url":"https://api.github.com/users/jmcardon/following{/other_user}","gists_url":"https://api.github.com/users/jmcardon/gists{/gist_id}","starred_url":"https://api.github.com/users/jmcardon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmcardon/subscriptions","organizations_url":"https://api.github.com/users/jmcardon/orgs","repos_url":"https://api.github.com/users/jmcardon/repos","events_url":"https://api.github.com/users/jmcardon/events{/privacy}","received_events_url":"https://api.github.com/users/jmcardon/received_events","type":"User","site_admin":false},"body":"A few classes for authenticators seem to be over-constrained. \r\n\r\nThis is in a general move to not force authenticators to use the JCA, to eventually enable fips for authentication as well.\r\n\r\nThis PR deals with:\r\n- Loosening constrains, and removing unneeded ones.\r\n- Adding an example similar to #140, for all authenticators\r\n- Adds unverified parsing for a `JWTMac`. Small enough stuff to where it can fit in this PR too. \r\n\r\nCloses #105 \r\nCloses #104 \r\nCloses #114 \r\n\r\nNote: #143 and #144 merge into this one as a general improvement of the Http4s api, to separate more significant points:\r\n- #143 deals with general improvements to `PasswordStore`, from a usability persective\r\n- #144 adds a user aware service.\r\n\r\nMerge this one after #143 and #144 ","created_at":"2018-03-22T05:45:11Z","updated_at":"2018-03-23T08:55:11Z","closed_at":null,"merged_at":null,"merge_commit_sha":"18331c3a7844bf86e3b72a61a3e4570ae9828c98","assignee":null,"assignees":[],"requested_reviewers":[{"login":"ChristopherDavenport","id":10272700,"avatar_url":"https://avatars0.githubusercontent.com/u/10272700?v=4","gravatar_id":"","url":"https://api.github.com/users/ChristopherDavenport","html_url":"https://github.com/ChristopherDavenport","followers_url":"https://api.github.com/users/ChristopherDavenport/followers","following_url":"https://api.github.com/users/ChristopherDavenport/following{/other_user}","gists_url":"https://api.github.com/users/ChristopherDavenport/gists{/gist_id}","starred_url":"https://api.github.com/users/ChristopherDavenport/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ChristopherDavenport/subscriptions","organizations_url":"https://api.github.com/users/ChristopherDavenport/orgs","repos_url":"https://api.github.com/users/ChristopherDavenport/repos","events_url":"https://api.github.com/users/ChristopherDavenport/events{/privacy}","received_events_url":"https://api.github.com/users/ChristopherDavenport/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[{"id":750269564,"url":"https://api.github.com/repos/jmcardon/tsec/labels/don't%20merge%20yet","name":"don't merge yet","color":"d348d6","default":false}],"milestone":null,"commits_url":"https://api.github.com/repos/jmcardon/tsec/pulls/142/commits","review_comments_url":"https://api.github.com/repos/jmcardon/tsec/pulls/142/comments","review_comment_url":"https://api.github.com/repos/jmcardon/tsec/pulls/comments{/number}","comments_url":"https://api.github.com/repos/jmcardon/tsec/issues/142/comments","statuses_url":"https://api.github.com/repos/jmcardon/tsec/statuses/6031181db15137cda16276d70dbdbd5e4ac1ce97","head":{"label":"jmcardon:http4improve","ref":"http4improve","sha":"6031181db15137cda16276d70dbdbd5e4ac1ce97","user":{"login":"jmcardon","id":15273652,"avatar_url":"https://avatars3.githubusercontent.com/u/15273652?v=4","gravatar_id":"","url":"https://api.github.com/users/jmcardon","html_url":"https://github.com/jmcardon","followers_url":"https://api.github.com/users/jmcardon/followers","following_url":"https://api.github.com/users/jmcardon/following{/other_user}","gists_url":"https://api.github.com/users/jmcardon/gists{/gist_id}","starred_url":"https://api.github.com/users/jmcardon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmcardon/subscriptions","organizations_url":"https://api.github.com/users/jmcardon/orgs","repos_url":"https://api.github.com/users/jmcardon/repos","events_url":"https://api.github.com/users/jmcardon/events{/privacy}","received_events_url":"https://api.github.com/users/jmcardon/received_events","type":"User","site_admin":false},"repo":{"id":99377204,"name":"tsec","full_name":"jmcardon/tsec","owner":{"login":"jmcardon","id":15273652,"avatar_url":"https://avatars3.githubusercontent.com/u/15273652?v=4","gravatar_id":"","url":"https://api.github.com/users/jmcardon","html_url":"https://github.com/jmcardon","followers_url":"https://api.github.com/users/jmcardon/followers","following_url":"https://api.github.com/users/jmcardon/following{/other_user}","gists_url":"https://api.github.com/users/jmcardon/gists{/gist_id}","starred_url":"https://api.github.com/users/jmcardon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmcardon/subscriptions","organizations_url":"https://api.github.com/users/jmcardon/orgs","repos_url":"https://api.github.com/users/jmcardon/repos","events_url":"https://api.github.com/users/jmcardon/events{/privacy}","received_events_url":"https://api.github.com/users/jmcardon/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jmcardon/tsec","description":"Type-safe general-cryptography library - https://jmcardon.github.io/tsec/","fork":false,"url":"https://api.github.com/repos/jmcardon/tsec","forks_url":"https://api.github.com/repos/jmcardon/tsec/forks","keys_url":"https://api.github.com/repos/jmcardon/tsec/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jmcardon/tsec/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jmcardon/tsec/teams","hooks_url":"https://api.github.com/repos/jmcardon/tsec/hooks","issue_events_url":"https://api.github.com/repos/jmcardon/tsec/issues/events{/number}","events_url":"https://api.github.com/repos/jmcardon/tsec/events","assignees_url":"https://api.github.com/repos/jmcardon/tsec/assignees{/user}","branches_url":"https://api.github.com/repos/jmcardon/tsec/branches{/branch}","tags_url":"https://api.github.com/repos/jmcardon/tsec/tags","blobs_url":"https://api.github.com/repos/jmcardon/tsec/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jmcardon/tsec/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jmcardon/tsec/git/refs{/sha}","trees_url":"https://api.github.com/repos/jmcardon/tsec/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jmcardon/tsec/statuses/{sha}","languages_url":"https://api.github.com/repos/jmcardon/tsec/languages","stargazers_url":"https://api.github.com/repos/jmcardon/tsec/stargazers","contributors_url":"https://api.github.com/repos/jmcardon/tsec/contributors","subscribers_url":"https://api.github.com/repos/jmcardon/tsec/subscribers","subscription_url":"https://api.github.com/repos/jmcardon/tsec/subscription","commits_url":"https://api.github.com/repos/jmcardon/tsec/commits{/sha}","git_commits_url":"https://api.github.com/repos/jmcardon/tsec/git/commits{/sha}","comments_url":"https://api.github.com/repos/jmcardon/tsec/comments{/number}","issue_comment_url":"https://api.github.com/repos/jmcardon/tsec/issues/comments{/number}","contents_url":"https://api.github.com/repos/jmcardon/tsec/contents/{+path}","compare_url":"https://api.github.com/repos/jmcardon/tsec/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jmcardon/tsec/merges","archive_url":"https://api.github.com/repos/jmcardon/tsec/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jmcardon/tsec/downloads","issues_url":"https://api.github.com/repos/jmcardon/tsec/issues{/number}","pulls_url":"https://api.github.com/repos/jmcardon/tsec/pulls{/number}","milestones_url":"https://api.github.com/repos/jmcardon/tsec/milestones{/number}","notifications_url":"https://api.github.com/repos/jmcardon/tsec/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jmcardon/tsec/labels{/name}","releases_url":"https://api.github.com/repos/jmcardon/tsec/releases{/id}","deployments_url":"https://api.github.com/repos/jmcardon/tsec/deployments","created_at":"2017-08-04T20:25:11Z","updated_at":"2018-03-22T03:29:03Z","pushed_at":"2018-03-23T05:10:46Z","git_url":"git://github.com/jmcardon/tsec.git","ssh_url":"git@github.com:jmcardon/tsec.git","clone_url":"https://github.com/jmcardon/tsec.git","svn_url":"https://github.com/jmcardon/tsec","homepage":"","size":2380,"stargazers_count":121,"watchers_count":121,"language":"Scala","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":19,"mirror_url":null,"archived":false,"open_issues_count":24,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit"},"forks":19,"open_issues":24,"watchers":121,"default_branch":"master"}},"base":{"label":"jmcardon:master","ref":"master","sha":"9150ba3ca00293dc4b9001b163f57f78746eb640","user":{"login":"jmcardon","id":15273652,"avatar_url":"https://avatars3.githubusercontent.com/u/15273652?v=4","gravatar_id":"","url":"https://api.github.com/users/jmcardon","html_url":"https://github.com/jmcardon","followers_url":"https://api.github.com/users/jmcardon/followers","following_url":"https://api.github.com/users/jmcardon/following{/other_user}","gists_url":"https://api.github.com/users/jmcardon/gists{/gist_id}","starred_url":"https://api.github.com/users/jmcardon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmcardon/subscriptions","organizations_url":"https://api.github.com/users/jmcardon/orgs","repos_url":"https://api.github.com/users/jmcardon/repos","events_url":"https://api.github.com/users/jmcardon/events{/privacy}","received_events_url":"https://api.github.com/users/jmcardon/received_events","type":"User","site_admin":false},"repo":{"id":99377204,"name":"tsec","full_name":"jmcardon/tsec","owner":{"login":"jmcardon","id":15273652,"avatar_url":"https://avatars3.githubusercontent.com/u/15273652?v=4","gravatar_id":"","url":"https://api.github.com/users/jmcardon","html_url":"https://github.com/jmcardon","followers_url":"https://api.github.com/users/jmcardon/followers","following_url":"https://api.github.com/users/jmcardon/following{/other_user}","gists_url":"https://api.github.com/users/jmcardon/gists{/gist_id}","starred_url":"https://api.github.com/users/jmcardon/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jmcardon/subscriptions","organizations_url":"https://api.github.com/users/jmcardon/orgs","repos_url":"https://api.github.com/users/jmcardon/repos","events_url":"https://api.github.com/users/jmcardon/events{/privacy}","received_events_url":"https://api.github.com/users/jmcardon/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jmcardon/tsec","description":"Type-safe general-cryptography library - https://jmcardon.github.io/tsec/","fork":false,"url":"https://api.github.com/repos/jmcardon/tsec","forks_url":"https://api.github.com/repos/jmcardon/tsec/forks","keys_url":"https://api.github.com/repos/jmcardon/tsec/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jmcardon/tsec/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jmcardon/tsec/teams","hooks_url":"https://api.github.com/repos/jmcardon/tsec/hooks","issue_events_url":"https://api.github.com/repos/jmcardon/tsec/issues/events{/number}","events_url":"https://api.github.com/repos/jmcardon/tsec/events","assignees_url":"https://api.github.com/repos/jmcardon/tsec/assignees{/user}","branches_url":"https://api.github.com/repos/jmcardon/tsec/branches{/branch}","tags_url":"https://api.github.com/repos/jmcardon/tsec/tags","blobs_url":"https://api.github.com/repos/jmcardon/tsec/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jmcardon/tsec/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jmcardon/tsec/git/refs{/sha}","trees_url":"https://api.github.com/repos/jmcardon/tsec/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jmcardon/tsec/statuses/{sha}","languages_url":"https://api.github.com/repos/jmcardon/tsec/languages","stargazers_url":"https://api.github.com/repos/jmcardon/tsec/stargazers","contributors_url":"https://api.github.com/repos/jmcardon/tsec/contributors","subscribers_url":"https://api.github.com/repos/jmcardon/tsec/subscribers","subscription_url":"https://api.github.com/repos/jmcardon/tsec/subscription","commits_url":"https://api.github.com/repos/jmcardon/tsec/commits{/sha}","git_commits_url":"https://api.github.com/repos/jmcardon/tsec/git/commits{/sha}","comments_url":"https://api.github.com/repos/jmcardon/tsec/comments{/number}","issue_comment_url":"https://api.github.com/repos/jmcardon/tsec/issues/comments{/number}","contents_url":"https://api.github.com/repos/jmcardon/tsec/contents/{+path}","compare_url":"https://api.github.com/repos/jmcardon/tsec/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jmcardon/tsec/merges","archive_url":"https://api.github.com/repos/jmcardon/tsec/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jmcardon/tsec/downloads","issues_url":"https://api.github.com/repos/jmcardon/tsec/issues{/number}","pulls_url":"https://api.github.com/repos/jmcardon/tsec/pulls{/number}","milestones_url":"https://api.github.com/repos/jmcardon/tsec/milestones{/number}","notifications_url":"https://api.github.com/repos/jmcardon/tsec/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jmcardon/tsec/labels{/name}","releases_url":"https://api.github.com/repos/jmcardon/tsec/releases{/id}","deployments_url":"https://api.github.com/repos/jmcardon/tsec/deployments","created_at":"2017-08-04T20:25:11Z","updated_at":"2018-03-22T03:29:03Z","pushed_at":"2018-03-23T05:10:46Z","git_url":"git://github.com/jmcardon/tsec.git","ssh_url":"git@github.com:jmcardon/tsec.git","clone_url":"https://github.com/jmcardon/tsec.git","svn_url":"https://github.com/jmcardon/tsec","homepage":"","size":2380,"stargazers_count":121,"watchers_count":121,"language":"Scala","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":true,"has_pages":true,"forks_count":19,"mirror_url":null,"archived":false,"open_issues_count":24,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit"},"forks":19,"open_issues":24,"watchers":121,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/jmcardon/tsec/pulls/142"},"html":{"href":"https://github.com/jmcardon/tsec/pull/142"},"issue":{"href":"https://api.github.com/repos/jmcardon/tsec/issues/142"},"comments":{"href":"https://api.github.com/repos/jmcardon/tsec/issues/142/comments"},"review_comments":{"href":"https://api.github.com/repos/jmcardon/tsec/pulls/142/comments"},"review_comment":{"href":"https://api.github.com/repos/jmcardon/tsec/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/jmcardon/tsec/pulls/142/commits"},"statuses":{"href":"https://api.github.com/repos/jmcardon/tsec/statuses/6031181db15137cda16276d70dbdbd5e4ac1ce97"}},"author_association":"OWNER"}}
{"actor":{"display_login":"rsoeldner"}}