Sawise setahun pembangunan lan 29 versi eksperimen, rilis stabil saka implementasine mbukak Win32 API - Wine 10.0, sing nggabungake luwih saka 6000 owah-owahan, diwenehi. Prestasi utama ing versi anyar kalebu dhukungan lengkap kanggo arsitektur ARM64EC, skala ing layar kanthi kapadhetan piksel dhuwur, kalebu driver Wayland kanthi standar, implementasi panel kanggo ngatur layar lan joystick, backend multimedia alternatif adhedhasar FFmpeg, Bluetooth. driver, Vulkan 1.4 support, kemampuan emulasi ngoper mode video.
5372 program wis dikonfirmasi bisa digunakake kanthi bener ing Wine Windows (5336 setaun kepungkur, 5266 rong taun kepungkur, 5156 telung taun kepungkur), 4435 program liyane (4397 setaun kepungkur, 4370 rong taun kepungkur, 4312 telung taun kepungkur) bisa digunakake kanthi apik nganggo setelan tambahan lan DLL eksternal. Program 4020 (3943 setaun kepungkur, 3888 rong taun kepungkur, 3813 telung taun kepungkur) duwe masalah cilik sing ora ngganggu panggunaan fungsi inti aplikasi.
Inovasi utama ing Wine 10.0:
- ARM64
- Dhukungan lengkap diwenehake kanggo arsitektur ARM64EC (ARM64 Emulation Compatible), tingkat dhukungan ing Wine sing wis tekan paritas karo arsitektur ARM64. Arsitektur ARM64EC dirancang kanggo menakake porting saka aplikasi Originally ditulis kanggo sistem x64_86 kanggo sistem ARM64, lan ngidini modul kode x64_86 individu kanggo mbukak ing lingkungan ARM64 nggunakake emulator.
- Dhukungan lengkap wis dileksanakake kanggo format file ARM64X PE, sing ngidini sampeyan nggabungake kode kanggo arsitektur ARM64EC lan ARM64 ing siji file sing bisa dieksekusi. Kanggo mbangun Wine ing format ARM64X, sampeyan kudu nginstal LLVM saka Git (fungsi sing dibutuhake bakal dilebokake ing release LLVM 20) lan nalika mbukak skrip "configure", nemtokake pilihan "-enable-archs = arm64ec, aarch64". .
- Antarmuka kanggo niru sistem x64 86-bit wis dileksanakake. Nalika nggunakake ARM64EC, Wine dhewe mlaku, lan emulasi mung ditrapake kanggo kode aplikasi x86-64. Perpustakaan karo emulator durung klebu ing paket Wine utama, nanging kanggo mbukak kode x86-64 ing lingkungan ARM64, sampeyan bisa nggunakake FEX emulator external dibangun karo support ARM64EC.
- ΠΠ»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ARM64 Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΡΠΈΡΡΠ΅ΠΌΠ΅ ΡΡΡΠ°Π½ΠΈΡ ΠΏΠ°ΠΌΡΡΠΈ ΡΠ°Π·ΠΌΠ΅ΡΠΎΠΌ 4ΠΠ, ΠΊΠ°ΠΊ ΡΠΎΠ³ΠΎ ΡΡΠ΅Π±ΡΠ΅Ρ ABI Windows (Π·Π°ΠΏΡΡΠΊ Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΡ Ρ ΡΠ΄ΡΠ°ΠΌΠΈ Linux, ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΌΠΈ ΡΡΡΠ°Π½ΠΈΡΡ ΠΏΠ°ΠΌΡΡΠΈ 16K ΠΈΠ»ΠΈ 64K ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅ΡΡΡ).
- Subsistem grafis
- Dilaksanakake skala sing luwih akurat ing layar kanthi kapadhetan piksel dhuwur (DPI Dhuwur). Dhukungan kanggo mode Kesadaran DPI wis diwenehake kanggo ngatur tampilan aplikasi ing layar kanthi kapadhetan piksel sing dhuwur, kanthi nggatekake manawa aplikasi kasebut ndhukung adaptasi kanggo owah-owahan DPI utawa ora (aplikasi sing ora nggatekake DPI kanthi otomatis skala). Opsi sing ditambahake kanggo ngatasi dhukungan DPI Dhuwur kanggo aplikasi individu utawa awalan Wine.
- Dhukungan kanggo spesifikasi Vulkan 1.4 wis ditambahake menyang driver kanggo API grafis Vulkan (Vulkan 9.0 didhukung ing Wine 1.3.272). Dhukungan tambahan kanggo ekstensi Vulkan kanggo enkoding lan dekoding video.
- Nalika nggunakake backend X11, kemampuan kanggo nerjemahake jendhela anak Vulkan kanggo aplikasi sing nggunakake jendhela kasebut kanggo nampilake konten 3D wis dileksanakake (sadurunge, fitur kasebut mung kasedhiya kanggo OpenGL).
- Dhukungan kanggo mekanisme panyambungan font wis ditambahake menyang perpustakaan GdiPlus, sing ngidini sampeyan nggunakake sawetara font nalika nampilake teks yen ora ana font sing nutupi kabeh karakter sing ditemokake ing teks kasebut.
- Wayland
- Π ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠΈ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°Π½ Π΄ΡΠ°ΠΉΠ²Π΅Ρ winewayland.drv, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Wine Π² ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡΡ Π½Π° Π±Π°Π·Π΅ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Wayland Π±Π΅Π· ΠΏΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΡ XWayland ΠΈ ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½ΡΠΎΠ² X11. Wine Π·Π°ΠΏΡΡΠΊΠ°Π΅Ρ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π° Wayland Π½Π°ΠΏΡΡΠΌΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π΅ΡΠ»ΠΈ XWayland Π½Π΅Π΄ΠΎΡΡΡΠΏΠ΅Π½, Π² ΠΏΡΠΎΡΠΈΠ²Π½ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π·Π°ΠΏΡΡΠΊ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ XWayland ΠΎΡΡΠ°ΡΡΡΡ ΠΏΡΠΈΠΎΡΠΈΡΠ΅ΡΠ½ΡΠΌ. ΠΠ»Ρ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ Wayland ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ ΠΎΠΊΡΡΠΆΠ΅Π½ΠΈΡ DISPLAY, Π»ΠΈΠ±ΠΎ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊΠ»ΡΡ Π² ΡΠ΅Π΅ΡΡΡ, ΡΠΎΠ·Π΄Π°Π² ΡΠ°ΠΉΠ» file.reg: Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Wine\Drivers] Β«GraphicsΒ»=Β»waylandΒ» ΠΈ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠ² Π΅Π³ΠΎ ΠΊΠΎΠΌΠ°Π½Π΄ΠΎΠΉ: $ WINEPREFIX=/ΠΏΡΡΡ/Π΄ΠΎ/ΠΏΡΠ΅ΡΠΈΠΊΡΠ° wine regedit /ΠΏΡΡΡ/Π΄ΠΎ/file.reg
- Nambahake dhukungan kanggo OpenGL lan buffer piksel (pBuffer) menyang driver winewayland.drv.
- Rampung masalah karo posisi popup ing lingkungan basis Wayland.
- Nalika nggunakake Wayland, dhukungan kanggo baleni otomatis nalika menet tombol dileksanakake.
- Integrasi desktop
- Nambahake mekanisme emulasi "modeset" eksperimen sing ngidini sampeyan niru ngoper mode video tanpa ngganti setelan layar. Visibilitas kanggo ngganti resolusi layar tanpa ngoper mode video digawe liwat nggedhekake lan nggedhekake windows.
- A applet Panel Kontrol Desktop anyar (desk.cpl) wis ditambahake karo implementasine saka antarmuka kanggo ngatur setelan tampilan (Contone, sampeyan bisa ngganti resolusi virtual saka desktop utawa ngatur paramèter tampilan emulated).
- Nambahake kemampuan kanggo ngreset setelan layar menyang nilai gawan yen ora bisa mulihake negara sawise kacilakan proses.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΏΠΎΠΊΠ°Π·Π° ΠΏΠΈΠΊΡΠΎΠ³ΡΠ°ΠΌΠΌ Π² ΡΠΈΡΡΠ΅ΠΌΠ½ΠΎΠΌ Π»ΠΎΡΠΊΠ΅ (Π² Β«HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\ExplorerΒ» ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΊΠ°Π·Π°ΡΡ Β«NoTrayItemsDisplay=1Β»).
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° ΠΎΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΎΠ±ΠΎΠ»ΠΎΡΠ΅ΠΊ (Shell launcher) Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ Π΄Π΅ΡΠΊΡΠΎΠΏΠ° (Π² Β«HKLM\Software\Microsoft\Windows\CurrentVersion\Policies\ExplorerΒ» ΡΠ»Π΅Π΄ΡΠ΅Ρ ΡΠΊΠ°Π·Π°ΡΡ Β«NoDesktop=1Β»).
- Direct3D
- Rendering karo OpenGL saiki mbutuhake dhukungan kanggo GLSL 1.20, uga ekstensi EXT_framebuffer_object lan ARB_texture_non_power_of_two. Dhukungan kanggo backend shader ARB lawas lan setelan OffscreenRenderingMode wis mandheg.
- Kanggo Direct3D 9 lan lawas, wis ditambahakΓ© pipeline grafis fungsi tetep (Direct3D lawas kasedhiya mung operasi grafis wis ditemtokake sing ora bisa diganti), dipun ginakaken nggunakake basa shader HLSL lan ngidini emulation fungsi tetep nalika Rendering liwat Vulkan utawa OpenGL API.
- Rendering karo Vulkan nggunakake ekstensi Vulkan kanggo ngganti kahanan pipa grafis kanthi dinamis, nyuda gagap ing game.
- Added alternatif glsl-vkd3d backend kanggo shaders GLSL, nggunakake vkd3d-shader.
- Nyedhiyani dhukungan awal kanggo kompilasi efek Direct3D nggunakake vkd3d-shader.
- Pustaka D3DX9 ngetrapake kemampuan kanggo ngasilake tekstur MIP (MipMap) nalika ngemot tekstur volumetrik. Dhukungan ditambahake kanggo format perwakilan warna 64bpp RGBA lan 48bpp RGB ing gambar PNG, uga format X8L8V8U8, A2W10V10U10, A8P8, V16U16 lan Q16W16V16U16.
- Swara lan video
- Minangka alternatif kanggo backend basis GStreamer, backend multimedia anyar dipun ginakaken, adhedhasar nggunakake FFmpeg lan cocok kanggo mlaku framework Media Foundation. Kanggo ngaktifake backend alternatif, sampeyan kudu nemtokake "DisableGstByteStreamHandler = 1" ing bagean pendaptaran "HKCU\Software\Wine\MediaFoundation".
- Implementasi Media Foundation API wis didandani supaya bisa luwih apik nampung aplikasi sing gumantung marang komponen demultiplexing lan dekoding.
- DirectMusic API wis nambahake dhukungan kanggo mbukak file MIDI.
- Piranti input
- Ditambahake versi wiwitan driver Bluetooth.
- Added Joystick Control Panel applet (joy.cpl) karo implementasine saka setelan kanggo joystick.
- ΠΠ½Π΅ΡΠ΅Π½Ρ ΡΠ»ΡΡΡΠ΅Π½ΠΈΡ, ΡΠ²ΡΠ·Π°Π½Π½ΡΠ΅ Ρ ΡΡΡΡΠΎΠΉΡΡΠ²Π°ΠΌΠΈ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΡΠΊΠ°Π·Π°ΡΠ΅Π»Π΅ΠΌ (ΡΠ°ΡΠΏΠ°Π΄Ρ, ΠΌΡΡΠΈ), ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡΠΈΠΌΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» HID (Human Interface Device). ΠΠΎΠ±Π°Π²Π»Π΅Π½ Π΄ΡΠ°ΠΉΠ²Π΅Ρ mouhid.sys Π΄Π»Ρ HID-ΡΡΡΡΠΎΠΉΡΡΠ². Π Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΡΠΉ ΡΠ°Π·Π±ΠΎΡ ΡΠΎΡΡΠ°Π²Π½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ² Π²Π²ΠΎΠ΄Π° ΠΈ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½Π° ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠ° ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ Π½ΠΈΡ Π² Windows-ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠ°ΠΊ ΠΎ ΡΠ°Π·Π΄Π΅Π»ΡΠ½ΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ .
- Kanggo backend X11, dhukungan kanggo layar tutul wis ditambahake lan kemampuan kanggo nggunakake mode multi-tutul liwat proses WM_POINTER * pesen (WM_POINTERENTER, WM_POINTERLEAVE, etc.) wis dipun ginakaken.
- Penempatan sawetara struktur internal perpustakaan user32 ing memori bareng, sing nambah kinerja lan nyuda beban ing Server Anggur.
- Winex11 nambahake dhukungan kanggo ngolah acara XInput2 sing ana gandhengane karo windows individu.
- Dilaksanakake dhukungan sing bener kanggo keyboard kanthi tata letak Dvorak.
- Kernel (antarmuka kernel) Windows)
- Dhukungan tambahan kanggo eskalasi hak istimewa proses (proses sing wiwitane mlaku minangka pangguna standar bisa diwenehi hak istimewa administrator). Nalika nggawe pangolahan server (server tumindak msi), uga pangolahan sing nelpon fungsi RtlCreateUserProcess () lan CreateProcessInternal (), token administrator winates diaktifake minangka standar.
- Nalika entuk informasi babagan label disk, yen bisa, ngakses layanan sistem liwat DBus saiki digunakake, tinimbang nyoba ngakses piranti kasebut kanthi langsung.
- ΠΠ΄Π½ΠΎΠ½Π°ΠΏΡΠ°Π²Π»Π΅Π½Π½ΡΠΉ ΠΌΠ΅Ρ Π°Π½ΠΈΠ·ΠΌ ΠΌΠ΅ΠΆΠΏΡΠΎΡΠ΅ΡΡΠ½ΠΎΠ³ΠΎ Π²Π·Π°ΠΈΠΌΠΎΠ΄Π΅ΠΉΡΡΠ²ΠΈΡ (IPC) Mailslots ΡΠ΅ΠΏΠ΅ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π½ Π½Π΅ΠΏΠΎΡΡΠ΅Π΄ΡΡΠ²Π΅Π½Π½ΠΎ Π² Wine server, ΡΡΠΎ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»ΠΎ Π΄ΠΎΠ±ΠΈΡΡΡΡ ΠΏΠΎΠ»Π½ΠΎΠΉ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΈ ΡΠ΅ΠΌΠ°Π½ΡΠΈΠΊΠΈ Windows.
- Dilaksanakake nunggu acara port serial ing mode asinkron.
- Nambahake dhukungan lengkap kanggo ekstensi prosesor XSTATE ing konteks thread, ngidini panggunaan ekstensi vektor anyar kayata AVX-512.
- Aplikasi sing dipasang
- Mesin pangolahan data input sing digunakake ing interpreter printah cmd.exe wis ditulis maneh. Nambahake dhukungan kanggo operasi "||" menyang cmd.exe Lan "&&".
- Utilitas findstr wis nambahake dhukungan kanggo ekspresi reguler lan telusuran sing ora sensitif huruf cilik.
- Kemampuan kanggo ndhaptar modul ARM32EC wis ditambahake menyang regsvr32 lan rundll64 keperluan.
- Utilitas sing ditambahake: Urut kanggo ngurutake data input, fc kanggo mbandhingake file lan ing ngendi kanggo nggoleki file.
- Aplikasi wmic ngetrapake mode operasi interaktif.
- Explorer nambahake dhukungan opsional kanggo menu wiwitan lan toolbar. Ngaktifake peluncuran explorer.exe kanthi hak akses suda.
- Piranti Pangembangan
- Nambahake opsi "-marm64x" kanggo winebuild kanggo ngasilake perpustakaan hibrida ARM64X.
- Added "-marm64x" pilihan kanggo winegcc kanggo ngidini bangunan kanggo ARM64X.
- File sing digawe nggunakake Interface Definition Language (IDL) nggunakake komponen sing ndhukung eksekusi kanthi mode sing diinterpretasikake.
- Dhukungan kanggo ngasilake perpustakaan jinis (TypeLib) ing format lawas (SLTG) wis ditambahake menyang compiler IDL (Interface Definition Language).
- Utilitas winedump wis nambahake dhukungan kanggo nyimpen dumps tabel minidump, informasi pangecualian C++, lan sumber daya typelib.
- Π Π°Π·Π½ΠΎΠ΅
- Dhukungan sing luwih apik kanggo protokol pertukaran kunci Diffie-Hellman (DH). Ditambahake kemampuan kanggo ngatur lan nampa paramèter DH. Pengendali sing ditindakake kanggo nggawe pasangan kunci umum lan pribadi.
- Panggunaan tambahan padding OAEP (Optimal Asymmetric Encryption Padding) bebarengan karo algoritma RSA diwenehake.
- DirectPlay API ndhukung sesi jaringan.
- Penanganan status input/output asinkron sing luwih apik nalika makarya ing mode WoW64 (64-bit) Windows-ing-Windows), sing ngidini sampeyan mbukak 32-bit Windows-aplikasi ing sistem Unix 64-bit.
- ΠΠΎΠ±Π°Π²Π»Π΅Π½Π° ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠ° Π·Π°Π³ΡΡΠ·ΠΊΠΈ ODBC-Π΄ΡΠ°ΠΉΠ²Π΅ΡΠΎΠ² ΠΊ Π‘Π£ΠΠ, ΡΠΎΠ±ΡΠ°Π½Π½ΡΡ Π΄Π»Ρ Windows.
- Kanggo platform ARM, dhukungan lengkap kanggo RPC / COM, C++ RTTI (Run-Time Type Information) lan pengecualian C++ ditindakake.
- Ing runtime C, fungsi ANSI ngetrapake dhukungan kanggo enkoding UTF-8.
- Kapabilitas mesin MSHTML wis ditambahi. Dhukungan ditambahake kanggo prototipe lan konstruktor obyek. Antarmuka pengikat obyek anyar kanggo MSHTML wis ditambahake ing mesin JavaScript. Fungsi bawaan MSHTML wis diowahi dadi obyek JavaScript sing sah. Koleksi sampah JavaScript sing luwih apik kanggo nutupi kabeh konteks eksekusi skrip ing thread. Dhukungan ditambahake kanggo obyek ArrayBuffer lan DataView JavaScript.
- Dhukungan kanggo analisis statis nggunakake laporan tes Clang lan JUnit wis ditambahake menyang sistem integrasi terus-terusan adhedhasar Gitlab.
- perpustakaan Capstone 5.0.3 dibangun ing paket, liwat kang disassembly dipun ginakaken ing WineDb debugger.
- Komponen dianyari kanggo versi anyar: Vkd3d 1.14, Faudio 24.10, FluidSynth 2.4.0, LDAP 2.5.18, LCMS2 2.16, LibJpeg 9f, LibMPG123 1.32.9, LibPng 1.6.44, LibTiff 4.7.0. 2, LibXslt 2.12.8 lan Zlib 1.1.42.
Source: opennet.ru
