Serbestberdana stabîl a Wine 7.0

Piştî salek pêşkeftinê û 30 guhertoyên ceribandinê, serbestberdana domdar a pêkanîna vekirî ya API-ya Win32 hate pêşkêş kirin - Wine 7.0, ku zêdetirî 9100 guheztinan vedihewîne. Serkeftinên sereke yên guhertoya nû wergerandina piraniya modulên Wine di formata PE de, piştgirîkirina mijaran, berfirehkirina stackê ji bo joysticks û cîhazên têketinê yên bi navbeynkariya HID-ê, û pêkanîna mîmariya WoW64 ji bo meşandina bernameyên 32-bit di nav de ye. jîngeha 64-bit.

Wine xebata tevahî ya 5156 (salek berê 5049) bernameyên ji bo Windows-ê piştrast kir, 4312 (salek berê 4227) bernameyên din bi mîhengên zêde û DLL-yên derveyî re bêkêmasî dixebitin. 3813 bername (3703 sal berê) pirsgirêkên xebitandinê yên piçûk hene ku di karanîna fonksiyonên sereke yên sepanan de mudaxele nakin.

Nûvekirinên sereke di Wine 7.0 de:

  • Modulên di forma PE de
    • Hema hema hemî DLL hatine veguheztin ku li şûna ELF pelê pelê PE (Portable Executable, li Windows-ê tê bikar anîn) bikar bînin. Bikaranîna PE pirsgirêkan bi piştgirîkirina cûrbecûr nexşeyên parastina kopîkirinê yên ku nasnameya modulên pergalê li ser dîskê û bîranînê verast dikin çareser dike.
    • Kapasîteya danûstandina modulên PE bi pirtûkxaneyên Unix-ê re bi karanîna banga pergala kernel NT standard hatî bicîh kirin, ku dihêle hûn gihandina koda Unix-ê ji debugerên Windows-ê veşêrin û qeydkirina têlekan bişopînin.
    • DLL-yên çêkirî naha têne barkirin tenê heke pelek PE-ya têkildar li ser dîskê hebe, bêyî ku ew pirtûkxaneyek rastîn be an qutiyek e. Ev guhertin dihêle ku serîlêdan her gav girêdana rast a pelên PE-ê bibîne. Ji bo neçalakkirina vê tevgerê, hûn dikarin guhêrbara jîngehê WINEBOOTSTRAPMODE bikar bînin.
  • WoW64
    • Mîmariya WoW64 (64-bit Windows-li-Windows) hate bicîh kirin, ku dihêle hûn di pêvajoyên Unix-ê yên 32-bit de sepanên Windows-ê yên 64-bit bimeşînin. Piştgirî bi girêdana qatek ku bangên pergala NT 32-bit vediguhezîne bangên 64-bit ji NTDLL re tête bicîh kirin.
    • Qatên WoW64 ji bo piraniya pirtûkxaneyên Unix-ê têne amade kirin û dihêle ku modulên PE 32-bit bigihîjin pirtûkxaneyên Unix-ê yên 64-bit. Dema ku hemî modul di forma PE-ê de hatin veguheztin, dê gengaz be ku bêyî sazkirina pirtûkxaneyên Unix-ê yên 32-bit serlêdanên Windows-ê yên 32-bit bimeşînin.
  • Themes
    • Piştgiriya mijarê hatiye pêkanîn. Mijarên sêwiranê "Ronahî", "Şîn" û "Şîniya Klasîk" tê de hene, ku dikarin bi konfiguratorê WineCfg ve werin hilbijartin.
    • Kapasîteya xweşkirina xuyangiya hemî kontrolên navbeynê bi navgîniya mijaran ve zêde kir. Piştî guheztina mijara sêwiranê xuyangê hêmanan bixweber tê nûve kirin.
    • Piştgiriya mijarê li hemî serîlêdanên Wine-ya çêkirî hate zêdekirin. Serlêdan li ser ekranên bi dendika pixelê ya bilind (DPI-ya bilind) hatine adaptekirin.
  • Subsystem Graphics
    • Pirtûkxaneyek Win32u ya nû hate zêdekirin, ku tê de beşên pirtûkxaneyên GDI32 û USER32 yên têkildarî pêvajoya grafîkê û rêveberiya pencereyê di asta kernel de hene. Di pêşerojê de, dê xebat li ser veguheztina hêmanên ajokerê yên wekî winex32.drv û winemac.drv bo Win11u dest pê bike.
    • Ajokera Vulkan taybetmendiya API-ya grafîkî ya Vulkan 1.2.201 piştgirî dike.
    • Piştgiriyek ji bo derxistina tiştên geometrîkî yên xêzkirî bi navgîniya Direct2D API-yê ve hatî peyda kirin, bi jêhatîbûna kontrolkirina ka klîkek lêdixe (test-lêdan).
    • Direct2D API ji bo bandorên dîtbarî yên ku bi karanîna navgîniya ID2D1Effect ve hatî bikar anîn piştgirîya destpêkê peyda dike.
    • Direct2D API piştgirî ji bo navbeynkariya ID2D1MultiThread, ku ji bo organîzekirina gihîştina taybetî ya çavkaniyan di serîlêdanên pir-mijarî de tê bikar anîn zêde kiriye.
    • Kompleteya pirtûkxaneya WindowsCodecs ji bo deşîfrekirina wêneyan di formata WMP (Windows Media Photo) de û kodkirina wêneyan di forma DDS (DirectDraw Surface) de piştgirî peyda dike. Em êdî piştgirî nadin kodkirina wêneyan di formata ICNS de (ji bo macOS), ku li ser Windows-ê nayê piştgirî kirin.
  • Direct3D
    • Motora nûvekirina nû bi girîngî çêtir bûye, bangên Direct3D li API-ya grafîkî ya Vulkan vediguhezîne. Di pir rewşan de, asta piştevaniya Direct3D 10 û 11-ê di motora bingehîn a Vulkan de bi motora kevintir a OpenGL-ê re hatî berhev kirin. Ji bo çalakkirina motora vegotina Vulkan, guhêrbara qeydê ya Direct3D "renderer" li ser "vulkan" saz bikin.
    • Gelek taybetmendiyên Direct3D 10 û 11 têne bicîh kirin, di nav de Têkiliyên Deferred, tiştên dewletê yên ku di çarçoweya cîhazê de kar dikin, guheztinên domdar ên di tamponan de, paqijkirina dîmenên tevnvîsê yên ji rêzê, kopîkirina daneyan di navbera çavkaniyan de di formên bê tîp de (DXGI_FORMAT_BC3_TYPELESS, DXGI32FORMAT32Hwd. .
    • Piştgiriyek ji bo mîhengên pir-monîtorê zêde kir, ku dihêle hûn çavdêriyek hilbijêrin da ku serîlêdanek Direct3D di moda ekrana tevahî de nîşan bide.
    • DXGI API rastkirina gamaya ekranê peyda dike, ku dikare ji hêla Direct3D 10 û 11 serîlêdanên bingehîn ve were bikar anîn da ku ronahiya ekranê biguhezîne. Vegerandina jimarkerên framebufferên virtual (SwapChain) çalak kir.
    • Direct3D 12 ji bo îmzeyên root guhertoya 1.1 piştgirî zêde dike.
    • Di koda vegotinê ya bi navgîniya Vulkan API-ê de, dema ku pergal piştgirîya dirêjkirina VK_EXT_host_query_reset dike, karbidestiya pêvajoya lêpirsînê baştir bûye.
    • Ger OpenGL an Vulkan nekare ji bo pêşandanê were bikar anîn, wekî mînak, dema ku ji pêvajoyên cihêreng derdixe pencereyek, mînakî, di bernameyên ku li ser çarçoveya CEF-ê (Çarçoveya Embedded Chromium) li ser bingeha CEF-ê (Chromium Embedded Framework) ve têne derxistin, kapasîteya derxistina çarçoweya virtual (SwapChain) bi navgîniya GDI ve zêde kir.
    • Dema ku paşîna şaderê GLSL bikar tînin, guhêrbar "rast" ji bo rêwerzên şader tê misoger kirin.
    • DirectDraw API bi karanîna amûrên nermalavê yên wekî "RGB", "MMX" û "Ramp" piştgirî ji bo danasîna 3D di bîra pergalê de zêde dike.
    • Kartên AMD Radeon RX 3M, AMD Radeon RX 5500/6800 XT/6800 XT, AMD Van Gogh, Intel UHD Graphics 6900 û NVIDIA GT 630 li databasa qerta grafîkê ya Direct1030D hatine zêdekirin.
    • Mifteya "UseGLSL" ji qeyda HKEY_CURRENT_USER\Software\Wine\Direct3D hat rakirin, li şûna wê, bi Wine 5.0-ê dest pê dike, hûn hewce ne ku "shader_backend" bikar bînin.
    • Ji bo piştgirîkirina Direct3D 12, hûn naha herî kêm guhertoya 3 ya pirtûkxaneya vkd1.2d hewce ne.
  • D3DX
    • Pêkanîna D3DX 10 ji bo çarçoveya bandorên dîtbar piştgirî çêtir kiriye û ji bo formata wêneya Windows Media Photo (JPEG XR) piştgirî zêde kiriye.
    • Fonksiyonên çêkirina tevnê ku di D3DX10 de têne peyda kirin, wekî D3DX10CreateTextureFromMemory ().
    • Têkiliyên nermalava ID3DX10Sprite û ID3DX10Font bi qismî hatine bicîh kirin.
  • Deng û vîdyo
    • Pêvekên GStreamer ji bo DirectShow û çarçoweya Weqfa Medyayê di yek paşîna hevpar a WineGStreamer de têne hev kirin, ku divê pêşkeftina API-yên deşîfrekirina naveroka nû hêsan bike.
    • Li ser bingeha paşîna WineGStreamer, tiştên Windows Media ji bo xwendina hevdem û asynkron têne bicîh kirin.
    • Pêkanîna çarçoweya Weqfa Medyayê bêtir hate safîkirin, piştgirî ji bo fonksiyona IMFPMediaPlayer û dabeşkera nimûneyê hate zêdekirin, û piştgirî ji bo tamponên danasîna EVR û SAR çêtir bûye.
    • Pirtûkxaneya wineqtdecoder, ku ji bo formata QuickTime dekoderek peyda dike, hate rakirin (hemî kodek nuha GStreamer bikar tînin).
  • Amûrên Input
    • Stack ji bo cîhazên têketinê yên ku protokola HID (Cîhazên Navbera Mirovan) piştgirî dikin bi girîngî çêtir bûye, kapasîteyên wekî parkirina ravekerên HID, hilanîna peyamên HID, û peydakirina ajokarên mini-HID peyda dike.
    • Di paşperdeya ajokera winebus.sys de, wergerandina danasînên cîhazê li peyamên HID-ê çêtir bûye.
    • Ji bo joystikên ku protokola HID-ê piştgirî dikin piştgiriyek DirectInput-a nû lê zêde kir. Kapasîteya karanîna bandorên vegerê di joysticks de hate bicîh kirin. Panela kontrolê ya joystickê ya çêtirîn. Têkiliya xweşbînkirî ya bi cîhazên lihevhatî yên XInput re. Di WinMM-ê de, li şûna ku pişta evdev li Linux-ê û IOHID-ê li macOS IOHID-ê bikar bîne, piştgirîya joystick li DInput-ê hate veguheztin. Ajokarê joystikê yê kevn winejoystick.drv hate rakirin.
    • Testên nû li modula DInput-ê hatine zêdekirin, li ser bingeha karanîna cîhazên HID-a virtual û ne hewceyî amûrek laşî ye.
  • Nivîs û tîp
    • Tiştek Font Set li DirectWrite zêde kir.
    • RichEdit pêwendiya TextHost rast bicîh tîne.
  • Kernel (Navnavkên Kernelê yên Windows)
    • Dema ku di Wine de pelek îcrakar a nenaskirî (wek 'wine foo.msi') dimeşîne, niha start.exe tê gotin, ku rêwergirên ku bi celebê pelê ve girêdayî ne vedixwîne.
    • Piştgiriya ji bo mekanîzmayên hevdengkirinê NtAlertThreadByThreadId û NtWaitForAlertByThreadId, mîna futexes di Linux de, zêde kir.
    • Piştgiriyek ji bo tiştên debugkirina NT ku ji bo rakirina fonksiyonên kernel têne bikar anîn zêde kir.
    • Piştgiriyek ji bo bişkojkên qeydê yên dînamîkî zêde kir ku daneyên performansê hilîne.
  • C Runtime
    • Dema xebitandinê C komek tevahî fonksiyonên matematîkî pêk tîne, ku bi gelemperî ji pirtûkxaneya Musl têne hilgirtin.
    • Hemî platformên CPU ji bo fonksiyonên xala hilanînê piştgirîya rast peyda dikin.
  • Taybetmendiyên torê
    • Ji bo Internet Explorer 11 (IE11) moda lihevhatinê ya pêşkeftî, ku naha ji hêla xwerû ve ji bo hilanîna belgeyên HTML-ê tê bikar anîn.
    • Pirtûkxaneya mshtml moda JavaScriptê ya ES6 (ECMAScript 2015) pêk tîne, ku piştgirî dide taybetmendiyên wekî letê îfadeyê û tiştê Nexşeyê.
    • Sazkirina pakêtên MSI bi lêzêdekirina motora Gecko di pelrêça xebata Wine de naha dema ku hewce be, û ne di dema nûvekirina Wine de tê kirin.
    • Piştgiriya ji bo protokola DTLS zêde kir.
    • Xizmeta NSI (Navenda Firotana Torê) hatî bicîh kirin, agahdariya li ser rêgez û pêwendiyên torê yên li ser komputerê ji karûbarên din re hilîne û dişîne.
    • Rêvebirên WinSock API yên wekî setsockopt û getsockopt hatine guheztin NTDLL û ajokera afd.sys da ku li gorî mîmariya Windows-ê tevbigerin.
    • Pelên databasa torê ya Wine, wek /etc/protokol û /etc/tors, naha di pelrêça xebatê ya Wine de têne saz kirin, li şûna ku bigihîjin databasên Unix-ê yên wekhev.
  • Platformên Alternatîf
    • Piştgiriya ji bo amûrên Apple-ê yên li ser çîpên M1 ARM (Apple Silicon) ve hatî zêdekirin.
    • Piştgiriya taybetmendiyên BCrypt û Secur32 li ser macOS naha pêdivî bi sazkirina pirtûkxaneya GnuTLS heye.
    • Berhemên 32-bit ên ji bo platformên ARM-ê naha di moda Thumb-2 de, mîna Windows-ê têne çêkirin. Ji bo barkirina pelên weha preloaderek tê bikar anîn.
    • Ji bo platformên ARM-ê yên 32-bit, piştgirî ji bo îstîsnayên vekêşanê hatî bicîh kirin.
    • Ji bo FreeBSD, hejmara lêpirsînên piştgirîkirî yên ji bo agahdariya pergalê ya nizm, wekî rewşa bîranînê û asta barkirina batterê, hate berfireh kirin.
  • Serlêdan û amûrên pêşkeftinê yên çêkirî
    • Vebijêrka reg.exe ji bo dîtinên qeydê yên 32- û 64-bit piştgirî zêde kiriye. Ji bo kopîkirina bişkojkên qeydê piştgirî zêde kir.
    • Karûbar WineDump ji bo avêtina metadata Windows-ê û nîşandana agahdariya berfireh di derheqê navnîşên CodeView de piştgirî zêde kiriye.
    • Wine Debugger (winedbg) jêhatîbûna pêvajoyên 32-bit ji debuggerek 64-bit peyda dike.
    • Kapasîteya barkirina pirtûkxaneyên ku di pelên PE-ê de hatine çêkirin li berhevkarê IDL (widl) hatiye zêdekirin, piştgirî ji bo taybetmendî û avahîyên taybetî yên WinRT-ê hatî peyda kirin, û lêgerînek pirtûkxaneyê ya taybetî-platformê hate bicîh kirin.
  • Sîstema meclîsê
    • Di pelrêçiyên mîmarî-taybetî de, pirtûkxane naha bi navên ku mîmarî û celebê îcrakar nîşan didin têne hilanîn, wek 'i386-windows' ji bo formata PE û 'x86_64-unix' ji bo pirtûkxaneyên unix, ku destûrê dide piştgirîkirina mîmariyên cihêreng di yek Wine de. sazkirin û berhevkirina cross-berhevkirina Winelib peyda dike.
    • Ji bo danîna vebijarkek di sernavên pelên PE de ku veguheztina karanîna DLL-yên xwemalî kontrol dike, ala '--tercih-vebijarka xwemalî' li winebuild-ê hate zêdekirin (pêvajoya DLL_WINE_PREATTACH li DllMain hate rawestandin).
    • Piştgiriyek ji bo guhertoya 4-ê ya formata daneya debugê ya Dwarf zêde kir, ku naha dema ku pirtûkxaneyên Wine ava dike ji hêla xwerû ve tê bikar anîn.
    • Vebijarka avakirinê '-enable-build-id' lê zêde kir da ku nasnameyên avahîsaziyê yên yekta di pelên îcrakar de hilîne.
    • Piştgiriyek ji bo karanîna berhevkarê Clang di moda lihevhatina MSVC de zêde kir.
  • Разное
    • Navên pelrêçiyên tîpîk ên di şêlê bikarhênerê de (Windows Shell) ji pilana ku bi Windows Vista-yê dest pê dike tê bikar anîn, ango. Li şûna 'Belgeyên Min', pelrêçek 'Belge' niha tê afirandin, û piraniya daneyan di pelrêça 'AppData' de têne hilanîn.
    • Piştgiriya ji bo taybetmendiya OpenCL 1.2 li qata pirtûkxaneya OpenCL hate zêdekirin.
    • Ajokara WinSpool dema çapkirinê piştgirî ji mezinahiyên rûpelên cûda re zêde kiriye.
    • Piştgiriya destpêkê ji bo MSDASQL, pêşkêşvanê Microsoft OLE DB ji bo ajokarên ODBC zêde kir.
    • Motora Wine Mono ya bi pêkanîna platforma .NET ve hatî nûve kirin ku 7.0.0 serbest bike.
    • Daneyên Unicode bi taybetmendiya Unicode 14-ê hate nûve kirin.
    • Dara çavkaniyê pirtûkxaneyên Faudio, GSM, LCMS2, LibJPEG, LibJXR, LibMPG123, LibPng, LibTiff, LibXml2, LibXslt û Zlib hene, ku di formata PE de têne berhev kirin û guhertoyek di forma Unix de hewce nake. Di heman demê de, ev pirtûkxane jî dikarin ji pergalê werin derxistin da ku li şûna vebijarkên PE-ya çêkirî meclîsên derveyî bikar bînin.

Source: opennet.ru

Add a comment