{"object_kind":"push","event_name":"push","before":"b1a199a8dd97588adf720bf29342db72c5615b8d","after":"a824ae910f226abc5a20c4b9e5e7f0b962a95d9e","ref":"refs/heads/master","ref_protected":true,"checkout_sha":"a824ae910f226abc5a20c4b9e5e7f0b962a95d9e","message":null,"user_id":5223,"user_name":"Julian Bouzas","user_username":"julian","user_email":"julian.bouzas@collabora.com","user_avatar":"https://gitlab.freedesktop.org/uploads/-/system/user/avatar/5223/avatar.png","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":"a824ae910f226abc5a20c4b9e5e7f0b962a95d9e","message":"m-lua-scripting: only hold a strong reference of the Lua state when the script is enabled\n\nScripts are always deactivated (and not finalized) before core disconnects, so\nwe need to make sure the scripts don't hold a strong reference when creating\nthem. They must only hold a strong reference of the Lua state if activated.\n\nIn order to implement this properly, the lua_State has been wrapped into a\nGObject so that the 'lua-engine' construct-only property is a weak reference of\nthe Lua state. Then, when the script is activated, a strong reference of the Lua\nstate is held so the script can work. This strong reference is later dropped\nwhen the script is deactivated (right before the core is disconnected), avoiding\nleaked proxy warning messages in the log if a script has a global variable\nholding a proxy (Eg the alsa monitor in alsa.lua).\n","title":"m-lua-scripting: only hold a strong reference of the Lua state when the script is enabled","timestamp":"2026-06-01T07:37:02-04:00","url":"https://gitlab.freedesktop.org/pipewire/wireplumber/-/commit/a824ae910f226abc5a20c4b9e5e7f0b962a95d9e","author":{"name":"Julian Bouzas","email":"julian.bouzas@collabora.com"},"added":[],"modified":["modules/module-lua-scripting/module.c","modules/module-lua-scripting/script.c","modules/module-lua-scripting/wplua/wplua.c","modules/module-lua-scripting/wplua/wplua.h","tests/wplua/wplua.c"],"removed":[]}],"total_commits_count":1,"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}}