{"object_kind":"push","event_name":"push","before":"78bd42cad84f9cd174616a98aecbc78dbe67d121","after":"210467c5ce779150f255d25f820830ebb7c1b261","ref":"refs/heads/master","ref_protected":true,"checkout_sha":"210467c5ce779150f255d25f820830ebb7c1b261","message":null,"user_id":761,"user_name":"George Kiagiadakis","user_username":"gkiagia","user_email":"","user_avatar":"https://secure.gravatar.com/avatar/fef80de08e4b130d46f64ddfd085c154e4b8cd4c45f8ba9dc8f6dc3f3ce79986?s=80&d=identicon","project_id":2941,"project":{"id":2941,"name":"wireplumber","description":"Session / policy manager implementation for PipeWire","web_url":"https://gitlab.freedesktop.org/pipewire/wireplumber","avatar_url":null,"git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/wireplumber.git","git_http_url":"https://gitlab.freedesktop.org/pipewire/wireplumber.git","namespace":"PipeWire","visibility_level":20,"path_with_namespace":"pipewire/wireplumber","default_branch":"master","ci_config_path":"","homepage":"https://gitlab.freedesktop.org/pipewire/wireplumber","url":"git@ssh.gitlab.freedesktop.org:pipewire/wireplumber.git","ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/wireplumber.git","http_url":"https://gitlab.freedesktop.org/pipewire/wireplumber.git"},"commits":[{"id":"484e1f0fb7d8f8bd190d9cf3e365cc1c614f3411","message":"lib: Add new WpPermissionManager API\n\nThis allows setting object specific permissions on any client easily.\n","title":"lib: Add new WpPermissionManager API","timestamp":"2026-03-31T12:15:14+03:00","url":"https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/484e1f0fb7d8f8bd190d9cf3e365cc1c614f3411","author":{"name":"Julian Bouzas","email":"julian.bouzas@collabora.com"},"added":["lib/wp/permission-manager.c","lib/wp/permission-manager.h","lib/wp/private/permission-manager.h"],"modified":["lib/wp/meson.build","lib/wp/wp.h"],"removed":[]},{"id":"c03f4fd4d77b77a0341b5b11ebafd615f96f6461","message":"m-lua-scripting: Add Lua API for WpPermissionManager\n\nThis allows using the new permission manager API in Lua scripts.\n","title":"m-lua-scripting: Add Lua API for WpPermissionManager","timestamp":"2026-03-31T12:15:14+03:00","url":"https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/c03f4fd4d77b77a0341b5b11ebafd615f96f6461","author":{"name":"Julian Bouzas","email":"julian.bouzas@collabora.com"},"added":[],"modified":["modules/module-lua-scripting/api/api.c","modules/module-lua-scripting/api/api.lua"],"removed":[]},{"id":"dcd59bc31df3024c340ff2c5c1e05c5fbf3b4e3f","message":"client: Add _attach_permission_manager () API\n\nThis attaches a permission manager to a client so that it can handle permissions\nautomatically when the interested objects have changed.\n","title":"client: Add _attach_permission_manager () API","timestamp":"2026-03-31T12:15:14+03:00","url":"https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/dcd59bc31df3024c340ff2c5c1e05c5fbf3b4e3f","author":{"name":"Julian Bouzas","email":"julian.bouzas@collabora.com"},"added":[],"modified":["lib/wp/client.c","lib/wp/client.h","modules/module-lua-scripting/api/api.c"],"removed":[]},{"id":"210467c5ce779150f255d25f820830ebb7c1b261","message":"scripts/client: Refactor scripts to use the new PermissionManager API\n\nThe refactoring uses a new 'select-access' event to select the access for each\nclient with a fallback mechanism. The fallback priority is: configuration,\nflatpak, snap, portal, and default.\n\nThe access JSON configuration has also been improved so that users can create\ntheir custom permission managers and attach them to any client. See the access\nconfiguration example for more information describing how to do this.\n","title":"scripts/client: Refactor scripts to use the new PermissionManager API","timestamp":"2026-03-31T12:15:14+03:00","url":"https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/210467c5ce779150f255d25f820830ebb7c1b261","author":{"name":"Julian Bouzas","email":"julian.bouzas@collabora.com"},"added":["src/scripts/client/apply-access.lua","src/scripts/client/find-config-access.lua","src/scripts/client/find-default-access.lua","src/scripts/client/find-flatpak-access.lua","src/scripts/client/find-portal-access.lua","src/scripts/client/find-snap-access.lua","src/scripts/client/select-access.lua"],"modified":["src/config/wireplumber.conf","src/config/wireplumber.conf.d.examples/access.conf","src/scripts/lib/common-utils.lua"],"removed":["src/scripts/client/access-default.lua","src/scripts/client/access-portal.lua","src/scripts/client/access-snap.lua"]}],"total_commits_count":4,"push_options":{},"repository":{"name":"wireplumber","url":"git@ssh.gitlab.freedesktop.org:pipewire/wireplumber.git","description":"Session / policy manager implementation for PipeWire","homepage":"https://gitlab.freedesktop.org/pipewire/wireplumber","git_http_url":"https://gitlab.freedesktop.org/pipewire/wireplumber.git","git_ssh_url":"git@ssh.gitlab.freedesktop.org:pipewire/wireplumber.git","visibility_level":20}}