-
Notifications
You must be signed in to change notification settings - Fork 48
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
0.27.4 causes gnome-bluetooth 42 tests to fail #123
Comments
smcv
added a commit
to smcv/python-dbusmock
that referenced
this issue
Apr 4, 2022
With the more thorough signature checking from martinpitt#118, the gnome-bluetooth unit tests fail, because Pair() called PairDevice() with 2 arguments but PairDevice() expects 3 arguments. Optional arguments with a default are not really something that exists in the interoperable subset of D-Bus. Signed-off-by: Simon McVittie <smcv@debian.org> Resolves: martinpitt#123
(Bug also reported in Debian, bug number not yet received.) |
Eww, thanks for spotting! There is one other instance of a default argument in a D-Bus service method, in the AccountsService template. I'll get that fixed as well. |
martinpitt
pushed a commit
that referenced
this issue
Apr 5, 2022
…ent (#124) With the more thorough signature checking from #118, the gnome-bluetooth unit tests fail, because Pair() called PairDevice() with 2 arguments but PairDevice() expects 3 arguments. Optional arguments with a default are not really something that exists in the interoperable subset of D-Bus. Fixes part of #123 https://bugs.debian.org/1008941
martinpitt
added a commit
that referenced
this issue
Apr 5, 2022
D-Bus does not support default arguments, and we fixed our callers to specify it explicitly. See #123
gnomesysadmins
pushed a commit
to GNOME/folks
that referenced
this issue
Oct 11, 2022
Upstream python-dbusmock changed its API for `PairDevice()` to include a class parameter. For Python code, this API break was solved by providing a default value for the argument. Since we rely on the D-Bus interface however and D-Bus doesn't have a concept of default arguments, this just broke with an error: > Error setting up mock BlueZ device: > GDBus.Error:org.freedesktop.DBus.Error.InvalidArgs: Invalid arguments: > More items found in D-Bus signature than in Python arguments Add the same default argument in our Vala interface to work around the problem. Related links: * martinpitt/python-dbusmock#45 * martinpitt/python-dbusmock#123
gnomesysadmins
pushed a commit
to GNOME/folks
that referenced
this issue
Oct 11, 2022
Upstream python-dbusmock changed its API for `PairDevice()` to include a class parameter. For Python code, this API break was solved by providing a default value for the argument. Since we rely on the D-Bus interface however and D-Bus doesn't have a concept of default arguments, this just broke with an error: > Error setting up mock BlueZ device: > GDBus.Error:org.freedesktop.DBus.Error.InvalidArgs: Invalid arguments: > More items found in D-Bus signature than in Python arguments Add the same default argument in our Vala interface to work around the problem. Related links: * martinpitt/python-dbusmock#45 * martinpitt/python-dbusmock#123
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
gnome-bluetooth version 42 (Debian source package gnome-bluetooth3) passes its unit tests with python3-dbusmock 0.27.3-1 but fails with 0.27.4-1. This appears to have been caused by the more thorough D-Bus signature checking introduced to fix #118.
Merge request to follow.
The text was updated successfully, but these errors were encountered: