{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":54263609,"defaultBranch":"master","name":"mkchromecast","ownerLogin":"muammar","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2016-03-19T11:59:07.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/954209?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1711647542.0","currentOid":""},"activityList":{"items":[{"before":"5a17e40bc23429066d3cb6d1fd4164f40b13f650","after":"1ed7e88f5b19bc9cb1afeef3f46177d343f451f5","ref":"refs/heads/master","pushedAt":"2024-05-04T11:56:19.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"muammar","name":"Muammar El Khatib","path":"/muammar","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/954209?s=80&v=4"},"commit":{"message":"Merge pull request #463 from SamuelMereau/master\n\nEncode available device names to UTF-8","shortMessageHtmlLink":"Merge pull request #463 from SamuelMereau/master"}},{"before":null,"after":"7d2d1e89cc28ad10088e1f87ddda2bfce04a8877","ref":"refs/heads/dependabot/npm_and_yarn/nodejs/express-4.19.2","pushedAt":"2024-03-28T17:39:02.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"dependabot[bot]","name":null,"path":"/apps/dependabot","primaryAvatarUrl":"https://avatars.githubusercontent.com/in/29110?s=80&v=4"},"commit":{"message":"Bump express from 4.18.2 to 4.19.2 in /nodejs\n\nBumps [express](https://github.com/expressjs/express) from 4.18.2 to 4.19.2.\n- [Release notes](https://github.com/expressjs/express/releases)\n- [Changelog](https://github.com/expressjs/express/blob/master/History.md)\n- [Commits](https://github.com/expressjs/express/compare/4.18.2...4.19.2)\n\n---\nupdated-dependencies:\n- dependency-name: express\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] ","shortMessageHtmlLink":"Bump express from 4.18.2 to 4.19.2 in /nodejs"}},{"before":"07598801351deeae52dba67e8b50189b9002c5e2","after":"5a17e40bc23429066d3cb6d1fd4164f40b13f650","ref":"refs/heads/master","pushedAt":"2024-03-08T22:15:02.000Z","pushType":"pr_merge","commitsCount":9,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #458 from xsdg/cast_cleanup\n\nMajor refactor and simplification of cast.py","shortMessageHtmlLink":"Merge pull request #458 from xsdg/cast_cleanup"}},{"before":"22271af7f2bc6b63b5d0af6b1250ebe8dc9f6a6e","after":"07598801351deeae52dba67e8b50189b9002c5e2","ref":"refs/heads/master","pushedAt":"2024-02-20T01:09:07.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #456 from xsdg/noop_fixups\n\nRenames methods and variables to avoid name collisions and to make names easier to understand.","shortMessageHtmlLink":"Merge pull request #456 from xsdg/noop_fixups"}},{"before":"9e848299c0f4bf82d469db57b4375000dd4e6563","after":"22271af7f2bc6b63b5d0af6b1250ebe8dc9f6a6e","ref":"refs/heads/master","pushedAt":"2024-02-17T07:30:20.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #455 from xsdg/gstreamer\n\nDrops remaining mentions of gstreamer.","shortMessageHtmlLink":"Merge pull request #455 from xsdg/gstreamer"}},{"before":"bb9f2fcc908a92264891e5934562e9d532bea86d","after":"9e848299c0f4bf82d469db57b4375000dd4e6563","ref":"refs/heads/master","pushedAt":"2024-02-15T03:33:30.000Z","pushType":"pr_merge","commitsCount":17,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #453 from xsdg/config\n\nReimplements the configuration mechanism as a Config class with data that's incorporated directly into the Mkchromecast settings-holder class","shortMessageHtmlLink":"Merge pull request #453 from xsdg/config"}},{"before":"fa1b1ed8754275bef9352f084474347928f92b2d","after":"bb9f2fcc908a92264891e5934562e9d532bea86d","ref":"refs/heads/master","pushedAt":"2024-02-13T06:45:51.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Drops donation links","shortMessageHtmlLink":"Drops donation links"}},{"before":"639295ba1dfcf45d146a2b6c30ef46643724d6d4","after":"fa1b1ed8754275bef9352f084474347928f92b2d","ref":"refs/heads/master","pushedAt":"2024-01-25T02:47:11.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #450 from thejch/tray-import\n\nFix import typo in tray_threading","shortMessageHtmlLink":"Merge pull request #450 from thejch/tray-import"}},{"before":"90c125f9b13d10bad7bcc38ec1f2dae41c41cb42","after":"639295ba1dfcf45d146a2b6c30ef46643724d6d4","ref":"refs/heads/master","pushedAt":"2024-01-18T03:40:49.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #449 from xsdg/opmode\n\nCreates a new \"Operation Mode\" enum that establishes the unique purpose of this mkchromecast invocation.","shortMessageHtmlLink":"Merge pull request #449 from xsdg/opmode"}},{"before":null,"after":"c046ba2f6dffbb4a22f793c6f92e704e7647a01d","ref":"refs/heads/stable","pushedAt":"2024-01-17T23:42:33.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #376 from benjamb/benbrown/list-regex\n\nFix regex used to parse sink list","shortMessageHtmlLink":"Merge pull request #376 from benjamb/benbrown/list-regex"}},{"before":"5adef3d59cb54feea9e09c9cd104b8330cd93ab6","after":"90c125f9b13d10bad7bcc38ec1f2dae41c41cb42","ref":"refs/heads/master","pushedAt":"2024-01-06T03:00:33.000Z","pushType":"pr_merge","commitsCount":7,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #448 from xsdg/codepath\n\nStarts to adjust codepaths to simplify how mkchromecast operates, and to more clearly distinguish between distinct operating modes.","shortMessageHtmlLink":"Merge pull request #448 from xsdg/codepath"}},{"before":"487b5be8b6eb84502f252878e500c5c6d1d92b33","after":"5adef3d59cb54feea9e09c9cd104b8330cd93ab6","ref":"refs/heads/master","pushedAt":"2024-01-05T23:12:22.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #447 from xsdg/mtype\n\nWorks around mtype access bug, and makes chromecast cleanup and sonos cleanup independent","shortMessageHtmlLink":"Merge pull request #447 from xsdg/mtype"}},{"before":"940c4c977da242c5e4713cf336dad36aa8565976","after":"487b5be8b6eb84502f252878e500c5c6d1d92b33","ref":"refs/heads/master","pushedAt":"2023-12-26T03:26:18.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Adds missing constants import to two files.","shortMessageHtmlLink":"Adds missing constants import to two files."}},{"before":"4a4df5d9b99e4ab0778a073eaf8b2b91a22dd114","after":"940c4c977da242c5e4713cf336dad36aa8565976","ref":"refs/heads/master","pushedAt":"2023-12-26T03:20:09.000Z","pushType":"pr_merge","commitsCount":7,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #444 from xsdg/video\n\nRefactors the video pipeline generation from video.py to pipeline_builder.py","shortMessageHtmlLink":"Merge pull request #444 from xsdg/video"}},{"before":"3942221026ddccad0d22ef84d2af326a49970b0b","after":"4a4df5d9b99e4ab0778a073eaf8b2b91a22dd114","ref":"refs/heads/master","pushedAt":"2023-12-23T06:53:32.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Bugfix: set resolution in Mkchromecast object when specified on the commandline.","shortMessageHtmlLink":"Bugfix: set resolution in Mkchromecast object when specified on the c…"}},{"before":"5340f81386cc0f818880cd93476b09ef39f7813f","after":"3942221026ddccad0d22ef84d2af326a49970b0b","ref":"refs/heads/master","pushedAt":"2023-12-18T02:48:22.000Z","pushType":"pr_merge","commitsCount":5,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #443 from xsdg/int_bitrate\n\nUses bitrate as int throughout mkchromecast, and ensures that it is always non-None.","shortMessageHtmlLink":"Merge pull request #443 from xsdg/int_bitrate"}},{"before":"f4094153d5100d000caf5b2a1beb371849cf83b6","after":"5340f81386cc0f818880cd93476b09ef39f7813f","ref":"refs/heads/master","pushedAt":"2023-12-15T04:58:07.000Z","pushType":"pr_merge","commitsCount":9,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #441 from xsdg/backend_logic\n\nRefactors the pipeline command generation logic from audio.py into a new module, and adds unit tests.","shortMessageHtmlLink":"Merge pull request #441 from xsdg/backend_logic"}},{"before":"3f37ab890b85d94393d7f5bcfb9c371f38d26691","after":null,"ref":"refs/heads/flask_mod","pushedAt":"2023-12-14T22:10:05.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"}},{"before":"21afae68c135dca66fbe492ee950b80e1c0963c2","after":"f4094153d5100d000caf5b2a1beb371849cf83b6","ref":"refs/heads/master","pushedAt":"2023-12-14T22:08:52.000Z","pushType":"pr_merge","commitsCount":6,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #440 from xsdg/flask_mod\n\nRefactors the flask server and other audio/video streaming infrastructure into a new module.","shortMessageHtmlLink":"Merge pull request #440 from xsdg/flask_mod"}},{"before":null,"after":"3f37ab890b85d94393d7f5bcfb9c371f38d26691","ref":"refs/heads/flask_mod","pushedAt":"2023-12-14T09:29:42.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Uses flask_server from video.py as well.","shortMessageHtmlLink":"Uses flask_server from video.py as well."}},{"before":"87d5b3bbfa6877a35b92439568a03430e68a7940","after":"21afae68c135dca66fbe492ee950b80e1c0963c2","ref":"refs/heads/master","pushedAt":"2023-12-13T20:43:34.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Restores a legacy behavior that is likely important in non-tray mode\n\nIn particular, because we don't fully-resolve the backend to an absolute\npathname except in tray mode, with a recent change, we would leave\nbackend.path as None instead of the unqualified backend name.\n\nThe better option is to drop manual backend path handling altogether, but until\nwe make that change, it makes sense to add this fallback back in.","shortMessageHtmlLink":"Restores a legacy behavior that is likely important in non-tray mode"}},{"before":"621058ed46d7166595ba1b0e73a350c9ce82e8d0","after":"87d5b3bbfa6877a35b92439568a03430e68a7940","ref":"refs/heads/master","pushedAt":"2023-12-13T20:31:37.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #439 from xsdg/backends_dict\n\nReplaces backends_dict with a simple dataclass","shortMessageHtmlLink":"Merge pull request #439 from xsdg/backends_dict"}},{"before":"b3c7b8f171ceb14088ec01b423665b1765d3c1cc","after":null,"ref":"refs/heads/simple_msgs","pushedAt":"2023-12-12T21:43:39.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"}},{"before":"dde294491b71bf3f2152429268a59ed2b076aa67","after":null,"ref":"refs/heads/drop_avconv","pushedAt":"2023-12-12T21:43:37.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"}},{"before":"0193badfe20eda5c738da46dd09cdeb68478577c","after":"621058ed46d7166595ba1b0e73a350c9ce82e8d0","ref":"refs/heads/master","pushedAt":"2023-12-12T20:51:45.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #436 from xsdg/drop_avconv\n\nDrops support for avconv, which is defunct.","shortMessageHtmlLink":"Merge pull request #436 from xsdg/drop_avconv"}},{"before":null,"after":"dde294491b71bf3f2152429268a59ed2b076aa67","ref":"refs/heads/drop_avconv","pushedAt":"2023-12-12T09:32:23.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Drops support for avconv, which is defunct.\n\nAlso centralizes backend listing in constants.py, and simplifies code that shouldn't have an explicit dependency on backend names in the first place.","shortMessageHtmlLink":"Drops support for avconv, which is defunct."}},{"before":"a030b95048448207a2647bc77016bff4a457fec6","after":"0193badfe20eda5c738da46dd09cdeb68478577c","ref":"refs/heads/master","pushedAt":"2023-12-11T20:06:14.000Z","pushType":"pr_merge","commitsCount":7,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #435 from xsdg/simple_msgs\n\nSimplifies messages.py and its dependencies as a first step in simplifying audio.py and node.py","shortMessageHtmlLink":"Merge pull request #435 from xsdg/simple_msgs"}},{"before":"511cfd57bc4614885b798ced49f61099d35b5491","after":"b3c7b8f171ceb14088ec01b423665b1765d3c1cc","ref":"refs/heads/simple_msgs","pushedAt":"2023-12-11T19:28:39.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Minor fixups","shortMessageHtmlLink":"Minor fixups"}},{"before":null,"after":"511cfd57bc4614885b798ced49f61099d35b5491","ref":"refs/heads/simple_msgs","pushedAt":"2023-12-11T10:58:25.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Further simplifies messages.py by moving the source_url check to the callsites.\n\nThe callsites will eventually be re-simplified in that they simply won't be\nexecuted in source_url mode.","shortMessageHtmlLink":"Further simplifies messages.py by moving the source_url check to the …"}},{"before":"0e69ea587b82e1239186bb3810d05323859bbb50","after":"a030b95048448207a2647bc77016bff4a457fec6","ref":"refs/heads/master","pushedAt":"2023-12-11T07:00:20.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"xsdg","name":"Omari Stephens","path":"/xsdg","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/162614?s=80&v=4"},"commit":{"message":"Merge pull request #433 from xsdg/upd_tray\n\nUpdates the final usages of `import mkchromecast.__init__` to use the `Mkchromecast` class","shortMessageHtmlLink":"Merge pull request #433 from xsdg/upd_tray"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEQWYEGAA","startCursor":null,"endCursor":null}},"title":"Activity · muammar/mkchromecast"}