usb 2.1.3 → 2.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +3 -0
  3. package/dist/index.d.ts +2 -1
  4. package/dist/index.js +3 -1
  5. package/dist/index.js.map +1 -1
  6. package/dist/usb/bindings.d.ts +4 -0
  7. package/dist/usb/device.js +5 -0
  8. package/dist/usb/device.js.map +1 -1
  9. package/libusb/.gitattributes +2 -6
  10. package/libusb/.private/appveyor_build.sh +22 -0
  11. package/libusb/.private/bm.sh +1 -1
  12. package/libusb/.private/ci-build.sh +67 -0
  13. package/libusb/.private/post-rewrite.sh +5 -1
  14. package/libusb/.private/pre-commit.sh +5 -1
  15. package/libusb/.private/wbs.txt +4 -19
  16. package/libusb/.travis.yml +32 -23
  17. package/libusb/AUTHORS +76 -3
  18. package/libusb/ChangeLog +41 -3
  19. package/libusb/INSTALL_WIN.txt +22 -44
  20. package/libusb/Makefile.am +32 -10
  21. package/libusb/{README.md → README} +2 -2
  22. package/libusb/README.git +3 -3
  23. package/libusb/Xcode/common.xcconfig +23 -19
  24. package/libusb/Xcode/config.h +25 -13
  25. package/libusb/Xcode/libusb.xcodeproj/project.pbxproj +511 -109
  26. package/libusb/android/README +90 -54
  27. package/libusb/android/config.h +23 -43
  28. package/libusb/android/examples/unrooted_android.c +301 -0
  29. package/libusb/android/examples/unrooted_android.h +36 -0
  30. package/libusb/android/jni/Android.mk +1 -1
  31. package/libusb/android/jni/Application.mk +16 -0
  32. package/libusb/android/jni/examples.mk +63 -29
  33. package/libusb/android/jni/libusb.mk +14 -8
  34. package/libusb/android/jni/tests.mk +13 -24
  35. package/libusb/appveyor.yml +69 -30
  36. package/libusb/autogen.sh +5 -3
  37. package/libusb/bootstrap.sh +6 -2
  38. package/libusb/configure.ac +302 -228
  39. package/libusb/doc/Makefile.in +22 -0
  40. package/libusb/doc/doxygen.cfg.in +460 -223
  41. package/libusb/examples/Makefile.am +6 -13
  42. package/libusb/examples/dpfp.c +276 -73
  43. package/libusb/examples/ezusb.c +18 -8
  44. package/libusb/examples/ezusb.h +6 -17
  45. package/libusb/examples/fxload.c +4 -5
  46. package/libusb/examples/hotplugtest.c +1 -1
  47. package/libusb/examples/sam3u_benchmark.c +59 -24
  48. package/libusb/examples/testlibusb.c +138 -104
  49. package/libusb/examples/xusb.c +26 -22
  50. package/libusb/libusb/Makefile.am +57 -70
  51. package/libusb/libusb/Makefile.am.extra +26 -0
  52. package/libusb/libusb/core.c +420 -423
  53. package/libusb/libusb/descriptor.c +365 -419
  54. package/libusb/libusb/hotplug.c +197 -104
  55. package/libusb/libusb/io.c +491 -528
  56. package/libusb/libusb/libusb-1.0.def +7 -3
  57. package/libusb/libusb/libusb-1.0.rc +1 -9
  58. package/libusb/libusb/libusb.h +295 -226
  59. package/libusb/libusb/libusbi.h +587 -314
  60. package/libusb/libusb/os/darwin_usb.c +634 -317
  61. package/libusb/libusb/os/darwin_usb.h +39 -15
  62. package/libusb/libusb/os/events_posix.c +300 -0
  63. package/libusb/libusb/os/events_posix.h +59 -0
  64. package/libusb/libusb/os/events_windows.c +214 -0
  65. package/libusb/{msvc/missing.h → libusb/os/events_windows.h} +25 -11
  66. package/libusb/libusb/os/haiku_pollfs.cpp +14 -9
  67. package/libusb/libusb/os/haiku_usb.h +12 -12
  68. package/libusb/libusb/os/haiku_usb_backend.cpp +36 -37
  69. package/libusb/libusb/os/haiku_usb_raw.cpp +80 -116
  70. package/libusb/libusb/os/linux_netlink.c +55 -63
  71. package/libusb/libusb/os/linux_udev.c +61 -69
  72. package/libusb/libusb/os/linux_usbfs.c +926 -1015
  73. package/libusb/libusb/os/linux_usbfs.h +74 -57
  74. package/libusb/libusb/os/netbsd_usb.c +103 -168
  75. package/libusb/libusb/os/null_usb.c +111 -0
  76. package/libusb/libusb/os/openbsd_usb.c +71 -120
  77. package/libusb/libusb/os/sunos_usb.c +289 -375
  78. package/libusb/libusb/os/sunos_usb.h +0 -1
  79. package/libusb/libusb/os/threads_posix.c +81 -32
  80. package/libusb/libusb/os/threads_posix.h +19 -23
  81. package/libusb/libusb/os/threads_windows.c +9 -95
  82. package/libusb/libusb/os/threads_windows.h +33 -31
  83. package/libusb/libusb/os/windows_common.c +904 -0
  84. package/libusb/libusb/os/windows_common.h +329 -42
  85. package/libusb/libusb/os/windows_usbdk.c +161 -267
  86. package/libusb/libusb/os/windows_usbdk.h +5 -2
  87. package/libusb/libusb/os/windows_winusb.c +1326 -1190
  88. package/libusb/libusb/os/windows_winusb.h +167 -167
  89. package/libusb/libusb/strerror.c +20 -30
  90. package/libusb/libusb/sync.c +20 -21
  91. package/libusb/libusb/version.h +1 -1
  92. package/libusb/libusb/version_nano.h +1 -1
  93. package/libusb/msvc/.gitattributes +3 -0
  94. package/libusb/msvc/config.h +27 -20
  95. package/libusb/msvc/{hotplugtest_2012.vcxproj → dpfp_2013.vcxproj} +14 -10
  96. package/libusb/msvc/dpfp_2013.vcxproj.filters +26 -0
  97. package/libusb/msvc/{listdevs_2010.vcxproj → dpfp_2015.vcxproj} +14 -9
  98. package/libusb/msvc/dpfp_2015.vcxproj.filters +26 -0
  99. package/libusb/msvc/dpfp_2017.vcxproj +106 -0
  100. package/libusb/msvc/dpfp_2017.vcxproj.filters +26 -0
  101. package/libusb/msvc/dpfp_2019.vcxproj +106 -0
  102. package/libusb/msvc/dpfp_2019.vcxproj.filters +26 -0
  103. package/libusb/msvc/dpfp_threaded_2013.vcxproj +87 -0
  104. package/libusb/msvc/dpfp_threaded_2013.vcxproj.filters +26 -0
  105. package/libusb/msvc/dpfp_threaded_2015.vcxproj +87 -0
  106. package/libusb/msvc/dpfp_threaded_2015.vcxproj.filters +26 -0
  107. package/libusb/msvc/dpfp_threaded_2017.vcxproj +106 -0
  108. package/libusb/msvc/dpfp_threaded_2017.vcxproj.filters +26 -0
  109. package/libusb/msvc/{fxload_2012.vcxproj → dpfp_threaded_2019.vcxproj} +32 -17
  110. package/libusb/msvc/dpfp_threaded_2019.vcxproj.filters +26 -0
  111. package/libusb/msvc/fxload_2013.vcxproj +6 -3
  112. package/libusb/msvc/fxload_2013.vcxproj.filters +35 -0
  113. package/libusb/msvc/fxload_2015.vcxproj +6 -3
  114. package/libusb/msvc/fxload_2015.vcxproj.filters +35 -0
  115. package/libusb/msvc/fxload_2017.vcxproj +6 -7
  116. package/libusb/msvc/fxload_2017.vcxproj.filters +35 -0
  117. package/libusb/msvc/{fxload_2010.vcxproj → fxload_2019.vcxproj} +29 -6
  118. package/libusb/msvc/fxload_2019.vcxproj.filters +35 -0
  119. package/libusb/{examples → msvc}/getopt/getopt.c +0 -0
  120. package/libusb/{examples → msvc}/getopt/getopt.h +0 -0
  121. package/libusb/{examples → msvc}/getopt/getopt1.c +0 -0
  122. package/libusb/msvc/getopt_2013.vcxproj +4 -5
  123. package/libusb/msvc/getopt_2013.vcxproj.filters +26 -0
  124. package/libusb/msvc/getopt_2015.vcxproj +4 -4
  125. package/libusb/msvc/getopt_2015.vcxproj.filters +26 -0
  126. package/libusb/msvc/getopt_2017.vcxproj +4 -10
  127. package/libusb/msvc/getopt_2017.vcxproj.filters +26 -0
  128. package/libusb/msvc/{getopt_2012.vcxproj → getopt_2019.vcxproj} +25 -6
  129. package/libusb/msvc/getopt_2019.vcxproj.filters +26 -0
  130. package/libusb/msvc/hotplugtest_2013.vcxproj +6 -3
  131. package/libusb/msvc/hotplugtest_2013.vcxproj.filters +23 -0
  132. package/libusb/msvc/hotplugtest_2015.vcxproj +6 -3
  133. package/libusb/msvc/hotplugtest_2015.vcxproj.filters +23 -0
  134. package/libusb/msvc/hotplugtest_2017.vcxproj +6 -7
  135. package/libusb/msvc/hotplugtest_2017.vcxproj.filters +23 -0
  136. package/libusb/msvc/hotplugtest_2019.vcxproj +105 -0
  137. package/libusb/msvc/hotplugtest_2019.vcxproj.filters +23 -0
  138. package/libusb/msvc/libusb_2013.sln +50 -20
  139. package/libusb/msvc/libusb_2015.sln +51 -21
  140. package/libusb/msvc/libusb_2017.sln +90 -36
  141. package/libusb/msvc/libusb_2019.sln +240 -0
  142. package/libusb/msvc/libusb_dll_2013.vcxproj +6 -9
  143. package/libusb/msvc/libusb_dll_2013.vcxproj.filters +94 -0
  144. package/libusb/msvc/libusb_dll_2015.vcxproj +6 -8
  145. package/libusb/msvc/libusb_dll_2015.vcxproj.filters +94 -0
  146. package/libusb/msvc/libusb_dll_2017.vcxproj +6 -16
  147. package/libusb/msvc/libusb_dll_2017.vcxproj.filters +94 -0
  148. package/libusb/msvc/{libusb_dll_2010.vcxproj → libusb_dll_2019.vcxproj} +27 -9
  149. package/libusb/msvc/libusb_dll_2019.vcxproj.filters +94 -0
  150. package/libusb/msvc/libusb_static_2013.vcxproj +5 -9
  151. package/libusb/msvc/libusb_static_2013.vcxproj.filters +80 -0
  152. package/libusb/msvc/libusb_static_2015.vcxproj +5 -8
  153. package/libusb/msvc/libusb_static_2015.vcxproj.filters +80 -0
  154. package/libusb/msvc/libusb_static_2017.vcxproj +5 -8
  155. package/libusb/msvc/libusb_static_2017.vcxproj.filters +80 -0
  156. package/libusb/msvc/{libusb_static_2010.vcxproj → libusb_static_2019.vcxproj} +26 -9
  157. package/libusb/msvc/libusb_static_2019.vcxproj.filters +80 -0
  158. package/libusb/msvc/listdevs_2013.vcxproj +6 -3
  159. package/libusb/msvc/listdevs_2013.vcxproj.filters +23 -0
  160. package/libusb/msvc/listdevs_2015.vcxproj +6 -3
  161. package/libusb/msvc/listdevs_2015.vcxproj.filters +23 -0
  162. package/libusb/msvc/listdevs_2017.vcxproj +6 -7
  163. package/libusb/msvc/listdevs_2017.vcxproj.filters +23 -0
  164. package/libusb/msvc/listdevs_2019.vcxproj +105 -0
  165. package/libusb/msvc/listdevs_2019.vcxproj.filters +23 -0
  166. package/libusb/msvc/{listdevs_2012.vcxproj → sam3u_benchmark_2013.vcxproj} +13 -9
  167. package/libusb/msvc/sam3u_benchmark_2013.vcxproj.filters +26 -0
  168. package/libusb/msvc/{hotplugtest_2010.vcxproj → sam3u_benchmark_2015.vcxproj} +13 -8
  169. package/libusb/msvc/sam3u_benchmark_2015.vcxproj.filters +26 -0
  170. package/libusb/msvc/sam3u_benchmark_2017.vcxproj +106 -0
  171. package/libusb/msvc/sam3u_benchmark_2017.vcxproj.filters +26 -0
  172. package/libusb/msvc/sam3u_benchmark_2019.vcxproj +106 -0
  173. package/libusb/msvc/sam3u_benchmark_2019.vcxproj.filters +26 -0
  174. package/libusb/msvc/stress_2013.vcxproj +4 -2
  175. package/libusb/msvc/stress_2013.vcxproj.filters +32 -0
  176. package/libusb/msvc/stress_2015.vcxproj +4 -2
  177. package/libusb/msvc/stress_2015.vcxproj.filters +32 -0
  178. package/libusb/msvc/stress_2017.vcxproj +4 -6
  179. package/libusb/msvc/stress_2017.vcxproj.filters +32 -0
  180. package/libusb/msvc/{stress_2010.vcxproj → stress_2019.vcxproj} +26 -4
  181. package/libusb/msvc/stress_2019.vcxproj.filters +32 -0
  182. package/libusb/msvc/testlibusb_2013.vcxproj +6 -3
  183. package/libusb/msvc/testlibusb_2013.vcxproj.filters +23 -0
  184. package/libusb/msvc/testlibusb_2015.vcxproj +6 -3
  185. package/libusb/msvc/testlibusb_2015.vcxproj.filters +23 -0
  186. package/libusb/msvc/testlibusb_2017.vcxproj +6 -7
  187. package/libusb/msvc/testlibusb_2017.vcxproj.filters +23 -0
  188. package/libusb/msvc/{testlibusb_2010.vcxproj → testlibusb_2019.vcxproj} +28 -5
  189. package/libusb/msvc/testlibusb_2019.vcxproj.filters +23 -0
  190. package/libusb/msvc/xusb_2013.vcxproj +6 -3
  191. package/libusb/msvc/xusb_2013.vcxproj.filters +23 -0
  192. package/libusb/msvc/xusb_2015.vcxproj +6 -3
  193. package/libusb/msvc/xusb_2015.vcxproj.filters +23 -0
  194. package/libusb/msvc/xusb_2017.vcxproj +6 -7
  195. package/libusb/msvc/xusb_2017.vcxproj.filters +23 -0
  196. package/libusb/msvc/{xusb_2010.vcxproj → xusb_2019.vcxproj} +28 -5
  197. package/libusb/msvc/xusb_2019.vcxproj.filters +23 -0
  198. package/libusb/tests/Makefile.am +1 -0
  199. package/libusb/tests/libusb_testlib.h +12 -43
  200. package/libusb/tests/stress.c +59 -50
  201. package/libusb/tests/testlib.c +78 -171
  202. package/libusb.gypi +10 -11
  203. package/package.json +1 -1
  204. package/prebuilds/android-arm/node.napi.armv7.node +0 -0
  205. package/prebuilds/android-arm64/node.napi.armv8.node +0 -0
  206. package/prebuilds/darwin-x64+arm64/node.napi.node +0 -0
  207. package/prebuilds/linux-arm/node.napi.armv6.node +0 -0
  208. package/prebuilds/linux-arm/node.napi.armv7.node +0 -0
  209. package/prebuilds/linux-arm64/node.napi.armv8.node +0 -0
  210. package/prebuilds/linux-ia32/node.napi.node +0 -0
  211. package/prebuilds/linux-x64/node.napi.glibc.node +0 -0
  212. package/prebuilds/linux-x64/node.napi.musl.node +0 -0
  213. package/prebuilds/win32-ia32/node.napi.node +0 -0
  214. package/prebuilds/win32-x64/node.napi.node +0 -0
  215. package/src/device.cc +12 -7
  216. package/src/node_usb.cc +10 -0
  217. package/test/usb.coffee +6 -0
  218. package/tsc/index.ts +2 -0
  219. package/tsc/usb/bindings.ts +5 -0
  220. package/tsc/usb/device.ts +6 -0
  221. package/libusb/.private/bd.cmd +0 -89
  222. package/libusb/.private/bwince.cmd +0 -57
  223. package/libusb/.private/wbs_wince.txt +0 -42
  224. package/libusb/Brewfile +0 -4
  225. package/libusb/appveyor_cygwin.bat +0 -11
  226. package/libusb/appveyor_minGW.bat +0 -19
  227. package/libusb/doc/Makefile.am +0 -9
  228. package/libusb/examples/dpfp_threaded.c +0 -557
  229. package/libusb/libusb/hotplug.h +0 -99
  230. package/libusb/libusb/os/poll_posix.c +0 -84
  231. package/libusb/libusb/os/poll_posix.h +0 -14
  232. package/libusb/libusb/os/poll_windows.c +0 -447
  233. package/libusb/libusb/os/poll_windows.h +0 -98
  234. package/libusb/libusb/os/wince_usb.c +0 -888
  235. package/libusb/libusb/os/wince_usb.h +0 -126
  236. package/libusb/libusb/os/windows_nt_common.c +0 -1010
  237. package/libusb/libusb/os/windows_nt_common.h +0 -110
  238. package/libusb/libusb/os/windows_nt_shared_types.h +0 -147
  239. package/libusb/msvc/appveyor.bat +0 -27
  240. package/libusb/msvc/ddk_build.cmd +0 -219
  241. package/libusb/msvc/errno.h +0 -102
  242. package/libusb/msvc/fxload_sources +0 -23
  243. package/libusb/msvc/getopt_2005.vcproj +0 -288
  244. package/libusb/msvc/getopt_2010.vcxproj +0 -72
  245. package/libusb/msvc/getopt_sources +0 -24
  246. package/libusb/msvc/hotplugtest_sources +0 -20
  247. package/libusb/msvc/inttypes.h +0 -295
  248. package/libusb/msvc/libusb.dsw +0 -71
  249. package/libusb/msvc/libusb_2005.sln +0 -95
  250. package/libusb/msvc/libusb_2010.sln +0 -105
  251. package/libusb/msvc/libusb_2012.sln +0 -105
  252. package/libusb/msvc/libusb_dll.dsp +0 -194
  253. package/libusb/msvc/libusb_dll_2005.vcproj +0 -464
  254. package/libusb/msvc/libusb_dll_2012.vcxproj +0 -107
  255. package/libusb/msvc/libusb_dll_wince.vcproj +0 -1251
  256. package/libusb/msvc/libusb_sources +0 -43
  257. package/libusb/msvc/libusb_static.dsp +0 -174
  258. package/libusb/msvc/libusb_static_2005.vcproj +0 -390
  259. package/libusb/msvc/libusb_static_2012.vcxproj +0 -98
  260. package/libusb/msvc/libusb_static_wince.vcproj +0 -1179
  261. package/libusb/msvc/libusb_wince.sln +0 -246
  262. package/libusb/msvc/listdevs.dsp +0 -103
  263. package/libusb/msvc/listdevs_2005.vcproj +0 -360
  264. package/libusb/msvc/listdevs_sources +0 -20
  265. package/libusb/msvc/listdevs_wince.vcproj +0 -1120
  266. package/libusb/msvc/missing.c +0 -80
  267. package/libusb/msvc/stdint.h +0 -256
  268. package/libusb/msvc/stress_2005.vcproj +0 -390
  269. package/libusb/msvc/stress_2012.vcxproj +0 -87
  270. package/libusb/msvc/stress_sources +0 -21
  271. package/libusb/msvc/stress_wince.vcproj +0 -1128
  272. package/libusb/msvc/testlibusb_2012.vcxproj +0 -83
  273. package/libusb/msvc/testlibusb_sources +0 -20
  274. package/libusb/msvc/xusb.dsp +0 -102
  275. package/libusb/msvc/xusb_2005.vcproj +0 -344
  276. package/libusb/msvc/xusb_2012.vcxproj +0 -83
  277. package/libusb/msvc/xusb_sources +0 -20
  278. package/libusb/msvc/xusb_wince.vcproj +0 -1120
  279. package/libusb/travis-autogen.sh +0 -39
package/CHANGELOG.md CHANGED
@@ -1,5 +1,17 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.2.0] - 2022-03-25
4
+
5
+ ### Added
6
+ - Added `useUsbDkBackend()` method for switching libusb backend on Windows - [`489`](https://github.com/node-usb/node-usb/pull/489) ([Rob Moran](https://github.com/thegecko))
7
+
8
+ ### Changed
9
+ - Changed libusb dependency to upstream v1.0.25 - [`490`](https://github.com/node-usb/node-usb/pull/490) ([Rob Moran](https://github.com/thegecko))
10
+
11
+ ### Fixed
12
+ - Shortcut getStringDescriptor() to return undefined when passed index 0 - [`487`](https://github.com/node-usb/node-usb/pull/487) ([Rob Moran](https://github.com/thegecko))
13
+ - Fixed race issue with garbage collected devices - [`492`](https://github.com/node-usb/node-usb/pull/492) ([Alba Mendez](https://github.com/mildsunrise))
14
+
3
15
  ## [2.1.3] - 2022-03-18
4
16
 
5
17
  ### Fixed
package/README.md CHANGED
@@ -283,6 +283,9 @@ Constant properties from libusb
283
283
  #### usb.setDebugLevel(level : int)
284
284
  Set the libusb debug level (between 0 and 4)
285
285
 
286
+ #### usb.useUsbDkBackend()
287
+ On Windows, use the USBDK backend of libusb instead of WinUSB
288
+
286
289
  ### Device
287
290
  Represents a USB device.
288
291
 
package/dist/index.d.ts CHANGED
@@ -3,6 +3,7 @@ import { WebUSBDevice } from './webusb/webusb-device';
3
3
  import * as usb from './usb';
4
4
  declare const webusb: WebUSB;
5
5
  declare const getDeviceList: typeof usb.getDeviceList;
6
+ declare const useUsbDkBackend: typeof usb.useUsbDkBackend;
6
7
  /**
7
8
  * Convenience method to get the first device with the specified VID and PID, or `undefined` if no such device is present.
8
9
  * @param vid
@@ -14,4 +15,4 @@ declare const findByIds: (vid: number, pid: number) => usb.Device | undefined;
14
15
  * @param serialNumber
15
16
  */
16
17
  declare const findBySerialNumber: (serialNumber: string) => Promise<usb.Device | undefined>;
17
- export { usb, getDeviceList, findByIds, findBySerialNumber, getWebUsb, webusb, WebUSB, WebUSBDevice };
18
+ export { usb, useUsbDkBackend, getDeviceList, findByIds, findBySerialNumber, getWebUsb, webusb, WebUSB, WebUSBDevice };
package/dist/index.js CHANGED
@@ -47,7 +47,7 @@ var __values = (this && this.__values) || function(o) {
47
47
  throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
48
48
  };
49
49
  Object.defineProperty(exports, "__esModule", { value: true });
50
- exports.WebUSBDevice = exports.WebUSB = exports.webusb = exports.getWebUsb = exports.findBySerialNumber = exports.findByIds = exports.getDeviceList = exports.usb = void 0;
50
+ exports.WebUSBDevice = exports.WebUSB = exports.webusb = exports.getWebUsb = exports.findBySerialNumber = exports.findByIds = exports.getDeviceList = exports.useUsbDkBackend = exports.usb = void 0;
51
51
  var util_1 = require("util");
52
52
  var webusb_1 = require("./webusb");
53
53
  Object.defineProperty(exports, "WebUSB", { enumerable: true, get: function () { return webusb_1.WebUSB; } });
@@ -60,6 +60,8 @@ var webusb = new webusb_1.WebUSB();
60
60
  exports.webusb = webusb;
61
61
  var getDeviceList = usb.getDeviceList;
62
62
  exports.getDeviceList = getDeviceList;
63
+ var useUsbDkBackend = usb.useUsbDkBackend;
64
+ exports.useUsbDkBackend = useUsbDkBackend;
63
65
  /**
64
66
  * Convenience method to get the first device with the specified VID and PID, or `undefined` if no such device is present.
65
67
  * @param vid
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../tsc/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAAiC;AACjC,mCAA6C;AAmEzC,uFAnEK,eAAM,OAmEL;AANN,0FA7Da,kBAAS,OA6Db;AA5Db,wDAAsD;AAqElD,6FArEK,4BAAY,OAqEL;AApEhB,2BAA6B;AAqDzB,kBAAG;AAnDP,IAAM,MAAM,GAAG,IAAI,eAAM,EAAE,CAAC;AA4DxB,wBAAM;AA3DV,IAAM,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;AAqDpC,sCAAa;AAnDjB;;;;GAIG;AACH,IAAM,SAAS,GAAG,UAAC,GAAW,EAAE,GAAW;IACvC,IAAM,OAAO,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;IACpC,OAAO,OAAO,CAAC,IAAI,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,KAAK,GAAG,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,KAAK,GAAG,EAAjF,CAAiF,CAAC,CAAC;AACnH,CAAC,CAAC;AA4CE,8BAAS;AA1Cb;;;GAGG;AACH,IAAM,kBAAkB,GAAG,UAAO,YAAoB;;;;;;gBAC5C,OAAO,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;gBAC9B,MAAM,GAAG,UAAC,MAAkB,IAAc,OAAA,CAAC,CAAC,MAAM,CAAC,UAAU,EAAnB,CAAmB,CAAC;;;;gBAE/C,YAAA,SAAA,OAAO,CAAA;;;;gBAAjB,MAAM;;;;gBAET,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;oBACjB,MAAM,CAAC,IAAI,EAAE,CAAC;iBACjB;gBAEK,mBAAmB,GAAG,gBAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAChE,qBAAM,mBAAmB,CAAC,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAA;;gBAAzE,MAAM,GAAG,SAAgE;gBAE/E,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,KAAK,YAAY,EAAE;oBAC9C,sBAAO,MAAM,EAAC;iBACjB;;;;;;gBAID,IAAI;oBACA,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE;wBAChB,MAAM,CAAC,KAAK,EAAE,CAAC;qBAClB;iBACJ;gBAAC,WAAM;oBACJ,mEAAmE;iBACtE;;;;;;;;;;;;;;;;qBAIT,sBAAO,SAAS,EAAC;;;KACpB,CAAC;AASE,gDAAkB"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../tsc/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,6BAAiC;AACjC,mCAA6C;AAqEzC,uFArEK,eAAM,OAqEL;AANN,0FA/Da,kBAAS,OA+Db;AA9Db,wDAAsD;AAuElD,6FAvEK,4BAAY,OAuEL;AAtEhB,2BAA6B;AAsDzB,kBAAG;AApDP,IAAM,MAAM,GAAG,IAAI,eAAM,EAAE,CAAC;AA8DxB,wBAAM;AA7DV,IAAM,aAAa,GAAG,GAAG,CAAC,aAAa,CAAC;AAuDpC,sCAAa;AAtDjB,IAAM,eAAe,GAAG,GAAG,CAAC,eAAe,CAAC;AAqDxC,0CAAe;AAnDnB;;;;GAIG;AACH,IAAM,SAAS,GAAG,UAAC,GAAW,EAAE,GAAW;IACvC,IAAM,OAAO,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;IACpC,OAAO,OAAO,CAAC,IAAI,CAAC,UAAA,IAAI,IAAI,OAAA,IAAI,CAAC,gBAAgB,CAAC,QAAQ,KAAK,GAAG,IAAI,IAAI,CAAC,gBAAgB,CAAC,SAAS,KAAK,GAAG,EAAjF,CAAiF,CAAC,CAAC;AACnH,CAAC,CAAC;AA6CE,8BAAS;AA3Cb;;;GAGG;AACH,IAAM,kBAAkB,GAAG,UAAO,YAAoB;;;;;;gBAC5C,OAAO,GAAG,GAAG,CAAC,aAAa,EAAE,CAAC;gBAC9B,MAAM,GAAG,UAAC,MAAkB,IAAc,OAAA,CAAC,CAAC,MAAM,CAAC,UAAU,EAAnB,CAAmB,CAAC;;;;gBAE/C,YAAA,SAAA,OAAO,CAAA;;;;gBAAjB,MAAM;;;;gBAET,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE;oBACjB,MAAM,CAAC,IAAI,EAAE,CAAC;iBACjB;gBAEK,mBAAmB,GAAG,gBAAS,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBAChE,qBAAM,mBAAmB,CAAC,MAAM,CAAC,gBAAgB,CAAC,aAAa,CAAC,EAAA;;gBAAzE,MAAM,GAAG,SAAgE;gBAE/E,IAAI,MAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,KAAK,YAAY,EAAE;oBAC9C,sBAAO,MAAM,EAAC;iBACjB;;;;;;gBAID,IAAI;oBACA,IAAI,MAAM,CAAC,MAAM,CAAC,EAAE;wBAChB,MAAM,CAAC,KAAK,EAAE,CAAC;qBAClB;iBACJ;gBAAC,WAAM;oBACJ,mEAAmE;iBACtE;;;;;;;;;;;;;;;;qBAIT,sBAAO,SAAS,EAAC;;;KACpB,CAAC;AAUE,gDAAkB"}
@@ -13,6 +13,10 @@ export declare class LibUSBException extends Error {
13
13
  * @param level libusb debug level (between 0 and 4)
14
14
  */
15
15
  export declare function setDebugLevel(level: number): void;
16
+ /**
17
+ * Use USBDK Backend (Windows only)
18
+ */
19
+ export declare function useUsbDkBackend(): void;
16
20
  export declare function _enableHotplugEvents(): void;
17
21
  export declare function _disableHotplugEvents(): void;
18
22
  export declare function _getLibusbCapability(capability: number): number;
@@ -205,6 +205,11 @@ var ExtendedDevice = /** @class */ (function () {
205
205
  * @param callback
206
206
  */
207
207
  ExtendedDevice.prototype.getStringDescriptor = function (desc_index, callback) {
208
+ // Index 0 indicates null
209
+ if (desc_index === 0) {
210
+ callback();
211
+ return;
212
+ }
208
213
  var langid = 0x0409;
209
214
  var length = 255;
210
215
  this.controlTransfer(usb.LIBUSB_ENDPOINT_IN, usb.LIBUSB_REQUEST_GET_DESCRIPTOR, ((usb.LIBUSB_DT_STRING << 8) | desc_index), langid, length, function (error, buffer) {
@@ -1 +1 @@
1
- {"version":3,"file":"device.js","sourceRoot":"","sources":["../../tsc/usb/device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../../tsc/usb/device.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,7 @@
1
- *.sh eol=lf
2
1
  *.ac eol=lf
3
2
  *.am eol=lf
4
- *.dsw eol=crlf
5
- *.dsp eol=crlf whitespace=space-before-tab
6
- *.sln eol=crlf
7
- *.vcproj eol=crlf
8
- *.vcxproj* eol=crlf
3
+ *.bat eol=crlf
4
+ *.sh eol=lf
9
5
  .gitattributes export-ignore
10
6
  .gitignore export-ignore
11
7
  INSTALL_WIN.txt eol=crlf
@@ -0,0 +1,22 @@
1
+ #!/bin/bash
2
+
3
+ set -eu
4
+
5
+ buildsys="${1}-${Platform}"
6
+
7
+ if [ "${buildsys}" == "MinGW-Win32" ]; then
8
+ export PATH="/c/mingw-w64/i686-6.3.0-posix-dwarf-rt_v5-rev1/mingw32/bin:${PATH}"
9
+ elif [ "${buildsys}" == "MinGW-x64" ]; then
10
+ export PATH="/c/mingw-w64/x86_64-8.1.0-posix-seh-rt_v6-rev0/mingw64/bin:${PATH}"
11
+ fi
12
+
13
+ builddir="build-${buildsys}"
14
+ installdir="${PWD}/libusb-${buildsys}"
15
+
16
+ cd libusb
17
+
18
+ echo "Bootstrapping ..."
19
+ ./bootstrap.sh
20
+ echo ""
21
+
22
+ exec .private/ci-build.sh --build-dir "${builddir}" --install -- "--prefix=${installdir}"
@@ -51,4 +51,4 @@ mkdir -p $target/dll
51
51
  cp -v libusb/.libs/libusb-1.0.a $target/static
52
52
  cp -v libusb/.libs/libusb-1.0.dll $target/dll
53
53
  cp -v libusb/.libs/libusb-1.0.dll.a $target/dll
54
- cd $PWD
54
+ cd $PWD
@@ -0,0 +1,67 @@
1
+ #!/bin/bash
2
+
3
+ set -e
4
+
5
+ builddir=
6
+ install=no
7
+
8
+ while [ $# -gt 0 ]; do
9
+ case "$1" in
10
+ --build-dir)
11
+ if [ $# -lt 2 ]; then
12
+ echo "ERROR: missing argument for --build-dir option" >&2
13
+ exit 1
14
+ fi
15
+ builddir=$2
16
+ shift 2
17
+ ;;
18
+ --install)
19
+ install=yes
20
+ shift
21
+ ;;
22
+ --)
23
+ shift
24
+ break;
25
+ ;;
26
+ *)
27
+ echo "ERROR: Unexpected argument: $1" >&2
28
+ exit 1
29
+ esac
30
+ done
31
+
32
+ if [ -z "${builddir}" ]; then
33
+ echo "ERROR: --build-dir option not specified" >&2
34
+ exit 1
35
+ fi
36
+
37
+ if [ -e "${builddir}" ]; then
38
+ echo "ERROR: directory entry named '${builddir}' already exists" >&2
39
+ exit 1
40
+ fi
41
+
42
+ mkdir "${builddir}"
43
+ cd "${builddir}"
44
+
45
+ cflags="-O2"
46
+
47
+ # enable extra warnings
48
+ cflags+=" -Winline"
49
+ cflags+=" -Wmissing-include-dirs"
50
+ cflags+=" -Wnested-externs"
51
+ cflags+=" -Wpointer-arith"
52
+ cflags+=" -Wredundant-decls"
53
+ cflags+=" -Wswitch-enum"
54
+
55
+ echo ""
56
+ echo "Configuring ..."
57
+ CFLAGS="${cflags}" ../configure --enable-examples-build --enable-tests-build "$@"
58
+
59
+ echo ""
60
+ echo "Building ..."
61
+ make -j4 -k
62
+
63
+ if [ "${install}" = "yes" ]; then
64
+ echo ""
65
+ echo "Installing ..."
66
+ make install
67
+ fi
@@ -6,7 +6,7 @@
6
6
  # .git/hooks/ with the following content:
7
7
  # #!/bin/sh
8
8
  # if [ -x .private/post-rewrite.sh ]; then
9
- # source .private/post-rewrite.sh
9
+ # . .private/post-rewrite.sh
10
10
  # fi
11
11
  #
12
12
  # NOTE: These versioning hooks are intended to be used *INTERNALLY* by the
@@ -14,6 +14,10 @@
14
14
  # derivative branch, such as one you would create for private development.
15
15
  #
16
16
 
17
+ if [ -n "$LIBUSB_SKIP_NANO" ]; then
18
+ exit 0
19
+ fi
20
+
17
21
  case "$1" in
18
22
  amend)
19
23
  # Check if a .amend exists. If none, create one and warn user to re-commit.
@@ -8,7 +8,7 @@
8
8
  # .git/hooks/ with the following content:
9
9
  # #!/bin/sh
10
10
  # if [ -x .private/pre-commit.sh ]; then
11
- # source .private/pre-commit.sh
11
+ # . .private/pre-commit.sh
12
12
  # fi
13
13
  #
14
14
  # NOTE: These versioning hooks are intended to be used *INTERNALLY* by the
@@ -26,6 +26,10 @@
26
26
  BRANCH_OFFSET=10000
27
27
  ################################################################################
28
28
 
29
+ if [ -n "$LIBUSB_SKIP_NANO" ]; then
30
+ exit 0
31
+ fi
32
+
29
33
  if [ "$BASH_VERSION" = '' ]; then
30
34
  TYPE_CMD="type git >/dev/null 2>&1"
31
35
  else
@@ -2,7 +2,7 @@
2
2
 
3
3
  *********************************************************************
4
4
  * The latest version of this snapshot can always be downloaded at: *
5
- * https://sourceforge.net/projects/libusb/files/ *
5
+ * https://github.com/libusb/libusb/releases *
6
6
  *********************************************************************
7
7
 
8
8
  o Visual Studio:
@@ -24,24 +24,6 @@ o Visual Studio:
24
24
  remember that you need to have a copy of the DLL either in the runtime
25
25
  directory or in system32
26
26
 
27
- o WDK/DDK:
28
- - The following is an example of a sources files that you can use to compile
29
- a libusb 1.0 based console application. In this sample ..\libusb\ is the
30
- directory where you would have copied libusb.h as well as the relevant
31
- libusb-1.0.lib
32
-
33
- TARGETNAME=your_app
34
- TARGETTYPE=PROGRAM
35
- USE_MSVCRT=1
36
- UMTYPE=console
37
- INCLUDES=..\libusb;$(DDK_INC_PATH)
38
- TARGETLIBS=..\libusb\libusb-1.0.lib
39
- SOURCES=your_app.c
40
-
41
- - Note that if you plan to use libCMT instead of MSVCRT (USE_LIBCMT=1 instead
42
- of USE_MSVCRT=1), you will need to recompile libusb to use libCMT. This can
43
- easily be achieved, in the DDK environment, by running 'ddk_build /MT'
44
-
45
27
  o MinGW/cygwin
46
28
  - Copy libusb.h, from include/libusb-1.0/ to your default include directory,
47
29
  and copy the MinGW32/ or MinGW64/ .a files to your default library directory.
@@ -55,6 +37,9 @@ o Additional information:
55
37
  - For some libusb samples (including source), please have a look in examples/
56
38
  - For additional information on the libusb 1.0 Windows backend please visit:
57
39
  http://windows.libusb.info
40
+ - Using the UsbDk backend is now a run-time choice rather than a compile-time
41
+ choice. For additional information, including example usage, please visit:
42
+ http://windows.libusb.info/#Driver_Installation
58
43
  - The MinGW and MS generated DLLs are fully interchangeable, provided that you
59
44
  use the import libs provided or generate one from the .def also provided.
60
45
  - If you find any issue, please visit http://libusb.info/ and check the
@@ -1,49 +1,58 @@
1
1
  language: c
2
2
 
3
+ git:
4
+ depth: 1
5
+
3
6
  matrix:
4
7
  include:
5
8
  - os: linux
6
- dist: trusty
7
- sudo: required
9
+ dist: focal
10
+ compiler: clang
11
+ - os: linux
12
+ dist: focal
8
13
  compiler: gcc
9
14
  - os: linux
10
- dist: trusty
11
- sudo: required
15
+ dist: bionic
12
16
  compiler: clang
13
- - os: osx
14
- osx_image: xcode8
17
+ - os: linux
18
+ dist: bionic
15
19
  compiler: gcc
16
- - os: osx
17
- osx_image: xcode8
20
+ - os: linux
21
+ dist: xenial
18
22
  compiler: clang
19
- - os: osx
20
- osx_image: xcode7.1
23
+ - os: linux
24
+ dist: xenial
21
25
  compiler: gcc
22
26
  - os: osx
23
- osx_image: xcode7.1
27
+ osx_image: xcode12.2
24
28
  compiler: clang
25
29
  - os: osx
26
- osx_image: beta-xcode6.2
27
- compiler: gcc
30
+ osx_image: xcode11.3
31
+ compiler: clang
28
32
  - os: osx
29
- osx_image: beta-xcode6.2
33
+ osx_image: xcode9.4
30
34
  compiler: clang
31
35
 
32
36
  addons:
33
- homebrew:
34
- update: true
35
- brewfile: true
36
37
  apt:
37
38
  packages:
38
39
  - autoconf
39
40
  - automake
40
41
  - libtool
41
- - m4
42
42
  - libudev-dev
43
- sources:
44
- - ubuntu-toolchain-r-test
43
+ - m4
44
+ homebrew:
45
+ packages:
46
+ - autoconf
47
+ - automake
48
+ - libtool
49
+ - m4
50
+
51
+ before_script:
52
+ - ./bootstrap.sh
45
53
 
46
54
  script:
47
- - ./autogen.sh && make clean && make
48
- - if [[ "$TRAVIS_OS_NAME" == "linux" ]]; then ./travis-autogen.sh --disable-udev && make clean && make ; fi
49
- - if [[ "$TRAVIS_OS_NAME" == "osx" ]]; then cd Xcode && xcodebuild -project libusb.xcodeproj ; fi
55
+ - if [ "$TRAVIS_OS_NAME" = "linux" ]; then .private/ci-build.sh --build-dir build-netlink -- --disable-udev; fi
56
+ - if [ "$TRAVIS_OS_NAME" = "linux" ]; then .private/ci-build.sh --build-dir build-udev -- --enable-udev; fi
57
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then .private/ci-build.sh --build-dir build; fi
58
+ - if [ "$TRAVIS_OS_NAME" = "osx" ]; then cd Xcode && xcodebuild -project libusb.xcodeproj; fi
package/libusb/AUTHORS CHANGED
@@ -11,93 +11,154 @@ Copyright © 2012-2013 Toby Gray <toby.gray@realvnc.com>
11
11
  Copyright © 2013-2018 Chris Dickens <christopher.a.dickens@gmail.com>
12
12
 
13
13
  Other contributors:
14
+ Aaron Luft
15
+ Adam Korcz
14
16
  Adrian Bunk
17
+ Adrien Destugues
15
18
  Akshay Jaggi
16
19
  Alan Ott
17
20
  Alan Stern
21
+ Aleksandr Mezin
22
+ Alexander Pyhalov
23
+ Alexander Schlarb
24
+ Alexander Stein
18
25
  Alex Vatchenko
26
+ Andrew Aldridge
19
27
  Andrew Fernandes
28
+ Andrew Goodney
20
29
  Andy Chunyu
21
30
  Andy McFadden
22
31
  Angus Gratton
23
32
  Anil Nair
33
+ Ankur Verma
24
34
  Anthony Clay
25
35
  Antonio Ospite
26
36
  Artem Egorkine
27
37
  Aurelien Jarno
38
+ Axel Gembe
39
+ Aymeric Vincent
40
+ Baruch Siach
28
41
  Bastien Nocera
29
42
  Bei Zhang
43
+ Bence Csokas
30
44
  Benjamin Dobell
45
+ Bohdan Tymkiv
31
46
  Brent Rector
47
+ Bruno Harbulot
32
48
  Carl Karsten
33
49
  Christophe Zeitouny
50
+ Chris Zhu
51
+ Chunyu Xie
34
52
  Colin Walters
53
+ Craig Hutchinson
35
54
  Dave Camarillo
36
55
  David Engraf
37
- David Moore
38
56
  Davidlohr Bueso
57
+ David Moore
39
58
  Dmitry Fleytman
59
+ Dmitry Kostjuchenko
60
+ Dmitry Zakablukov
40
61
  Doug Johnston
41
62
  Evan Hunter
63
+ Evan Miller
42
64
  Federico Manzan
43
65
  Felipe Balbi
44
66
  Florian Albrechtskirchinger
45
67
  Francesco Montorsi
46
68
  Francisco Facioni
69
+ Frank Li
70
+ Frederik Carlier
71
+ Freek Dijkstra
47
72
  Gaurav Gupta
48
73
  Graeme Gill
74
+ Greg Kroah-Hartman
49
75
  Gustavo Zacarias
76
+ Haidong Zheng
50
77
  Hans Ulrich Niedermann
78
+ Harry Mallon
51
79
  Hector Martin
52
80
  Hoi-Ho Chan
81
+ Ido Yariv
82
+ Igor Anokhin
83
+ Ihor Dutchak
53
84
  Ilya Konstantinov
54
85
  Jakub Klama
55
86
  James Hanko
56
87
  Jeffrey Nichols
88
+ Jie Zhang
89
+ Jim Chen
57
90
  Johann Richard
91
+ John Keeping
58
92
  John Sheu
93
+ Jonas Malaco
59
94
  Jonathon Jongsma
60
95
  Joost Muller
61
96
  Josh Gao
62
97
  Joshua Blake
98
+ Joshua Hou
99
+ Juan Cruz Viotti
100
+ Julian Scheel
63
101
  Justin Bischoff
64
- KIMURA Masaru
65
102
  Karsten Koenig
103
+ Kenjiro Tsuji
104
+ Kimura Masaru
66
105
  Konrad Rzepecki
67
106
  Kuangye Guo
68
107
  Lars Kanis
69
108
  Lars Wirzenius
70
109
  Lei Chen
110
+ Léo Lam
111
+ Liang Yunwang
71
112
  Luca Longinotti
113
+ Luz Paz
114
+ Mac Wang
115
+ Marco Trevisan (Treviño)
72
116
  Marcus Meissner
117
+ Mark Kuo
73
118
  Markus Heidelberg
74
119
  Martin Ettl
75
120
  Martin Koegler
121
+ Martin Thierer
76
122
  Matthew Stapleton
77
123
  Matthias Bolte
124
+ Michael Dickens
78
125
  Michel Zou
79
126
  Mike Frysinger
80
127
  Mikhail Gusarov
128
+ Mikolaj Kucharski
81
129
  Morgan Leborgne
82
130
  Moritz Fischer
83
- Ларионов Даниил
131
+ Nancy Li
132
+ Nia Alarie
84
133
  Nicholas Corgan
85
134
  Omri Iluz
86
135
  Orin Eman
136
+ Ozkan Sezer
137
+ Patrick Stewart
138
+ Paul Cercueil
87
139
  Paul Fertser
140
+ Paul Qureshi
88
141
  Pekka Nikander
142
+ Philémon Favrod
143
+ Pino Toscano
89
144
  Rob Walker
90
145
  Romain Vimont
91
146
  Roman Kalashnikov
147
+ Ryan Schmidt
148
+ Saleem Rashid
92
149
  Sameeh Jubran
93
150
  Sean McBride
94
151
  Sebastian Pipping
152
+ Sebastian von Ohr
95
153
  Sergey Serb
96
154
  Simon Haggett
97
155
  Simon Newton
156
+ Slash Gordon
98
157
  Stefan Agner
99
158
  Stefan Tauner
100
159
  Steinar H. Gunderson
160
+ Stephen Groat
161
+ Theo Buehler
101
162
  Thomas Röfer
102
163
  Tim Hutt
103
164
  Tim Roberts
@@ -106,14 +167,26 @@ Toby Peterson
106
167
  Tormod Volden
107
168
  Trygve Laugstøl
108
169
  Uri Lublin
170
+ Uwe Bonnes
109
171
  Vasily Khoruzhick
110
172
  Vegard Storheil Eriksen
111
173
  Venkatesh Shukla
112
174
  Vianney le Clément de Saint-Marcq
113
175
  Victor Toso
176
+ Vinicius Tinti
114
177
  Vitali Lovich
178
+ Vladimir Beloborodov
179
+ William Orr
115
180
  William Skellenger
116
181
  Xiaofan Chen
182
+ Zhiqiang Liu
117
183
  Zoltán Kovács
184
+ Сергей Валерьевич
185
+ Ларионов Даниил
118
186
  Роман Донченко
187
+ jonner
188
+ orbitcowboy
119
189
  parafin
190
+ RipleyTom
191
+ saur0n
192
+ winterrace
package/libusb/ChangeLog CHANGED
@@ -1,6 +1,44 @@
1
1
  For detailed information about the changes below, please see the git log or
2
2
  visit: http://log.libusb.info
3
3
 
4
+ 2022-01-31: v1.0.25
5
+ * Linux: Fix regression with some particular devices
6
+ * Linux: Fix regression with libusb_handle_events_timeout_completed()
7
+ * Linux: Fix regression with cpu usage in libusb_bulk_transfer
8
+ * Darwin (macOS): Add support for detaching kernel drivers with authorization.
9
+ * Darwin (macOS): Do not drop partial data on timeout.
10
+ * Darwin (macOS): Silence pipe error in set_interface_alt_setting().
11
+ * Windows: Fix HID backend missing byte
12
+ * Windows: Fix segfault with libusbk driver
13
+ * Windows: Fix regression when using libusb0 driver
14
+ * Windows: Support LIBUSB_TRANSFER_ADD_ZERO_PACKET on winusb
15
+ * New NO_DEVICE_DISCOVERY option replaces WEAK_AUTHORITY option
16
+ * Various other bug fixes and improvements
17
+
18
+ 2020-12-09: v1.0.24
19
+ * Add new platform abstraction (#252)
20
+ * Add Null POSIX backend
21
+ * Add support for eventfd
22
+ * Add support for thread IDs on Haiku, NetBSD and Solaris
23
+ * New API libusb_hotplug_get_user_data()
24
+ * Darwin (macOS): Fix race condition that results in segmentation fault (#701)
25
+ * Darwin (macOS): Fix stale descriptor information post reset (#733)
26
+ * Darwin (macOS): use IOUSBDevice as darwin_device_class explicitly (#693)
27
+ * Linux: Drop support for kernel older than 2.6.32
28
+ * Linux: Provide an event thread name (#689)
29
+ * Linux: Wait until all URBs have been reaped before freeing them (#607)
30
+ * NetBSD: Recognize device timeouts (#710)
31
+ * OpenBSD: Allow opening ugen devices multiple times (#763)
32
+ * OpenBSD: Support libusb_get_port_number() (#764)
33
+ * SunOS: Fix a memory leak (#756)
34
+ * SunOS: Various fixes (#627, #628, #629)
35
+ * Windows: Add Visual Studio 2019 support
36
+ * Windows: Drop support for WinCE and Visual Studio older than 2013
37
+ * Windows: Drop support for Windows XP
38
+ * Windows: Support building all examples using Visual Studio (#151)
39
+ * Documentation fixes and improvements
40
+ * Various other bug fixes and improvements
41
+
4
42
  2019-08-28: v1.0.23
5
43
  * Add German translation (#446)
6
44
  * Add Hungarian translation (#493)
@@ -22,7 +60,7 @@ visit: http://log.libusb.info
22
60
  * Windows: Add support for isochronous transfers with WinUSB
23
61
  * Various other bug fixes and improvements
24
62
 
25
- 2018-03-24: v1.0.22:
63
+ 2018-03-24: v1.0.22
26
64
  * New libusb_set_option() API
27
65
  * Fix transfer timeout not being cleared upon resubmission
28
66
  * Report super speed plus devices on modern Linux and macOS
@@ -37,10 +75,10 @@ visit: http://log.libusb.info
37
75
  * Windows: Fix enumeration problems on Windows 8 and later
38
76
  * Windows: Major rework of poll() emulation
39
77
  * Windows: Numerous HID API fixes
40
- * Windows: Support cancelation of individual transfers (Vista and later)
78
+ * Windows: Support cancellation of individual transfers (Vista and later)
41
79
  * Various other bug fixes and improvements
42
80
 
43
- 2016-10-01: v1.0.21:
81
+ 2016-10-01: v1.0.21
44
82
  * Core: Refactor code related to transfer flags and timeout handling
45
83
  * Darwin: Ignore root hub simulation devices
46
84
  * Darwin: Improved support for OS X El Capitan