{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":321069461,"defaultBranch":"master","name":"xmonad","ownerLogin":"TheMC47","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2020-12-13T13:18:22.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/23745185?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1715531419.0","currentOid":""},"activityList":{"items":[{"before":null,"after":"b6dc78bee78d45ec223cce4b6b49d7e200bcd8f1","ref":"refs/heads/dotfiles","pushedAt":"2024-05-12T16:30:19.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"TheMC47","name":"Yecine Megdiche","path":"/TheMC47","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23745185?s=80&v=4"},"commit":{"message":"Shift the logHook into handleRefresh before render\n\nUsing `handleRefresh` as we are, a longstanding issue with the `logHook`\nis fixed, or rather, transformed: running `windows` within it will not\ncause an infinite loop; any requests it issues are silently discarded.\nThat, however, is not ideal either: unhandled changes may be introduced\nto the windowset.\n\nWe could run the `logHook` via `handleRefresh`, but that would put us\nback where we started with infinite loops. Alternatively, we could treat\na request in the `logHook` as an error and discard its changes à la\n`catchX`.\n\nHowever, the way that gives the best bang for buck is to move the\n`logHook` from `render` into `handleRefresh`, after the user effects\nhave run but before the refresh itself. Like this, any changes it makes\nare seamlessly handled in the refresh it accompanies. This is simple,\nefficient, and best of all: it transforms a mere `logHook` into a fully\nfledged \"refreshHook\".\n\nWhile the `logHook` is seeing essentially the same state as far as the\ninternal model goes, there's one key observable difference: it runs\nbefore the effects in `render`, and thus it does not see any changes\nthat might result from running the layout. This could break some\nexisting usage.","shortMessageHtmlLink":"Shift the logHook into handleRefresh before render"}},{"before":null,"after":"a1634db06fd0c73f239dafaccbd057c572d0a0d7","ref":"refs/heads/relog","pushedAt":"2024-03-21T16:25:17.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"TheMC47","name":"Yecine Megdiche","path":"/TheMC47","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/23745185?s=80&v=4"},"commit":{"message":"Shift the logHook into handleRefresh before render\n\nUsing `handleRefresh` as we are, a longstanding issue with the `logHook`\nis fixed, or rather, transformed: running `windows` within it will not\ncause an infinite loop; any requests it issues are silently discarded.\nThat, however, is not ideal either: unhandled changes may be introduced\nto the windowset.\n\nWe could run the `logHook` via `handleRefresh`, but that would put us\nback where we started with infinite loops. Alternatively, we could treat\na request in the `logHook` as an error and discard its changes à la\n`catchX`.\n\nHowever, the way that gives the best bang for buck is to move the\n`logHook` from `render` into `handleRefresh`, after the user effects\nhave run but before the refresh itself. Like this, any changes it makes\nare seamlessly handled in the refresh it accompanies. This is simple,\nefficient, and best of all: it transforms a mere `logHook` into a fully\nfledged \"refreshHook\".\n\nWhile the `logHook` is seeing essentially the same state as far as the\ninternal model goes, there's one key observable difference: it runs\nbefore the effects in `render`, and thus it does not see any changes\nthat might result from running the layout. This could break some\nexisting usage.","shortMessageHtmlLink":"Shift the logHook into handleRefresh before render"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAER7-XgwA","startCursor":null,"endCursor":null}},"title":"Activity · TheMC47/xmonad"}