Release fan PyOxidizer foar it ferpakken fan Python-projekten yn selsstannige útfierbere bestannen

Yntrodusearre earste útjefte fan it hulpprogramma PyOxidizer, wêrmei jo in projekt yn Python ynpakke kinne yn 'e foarm fan in selsstannich útfierber bestân, ynklusyf de Python-tolk en alle biblioteken en boarnen dy't nedich binne foar it wurk. Sokke bestannen kinne wurde útfierd yn omjouwings sûnder Python-ark ynstalleare of nettsjinsteande de fereaske ferzje fan Python. PyOxidizer kin ek statysk keppele útfierbere bestannen generearje dy't net keppele binne oan systeembiblioteken. It projekt koade is skreaun yn Rust en ferspraat troch lisinsje ûnder MPL (Mozilla Public License) 2.0.

It projekt is basearre op de Rust-taalmodule mei deselde namme, wêrtroch jo in Python-tolk yn Rust-programma's ynbêde kinne om Python-skripts yn te fieren. PyOxidizer is no fierder gien as in Rust-tafoeging en wurdt gepositioneerd as in ark foar it bouwen en fersprieden fan selsstannige Python-pakketten nei in breder publyk. Foar dyjingen dy't gjin applikaasjes hoege te fersprieden as in útfierber bestân, biedt PyOxidizer de mooglikheid om bibleteken te generearjen dy't geskikt binne foar keppeling mei elke applikaasje om in Python-tolk en de nedige set tafoegings yn te setten.

Foar ein brûkers, it leverjen fan it projekt as ien útfierbere triem gâns simplifies ynstallaasje en elimineert it wurk fan selektearjen ôfhinklikens, dat is wichtich, bygelyks, foar komplekse Python projekten lykas fideo editors. Foar applikaasje-ûntwikkelders lit PyOxidizer jo tiid besparje by it organisearjen fan applikaasjeferliening, sûnder de needsaak om ferskate ark te brûken om pakketten te meitsjen foar ferskate bestjoeringssystemen.

It gebrûk fan 'e foarstelde gearkomsten hat ek in posityf effekt op prestaasjes - bestannen generearre yn PyOxidizer rinne rapper dan by it brûken fan systeem Python fanwege it eliminearjen fan ymport en definysje fan basismodules. Yn PyOxidizer wurde modules ymportearre út it ûnthâld - alle ynboude modules wurde fuortendaliks laden yn it ûnthâld en dan brûkt sûnder tagong skiif). Yn tests wurdt de starttiid fan applikaasjes by it brûken fan PyOxidizer mei sawat de helte fermindere.

Under de al besteande ferlykbere projekten kinne it folgjende wurde opmurken: PyInstaller (pakt it bestân út yn in tydlike map en ymportearret modules derút), py2exe (bûn oan it Windows-platfoarm en fereasket dat meardere bestannen ferspraat wurde), py2 app (keppele oan macOS), cx frij (fereasket aparte ôfhinklikheidsferpakking), Shiv и PEX (foarmje in pakket yn zip-formaat en fereasket Python op it systeem), Nuitka (kompileart de koade ynstee fan in tolk ynbêde), pynsist (keppele oan Windows) PyRun (proprietêre ûntwikkeling sûnder útlis fan operaasjeprinsipes).

Op it hjoeddeistige stadium fan ûntwikkeling hat PyOxidizer de haadfunksje al ymplementearre foar it generearjen fan útfierbere bestannen foar Windows, macOS en Linux. Fan op it stuit net beskikbere kânsen fierd gebrek oan in standert bouwomjouwing, ûnfermogen om pakketten te generearjen yn MSI-, DMG- en deb / rpm-formaten, problemen mei ferpakkingsprojekten dy't komplekse útwreidingen yn 'e C-taal omfetsje, gebrek oan kommando's om levering te stypjen ("pyoxidizer tafoegje", "pyoxidizer analysearje" en "pyoxidizer upgrade"), beheinde stipe foar Terminfo en Readline, gebrek oan stipe foar releases oars as Python 3.7, gebrek oan stipe foar boarne kompresje, ûnfermogen om cross-compile.

Boarne: opennet.ru

Add a comment