0-1-0 / lightblue-0.4

LightBlue python module that compiles successful on OS X 10.8 (Mountain Lion)
GNU General Public License v3.0
96 stars 92 forks source link

Signature mismatch for `deviceInquiryComplete:error:aborted` #4

Open hans opened 11 years ago

hans commented 11 years ago

I get the following error when I first import lightblue:

Traceback (most recent call last):
  File "commander.py", line 3, in <module>
    import lightblue
  File "/usr/local/lib/python2.7/site-packages/lightblue/__init__.py", line 160, in <module>
    from _lightblue import *
  File "/usr/local/lib/python2.7/site-packages/lightblue/_lightblue.py", line 397, in <module>
    class _AsyncDeviceInquiry(Foundation.NSObject):
TypeError: Error when calling the metaclass bases
    class _AsyncDeviceInquiry does not correctly implement protocol IOBluetoothDeviceInquiryDelegate: the signature for method deviceInquiryComplete:error:aborted: is v@:@iB instead of v@:@iZ

LightBlue describes how to resolve this signature mismatch (and I posted a more thorough explanation on Stack Overflow). Since this repo seems to expressly target OS X 10.8, though, I'm wondering if the patch should be in the core code rather than left to the user as a post-install fix.

Are there any 10.8 machines that do need the v@:@iB signature? Unless it varies across Mac hardware, I think the signature should be changed in the code to v@:@iZ.