{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":63369078,"defaultBranch":"next","name":"picom","ownerLogin":"yshui","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2016-07-14T20:54:51.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/366851?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1719575304.0","currentOid":""},"activityList":{"items":[{"before":"05c764c6055570f5f3d648bf740608763c2b2348","after":"2dc218849dea256f5d48e2347fbfb8f2fead0aed","ref":"refs/heads/next","pushedAt":"2024-07-05T17:56:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"absolutelynothelix","name":"Maxim Solovyov","path":"/absolutelynothelix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52252283?s=80&v=4"},"commit":{"message":"vblank: fix a memory leak in the sgi_video_sync_thread function","shortMessageHtmlLink":"vblank: fix a memory leak in the sgi_video_sync_thread function"}},{"before":"b5fcf501d66dac2875d800e336746aef4f71d21b","after":"2dc218849dea256f5d48e2347fbfb8f2fead0aed","ref":"refs/heads/absolutelynothelix-buildtest","pushedAt":"2024-07-05T17:50:35.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"absolutelynothelix","name":"Maxim Solovyov","path":"/absolutelynothelix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52252283?s=80&v=4"},"commit":{"message":"vblank: fix a memory leak in the sgi_video_sync_thread function","shortMessageHtmlLink":"vblank: fix a memory leak in the sgi_video_sync_thread function"}},{"before":"3560fa2f9aafd0e9bfca2caeb0ec5816bc6fe954","after":"b5fcf501d66dac2875d800e336746aef4f71d21b","ref":"refs/heads/absolutelynothelix-buildtest","pushedAt":"2024-07-05T17:43:41.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"absolutelynothelix","name":"Maxim Solovyov","path":"/absolutelynothelix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52252283?s=80&v=4"},"commit":{"message":"vblank: fix a memory leak in the sgi_video_sync_thread function","shortMessageHtmlLink":"vblank: fix a memory leak in the sgi_video_sync_thread function"}},{"before":"3560fa2f9aafd0e9bfca2caeb0ec5816bc6fe954","after":"05c764c6055570f5f3d648bf740608763c2b2348","ref":"refs/heads/next","pushedAt":"2024-06-30T18:13:49.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"wm/tree: use TEST_* macros in unit tests\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"wm/tree: use TEST_* macros in unit tests"}},{"before":"3a49a16b03481f91b52dcc8efe21a63c4fe9fbc6","after":"05c764c6055570f5f3d648bf740608763c2b2348","ref":"refs/heads/yshui-buildtest","pushedAt":"2024-06-30T18:10:27.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"wm/tree: use TEST_* macros in unit tests\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"wm/tree: use TEST_* macros in unit tests"}},{"before":"1bfab6ae53079debb4605afd13d50404d1f12815","after":"3a49a16b03481f91b52dcc8efe21a63c4fe9fbc6","ref":"refs/heads/yshui-buildtest","pushedAt":"2024-06-30T18:09:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"wm/tree: use TEST_* macros in unit tests\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"wm/tree: use TEST_* macros in unit tests"}},{"before":"ac4a8069a44bb98091444efdcdf3ec03efbe5d83","after":"1bfab6ae53079debb4605afd13d50404d1f12815","ref":"refs/heads/yshui-buildtest","pushedAt":"2024-06-30T18:05:42.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"test.h: silence unused result warnings\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"test.h: silence unused result warnings"}},{"before":"3a49a16b03481f91b52dcc8efe21a63c4fe9fbc6","after":"ac4a8069a44bb98091444efdcdf3ec03efbe5d83","ref":"refs/heads/yshui-buildtest","pushedAt":"2024-06-30T17:47:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"test.h: silence must_use warnings\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"test.h: silence must_use warnings"}},{"before":"65452048cfe89dbc616a94a13db5c0c8f791a831","after":"3560fa2f9aafd0e9bfca2caeb0ec5816bc6fe954","ref":"refs/heads/next","pushedAt":"2024-06-30T17:39:22.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"absolutelynothelix","name":"Maxim Solovyov","path":"/absolutelynothelix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52252283?s=80&v=4"},"commit":{"message":"update contributors list","shortMessageHtmlLink":"update contributors list"}},{"before":"1cb12dbcf363439b8df10953e07fc0098f17dcc6","after":"3560fa2f9aafd0e9bfca2caeb0ec5816bc6fe954","ref":"refs/heads/absolutelynothelix-buildtest","pushedAt":"2024-06-30T17:30:07.000Z","pushType":"push","commitsCount":121,"pusher":{"login":"absolutelynothelix","name":"Maxim Solovyov","path":"/absolutelynothelix","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52252283?s=80&v=4"},"commit":{"message":"update contributors list","shortMessageHtmlLink":"update contributors list"}},{"before":"65452048cfe89dbc616a94a13db5c0c8f791a831","after":"3a49a16b03481f91b52dcc8efe21a63c4fe9fbc6","ref":"refs/heads/yshui-buildtest","pushedAt":"2024-06-30T15:43:46.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"wm/tree: use TEST_* macros in unit tests\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"wm/tree: use TEST_* macros in unit tests"}},{"before":"562529fefcc64df055a3de395104312a935d5136","after":"65452048cfe89dbc616a94a13db5c0c8f791a831","ref":"refs/heads/next","pushedAt":"2024-06-28T17:38:22.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"meson: silence unsigned shift overflow\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"meson: silence unsigned shift overflow"}},{"before":"732f36536baefc9679f4089d86abe85b30439372","after":"65452048cfe89dbc616a94a13db5c0c8f791a831","ref":"refs/heads/yshui-buildtest","pushedAt":"2024-06-28T17:18:09.000Z","pushType":"push","commitsCount":22,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"meson: silence unsigned shift overflow\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"meson: silence unsigned shift overflow"}},{"before":"ca3ea85958bc69a0220aa521cd86a3e46a9b6b36","after":null,"ref":"refs/heads/no-more-server-grabs","pushedAt":"2024-06-28T11:48:24.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"}},{"before":"732f36536baefc9679f4089d86abe85b30439372","after":"562529fefcc64df055a3de395104312a935d5136","ref":"refs/heads/next","pushedAt":"2024-06-28T11:48:22.000Z","pushType":"pr_merge","commitsCount":19,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"Merge pull request #1283 from yshui/no-more-server-grabs\n\nRemove uses of GrabServer","shortMessageHtmlLink":"Merge pull request #1283 from yshui/no-more-server-grabs"}},{"before":"e4087f9d0350447c00806c5a4c54a47343f4c695","after":"ca3ea85958bc69a0220aa521cd86a3e46a9b6b36","ref":"refs/heads/no-more-server-grabs","pushedAt":"2024-06-27T19:14:03.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"changelog: add rational for not using GrabServer\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"changelog: add rational for not using GrabServer"}},{"before":"04f602fb84c9866db5aeea967328ebe966ee8e40","after":"732f36536baefc9679f4089d86abe85b30439372","ref":"refs/heads/next","pushedAt":"2024-06-27T19:14:00.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"wm/win: don't cache window monitor\n\nWe need to update which monitor a window is on when either the window\nposition/geometry changes, or when monitor configuration changes. We\nonly did former.\n\nWe could fix that by also doing the latter. But there isn't that much\npoint in caching the monitor anyway, so let's just calculate it when\nneeded.\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"wm/win: don't cache window monitor"}},{"before":"04f602fb84c9866db5aeea967328ebe966ee8e40","after":"732f36536baefc9679f4089d86abe85b30439372","ref":"refs/heads/yshui-buildtest","pushedAt":"2024-06-27T18:43:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"wm/win: don't cache window monitor\n\nWe need to update which monitor a window is on when either the window\nposition/geometry changes, or when monitor configuration changes. We\nonly did former.\n\nWe could fix that by also doing the latter. But there isn't that much\npoint in caching the monitor anyway, so let's just calculate it when\nneeded.\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"wm/win: don't cache window monitor"}},{"before":"eca64b29029e8111b3e1e88b80b6f291819077dc","after":"e4087f9d0350447c00806c5a4c54a47343f4c695","ref":"refs/heads/no-more-server-grabs","pushedAt":"2024-06-27T18:16:42.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"changelog: add rational for not using GrabServer\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"changelog: add rational for not using GrabServer"}},{"before":"c1b212f355dfeb83aedb5abd82b2b709b2a8477f","after":"eca64b29029e8111b3e1e88b80b6f291819077dc","ref":"refs/heads/no-more-server-grabs","pushedAt":"2024-06-27T18:01:43.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"changelog: add rational for not using GrabServer\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"changelog: add rational for not using GrabServer"}},{"before":"779d0421999f243e129266bbf38ef7efabff56e9","after":"c1b212f355dfeb83aedb5abd82b2b709b2a8477f","ref":"refs/heads/no-more-server-grabs","pushedAt":"2024-06-27T17:24:05.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"changelog: add rational for not using GrabServer\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"changelog: add rational for not using GrabServer"}},{"before":"d383dd20bf5a435a6e147c59571fdb923596aa17","after":"04f602fb84c9866db5aeea967328ebe966ee8e40","ref":"refs/heads/next","pushedAt":"2024-06-27T17:23:54.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"core: move debug window initialization to after root geometry query\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"core: move debug window initialization to after root geometry query"}},{"before":"843f308d1e4e18e33e22c47079af37c826e1b304","after":"04f602fb84c9866db5aeea967328ebe966ee8e40","ref":"refs/heads/yshui-buildtest","pushedAt":"2024-06-27T17:20:52.000Z","pushType":"push","commitsCount":9,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"core: move debug window initialization to after root geometry query\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"core: move debug window initialization to after root geometry query"}},{"before":"13959bc62522b254304572d8b7dd44c5df5a7310","after":"779d0421999f243e129266bbf38ef7efabff56e9","ref":"refs/heads/no-more-server-grabs","pushedAt":"2024-06-27T17:10:17.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"core: move debug window initialization to after root geometry query\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"core: move debug window initialization to after root geometry query"}},{"before":"63a71d96703b7867ea1a795d7b0e47ae76636e7e","after":"13959bc62522b254304572d8b7dd44c5df5a7310","ref":"refs/heads/no-more-server-grabs","pushedAt":"2024-06-27T16:53:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"changelog: add rational for not using GrabServer\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"changelog: add rational for not using GrabServer"}},{"before":"00584c92db418d33c6c3c0fdccfb777bdeb0d311","after":"63a71d96703b7867ea1a795d7b0e47ae76636e7e","ref":"refs/heads/no-more-server-grabs","pushedAt":"2024-06-27T16:52:19.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"changelog: add rational for not using GrabServer\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"changelog: add rational for not using GrabServer"}},{"before":"19376d41cf3a16048cf97b8bc931dcfd34d15f62","after":"00584c92db418d33c6c3c0fdccfb777bdeb0d311","ref":"refs/heads/no-more-server-grabs","pushedAt":"2024-06-27T16:47:08.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"core: remove the X critical section\n\nI checked, functions called by refresh_windows should mostly be robust\nagainst window disappearing, unless I missed something. (We will find\nout).\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"core: remove the X critical section"}},{"before":"709e2dd6c4178aa6d04708db011adefd90f62a52","after":"19376d41cf3a16048cf97b8bc931dcfd34d15f62","ref":"refs/heads/no-more-server-grabs","pushedAt":"2024-06-27T16:45:25.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"vblank: alternative invalid present event recovery\n\nI found sometimes, when we receive an invalid PresentCompleteNotify,\nkeep requesting new present notifys using `last_msc + 1` doesn't really\nhelp us recover. Instead X just keeps sending us bad\nPresentCompleteNotifys, and we stuck in a loop. (This is more likely to\nhappen during screen resolution change. Also this did not seem to be\npossible previously, when we were still handling resolution changes\ninside the X critical section.)\n\nThis commit tries to test out a different approach. The hypothesis is,\nmaybe doing something to the screen (e.g. render and present a new frame)\nhelps change the internal state of the X server, thus kicks us out of the\nloop. So whenever we get an invalid notify, we fake a vblank event so\nrendering can happen. And we keeps doing this until we are (hopefully)\nfine.\n\nSigned-off-by: Yuxuan Shui ","shortMessageHtmlLink":"vblank: alternative invalid present event recovery"}},{"before":"f126d47539a649fef2bc992f0e3307cef3fbae95","after":null,"ref":"refs/heads/eventually-consistent-tree","pushedAt":"2024-06-27T15:42:52.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"}},{"before":"843f308d1e4e18e33e22c47079af37c826e1b304","after":"d383dd20bf5a435a6e147c59571fdb923596aa17","ref":"refs/heads/next","pushedAt":"2024-06-27T15:42:51.000Z","pushType":"pr_merge","commitsCount":8,"pusher":{"login":"yshui","name":"Yuxuan Shui","path":"/yshui","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/366851?s=80&v=4"},"commit":{"message":"Merge pull request #1281 from yshui/eventually-consistent-tree\n\nEventually consistent tree","shortMessageHtmlLink":"Merge pull request #1281 from yshui/eventually-consistent-tree"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEeAPXcAA","startCursor":null,"endCursor":null}},"title":"Activity ยท yshui/picom"}