Am 25.10.2012 23:46, schrieb Wander Lairson Costa:
>
> The problem is how to make a backend specific feature available on
> final API and keeping it sane for users from other backends.
I'm not sure, if you are aware that pyUSB is already doing this:
Here the libusb 1.0 backend:
def get_device_descriptor(self, dev):
....
dev_desc.bus = _lib.libusb_get_bus_number(dev.devid)
dev_desc.address = _lib.libusb_get_device_address(dev.devid)
the openusb backend:
def get_device_descriptor(self, dev):
...
desc.bus = None
desc.address = None
the libusb 0 backend:
def get_device_descriptor(self, dev):
return _DeviceDescriptor(dev)
My suggestion is to continue this logic:
def get_device_descriptor(self, dev):
....
dev_desc.bus = _lib.libusb_get_bus_number(dev.devid)
dev_desc.address = _lib.libusb_get_device_address(dev.devid)
dev_desc.port_number = _lib.libusb_get_port_number(dev.devid) #
This is new!
If this new line would f*ck up your API, then the API is alread f*cked
up, because I'm following only the existing logic in pyUSB.
> That said, I think fragmentation is bad, but if you want to fork it,
> go ahead, freedom is what OSS is about :)
I'm not a friend of fregmentation... Many thinks could be solved by
communication and cooperation.
Best regards
Stefano
------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
pyusb-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/pyusb-users