avrdude-dev
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Fwd: [libusb] Announcing libusb v1.0.27


From: Xiaofan Chen
Subject: Fwd: [libusb] Announcing libusb v1.0.27
Date: Thu, 1 Feb 2024 20:54:33 +0800

FYI only

---------- Forwarded message ---------
From: Tormod Volden <lists.tormod@gmail.com>
Date: Thu, Feb 1, 2024 at 7:30 AM
Subject: [libusb] Announcing libusb v1.0.27
To: <libusb-devel@lists.sourceforge.net>


We are happy to announce the final release of libusb 1.0.27.

ChangeLog with most important changes since 1.0.26:

* New libusb_init_context API to replace libusb_init
* New libusb_get_max_alt_packet_size API
* New libusb_get_platform_descriptor API (BOS)
* Allow setting log callback with libusb_set_option/libusb_init_context
* New WebAssembly + WebUSB backend using Emscripten
* Fix regression in libusb_set_interface_alt_setting
* Fix sync transfer completion race and use-after-free
* Fix hotplug exit ordering
* Linux: NO_DEVICE_DISCOVERY option set per context
* macOS: Fix missing device list cleanup locking
* macOS: Do not clear device data toggle for newer OS versions
* macOS: Fix running binaries on older OS than build host
* Windows: Allow claiming multiple associated interfaces
* Windows: Ignore non-configured devices instead of waiting
* Windows: Improved root hub detection

The source code tarball can be downloaded here:
https://github.com/libusb/libusb/releases/download/v1.0.27/libusb-1.0.27.tar.bz2

An archive of Windows binaries can be downloaded here:
https://github.com/libusb/libusb/releases/download/v1.0.27/libusb-1.0.27.7z

Note that the release tarball includes a configure script so unlike a
git checkout it is not necessary to bootstrap with autoconf.

The 1.0.27 release was made possible by the contributions from all
patch submitters (see below git shortlog with 158 commits from 31
contributors, of which 22 new!) plus everyone who contributed with
issue reporting, discussions and testing.

On behalf of the libusb development community,
Tormod


--


Addison Crump (1):
      descriptor: Guard against corrupted descriptor length field

Alex Feinman (1):
      windows: Refactor parsing of MI_XX string taking into account
it's 16-based

Alexander Mot (1):
      windows: Define __func__ for vs2015

Aurelien Jarno (1):
      tests/set_option: Avoid use-after-free in case of test failure

Brad Smith (1):
      threads_posix: Use proper getthrid() for thread ID on OpenBSD

Craig Hutchinson (1):
      Fix `exit` order to match reverse of `init`

Dominik Boehi (1):
      descriptor: Add support for BOS platform descriptor parsing

Edgar Fuß (2):
      netbsd: Add comment about udi_speed values matching libusb enum
      netbsd: Map NetBSD's udi_bus/udi_addr to libusb's 1-based API

Francis Hart (1):
      Fix setting log level before libusb_init()

Ihor Dutchak (2):
      Fix possible memory leak of configuration descriptor (Darwin/Windows)
      darwin/windows: Find interface descriptor by bInterfaceNumber

Ingvar Stepanyan (15):
      Add Emscripten backend for WebAssembly + WebUSB support
      examples/hotplugtest: Match any device by default
      tests: Mark callbacks as LIBUSB_CALL
      testlib: Don't count skipped tests as failures
      CI: Run cross-platform tests on all platforms
      CI: Enable Address Sanitizer (ASAN) where supported
      CI: Tell tests that we don't have any devices
      CI: Pass the extra warnings flags to CXXFLAGS too
      Add WebUSB testing via node-usb
      CI: Enable Emscripten build
      tests/stress_mt: Test open/transfer/close on available devices
      webusb: Wasm+WebUSB backend fixes and improvements
      tests/stress_mt: Stop early if any device fails
      tests/set_option: Allow no devices in test_no_discovery
      msvc: Add tests/init_context project to MSVC

Joshua M. Clulow (2):
      sunos: Fix error detection in sunos_submit_transfer()
      sunos: Return error if OS paths hit their limits

Lars Kanis (2):
      core: Don't overwrite the log callback on every global libusb_set_option()
      core: Allow setting global log callback after first libusb_init()

Lonnie Abelbeck (1):
      configure.ac: Link with -latomic only if no atomic builtins

Ludovic Rousseau (6):
      Doxygen: Add references to LIBUSB_ERROR codes
      Doxygen: Improve libusb_wrap_sys_device() documentation
      Add github action build for --enable-debug-log
      Fix build error with --enable-debug-log
      Fix build errors of tests with --enable-debug-log
      Fix github action warnings

Mario Kleiner (1):
      windows: Fix off-by-one error in HID backend for devices without
report IDs

Martin Ling (4):
      docs: Clear endpoint halt issued after cancellation only for macOS < 10.5
      windows: Add GetPipePolicy to struct winusb_interface
      windows: Add option for WinUSB RAW_IO endpoint policy
      Revert "windows: Add option for WinUSB RAW_IO endpoint policy"

Nathan Hjelm (17):
      darwin: add missing locking around cached device list cleanup
      config: allow configure to continue without pkg-config installed
      darwin: Do not clear device data toggle on macOS 10.5 or newer
      Add tags and cscope.out to .gitignore
      core: Add libusb_init_context() setting options at context creation
      Update tests and example to use the new libusb_init_context() function
      libusb_set_options: Adjust semantics of libusb_set_option for log level
      tests: Add unit test for libusb_set_option
      Add support for setting the log callback with
libusb_set_option/libusb_init_context
      darwin: fix potential crash at darwin_exit
      ci: do not hard code test names for CI
      ci: dump test suite output on test failure
      ci: ensure testsuite log is dumped on failure
      darwin: add get_running_version helper
      darwin: add abstraction for IOUSBInterfaceInterface
      darwin: add abstraction for IOUSBDeviceInterface
      darwin: add testing for IOKit version fallbacks

Niklas Gürtler (1):
      Fix #1263 by acquiring the waiters lock while calling transfer
callbacks and swapping the order of operations in sync_transfer_cb

Orhan aib Kavrakoglu (3):
      core: Factor out helper get_endpoint_max_packet_size()
      core: Add helper find_alt_endpoint()
      core: Add libusb_get_max_alt_packet_size()

Pablo Prietz (1):
      core: Remove leftover usbi_mutex_unlock in
libusb_set_interface_alt_setting

Petr Pazourek (1):
      windows: Allow device GUIDs missing terminating characters or separators

Rosen Penev (4):
      windows: Add clock_gettime check
      windows: Mark libusb_set_option as WINAPIV
      windows: Fix build with --disable-log
      windows: Remove __stdcall libusb_set_option from .def file

Ryan Metcalfe (3):
      descriptor: Introduce interface association descriptors (IAD)
      windows: Allow claiming all interfaces for a WINUSBX composite function
      xusb: Print info from IAD descriptors

Sean McBride (18):
      Simplify clock_gettime() conditionalization and fallback on macOS
      examples: Replace most uses of sprintf with safer snprintf
      core: Fix -Wswitch warnings by including all enum values in switch
      darwin: Revert seemingly harmless introduction of temporary variable
      darwin: Avoid error checking regression
      descriptor: Prevent string descriptor buffer overread
      io: Fix incorrect alignment in allocation in libusb_alloc_transfer
      core: Add missing mutex acquisition when manipulating active_contexts_list
      libusb.h: Rename ZERO_SIZED_ARRAY to LIBUSB_FLEXIBLE_ARRAY
      io: Change remove_from_flying_list() to not lock
flying_transfers_lock itself
      Fix docs about backend functions that lock itransfer->lock
      Document backend functions that already lock dev_handle->lock
      Replace all http://libusb.info/ with https
      darwin: locationID is 32-bit, not 64-bit
      Correct some spelling and add codespell config file
      xcode: Move some options from Xcode project to xcconfig file
      xcode: Add files from other backends into the Xcode project
      docs: Prefer use of libusb_init_context() over old libusb_init()

Shawn Hoffman (5):
      msvc: Rework msbuild files
      windows: Whitespace fix
      msvc: Implement LIBUSB_DEPRECATED_FOR
      msvc: Correct usage comments about linking
      windows: Use sdk-defined GUIDs where possible

Simon Chan (1):
      windows: Recognize Samsung composite device driver

SomeAlphabetGuy (1):
      core: Avoid possible data race in log_v()

Sonatique (1):
      msvc: Add configurations with /MT compilation flag

Sylvain (1):
      git ignore "build" folder

Sylvain Fasel (2):
      windows: Define bus numbers without using HCD
      windows: No longer wait for device to get an active configuration

Tormod Volden (52):
      windows: Pass on returned isochronous packet status on libusbK
      core: Remove select case not possibly reached
      windows: Correct function name in comment
      core: Avoid mutex lock while printing error and warning
      windows: Avoid invalid dereference in debug print
      windows: Silence warnings when building without logging
      tests: Add multithreaded stress test for Posix platforms
      CI: Run multithreaded stress test on Linux
      core: Do not warn about new context as implicit default
      Fix most -Wpedantic warnings
      xusb: Add newlines in mass-storage test output
      Bump LIBUSB_API_VERSION to 0x0100010A
      windows: Omit -mwin32 GCC option for MSYS/MinGW
      windows: Only link with --add-stdcall-alias if supported by linker
      xusb: Improve kernel driver probe messages
      xusb: Improve Max LUN retrieval stall handling
      tests/stress_mt: Add Windows threads support
      tests/stress_mt: Also run with device enumeration
      Revert "windows: Fix off-by-one error in HID backend for devices
without report IDs"
      core: Avoid crash due to premature va_end
      core: Fix always-true condition in log callback function setting
      netbsd/openbsd: Drop parentheses around return values
      netbsd/openbsd: Remove extraneous parentheses around ioctl call
      netbsd: Print control transfer request debug values in hex
      netbsd: Add error number to debug output
      Add HACKING file with hints on proper commits
      tests: Remove unused function in init_context.c
      tests: Fix builds with logging disabled
      Revert "core: Remove select case not possibly reached"
      windows: Cover all enumeration passes explicitly in switch statements
      stress_mt: Return error if device count varies
      core: Avoid warning with logging disabled
      windows: Avoid warning with logging disabled
      windows: Include enumeration details in debug output
      CI: Simplify Linux job description
      CI: Add Linux and MSYS build with logging disabled
      tests/umockdev: Avoid unknown warning option on older gcc
      .gitignore: Ignore test binaries and logs
      tests: Use AM_LDFLAGS for -static flag to allow LDFLAGS override
      libusb 1.0.27-rc1
      libusb.h: Avoid UNREFERENCED_PARAMETER macro on GCC/clang
      tests/stress_mt: Ignore some unavailable devices on Windows
      tests/stress_mt: Ignore device descriptor mismatch for Windows HID
      ChangeLog updates
      Change libusb_init_option to fix libusb_set_option() on big-endian
      windows: Downgrade get_guid DeviceInterfaceGUID warning to info
      docs: Add more references in libusb_option section
      libusb 1.0.27-rc2
      configure.ac: Do not build umockdev if --enable-debug-log is used
      examples/hotplugtest: Tone down message about failed open
      configure.ac: Bump libtool library version
      libusb 1.0.27

Xiaofan Chen (2):
      CI: Add build jobs for MSYS clang32/64
      Do not deprecate libusb_set_debug and libusb_init

Zeng Guang (1):
      windows: Add USBD_STATUS_STALL_PID to usbd_status translation

xloem (1):
      linux: Keep the no_device_discovery option per context


_______________________________________________
libusb-devel mailing list
libusb-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libusb-devel



reply via email to

[Prev in Thread] Current Thread [Next in Thread]