org.freedesktop.GUsb CC0-1.0 LGPL-2.0+ GUsb A GObject wrapper for libusb1

GUsb is a GObject wrapper for libusb1 that makes it easy to do asynchronous control, bulk and interrupt transfers with proper cancellation and integration into a mainloop. This makes it easy to integrate low level USB transfers with your high-level application or system daemon.

https://github.com/hughsie/libgusb/issues https://github.com/hughsie/libgusb gusbcmd

This release fixes the following bugs:

  • Export g_usb_device_has_tag()
  • Work around a libusb issue which causes devices to appear twice

This release fixes the following bugs:

  • Close the GUsbDevice objects in gusbcmd
  • Do not call the hotplug callback with the mutex held

This release adds the following features:

  • Allow loading and saving only devices with specific tags
  • Include removed devices in the JSON dump

This release fixes the following bug:

  • Port from gtkdoc to gi-docgen

The JSON format used to serialising devices is not yet stable, and might change.

This release adds the following features:

  • Add support for getting BOS descriptors
  • Allow emulating devices by saving and replaying device events
  • Cache the list of interfaces and descriptors
  • Serialize the GUsbDevice to and from JSON format

This release fixes the following bugs:

  • Ignore usb.ids classes, subclasses and protocols
  • Never dispatch idle events after the context has been destroyed
  • Skip some functionality when emulating

This release adds the following feature:

  • Add API to change the hotplug poll interval

This release fixes the following bugs:

  • Don't hard-code the list of OS supporting --version-script
  • Fix hotplug after threaded device removal
  • Fix version script check for GNU BFD linker on FreeBSD

This release adds the following feature:

  • Add g_usb_device_get_string_descriptor_bytes_full

This release fixes the following bugs:

  • Add the GUsbEndpoint methods to the docs
  • Fix hotplug handling and signal emission during enumerate

This release adds the following feature:

  • Add a FreeBSD CI target

This release fixes the following bugs:

  • Do not depend on libusb_get_parent() to fix FreeBSD compile
  • Do not depend on libusb_get_port_number() to fix DragonFlyBSD compile
  • Do not double-reference USB devices
  • Do not run the tests on FreeBSD
  • Require *any* python3 to fix FreeBSD build

This release adds the following feature:

  • Add g_usb_device_get_string_descriptor_bytes()

This release fixes the following bugs:

  • Properly set dylib versions on darwin
  • Fix cancellation if cancellable is already cancelled