Skip to content

Latest commit

 

History

History
398 lines (351 loc) · 21.1 KB

ANNOUNCE.md

File metadata and controls

398 lines (351 loc) · 21.1 KB

The Wine development release 10.2 is now available.

What's new in this release:

  • Bundled vkd3d upgraded to version 1.15.
  • Support for setting thread priorities.
  • New Wow64 mode can be enabled dynamically.
  • More progress on the Bluetooth driver.
  • Various bug fixes.

The source is available at https://dl.winehq.org/wine/source/10.x/wine-10.2.tar.xz

Binary packages for various distributions will be available from the respective download sites.

You will find documentation here.

Wine is available thanks to the work of many people. See the file AUTHORS for the complete list.


Bugs fixed in 10.2 (total 20):

  • #25872 Guild Wars 'test system' doesn't show test results
  • #39474 MSWT Kart 2004 does not work
  • #50152 YOU and ME and HER: Game crashes after launching from game launcher
  • #56260 16-bit Myst deadlocks when entering Book
  • #56464 vbscript: Join() builtin is not implemented
  • #56951 psql 16: unrecognized win32 error code: 127 invalid binary: Invalid argument / could not find a "psql.exe" to execute
  • #57310 wineboot failed to initialize a wine prefix
  • #57625 Regression: some fullscreen games are displayed incorrectly upon switching from and back to game window
  • #57787 Final Fantasy XI Online crashes with unhandled page fault on launch
  • #57793 Wine Wordpad started with blank screen
  • #57795 cmd lacks support for right-to-left handle redirection (2<&1)
  • #57803 Sekiro: Shadows Die Twice crashes at launch with Xbox One controller connected
  • #57804 cmd: '@echo off' gets propagated to parent on CALL instruction (CALL seems to freezes)
  • #57809 cmd: Incorrect substring expansion of last character (e.g. !MY_STR:~1!)
  • #57810 ITextStream::WriteBlankLines() needs to be implemented for libxml2's configure.js to work
  • #57817 mvscp90 ::std::ifstream::seekg(0) crashes
  • #57819 Wine unable to start when built with binutils 2.44
  • #57824 SetThreadPriority unexpectedly fails on terminated threads instead of no-op
  • #57834 Cyberpunk 2077 doesn't load with CyberEngine Tweaks
  • #57847 Cross-compiled Wine no longer installs a 'wine' loader binary

Changes since 10.1:

Adam Markowski (1):
      po: Update Polish translation.

Aida Jonikienė (1):
      wined3d: Add DXT format mappings in the Vulkan renderer.

Alex Henrie (6):
      urlmon/tests: Use wide character string literals.
      advapi32/tests: Use wide character string literals.
      setupapi: Use wide character string literals.
      msxml3: Use wide character string literals.
      krnl386: Add a WOWCallback16Ex flag to simulate a hardware interrupt.
      mmsystem: Simulate a hardware interrupt in MMSYSTDRV_Callback3216.

Alexandre Julliard (31):
      user32: Set last error on failed window enumeration.
      server: Fix desktop access check for window enumeration.
      ntdll: Add a helper function to retrieve the .so directory.
      ntdll: Add a helper function to get the alternate 32/64-bit machine.
      ntdll: Set the WINELOADER variable on the PE side, using a Windows path.
      loader: Install the Wine loader in the Unix lib directory.
      tools: Add a simpler Wine launcher in the bin directory.
      tools: Move the loader man pages to the new Wine loader directory.
      dbghelp: Always use the WINELOADER variable for the loader name.
      ntdll: Disable file system redirection until the initial exe is loaded.
      ntdll: Look for a builtin exe corresponding to the loader basename.
      makefiles: Install binaries as symlinks to wine.
      ntdll: Allow forcing new wow64 mode by setting WINEARCH=wow64.
      ntdll: Move setting DYLD_LIBRARY_PATH on macOS to the loader.
      makefiles: Create wine as a symlink to tools/wine/wine.
      makefiles: Link to the wine loader in the tools directory if it was built.
      makefiles: Generate the wow64 symlinks from makedep.
      makefiles: Generate more of the re-configure rules from makedep.
      make_unicode: Update timezone data source to version 2025a.
      makefiles: Don't clean files in other directories.
      png: Import upstream release 1.6.45.
      lcms2: Import upstream release 2.17.
      faudio: Import upstream release 25.02.
      rsaenh: Use RtlGenRandom() directly.
      rsaenh: Don't use printf.
      vkd3d: Import upstream release 1.15.
      lcms2: Allow creating a transform without specifying input/output formats.
      server: Support an arbitrary number of PE sections.
      ntdll: Support an arbitrary number of PE sections.
      vkd3d: Update version number.
      makefiles: Fix the distclean target to clean everything.

Alexandros Frantzis (1):
      winewayland: Don't crash on text input done events without focus.

Anton Baskanov (1):
      winedbg: Make crash dialog topmost.

Attila Fidan (4):
      winewayland: Enable/disable the zwp_text_input_v3 object.
      winewayland: Post IME update for committed text.
      winewayland: Implement SetIMECompositionRect.
      winewayland: Post IME update for preedit text.

Austin English (1):
      mshtml: Add registry association for .log files.

Bernhard Übelacker (3):
      wbemprox: Increase buffer size one iteration earlier (ASan).
      ntdll/tests: Skip leap secondInformation test with older Windows versions.
      msvcrt/tests: Add missing parameter pmode to _open call (ASan).

Biswapriyo Nath (3):
      include: Add UI Automation Style ID definitions.
      include: Add IWiaDevMgr2 definition in wia_lh.idl.
      include: Add missing structures for wiadef.h in wia_lh.idl.

Brendan McGrath (3):
      winedmo: Explicitly set 'Data1' value for VP9 GUID.
      mf/tests: Add tests using a new WMV decoder MFT.
      winegstreamer: Store and use previous WMV stride value.

Brendan Shanks (2):
      configure: MacOS is always darwin*.
      winecoreaudio: Avoid duplicate Program Change or Channel Aftertouch MIDI messages.

Connor McAdams (2):
      quartz/tests: Add a test for resetting stream position after receiving EC_COMPLETE.
      quartz/filtergraph: Allow changing stream position after receiving EC_COMPLETE.

Conor McCarthy (16):
      mfplat/tests: Test putting work on an undefined queue id.
      rtworkq/tests: Test putting work on an undefined queue id.
      rtworkq: Support putting work on RTWQ_CALLBACK_QUEUE_UNDEFINED.
      rtworkq: Support putting work on any id in RTWQ_CALLBACK_QUEUE_PRIVATE_MASK.
      mfplat/tests: Introduce a helper to check the platform lock count.
      mfplat/tests: Test mixing of MF platform functions with their Rtwq equivalents.
      mfplat/tests: Test platform startup and lock counts.
      rtworkq/tests: Test work queue.
      rtworkq: Introduce a platform startup count.
      rtworkq: Introduce an async result object cache.
      mfplat: Free the inner cookie passed to resolver_create_cancel_object().
      mfplat/tests: Release callback2 in test_event_queue().
      mfplat/tests: Check for async result release after canceling work and shutting down.
      rtworkq/tests: Test scheduled items.
      rtworkq/tests: Test queue shutdown with pending items.
      rtworkq: Do not cancel pending callbacks when closing a thread pool.

Damjan Jovanovic (2):
      scrrun: Implement ITextStream::WriteBlankLines().
      cmd: Add support for right-to-left handle redirection (2<&1).

Dmitry Timoshkov (17):
      windowscodecs/tests: Add some tests for IWICBitmapFlipRotator.
      windowscodecs: Implement IWICBitmapFlipRotator(WICBitmapTransformFlipHorizontal) for bitmaps with bpp >= 8.
      windowscodecs: Implement IWICBitmapFlipRotator(WICBitmapTransformRotate90) for bitmaps with bpp >= 8.
      windowscodecs: Simplify a bit FlipRotator_CopyPixels() implementation.
      wldap32: Enable libldap tracing with +wldap32 channel.
      wldap32: Don't use win32 constant when calling into libldap.
      oleaut32: Fix logic for deciding whether type description follows the name.
      oleaut32: 'typekind' is the last field of SLTG_OtherTypeInfo structure.
      oleaut32: Implement decoding of SLTG help strings.
      oleaut32: Add support for decoding SLTG function help strings.
      oleaut32: Add support for decoding SLTG variable help strings.
      oleaut32: Make OleLoadPicture load DIBs using WIC decoder.
      server: Add support for merging WM_MOUSEWHEEL messages.
      oleaut32: Add missing fixup for SLTG typename offset.
      oleaut32: Avoid double initialization of TypeInfoCount when reading SLTG typelib.
      gdiplus: Add support for more image color formats.
      gdiplus/tests: Add some tests for loading TIFF images in various color formats.

Elizabeth Figura (9):
      shdocvw: Remove ParseURLFromOutsideSource() implementation.
      shdocvw: Remove URLSubRegQueryA() implementation.
      wined3d: Propagate a CLEARED location when blitting.
      wined3d: Explicitly check for BUFFER/SYSMEM before calling wined3d_texture_download_from_texture().
      wined3d: Introduce initial support for Direct3D 10+ 2-plane formats.
      wined3d: Forbid creating unaligned planar textures.
      wined3d: Forbid unaligned blits for planar textures.
      wined3d: Implement creating views of planar resources.
      d3d11: Implement D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT.

Eric Pouech (4):
      cmd/tests: Add tests about echo mode persistence across batch calls.
      cmd: Preserve echo mode across interactive batch invocation.
      cmd/tests: Add tests wrt. variable expansion with substring modifition.
      cmd: Fix substring substitution in variable expansion.

Esme Povirk (4):
      comctl32: Test for an IAccessible interface on SysLink controls.
      comctl32: Further testing of SysLink IAccessible.
      comctl32: Stub IAccessible interface for SysLink controls.
      comctl32: Implement accRole for SysLink controls.

Francis De Brabandere (1):
      vbscript: Add Join implementation.

Gabriel Ivăncescu (2):
      mshtml: Clear the documents list when detaching inner window.
      jscript: Use as_jsdisp where object is known to be a jsdisp.

Gijs Vermeulen (1):
      winegstreamer: Implement IWMSyncReader2::GetMaxOutputSampleSize.

Hans Leidekker (1):
      sort: Support /+n option.

Jacek Caban (11):
      ntdll: Pass WINE_MODREF to import_dll.
      ntdll: Pass importer pointer to find_ordinal_export.
      ntdll: Pass importer pointer to find_named_export.
      ntdll: Pass importer pointer to find_forwarded_export.
      ntdll: Pass importer pointer to build_import_name.
      ntdll: Use NULL importer in LdrGetProcedureAddress.
      ntdll: Remove no longer needed current_modref.
      msvcp: Avoid explicitly aligning structs passed by value.
      msvcp60: Avoid explicitly aligning structs passed by value.
      ntdll: Use signed type for IAT offset in LdrResolveDelayLoadedAPI.
      winebuild: Avoid using .idata section for delay-load import libraries.

Jinoh Kang (11):
      server: Don't fail SetThreadPriority() on terminated threads.
      kernel32/tests: Add a basic FlushProcessWriteBuffers stress test.
      kernel32/tests: Add a store buffering litmus test involving FlushProcessWriteBuffers.
      include: Fix ReadNoFence64 on i386.
      server: Fix incorrect usage of __WINE_ATOMIC_STORE_RELEASE in SHARED_WRITE_BEGIN/SHARED_WRITE_END.
      include: Prevent misuse of __WINE_ATOMIC_* helper macros for non-atomic large accesses.
      kernel32/tests: Add basic tests for internal flags of modules loaded with DONT_RESOLVE_DLL_REFERENCES.
      kernel32/tests: Test for unexpected LDR_PROCESS_ATTACHED flag in import dependency loaded with DONT_RESOLVE_DLL_REFERENCES.
      kernel32/tests: Test for unexpected loader notification for import dependency loaded with DONT_RESOLVE_DLL_REFERENCES.
      ntdll: Skip DLL initialization and ldr notification entirely if DONT_RESOLVE_DLL_REFERENCES is set.
      ntdll: Remove redundant LDR_DONT_RESOLVE_REFS checks before calling process_attach().

Joe Souza (3):
      cmd/tests: Add tests for command DIR /O.
      cmd: Cleanup DIR /O logic.
      cmd: Implement ability to abort lengthy directory operations via Ctrl-C.

Marc-Aurel Zent (5):
      server: Also set thread priorities upon process priority change.
      kernel32/tests: Setting process priority on a terminated process should succeed.
      server: Implement apply_thread_priority on macOS for application priorities.
      server: Implement apply_thread_priority on macOS for realtime priorities.
      server: Apply Mach thread priorities after process tracing is initialized.

Martin Storsjö (2):
      ntdll: Allow running arm/aarch64 in (old) wow64 mode.
      server: Include ARMNT as one of the supported architectures on aarch64.

Michele Dionisio (2):
      timeout: Add a timeout command.
      timeout/tests: Add minimal test suite.

Mohamad Al-Jaf (14):
      windows.web/tests: Remove superfluous cast.
      windows.web/tests: Add IJsonValue::get_ValueType() tests.
      windows.web: Implement IJsonValue::get_ValueType().
      windows.web: Partially implement IJsonValueStatics::Parse().
      windows.web: Add error handling in IJsonValue::GetArray().
      windows.web: Add error handling in IJsonValue::GetObject().
      windows.web: Implement IJsonValue::GetString().
      windows.web: Implement IJsonValue::GetNumber().
      windows.web: Implement IJsonValue::GetBoolean().
      windows.web/tests: Add IJsonValueStatics::Parse() tests.
      include: Reorder windows.storage.stream classes.
      windows.storage: Add stub dll.
      windows.storage: Move RandomAccessStreamReference class from wintypes.
      windows.storage: Add error handling in IRandomAccessStreamReferenceStatics::CreateFromStream().

Nikolay Sivov (41):
      windowscodecs: Implement CreateMetadataWriter().
      windowscodecs/metadata: Create nested writer instances when loading IFD data.
      windowscodecs/metadata: Add a stub for WICApp1MetadataWriter.
      windowscodecs: Filter options in CreateMetadataWriter().
      windowscodecs/metadata: Add initial implementation of CreateMetadataWriterFromReader().
      windowscodecs/tests: Add an item enumeration test for the App1 reader.
      windowscodecs/metadata: Implement SetValue().
      maintainers: Add myself to the scrrun.dll section.
      wbemprox: Fix a memory leak while filling Win32_PnPEntity fields.
      windowscodecs/metadata: Recursively create nested writers in CreateMetadataWriterFromReader().
      windowscodecs/tests: Use generic block writer for testing.
      windowscodecs/tests: Add some tests for querying nested readers in App1 format.
      windowscodecs/tests: Add some tests for the query writer used on App1 data.
      windowscodecs/metadata: Handle nested metadata handlers lookup by CLSID.
      windowscodecs/tests: Add a top level block enumerator for the test block writer.
      windowscodecs/tests: Add some tests for handler objects enumerator.
      windowscodecs: Add missing traces to the IWICEnumMetadataItem implementation.
      msi: Avoid invalid access when handling format strings.
      windowscodecs/tests: Add some query tests with the Unknown reader.
      windowscodecs/metadata: Share implementation between query reader and writer objects.
      windowscodecs/tests: Add some tests for CreateQueryWriter().
      windowscodecs/tests: Add query reader tests for live block reader updates.
      windowscodecs/tests: Add some tests for CreateQueryWriterFromReader().
      windowscodecs/tests: Add some tests for the query reader container format.
      windowscodecs/metadata: Use VT_LPWSTR type instead of BSTRs when parsing queries.
      windowscodecs/metadata: Collect query components before assigning values.
      windowscodecs/metadata: Add a helper to parse query index syntax.
      windowscodecs/metadata: Use separate helpers to parse query items.
      windowscodecs/metadata: Handle empty items in queries.
      windowscodecs/metadata: Return query writer object from GetMetadataByName() when block writer is used.
      windowscodecs/metadata: Base returned query handlers on metadata handlers.
      windowscodecs: Implement CreateQueryWriter().
      windowscodecs/tests: Add some tests for default metadata item set.
      windowscodecs/metadata: Add flags mask to configure builtin handlers.
      windowscodecs/metadata: Implement removing items with IWICMetadataWriter.
      windowscodecs/tests: Add some tests for RemoveMetadataByName().
      windowscodecs/metadata: Implement RemoveMetadataByName().
      windowscodecs/tests: Remove WinXP workarounds from png metadata test.
      windowscodecs/tests: Move non-specific CreateQueryReaderFromBlockReader() tests to a separate function.
      windowscodecs/tests: Add a test for reader instances returned from the decoder.
      windowscodecs: Remove TGA decoder.

Paul Gofman (24):
      user32/tests: Test system generated WM_MOUSEMOVE with raw input.
      server: Ignore WM_MOUSEMOVE with raw input / RIDEV_NOLEGACY.
      dwmapi: Sleep in DwmFlush().
      ntoskrnl.exe/tests: Open directory object with nonzero access in test_permanent().
      httpapi: Don't open files with zero access.
      kernel32: Don't open reg keys with zero access mask.
      setupapi: Don't open reg keys with zero access mask.
      devenum: Don't open reg keys with zero access mask.
      quartz: Don't open reg keys with zero access mask.
      wbemprox: Don't open reg keys with zero access mask.
      shell32: Don't open reg keys with zero access mask.
      server: Check for zero access in alloc_handle().
      include: Add cfgmgr ID list filter constants.
      setupapi: Implement CM_Get_Device_ID_List[_Size]W().
      setupapi: Implement CM_Get_Device_ID_List[_Size]A().
      setupapi: Make device instance handlers persistent.
      setupapi: Implement CM_Locate_DevNode[_Ex]{A|W}().
      winex11.drv: Sort Vulkan physical devices in get_gpu_properties_from_vulkan().
      win32u: Sort Vulkan physical devices in get_vulkan_gpus().
      crypt32/tests: Add test for chain engine cache update.
      crypt32: Lock store in MemStore_deleteContext().
      crypt32: Do not temporary delete contexts in I_CertUpdateStore().
      crypt32: Only sync registry store if registry has changed.
      crypt32: Resync world store for default engines in get_chain_engine().

Rémi Bernon (11):
      win32u: Introduce a new add_virtual_mode helper.
      win32u: Pass host enumerated display modes to get_virtual_modes.
      win32u: Keep virtual screen sizes in a SIZE array.
      win32u: Introduce a new get_screen_sizes helper.
      win32u: Check generated sizes with the maximum display mode.
      win32u: Generate fake resolution list from the host modes.
      win32u: Generate modes for the host native frequency.
      server: Introduce a new find_mouse_message helper.
      winetest: Ignore success and color codes in tests output limit.
      win32u: Drop now unnecessary WM_WINE_DESKTOP_RESIZED internal message.
      winex11: Delay changing window config if win32 side is still minimized.

Sven Baars (2):
      win32u: Fix an uninitialized variable warning on GCC 10.
      winegstreamer: Fix a compiler warning with GStreamer 1.18 or lower.

Torge Matthies (2):
      ntdll: Add sys_membarrier-based implementation of NtFlushProcessWriteBuffers.
      ntdll: Add thread_get_register_pointer_values-based implementation of NtFlushProcessWriteBuffers.

Vibhav Pant (10):
      winebth.sys: Don't call dbus_pending_call_set_notify with a NULL pending call.
      winebth.sys: Implement IOCTL_WINEBTH_RADIO_SET_FLAG.
      winebth.sys: Call bluez_watcher_close as part of bluetooth_shutdown.
      bluetoothapis: Add stub for BluetoothEnableIncomingConnections.
      bluetoothapis/tests: Add tests for BluetoothEnableIncomingConnections.
      bluetoothapis: Implement BluetoothEnableIncomingConnections.
      bluetoothapis: Add stub for BluetoothEnableDiscovery.
      bluetoothapis/tests: Add tests for BluetoothEnableDiscovery.
      bluetoothapis: Implement BluetoothEnableDiscovery.
      winebth.sys: Free Unix handle to the local radio after updating its properties.

Wei Xie (1):
      http.sys: Avoid crashes in complete_irp() if http header value is space.

Zhiyi Zhang (17):
      prntvpt: Add a missing return (Coverity).
      ntdll: Implement RtlEnumerateGenericTableWithoutSplaying().
      ntdll/tests: Add RtlEnumerateGenericTableWithoutSplaying() tests.
      ntdll: Implement RtlEnumerateGenericTable().
      ntdll/tests: Add RtlEnumerateGenericTable() tests.
      ntdll: Implement RtlGetElementGenericTable().
      ntdll/tests: Add RtlGetElementGenericTable().
      user32/tests: Test TME_LEAVE when the cursor is not in the specified tracking window.
      win32u: Post WM_MOUSELEAVE immediately when the cursor is not in the specified tracking window.
      include: Add D3DKMT_DRIVERVERSION.
      gdi32/tests: Add D3DKMTQueryAdapterInfo() tests.
      win32u: Support KMTQAITYPE_CHECKDRIVERUPDATESTATUS for NtGdiDdDDIQueryAdapterInfo().
      win32u: Support KMTQAITYPE_DRIVERVERSION for NtGdiDdDDIQueryAdapterInfo().
      winex11.drv: Go though WithdrawnState when transitioning from IconicState to NormalState.
      d2d1: Add D2D1ColorMatrix effect stub.
      d2d1: Add D2D1Flood effect stub.
      d3d11/tests: Test D3D11_FEATURE_D3D9_SIMPLE_INSTANCING_SUPPORT feature.