PyOxidizer er et verktøy for å pakke Python-prosjekter inn i kjørbare filer

PyOxidizer

For noen dager siden utviklere introduserte den første versjonen av PyOxidizer-verktøyet, som tilbys som et verktøy som kan brukes til å pakke et Python-prosjekt som en egen kjørbar fil, inkludert Python-tolk og alle nødvendige biblioteker og ressurser.

Slike filer kan kjøres i miljøer uten at Python-verktøysettet er installert eller uavhengig av tilgjengeligheten til den nødvendige versjonen av Python.

PyOxidizer kan også generere statisk relaterte kjørbare filer som ikke er tilknyttet systembibliotekene. Prosjektkoden er skrevet på Rust-språket og distribueres under MPL (Mozilla Public License) 2.0.

Om PyOxidizer?

Prosjektet er basert på modulen med samme navn for Rust-språket, som lar deg legge inn en Python-tolk i Rust-programmer å kjøre Python-skript på dem.

PyOxidizer den har nå beveget seg utover pluginet for Rust og er posisjonert som et verktøy tilgjengelig for et bredere publikum for å bygge og distribuere frittstående Python-pakker.

PyOxidizer er et verktøy som tar sikte på å løse problemet med hvordan du distribuerer Python-applikasjoner.

For de som ikke trenger å distribuere applikasjoner i form av en kjørbar fil, tilbyr PyOxidizer muligheter for å generere egnede biblioteker for å koble til et hvilket som helst program for å legge inn Python-tolken og det nødvendige settet med utvidelser i dem.

Python-applikasjonsdistribusjon blir generelt sett på som et uløst problem da Russel Keith-Magee identifiserte kodedistribusjon som en eksistensiell trussel mot lang levetid, for Python. Med sine ord har Python aldri hatt en konsistent historie om hvordan jeg gir koden min til noen andre, spesielt hvis den andre personen ikke er en utvikler og bare vil bruke applikasjonen min.

For sluttbrukere, levering av et prosjekt i form av en enkelt kjørbar fil Det forenkler installasjonen sterkt og eliminerer arbeidet med å velge avhengigheter, noe som er viktig for eksempel for komplekse Python-prosjekter som videoredigerere.

Mens på den annen side For applikasjonsutviklere gjør PyOxidizer dem i stand til å spare tid på å organisere levering av et program uten å måtte bruke forskjellige verktøy for å lage pakker for forskjellige operativsystemer.

Hvordan fungerer PyOxidizer?

Bruke de foreslåtte byggene det har også en positiv effekt på ytelsen: filer generert i PyOxidizer kjører raskere enn å bruke Python-systemet ved å fjerne import og definere grunnleggende moduler.

I PyOxidizer, moduler importeres fra minnet (Alle innebygde moduler blir umiddelbart lastet inn i minnet og deretter brukt uten disktilgang). Ved testing er programmets oppstartstid med PyOxidizer omtrent halvert.

Fra lignende eksisterende prosjekter er det mulig å observere: PyInstaller (pakker filen ut i en midlertidig katalog og importerer moduler fra den).

  • Py2exe (koblet til Windows-plattform og krever flere fildistribusjoner), py2app (koblet til macOS)
  • Cx-fryse (krever separat avhengighetsemballasje), Shiv og PEX (danner en zip-pakke og krever Python på systemet)
  • Nuitka (kompilerer koden, ikke den innebygde tolken), pynsist (koblet til Windows), PyRun (proprietær utvikling uten forklaring på driftsprinsippene).

På det nåværende utviklingsstadiet, PyOxidizer har allerede implementert hovedfunksjonaliteten for å generere kjørbare filer for Windows, macOS og Linux.

Av de vidtrekkende evnene bemerket fraværet av et standard kompileringsmiljø, manglende evne til å generere en pakke i MSI, DMG og deb / rpm-format, med prosjektemballasjeproblemer som involverer komplekse utvidelser av C-språket.

Mens fraværet av instruksjoner for å støtte utgivelsen ("pyoxidizer add", "pyoxidizer analyse" og "pyoxidizer upgrade") og begrenset støtte for Terminfo og Readline, mangel på støtte for andre versjoner enn Python 3.7, mangel på støtte for ressurskomprimering, manglende evne til å krysse kompilering.

Fuente: https://pyoxidizer.readthedocs.io


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.