{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":489120248,"defaultBranch":"main","name":"tcld","ownerLogin":"temporalio","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2022-05-05T20:41:42.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/56493103?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1715274191.0","currentOid":""},"activityList":{"items":[{"before":"3aa867094483056c932a7746ad1476226cfd3a4f","after":null,"ref":"refs/heads/tszucs/refresh","pushedAt":"2024-05-08T23:25:30.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"tminusplus","name":"Travis","path":"/tminusplus","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1060873?s=80&v=4"}},{"before":"c904bbb3d7879d3d9f209932624c3aeda2551dae","after":"d558b0828b12f17bd90514fd812894b4e849a4e8","ref":"refs/heads/main","pushedAt":"2024-05-08T23:25:30.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"tminusplus","name":"Travis","path":"/tminusplus","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1060873?s=80&v=4"},"commit":{"message":"Add refresh token support for logins (#258)\n\n## What was changed\r\nThis adds refresh tokens to tcld by switching to the `golang.org/x/oauth2` which supports device codes and refresh tokens.\r\n\r\nOther changes in this PR:\r\n- Noticed that other tests were reading the actual tcld config folder. And would panic if it does not exist. So added `NewTestApp` which sets the config dir to a temporary directory + other convenience settings.\r\n- Removed LoginService to reduce coupling in code, so that `connection.go` can be tested without invoking a login.\r\n- Removed mocks around LoginService, to ensure the tcld code is exercised in tests.\r\n- Added making the config directory, if it doesn't exist, in `feature.go` to avoid nil panics in testing.\r\n- Removed the `Before` code in the `NewLoginCommand`, as nothing was done with the loaded login config.\r\n- Removed the use of `os.RemoveAll`, to ensure a bug does not remove directories on a user's computer when the intent was to remove a single file.\r\n\r\n## Why?\r\nAllows us to shorten token access expiration times.\r\n\r\n## Checklist\r\n- [x] Tested logging in and making a request.\r\n- [x] Tested logging in on an older tcld, updating, and then making a request.\r\n- [x] Tested logging in on an older tcld, updating, re-logging in, and verified the config is in the new format.\r\n- [x] Tested waiting for the access token to expire, and then making a request to get a new refresh token.\r\n- [x] Added unit tests around refresh token support and the use of the `golang.org/x/oauth2` library.\r\n- [x] Tested login flows with refresh tokens disabled server-side.","shortMessageHtmlLink":"Add refresh token support for logins (#258)"}},{"before":"e16fa2c047959a6723dcb3e9febe1f5cb62a8166","after":"3aa867094483056c932a7746ad1476226cfd3a4f","ref":"refs/heads/tszucs/refresh","pushedAt":"2024-05-08T23:23:13.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tminusplus","name":"Travis","path":"/tminusplus","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1060873?s=80&v=4"},"commit":{"message":"Always logout","shortMessageHtmlLink":"Always logout"}},{"before":"b4b996ab4f32f77756cc32d1d47b19b1680363db","after":"e16fa2c047959a6723dcb3e9febe1f5cb62a8166","ref":"refs/heads/tszucs/refresh","pushedAt":"2024-05-03T21:33:45.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tminusplus","name":"Travis","path":"/tminusplus","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1060873?s=80&v=4"},"commit":{"message":"Fix lint","shortMessageHtmlLink":"Fix lint"}},{"before":"6d434132c30fb9d0540b31793a4e1b758601bf96","after":"b4b996ab4f32f77756cc32d1d47b19b1680363db","ref":"refs/heads/tszucs/refresh","pushedAt":"2024-05-03T21:30:56.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tminusplus","name":"Travis","path":"/tminusplus","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1060873?s=80&v=4"},"commit":{"message":"Fix unit tests","shortMessageHtmlLink":"Fix unit tests"}},{"before":"00bd0aa79c1a6a460f7a421c0c57c9bd2abb076f","after":"6d434132c30fb9d0540b31793a4e1b758601bf96","ref":"refs/heads/tszucs/refresh","pushedAt":"2024-05-03T16:26:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"tminusplus","name":"Travis","path":"/tminusplus","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1060873?s=80&v=4"},"commit":{"message":"Small fixes","shortMessageHtmlLink":"Small fixes"}},{"before":"88d85f0808c157ea76c239f00cb68de5171982e4","after":"00bd0aa79c1a6a460f7a421c0c57c9bd2abb076f","ref":"refs/heads/tszucs/refresh","pushedAt":"2024-05-02T21:46:42.000Z","pushType":"push","commitsCount":21,"pusher":{"login":"tminusplus","name":"Travis","path":"/tminusplus","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/1060873?s=80&v=4"},"commit":{"message":"Merge branch 'main' into tszucs/refresh","shortMessageHtmlLink":"Merge branch 'main' into tszucs/refresh"}},{"before":"22a848fc4a15d67f3e80c1f8921e8fa4d867e989","after":null,"ref":"refs/heads/chandler/add_check_new_version","pushedAt":"2024-04-23T18:19:15.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"chndler","name":"Chandler Ortman","path":"/chndler","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5118514?s=80&v=4"}},{"before":null,"after":"22a848fc4a15d67f3e80c1f8921e8fa4d867e989","ref":"refs/heads/chandler/add_check_new_version","pushedAt":"2024-04-23T18:18:30.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"chndler","name":"Chandler Ortman","path":"/chndler","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/5118514?s=80&v=4"},"commit":{"message":"Refactor defer resp.Body.Close()","shortMessageHtmlLink":"Refactor defer resp.Body.Close()"}},{"before":"10df7ec2c220b00e8fa2604d29c56fc16af61954","after":null,"ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T21:06:40.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"}},{"before":"cd81595a9a9fa80911c8826bcd8e1fbe0da36055","after":"c904bbb3d7879d3d9f209932624c3aeda2551dae","ref":"refs/heads/main","pushedAt":"2024-04-18T21:06:39.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"Add prompt to set auth method (#345)","shortMessageHtmlLink":"Add prompt to set auth method (#345)"}},{"before":"9f8a521601def11e65f71dfa00e133df2998c8c2","after":"10df7ec2c220b00e8fa2604d29c56fc16af61954","ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T21:05:38.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"rm comment","shortMessageHtmlLink":"rm comment"}},{"before":"1347010fb10ea639f980ba310e128bc5a62d6759","after":"9f8a521601def11e65f71dfa00e133df2998c8c2","ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T20:54:11.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"wording","shortMessageHtmlLink":"wording"}},{"before":"66fdb06e9e81c826bed3fdeffe91d3b7552bdea9","after":"1347010fb10ea639f980ba310e128bc5a62d6759","ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T20:51:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"simplify logic","shortMessageHtmlLink":"simplify logic"}},{"before":"e7de4cf8acacb8fdb8f6361b0447eb4717098453","after":"66fdb06e9e81c826bed3fdeffe91d3b7552bdea9","ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T20:23:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"from->to","shortMessageHtmlLink":"from->to"}},{"before":"2b0f9bdcb6644779ca96a16a8aea4cbb79bc739c","after":"e7de4cf8acacb8fdb8f6361b0447eb4717098453","ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T19:28:08.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"to->from","shortMessageHtmlLink":"to->from"}},{"before":"b7e5d16cfd7a423748cc64d92a5fdd1e0300cba5","after":"2b0f9bdcb6644779ca96a16a8aea4cbb79bc739c","ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T19:06:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"fix or","shortMessageHtmlLink":"fix or"}},{"before":"04af4259a9130921625573f1c1b41ca17a7dc0a6","after":"b7e5d16cfd7a423748cc64d92a5fdd1e0300cba5","ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T19:05:52.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"cmt","shortMessageHtmlLink":"cmt"}},{"before":"31156aff186044cccb3b9392d9c312ad78e04696","after":"04af4259a9130921625573f1c1b41ca17a7dc0a6","ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T19:03:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"or","shortMessageHtmlLink":"or"}},{"before":"c0f0b4dd6763edb428bf001818b03b89e7181860","after":"31156aff186044cccb3b9392d9c312ad78e04696","ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T18:44:02.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"add comment","shortMessageHtmlLink":"add comment"}},{"before":"7a30227a5b3c9a86749e11e7abca8a74f83258c0","after":"c0f0b4dd6763edb428bf001818b03b89e7181860","ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T18:21:37.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"new prompt","shortMessageHtmlLink":"new prompt"}},{"before":null,"after":"7a30227a5b3c9a86749e11e7abca8a74f83258c0","ref":"refs/heads/shak/auth-prompt","pushedAt":"2024-04-18T03:45:43.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"add prompt for set auth method","shortMessageHtmlLink":"add prompt for set auth method"}},{"before":"7498b399134d5d260610bfebd9afe8f0573f995c","after":null,"ref":"refs/heads/shak/opt-mtls","pushedAt":"2024-04-17T23:05:12.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"}},{"before":"f7d55b634510d0594a0ea80e834a65f61d116a73","after":"cd81595a9a9fa80911c8826bcd8e1fbe0da36055","ref":"refs/heads/main","pushedAt":"2024-04-17T23:05:11.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"Support optional mTLS (#344)","shortMessageHtmlLink":"Support optional mTLS (#344)"}},{"before":"6ef059edca5ff14430cf4d2f43b7b1f04913775d","after":"7498b399134d5d260610bfebd9afe8f0573f995c","ref":"refs/heads/shak/opt-mtls","pushedAt":"2024-04-17T18:11:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"hide required flag","shortMessageHtmlLink":"hide required flag"}},{"before":"ea28f4629d5496539a917780e44ea56d279cd0a1","after":"6ef059edca5ff14430cf4d2f43b7b1f04913775d","ref":"refs/heads/shak/opt-mtls","pushedAt":"2024-04-17T01:42:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"wording","shortMessageHtmlLink":"wording"}},{"before":"d0d2a6922ef2118bca7899fbf89b3501d2a63116","after":"ea28f4629d5496539a917780e44ea56d279cd0a1","ref":"refs/heads/shak/opt-mtls","pushedAt":"2024-04-17T01:36:55.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"create: api_key","shortMessageHtmlLink":"create: api_key"}},{"before":"45fe868604b8712db7d7aed6593b1e2d12b9b88e","after":"d0d2a6922ef2118bca7899fbf89b3501d2a63116","ref":"refs/heads/shak/opt-mtls","pushedAt":"2024-04-17T01:31:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"simplify util","shortMessageHtmlLink":"simplify util"}},{"before":"4e83caf53de0cdca768f82a4bba9b08630666a1c","after":"45fe868604b8712db7d7aed6593b1e2d12b9b88e","ref":"refs/heads/shak/opt-mtls","pushedAt":"2024-04-17T01:28:31.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"wording","shortMessageHtmlLink":"wording"}},{"before":"edc022ebeadf5de56e1cac0834a64818e56f632b","after":"4e83caf53de0cdca768f82a4bba9b08630666a1c","ref":"refs/heads/shak/opt-mtls","pushedAt":"2024-04-17T01:27:03.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"shakeelrao","name":null,"path":"/shakeelrao","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23709619?s=80&v=4"},"commit":{"message":"remove debug statement","shortMessageHtmlLink":"remove debug statement"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAERR4HaAA","startCursor":null,"endCursor":null}},"title":"Activity ยท temporalio/tcld"}