usb 2.1.2 → 2.3.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 (288) hide show
  1. package/CHANGELOG.md +24 -0
  2. package/README.md +20 -2
  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/dist/usb/index.js +7 -16
  10. package/dist/usb/index.js.map +1 -1
  11. package/dist/webusb/webusb-device.d.ts +2 -1
  12. package/dist/webusb/webusb-device.js +21 -14
  13. package/dist/webusb/webusb-device.js.map +1 -1
  14. package/libusb/.gitattributes +2 -6
  15. package/libusb/.private/appveyor_build.sh +22 -0
  16. package/libusb/.private/bm.sh +1 -1
  17. package/libusb/.private/ci-build.sh +67 -0
  18. package/libusb/.private/ci-container-build.sh +70 -0
  19. package/libusb/.private/post-rewrite.sh +5 -1
  20. package/libusb/.private/pre-commit.sh +5 -1
  21. package/libusb/.private/wbs.txt +4 -19
  22. package/libusb/.travis.yml +32 -23
  23. package/libusb/AUTHORS +86 -3
  24. package/libusb/ChangeLog +54 -3
  25. package/libusb/INSTALL_WIN.txt +22 -44
  26. package/libusb/Makefile.am +32 -10
  27. package/libusb/{README.md → README} +2 -2
  28. package/libusb/README.git +3 -3
  29. package/libusb/Xcode/common.xcconfig +23 -19
  30. package/libusb/Xcode/config.h +25 -13
  31. package/libusb/Xcode/libusb.xcodeproj/project.pbxproj +511 -109
  32. package/libusb/android/README +90 -54
  33. package/libusb/android/config.h +23 -43
  34. package/libusb/android/examples/unrooted_android.c +300 -0
  35. package/libusb/android/examples/unrooted_android.h +36 -0
  36. package/libusb/android/jni/Android.mk +1 -1
  37. package/libusb/android/jni/Application.mk +16 -0
  38. package/libusb/android/jni/examples.mk +63 -29
  39. package/libusb/android/jni/libusb.mk +14 -8
  40. package/libusb/android/jni/tests.mk +13 -24
  41. package/libusb/appveyor.yml +73 -30
  42. package/libusb/autogen.sh +5 -3
  43. package/libusb/bootstrap.sh +6 -2
  44. package/libusb/configure.ac +314 -227
  45. package/libusb/doc/Makefile.in +22 -0
  46. package/libusb/doc/doxygen.cfg.in +460 -223
  47. package/libusb/examples/Makefile.am +6 -13
  48. package/libusb/examples/dpfp.c +276 -73
  49. package/libusb/examples/ezusb.c +18 -8
  50. package/libusb/examples/ezusb.h +6 -17
  51. package/libusb/examples/fxload.c +4 -5
  52. package/libusb/examples/hotplugtest.c +1 -1
  53. package/libusb/examples/sam3u_benchmark.c +59 -24
  54. package/libusb/examples/testlibusb.c +138 -104
  55. package/libusb/examples/xusb.c +26 -22
  56. package/libusb/libusb/Makefile.am +57 -70
  57. package/libusb/libusb/Makefile.am.extra +26 -0
  58. package/libusb/libusb/core.c +432 -423
  59. package/libusb/libusb/descriptor.c +365 -419
  60. package/libusb/libusb/hotplug.c +200 -104
  61. package/libusb/libusb/io.c +522 -535
  62. package/libusb/libusb/libusb-1.0.def +7 -3
  63. package/libusb/libusb/libusb-1.0.rc +1 -9
  64. package/libusb/libusb/libusb.h +302 -226
  65. package/libusb/libusb/libusbi.h +607 -316
  66. package/libusb/libusb/os/darwin_usb.c +703 -329
  67. package/libusb/libusb/os/darwin_usb.h +39 -15
  68. package/libusb/libusb/os/events_posix.c +300 -0
  69. package/libusb/libusb/os/events_posix.h +59 -0
  70. package/libusb/libusb/os/events_windows.c +214 -0
  71. package/libusb/{msvc/missing.h → libusb/os/events_windows.h} +25 -11
  72. package/libusb/libusb/os/haiku_pollfs.cpp +14 -9
  73. package/libusb/libusb/os/haiku_usb.h +12 -12
  74. package/libusb/libusb/os/haiku_usb_backend.cpp +36 -37
  75. package/libusb/libusb/os/haiku_usb_raw.cpp +80 -116
  76. package/libusb/libusb/os/linux_netlink.c +55 -63
  77. package/libusb/libusb/os/linux_udev.c +61 -69
  78. package/libusb/libusb/os/linux_usbfs.c +926 -1015
  79. package/libusb/libusb/os/linux_usbfs.h +74 -57
  80. package/libusb/libusb/os/netbsd_usb.c +103 -168
  81. package/libusb/libusb/os/null_usb.c +111 -0
  82. package/libusb/libusb/os/openbsd_usb.c +71 -120
  83. package/libusb/libusb/os/sunos_usb.c +289 -375
  84. package/libusb/libusb/os/sunos_usb.h +0 -1
  85. package/libusb/libusb/os/threads_posix.c +81 -32
  86. package/libusb/libusb/os/threads_posix.h +19 -23
  87. package/libusb/libusb/os/threads_windows.c +9 -95
  88. package/libusb/libusb/os/threads_windows.h +33 -31
  89. package/libusb/libusb/os/windows_common.c +915 -0
  90. package/libusb/libusb/os/windows_common.h +330 -42
  91. package/libusb/libusb/os/windows_usbdk.c +161 -267
  92. package/libusb/libusb/os/windows_usbdk.h +5 -2
  93. package/libusb/libusb/os/windows_winusb.c +1355 -1192
  94. package/libusb/libusb/os/windows_winusb.h +167 -167
  95. package/libusb/libusb/strerror.c +20 -30
  96. package/libusb/libusb/sync.c +20 -21
  97. package/libusb/libusb/version.h +1 -1
  98. package/libusb/libusb/version_nano.h +1 -1
  99. package/libusb/msvc/.gitattributes +3 -0
  100. package/libusb/msvc/config.h +27 -20
  101. package/libusb/msvc/{hotplugtest_2012.vcxproj → dpfp_2013.vcxproj} +14 -10
  102. package/libusb/msvc/dpfp_2013.vcxproj.filters +26 -0
  103. package/libusb/msvc/{listdevs_2010.vcxproj → dpfp_2015.vcxproj} +14 -9
  104. package/libusb/msvc/dpfp_2015.vcxproj.filters +26 -0
  105. package/libusb/msvc/dpfp_2017.vcxproj +106 -0
  106. package/libusb/msvc/dpfp_2017.vcxproj.filters +26 -0
  107. package/libusb/msvc/dpfp_2019.vcxproj +106 -0
  108. package/libusb/msvc/dpfp_2019.vcxproj.filters +26 -0
  109. package/libusb/msvc/dpfp_threaded_2013.vcxproj +87 -0
  110. package/libusb/msvc/dpfp_threaded_2013.vcxproj.filters +26 -0
  111. package/libusb/msvc/dpfp_threaded_2015.vcxproj +87 -0
  112. package/libusb/msvc/dpfp_threaded_2015.vcxproj.filters +26 -0
  113. package/libusb/msvc/dpfp_threaded_2017.vcxproj +106 -0
  114. package/libusb/msvc/dpfp_threaded_2017.vcxproj.filters +26 -0
  115. package/libusb/msvc/{fxload_2012.vcxproj → dpfp_threaded_2019.vcxproj} +32 -17
  116. package/libusb/msvc/dpfp_threaded_2019.vcxproj.filters +26 -0
  117. package/libusb/msvc/fxload_2013.vcxproj +6 -3
  118. package/libusb/msvc/fxload_2013.vcxproj.filters +35 -0
  119. package/libusb/msvc/fxload_2015.vcxproj +6 -3
  120. package/libusb/msvc/fxload_2015.vcxproj.filters +35 -0
  121. package/libusb/msvc/fxload_2017.vcxproj +6 -7
  122. package/libusb/msvc/fxload_2017.vcxproj.filters +35 -0
  123. package/libusb/msvc/{fxload_2010.vcxproj → fxload_2019.vcxproj} +29 -6
  124. package/libusb/msvc/fxload_2019.vcxproj.filters +35 -0
  125. package/libusb/{examples → msvc}/getopt/getopt.c +0 -0
  126. package/libusb/{examples → msvc}/getopt/getopt.h +0 -0
  127. package/libusb/{examples → msvc}/getopt/getopt1.c +0 -0
  128. package/libusb/msvc/getopt_2013.vcxproj +4 -5
  129. package/libusb/msvc/getopt_2013.vcxproj.filters +26 -0
  130. package/libusb/msvc/getopt_2015.vcxproj +4 -4
  131. package/libusb/msvc/getopt_2015.vcxproj.filters +26 -0
  132. package/libusb/msvc/getopt_2017.vcxproj +4 -10
  133. package/libusb/msvc/getopt_2017.vcxproj.filters +26 -0
  134. package/libusb/msvc/{getopt_2012.vcxproj → getopt_2019.vcxproj} +25 -6
  135. package/libusb/msvc/getopt_2019.vcxproj.filters +26 -0
  136. package/libusb/msvc/hotplugtest_2013.vcxproj +6 -3
  137. package/libusb/msvc/hotplugtest_2013.vcxproj.filters +23 -0
  138. package/libusb/msvc/hotplugtest_2015.vcxproj +6 -3
  139. package/libusb/msvc/hotplugtest_2015.vcxproj.filters +23 -0
  140. package/libusb/msvc/hotplugtest_2017.vcxproj +6 -7
  141. package/libusb/msvc/hotplugtest_2017.vcxproj.filters +23 -0
  142. package/libusb/msvc/hotplugtest_2019.vcxproj +105 -0
  143. package/libusb/msvc/hotplugtest_2019.vcxproj.filters +23 -0
  144. package/libusb/msvc/libusb_2013.sln +50 -20
  145. package/libusb/msvc/libusb_2015.sln +51 -21
  146. package/libusb/msvc/libusb_2017.sln +90 -36
  147. package/libusb/msvc/libusb_2019.sln +240 -0
  148. package/libusb/msvc/libusb_dll_2013.vcxproj +6 -9
  149. package/libusb/msvc/libusb_dll_2013.vcxproj.filters +94 -0
  150. package/libusb/msvc/libusb_dll_2015.vcxproj +6 -8
  151. package/libusb/msvc/libusb_dll_2015.vcxproj.filters +94 -0
  152. package/libusb/msvc/libusb_dll_2017.vcxproj +6 -16
  153. package/libusb/msvc/libusb_dll_2017.vcxproj.filters +94 -0
  154. package/libusb/msvc/{libusb_dll_2010.vcxproj → libusb_dll_2019.vcxproj} +27 -9
  155. package/libusb/msvc/libusb_dll_2019.vcxproj.filters +94 -0
  156. package/libusb/msvc/libusb_static_2013.vcxproj +5 -9
  157. package/libusb/msvc/libusb_static_2013.vcxproj.filters +80 -0
  158. package/libusb/msvc/libusb_static_2015.vcxproj +5 -8
  159. package/libusb/msvc/libusb_static_2015.vcxproj.filters +80 -0
  160. package/libusb/msvc/libusb_static_2017.vcxproj +5 -8
  161. package/libusb/msvc/libusb_static_2017.vcxproj.filters +80 -0
  162. package/libusb/msvc/{libusb_static_2010.vcxproj → libusb_static_2019.vcxproj} +26 -9
  163. package/libusb/msvc/libusb_static_2019.vcxproj.filters +80 -0
  164. package/libusb/msvc/listdevs_2013.vcxproj +6 -3
  165. package/libusb/msvc/listdevs_2013.vcxproj.filters +23 -0
  166. package/libusb/msvc/listdevs_2015.vcxproj +6 -3
  167. package/libusb/msvc/listdevs_2015.vcxproj.filters +23 -0
  168. package/libusb/msvc/listdevs_2017.vcxproj +6 -7
  169. package/libusb/msvc/listdevs_2017.vcxproj.filters +23 -0
  170. package/libusb/msvc/listdevs_2019.vcxproj +105 -0
  171. package/libusb/msvc/listdevs_2019.vcxproj.filters +23 -0
  172. package/libusb/msvc/{listdevs_2012.vcxproj → sam3u_benchmark_2013.vcxproj} +13 -9
  173. package/libusb/msvc/sam3u_benchmark_2013.vcxproj.filters +26 -0
  174. package/libusb/msvc/{hotplugtest_2010.vcxproj → sam3u_benchmark_2015.vcxproj} +13 -8
  175. package/libusb/msvc/sam3u_benchmark_2015.vcxproj.filters +26 -0
  176. package/libusb/msvc/sam3u_benchmark_2017.vcxproj +106 -0
  177. package/libusb/msvc/sam3u_benchmark_2017.vcxproj.filters +26 -0
  178. package/libusb/msvc/sam3u_benchmark_2019.vcxproj +106 -0
  179. package/libusb/msvc/sam3u_benchmark_2019.vcxproj.filters +26 -0
  180. package/libusb/msvc/stress_2013.vcxproj +4 -2
  181. package/libusb/msvc/stress_2013.vcxproj.filters +32 -0
  182. package/libusb/msvc/stress_2015.vcxproj +4 -2
  183. package/libusb/msvc/stress_2015.vcxproj.filters +32 -0
  184. package/libusb/msvc/stress_2017.vcxproj +4 -6
  185. package/libusb/msvc/stress_2017.vcxproj.filters +32 -0
  186. package/libusb/msvc/{stress_2010.vcxproj → stress_2019.vcxproj} +26 -4
  187. package/libusb/msvc/stress_2019.vcxproj.filters +32 -0
  188. package/libusb/msvc/testlibusb_2013.vcxproj +6 -3
  189. package/libusb/msvc/testlibusb_2013.vcxproj.filters +23 -0
  190. package/libusb/msvc/testlibusb_2015.vcxproj +6 -3
  191. package/libusb/msvc/testlibusb_2015.vcxproj.filters +23 -0
  192. package/libusb/msvc/testlibusb_2017.vcxproj +6 -7
  193. package/libusb/msvc/testlibusb_2017.vcxproj.filters +23 -0
  194. package/libusb/msvc/{testlibusb_2010.vcxproj → testlibusb_2019.vcxproj} +28 -5
  195. package/libusb/msvc/testlibusb_2019.vcxproj.filters +23 -0
  196. package/libusb/msvc/xusb_2013.vcxproj +6 -3
  197. package/libusb/msvc/xusb_2013.vcxproj.filters +23 -0
  198. package/libusb/msvc/xusb_2015.vcxproj +6 -3
  199. package/libusb/msvc/xusb_2015.vcxproj.filters +23 -0
  200. package/libusb/msvc/xusb_2017.vcxproj +6 -7
  201. package/libusb/msvc/xusb_2017.vcxproj.filters +23 -0
  202. package/libusb/msvc/{xusb_2010.vcxproj → xusb_2019.vcxproj} +28 -5
  203. package/libusb/msvc/xusb_2019.vcxproj.filters +23 -0
  204. package/libusb/tests/Makefile.am +13 -1
  205. package/libusb/tests/libusb_testlib.h +12 -43
  206. package/libusb/tests/stress.c +59 -50
  207. package/libusb/tests/testlib.c +78 -171
  208. package/libusb/tests/umockdev.c +1175 -0
  209. package/libusb.gypi +10 -11
  210. package/package.json +2 -2
  211. package/prebuilds/android-arm/node.napi.armv7.node +0 -0
  212. package/prebuilds/android-arm64/node.napi.armv8.node +0 -0
  213. package/prebuilds/darwin-x64+arm64/node.napi.node +0 -0
  214. package/prebuilds/linux-arm/node.napi.armv6.node +0 -0
  215. package/prebuilds/linux-arm/node.napi.armv7.node +0 -0
  216. package/prebuilds/linux-arm64/node.napi.armv8.node +0 -0
  217. package/prebuilds/linux-ia32/node.napi.node +0 -0
  218. package/prebuilds/linux-x64/node.napi.glibc.node +0 -0
  219. package/prebuilds/linux-x64/node.napi.musl.node +0 -0
  220. package/prebuilds/win32-ia32/node.napi.node +0 -0
  221. package/prebuilds/win32-x64/node.napi.node +0 -0
  222. package/src/device.cc +12 -7
  223. package/src/node_usb.cc +10 -0
  224. package/test/usb.coffee +6 -0
  225. package/tsc/index.ts +2 -0
  226. package/tsc/usb/bindings.ts +5 -0
  227. package/tsc/usb/device.ts +6 -0
  228. package/tsc/usb/index.ts +5 -8
  229. package/tsc/webusb/webusb-device.ts +12 -8
  230. package/libusb/.private/bd.cmd +0 -89
  231. package/libusb/.private/bwince.cmd +0 -57
  232. package/libusb/.private/wbs_wince.txt +0 -42
  233. package/libusb/Brewfile +0 -4
  234. package/libusb/appveyor_cygwin.bat +0 -11
  235. package/libusb/appveyor_minGW.bat +0 -19
  236. package/libusb/doc/Makefile.am +0 -9
  237. package/libusb/examples/dpfp_threaded.c +0 -557
  238. package/libusb/libusb/hotplug.h +0 -99
  239. package/libusb/libusb/os/poll_posix.c +0 -84
  240. package/libusb/libusb/os/poll_posix.h +0 -14
  241. package/libusb/libusb/os/poll_windows.c +0 -447
  242. package/libusb/libusb/os/poll_windows.h +0 -98
  243. package/libusb/libusb/os/wince_usb.c +0 -888
  244. package/libusb/libusb/os/wince_usb.h +0 -126
  245. package/libusb/libusb/os/windows_nt_common.c +0 -1010
  246. package/libusb/libusb/os/windows_nt_common.h +0 -110
  247. package/libusb/libusb/os/windows_nt_shared_types.h +0 -147
  248. package/libusb/msvc/appveyor.bat +0 -27
  249. package/libusb/msvc/ddk_build.cmd +0 -219
  250. package/libusb/msvc/errno.h +0 -102
  251. package/libusb/msvc/fxload_sources +0 -23
  252. package/libusb/msvc/getopt_2005.vcproj +0 -288
  253. package/libusb/msvc/getopt_2010.vcxproj +0 -72
  254. package/libusb/msvc/getopt_sources +0 -24
  255. package/libusb/msvc/hotplugtest_sources +0 -20
  256. package/libusb/msvc/inttypes.h +0 -295
  257. package/libusb/msvc/libusb.dsw +0 -71
  258. package/libusb/msvc/libusb_2005.sln +0 -95
  259. package/libusb/msvc/libusb_2010.sln +0 -105
  260. package/libusb/msvc/libusb_2012.sln +0 -105
  261. package/libusb/msvc/libusb_dll.dsp +0 -194
  262. package/libusb/msvc/libusb_dll_2005.vcproj +0 -464
  263. package/libusb/msvc/libusb_dll_2012.vcxproj +0 -107
  264. package/libusb/msvc/libusb_dll_wince.vcproj +0 -1251
  265. package/libusb/msvc/libusb_sources +0 -43
  266. package/libusb/msvc/libusb_static.dsp +0 -174
  267. package/libusb/msvc/libusb_static_2005.vcproj +0 -390
  268. package/libusb/msvc/libusb_static_2012.vcxproj +0 -98
  269. package/libusb/msvc/libusb_static_wince.vcproj +0 -1179
  270. package/libusb/msvc/libusb_wince.sln +0 -246
  271. package/libusb/msvc/listdevs.dsp +0 -103
  272. package/libusb/msvc/listdevs_2005.vcproj +0 -360
  273. package/libusb/msvc/listdevs_sources +0 -20
  274. package/libusb/msvc/listdevs_wince.vcproj +0 -1120
  275. package/libusb/msvc/missing.c +0 -80
  276. package/libusb/msvc/stdint.h +0 -256
  277. package/libusb/msvc/stress_2005.vcproj +0 -390
  278. package/libusb/msvc/stress_2012.vcxproj +0 -87
  279. package/libusb/msvc/stress_sources +0 -21
  280. package/libusb/msvc/stress_wince.vcproj +0 -1128
  281. package/libusb/msvc/testlibusb_2012.vcxproj +0 -83
  282. package/libusb/msvc/testlibusb_sources +0 -20
  283. package/libusb/msvc/xusb.dsp +0 -102
  284. package/libusb/msvc/xusb_2005.vcproj +0 -344
  285. package/libusb/msvc/xusb_2012.vcxproj +0 -83
  286. package/libusb/msvc/xusb_sources +0 -20
  287. package/libusb/msvc/xusb_wince.vcproj +0 -1120
  288. package/libusb/travis-autogen.sh +0 -39
package/CHANGELOG.md CHANGED
@@ -1,5 +1,29 @@
1
1
  # Changelog
2
2
 
3
+ ## [2.3.0] - 2022-04-11
4
+
5
+ ### Changed
6
+ - Changed libusb dependency to upstream v1.0.26 - [`505`](https://github.com/node-usb/node-usb/pull/505) ([Rob Moran](https://github.com/thegecko))
7
+
8
+ - Cleaned up Windows device polling method - [`496`](https://github.com/node-usb/node-usb/pull/496) ([Alba Mendez](https://github.com/mildsunrise))
9
+
10
+ ## [2.2.0] - 2022-03-25
11
+
12
+ ### Added
13
+ - 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))
14
+
15
+ ### Changed
16
+ - Changed libusb dependency to upstream v1.0.25 - [`490`](https://github.com/node-usb/node-usb/pull/490) ([Rob Moran](https://github.com/thegecko))
17
+
18
+ ### Fixed
19
+ - 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))
20
+ - Fixed race issue with garbage collected devices - [`492`](https://github.com/node-usb/node-usb/pull/492) ([Alba Mendez](https://github.com/mildsunrise))
21
+
22
+ ## [2.1.3] - 2022-03-18
23
+
24
+ ### Fixed
25
+ - Fixed update to @types/w3c-web-usb - [`485`](https://github.com/node-usb/node-usb/pull/485) ([Rob Moran](https://github.com/thegecko))
26
+
3
27
  ## [2.1.2] - 2022-02-09
4
28
 
5
29
  ### Fixed
package/README.md CHANGED
@@ -12,7 +12,21 @@ This is a refactoring / rewrite of Christopher Klein's [node-usb](https://github
12
12
 
13
13
  [Node.js >= v10.16.0](https://nodejs.org), which includes `npm`.
14
14
 
15
- On Windows, use [Zadig](http://zadig.akeo.ie/) to install the WinUSB driver for your USB device. Otherwise you will get `LIBUSB_ERROR_NOT_SUPPORTED` when attempting to open devices.
15
+ ## Windows
16
+
17
+ On Windows, if you get `LIBUSB_ERROR_NOT_SUPPORTED` when attempting to open your device, it's possible your device doesn't have a WinUSB driver for libusb to use.
18
+
19
+ You can install one using [Zadig](http://zadig.akeo.ie/) or another approach is to use the [UsbDK Backend](https://github.com/daynix/UsbDk) of libusb by immediately calling `usb.useUsbDkBackend()`.
20
+
21
+ Note that you cannot use multiple drivers on Windows as they get exclusive access to the device. So if you want to switch between drivers (e.g. using a printer with this software or the system), you will need to uninstall/install drivers as required.
22
+
23
+ ## Linux
24
+
25
+ On Linux, you'll need libudev to build libusb if a prebuild is not available. On Ubuntu/Debian:
26
+
27
+ ```bash
28
+ sudo apt-get install build-essential libudev-dev
29
+ ```
16
30
 
17
31
  # Installation
18
32
 
@@ -30,7 +44,7 @@ With `yarn`:
30
44
  yarn add usb
31
45
  ```
32
46
 
33
- __Note:__ the library is now written in `TypeScript`, so a separate types file is not longer required to be installed.
47
+ __Note:__ the library is now written in `TypeScript`, so a separate types file is not longer required to be installed (e.g. don't install `@types/usb`).
34
48
 
35
49
  # License
36
50
  [MIT](LICENSE.md)
@@ -265,6 +279,7 @@ https://wicg.github.io/webusb/
265
279
  - [x] reset()
266
280
  - [ ] isochronousTransferIn()
267
281
  - [ ] isochronousTransferOut()
282
+ - [ ] forget()
268
283
 
269
284
  #### Events
270
285
 
@@ -282,6 +297,9 @@ Constant properties from libusb
282
297
  #### usb.setDebugLevel(level : int)
283
298
  Set the libusb debug level (between 0 and 4)
284
299
 
300
+ #### usb.useUsbDkBackend()
301
+ On Windows, use the USBDK backend of libusb instead of WinUSB
302
+
285
303
  ### Device
286
304
  Represents a USB device.
287
305
 
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":";;;AAAA,gCAAkC;AAClC,yCAAwC;AACxC,2CAA0C;AAG1C,IAAM,QAAQ,GAAG,UAAC,GAAoC,IAAwB,OAAA,CAAC,CAAC,GAAG,IAAI,GAAG,YAAY,UAAU,EAAlC,CAAkC,CAAC;AACjH,IAAM,eAAe,GAAG,IAAI,CAAC;AAE7B;IAAA;QAMY,aAAQ,GAAG,eAAe,CAAC;IAsTvC,CAAC;IAlTG,sBAAW,mCAAO;QAHlB;;WAEG;aACH;YACI,OAAO,IAAI,CAAC,QAAQ,IAAI,eAAe,CAAC;QAC5C,CAAC;aACD,UAAmB,KAAa;YAC5B,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC;QAC1B,CAAC;;;OAHA;IAQD,sBAAW,4CAAgB;QAH3B;;WAEG;aACH;YACI,IAAI;gBACA,OAAQ,IAA8B,CAAC,qBAAqB,EAAE,CAAC;aAClE;YAAC,OAAO,CAAC,EAAE;gBACR,0BAA0B;gBAC1B,IAAI,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,sBAAsB,EAAE;oBACxC,OAAO,SAAS,CAAC;iBACpB;gBACD,MAAM,CAAC,CAAC;aACX;QACL,CAAC;;;OAAA;IAKD,sBAAW,gDAAoB;QAH/B;;WAEG;aACH;YACI,IAAI;gBACA,OAAQ,IAA8B,CAAC,yBAAyB,EAAE,CAAC;aACtE;YAAC,OAAO,CAAC,EAAE;gBACR,0BAA0B;gBAC1B,IAAI,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,sBAAsB,EAAE;oBACxC,OAAO,EAAE,CAAC;iBACb;gBACD,MAAM,CAAC,CAAC;aACX;QACL,CAAC;;;OAAA;IAKD,sBAAW,kCAAM;QAHjB;;WAEG;aACH;YACI,OAAQ,IAA8B,CAAC,WAAW,EAAE,CAAC;QACzD,CAAC;;;OAAA;IAED;;;OAGG;IACI,6BAAI,GAAX,UAA8B,aAAoB;QAApB,8BAAA,EAAA,oBAAoB;QAC9C,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,IAAI,aAAa,KAAK,KAAK,EAAE;YACzB,OAAO;SACV;QACD,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,IAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAChF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;YAC1B,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,qBAAS,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;SAC/C;IACL,CAAC;IAED;;;;OAIG;IACI,8BAAK,GAAZ;QACI,IAAI,CAAC,OAAO,EAAE,CAAC;QACf,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;IAChC,CAAC;IAED;;;;;;;OAOG;IACI,yCAAgB,GAAvB,UAA0C,OAAe,EAAE,QAA2D;QAAtH,iBAaC;QAZG,IAAI,CAAC,kBAAkB,CAAC,OAAO,EAAE,UAAA,KAAK;YAClC,IAAI,CAAC,KAAK,EAAE;gBACR,KAAI,CAAC,UAAU,GAAG,EAAE,CAAC;gBACrB,IAAM,GAAG,GAAG,KAAI,CAAC,gBAAgB,CAAC,CAAC,CAAC,KAAI,CAAC,gBAAgB,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;gBAChF,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;oBAC1B,KAAI,CAAC,UAAU,CAAC,CAAC,CAAC,GAAG,IAAI,qBAAS,CAAC,KAAI,EAAE,CAAC,CAAC,CAAC;iBAC/C;aACJ;YACD,IAAI,QAAQ,EAAE;gBACV,QAAQ,CAAC,IAAI,CAAC,KAAI,EAAE,KAAK,CAAC,CAAC;aAC9B;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;;;;;;;;;;;OAcG;IACI,wCAAe,GAAtB,UAAyC,aAAqB,EAAE,QAAgB,EAAE,MAAc,EAAE,MAAc,EAAE,cAA+B,EAC7I,QAAgG;QADpG,iBAgDC;QA9CG,IAAM,IAAI,GAAG,CAAC,CAAC,CAAC,aAAa,GAAG,GAAG,CAAC,kBAAkB,CAAC,CAAC;QACxD,IAAM,OAAO,GAAG,IAAI,CAAC,CAAC,CAAC,cAAwB,CAAC,CAAC,CAAE,cAAyB,CAAC,MAAM,CAAC;QAEpF,IAAI,IAAI,EAAE;YACN,IAAI,CAAC,CAAC,cAAc,IAAI,CAAC,CAAC,EAAE;gBACxB,MAAM,IAAI,SAAS,CAAC,+DAA+D,CAAC,CAAC;aACxF;SACJ;aAAM;YACH,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,EAAE;gBAC3B,MAAM,IAAI,SAAS,CAAC,2DAA2D,CAAC,CAAC;aACpF;SACJ;QAED,8BAA8B;QAC9B,2EAA2E;QAC3E,IAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,OAAO,GAAG,GAAG,CAAC,yBAAyB,CAAC,CAAC;QAClE,GAAG,CAAC,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC;QACjC,GAAG,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC5B,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC7B,GAAG,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAC7B,GAAG,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAE9B,IAAI,CAAC,IAAI,EAAE;YACP,GAAG,CAAC,GAAG,CAAC,cAAwB,EAAE,GAAG,CAAC,yBAAyB,CAAC,CAAC;SACpE;QAED,IAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,GAAG,CAAC,4BAA4B,EAAE,IAAI,CAAC,OAAO,EACrF,UAAC,KAAK,EAAE,GAAG,EAAE,MAAM;YACf,IAAI,QAAQ,EAAE;gBACV,IAAI,IAAI,EAAE;oBACN,QAAQ,CAAC,IAAI,CAAC,KAAI,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,EAAE,GAAG,CAAC,yBAAyB,GAAG,MAAM,CAAC,CAAC,CAAC;iBAChH;qBAAM;oBACH,QAAQ,CAAC,IAAI,CAAC,KAAI,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;iBACtC;aACJ;QACL,CAAC,CACJ,CAAC;QAEF,IAAI;YACA,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;SACxB;QAAC,OAAO,CAAC,EAAE;YACR,IAAI,QAAQ,EAAE;gBACV,OAAO,CAAC,QAAQ,CAAC,cAAM,OAAA,QAAQ,CAAC,IAAI,CAAC,KAAI,EAAE,CAAC,EAAE,SAAS,CAAC,EAAjC,CAAiC,CAAC,CAAC;aAC7D;SACJ;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;IAED;;;;;OAKG;IACI,kCAAS,GAAhB,UAAmC,IAAY;QAC3C,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE;YAClB,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;SAC1E;QAED,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC;QACjB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC7C,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,eAAe,KAAK,IAAI,EAAE;gBAC7C,OAAO,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;aAC7B;SACJ;QAED,MAAM,IAAI,KAAK,CAAC,sCAAoC,IAAM,CAAC,CAAC;IAChE,CAAC;IAED;;;;;;OAMG;IACI,4CAAmB,GAA1B,UAA6C,UAAkB,EAAE,QAA+D;QAC5H,IAAM,MAAM,GAAG,MAAM,CAAC;QACtB,IAAM,MAAM,GAAG,GAAG,CAAC;QACnB,IAAI,CAAC,eAAe,CAChB,GAAG,CAAC,kBAAkB,EACtB,GAAG,CAAC,6BAA6B,EACjC,CAAC,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,CAAC,GAAG,UAAU,CAAC,EAC1C,MAAM,EACN,MAAM,EACN,UAAC,KAAK,EAAE,MAAM;YACV,IAAI,KAAK,EAAE;gBACP,OAAO,QAAQ,CAAC,KAAK,CAAC,CAAC;aAC1B;YACD,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACtF,CAAC,CACJ,CAAC;IACN,CAAC;IAED;;;;;OAKG;IACI,yCAAgB,GAAvB,UAA0C,QAA2E;QAArH,iBA0EC;QAzEG,IAAI,IAAI,CAAC,cAAc,EAAE;YACrB,oBAAoB;YACpB,OAAO,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;SACnD;QAED,IAAI,IAAI,CAAC,gBAAgB,CAAC,MAAM,GAAG,KAAK,EAAE;YACtC,uCAAuC;YACvC,OAAO,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;SACzC;QAED,IAAI,CAAC,eAAe,CAChB,GAAG,CAAC,kBAAkB,EACtB,GAAG,CAAC,6BAA6B,EACjC,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,CAAC,EACxB,CAAC,EACD,GAAG,CAAC,kBAAkB,EACtB,UAAC,KAAK,EAAE,MAAM;YACV,IAAI,KAAK,EAAE;gBACP,8BAA8B;gBAC9B,IAAI,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,qBAAqB;oBAAE,OAAO,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBACrF,OAAO,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;aACrC;YAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;gBACnB,OAAO,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;aACzC;YAED,IAAM,WAAW,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC;YAC3C,KAAI,CAAC,eAAe,CAChB,GAAG,CAAC,kBAAkB,EACtB,GAAG,CAAC,6BAA6B,EACjC,CAAC,GAAG,CAAC,aAAa,IAAI,CAAC,CAAC,EACxB,CAAC,EACD,WAAW,EACX,UAAC,KAAK,EAAE,MAAM;gBACV,IAAI,KAAK,EAAE;oBACP,8BAA8B;oBAC9B,IAAI,KAAK,CAAC,KAAK,KAAK,GAAG,CAAC,qBAAqB;wBAAE,OAAO,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;oBACrF,OAAO,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;iBACrC;gBAED,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;oBACnB,OAAO,QAAQ,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;iBACzC;gBAED,IAAM,UAAU,GAAkB;oBAC9B,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;oBAC5B,eAAe,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;oBACpC,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,CAAC,CAAC;oBACpC,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC;oBACnC,YAAY,EAAE,EAAE;iBACnB,CAAC;gBAEF,IAAI,CAAC,GAAG,GAAG,CAAC,kBAAkB,CAAC;gBAC/B,OAAO,CAAC,GAAG,UAAU,CAAC,YAAY,EAAE;oBAChC,IAAM,UAAU,GAAG;wBACf,OAAO,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC;wBAChC,eAAe,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC;wBACxC,kBAAkB,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC;wBAC3C,mBAAmB,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;qBACxE,CAAC;oBAEF,UAAU,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;oBACzC,CAAC,IAAI,UAAU,CAAC,OAAO,CAAC;iBAC3B;gBAED,mBAAmB;gBACnB,KAAI,CAAC,cAAc,GAAG,UAAU,CAAC;gBACjC,QAAQ,CAAC,SAAS,EAAE,KAAI,CAAC,cAAc,CAAC,CAAC;YAC7C,CAAC,CACJ,CAAC;QACN,CAAC,CACJ,CAAC;IACN,CAAC;IAED;;;;;OAKG;IACI,wCAAe,GAAtB,UAAyC,QAAuF;QAAhI,iBAaC;QAZG,IAAM,YAAY,GAAiB,EAAE,CAAC;QAEtC,IAAI,CAAC,gBAAgB,CAAC,UAAC,KAAK,EAAE,UAAU;YACpC,IAAI,KAAK;gBAAE,OAAO,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;YAE7C,IAAM,GAAG,GAAG,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;YAC5D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE;gBAC1B,YAAY,CAAC,IAAI,CAAC,IAAI,uBAAU,CAAC,KAAI,EAAE,CAAC,CAAC,CAAC,CAAC;aAC9C;YAED,QAAQ,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC;QACtC,CAAC,CAAC,CAAC;IACP,CAAC;IACL,qBAAC;AAAD,CAAC,AA5TD,IA4TC;AA5TY,wCAAc"}
1
+ {"version":3,"file":"device.js","sourceRoot":"","sources":["../../tsc/usb/device.ts"],"names":[],"mappings":"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"}
package/dist/usb/index.js CHANGED
@@ -26,7 +26,7 @@ Object.getOwnPropertyNames(device_1.ExtendedDevice.prototype).forEach(function (
26
26
  var pollTimeout = 500;
27
27
  var hotplugSupported = usb._getLibusbCapability(usb.LIBUSB_CAP_HAS_HOTPLUG) > 0;
28
28
  var pollingHotplug = false;
29
- var pollDevices = [];
29
+ var pollDevices = new Set();
30
30
  var pollHotplug = function (start) {
31
31
  var e_1, _a, e_2, _b;
32
32
  if (start === void 0) { start = false; }
@@ -36,19 +36,15 @@ var pollHotplug = function (start) {
36
36
  else if (!pollingHotplug) {
37
37
  return;
38
38
  }
39
- var devices = usb.getDeviceList();
39
+ // Collect current devices
40
+ var devices = new Set(usb.getDeviceList());
40
41
  if (!start) {
41
- var _loop_1 = function (device) {
42
- var found = pollDevices.find(function (item) { return item.deviceAddress === device.deviceAddress; });
43
- if (!found) {
44
- usb.emit('attach', device);
45
- }
46
- };
47
42
  try {
48
43
  // Find attached devices
49
44
  for (var devices_1 = __values(devices), devices_1_1 = devices_1.next(); !devices_1_1.done; devices_1_1 = devices_1.next()) {
50
45
  var device = devices_1_1.value;
51
- _loop_1(device);
46
+ if (!pollDevices.has(device))
47
+ usb.emit('attach', device);
52
48
  }
53
49
  }
54
50
  catch (e_1_1) { e_1 = { error: e_1_1 }; }
@@ -58,17 +54,12 @@ var pollHotplug = function (start) {
58
54
  }
59
55
  finally { if (e_1) throw e_1.error; }
60
56
  }
61
- var _loop_2 = function (device) {
62
- var found = devices.find(function (item) { return item.deviceAddress === device.deviceAddress; });
63
- if (!found) {
64
- usb.emit('detach', device);
65
- }
66
- };
67
57
  try {
68
58
  // Find detached devices
69
59
  for (var pollDevices_1 = __values(pollDevices), pollDevices_1_1 = pollDevices_1.next(); !pollDevices_1_1.done; pollDevices_1_1 = pollDevices_1.next()) {
70
60
  var device = pollDevices_1_1.value;
71
- _loop_2(device);
61
+ if (!devices.has(device))
62
+ usb.emit('detach', device);
72
63
  }
73
64
  }
74
65
  catch (e_2_1) { e_2 = { error: e_2_1 }; }
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../tsc/usb/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../tsc/usb/index.ts"],"names":[],"mappings":"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"}
@@ -36,9 +36,10 @@ export declare class WebUSBDevice implements USBDevice {
36
36
  clearHalt(direction: USBDirection, endpointNumber: number): Promise<void>;
37
37
  transferIn(endpointNumber: number, length: number): Promise<USBInTransferResult>;
38
38
  transferOut(endpointNumber: number, data: ArrayBuffer): Promise<USBOutTransferResult>;
39
+ reset(): Promise<void>;
39
40
  isochronousTransferIn(_endpointNumber: number, _packetLengths: number[]): Promise<USBIsochronousInTransferResult>;
40
41
  isochronousTransferOut(_endpointNumber: number, _data: BufferSource, _packetLengths: number[]): Promise<USBIsochronousOutTransferResult>;
41
- reset(): Promise<void>;
42
+ forget(): Promise<void>;
42
43
  private initialize;
43
44
  private decodeVersion;
44
45
  private getStringDescriptor;
@@ -555,20 +555,6 @@ var WebUSBDevice = /** @class */ (function () {
555
555
  });
556
556
  });
557
557
  };
558
- WebUSBDevice.prototype.isochronousTransferIn = function (_endpointNumber, _packetLengths) {
559
- return __awaiter(this, void 0, void 0, function () {
560
- return __generator(this, function (_a) {
561
- throw new Error('isochronousTransferIn error: method not implemented');
562
- });
563
- });
564
- };
565
- WebUSBDevice.prototype.isochronousTransferOut = function (_endpointNumber, _data, _packetLengths) {
566
- return __awaiter(this, void 0, void 0, function () {
567
- return __generator(this, function (_a) {
568
- throw new Error('isochronousTransferOut error: method not implemented');
569
- });
570
- });
571
- };
572
558
  WebUSBDevice.prototype.reset = function () {
573
559
  return __awaiter(this, void 0, void 0, function () {
574
560
  var reset, error_10;
@@ -595,6 +581,27 @@ var WebUSBDevice = /** @class */ (function () {
595
581
  });
596
582
  });
597
583
  };
584
+ WebUSBDevice.prototype.isochronousTransferIn = function (_endpointNumber, _packetLengths) {
585
+ return __awaiter(this, void 0, void 0, function () {
586
+ return __generator(this, function (_a) {
587
+ throw new Error('isochronousTransferIn error: method not implemented');
588
+ });
589
+ });
590
+ };
591
+ WebUSBDevice.prototype.isochronousTransferOut = function (_endpointNumber, _data, _packetLengths) {
592
+ return __awaiter(this, void 0, void 0, function () {
593
+ return __generator(this, function (_a) {
594
+ throw new Error('isochronousTransferOut error: method not implemented');
595
+ });
596
+ });
597
+ };
598
+ WebUSBDevice.prototype.forget = function () {
599
+ return __awaiter(this, void 0, void 0, function () {
600
+ return __generator(this, function (_a) {
601
+ throw new Error('forget error: method not implemented');
602
+ });
603
+ });
604
+ };
598
605
  WebUSBDevice.prototype.initialize = function () {
599
606
  return __awaiter(this, void 0, void 0, function () {
600
607
  var _a, _b, _c, _d, error_11;
@@ -1 +1 @@
1
- {"version":3,"file":"webusb-device.js","sourceRoot":"","sources":["../../tsc/webusb/webusb-device.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"webusb-device.js","sourceRoot":"","sources":["../../tsc/webusb/webusb-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
@@ -0,0 +1,70 @@
1
+ #!/bin/bash
2
+
3
+ set -eu
4
+
5
+ # keep container around if $DEBUG is set
6
+ [ -n "${DEBUG:-}" ] || OPTS="--rm"
7
+
8
+ if type podman >/dev/null 2>&1; then
9
+ RUNC=podman
10
+ else
11
+ RUNC="sudo docker"
12
+ fi
13
+
14
+ MOUNT_MODE=":ro"
15
+
16
+ $RUNC run --interactive ${RUNC_OPTIONS:-} ${OPTS:-} --volume `pwd`:/source${MOUNT_MODE:-} ${1:-docker.io/amd64/ubuntu:rolling} /bin/bash << EOF
17
+ set -ex
18
+
19
+ # avoid meson exit code 125; https://github.com/containers/podman/issues/11540
20
+ trap '[ \$? -eq 0 ] || exit 1' EXIT
21
+
22
+ # go-faster apt
23
+ echo 'Acquire::Languages "none";' > /etc/apt/apt.conf.d/90nolanguages
24
+
25
+ # upgrade
26
+ export DEBIAN_FRONTEND=noninteractive
27
+ apt-get update
28
+ apt-get install -y eatmydata
29
+ eatmydata apt-get -y --purge dist-upgrade
30
+
31
+ # install build and test dependencies
32
+ eatmydata apt-get install -y make libtool libudev-dev pkg-config umockdev libumockdev-dev
33
+
34
+ # run build as user
35
+ useradd build
36
+ su -s /bin/bash - build << EOG
37
+ set -ex
38
+
39
+ mkdir "/tmp/builddir"
40
+ cd "/tmp/builddir"
41
+
42
+ CFLAGS="-O2"
43
+
44
+ # enable extra warnings
45
+ CFLAGS+=" -Winline"
46
+ CFLAGS+=" -Wmissing-include-dirs"
47
+ CFLAGS+=" -Wnested-externs"
48
+ CFLAGS+=" -Wpointer-arith"
49
+ CFLAGS+=" -Wredundant-decls"
50
+ CFLAGS+=" -Wswitch-enum"
51
+ export CFLAGS
52
+
53
+ echo ""
54
+ echo "Configuring ..."
55
+ /source/configure --enable-examples-build --enable-tests-build
56
+
57
+ echo ""
58
+ echo "Building ..."
59
+ make -j4 -k
60
+
61
+ echo ""
62
+ echo "Running umockdev tests ..."
63
+ tests/umockdev
64
+
65
+ echo "Running stress tests ..."
66
+ tests/stress
67
+ EOG
68
+ EOF
69
+
70
+
@@ -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