{"object_kind":"push","event_name":"push","before":"ce18660127798c624f576cd0750dfaeec0ae148b","after":"9e82e49446d4bf27779c8266356e182a74c3f14b","ref":"refs/heads/master","ref_protected":true,"checkout_sha":"9e82e49446d4bf27779c8266356e182a74c3f14b","message":null,"user_id":3060,"user_name":"Wim Taymans","user_username":"wtaymans","user_email":"","user_avatar":"https://secure.gravatar.com/avatar/1ca1bed246cb9b95b7ead6d6be96bb09f0c112953140c8bb38b41aedf4465270?s=80&d=identicon","project_id":4753,"project":{"id":4753,"name":"pipewire","description":"Multimedia processing graphs","web_url":"https://gitlab.freedesktop.org/pipewire/pipewire","avatar_url":"https://gitlab.freedesktop.org/uploads/-/system/project/avatar/4753/pipewire.png","git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","git_http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git","namespace":"PipeWire","visibility_level":20,"path_with_namespace":"pipewire/pipewire","default_branch":"master","ci_config_path":"","homepage":"https://gitlab.freedesktop.org/pipewire/pipewire","url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git"},"commits":[{"id":"9e82e49446d4bf27779c8266356e182a74c3f14b","message":"scheduler: rework the runnable state calculation\n\nMove the runnable state calculation out of the collect_nodes function.\nThey are really two different steps that doin't overlap much.\n\nThe runnable state of a node is very easy to calculate. A node is\nrunnable if it is linked to another node without a passive port. When we\nfind two runnable nodes, make them runnable, which makes all nodes\nlinked to them runnable, stopping at passive ports.\n\nWe don't have to check the active state of the nodes or links to group\nthem together. This ensures we don't swap nodes around too much when the\nnode or link state changes.\n","title":"scheduler: rework the runnable state calculation","timestamp":"2026-02-21T16:19:34+01:00","url":"https://gitlab.freedesktop.org/pipewire/pipewire/-/commit/9e82e49446d4bf27779c8266356e182a74c3f14b","author":{"name":"Wim Taymans","email":"wtaymans@redhat.com"},"added":[],"modified":["src/modules/module-scheduler-v1.c"],"removed":[]}],"total_commits_count":1,"push_options":{},"repository":{"name":"pipewire","url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","description":"Multimedia processing graphs","homepage":"https://gitlab.freedesktop.org/pipewire/pipewire","git_http_url":"https://gitlab.freedesktop.org/pipewire/pipewire.git","git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/pipewire.git","visibility_level":20}}