{"id":35659,"date":"2019-10-31T22:05:38","date_gmt":"2019-10-31T19:05:38","guid":{"rendered":"https:\/\/prohoster.info\/blog\/vypusk-pyoxidizer-dlya-upakovki-python-proektov-v-samodostatochnye-ispolnyaemye-fajly\/"},"modified":"2019-10-31T22:05:38","modified_gmt":"2019-10-31T19:05:38","slug":"vypusk-pyoxidizer-dlya-upakovki-python-proektov-v-samodostatochnye-ispolnyaemye-fajly","status":"publish","type":"post","link":"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-pyoxidizer-dlya-upakovki-python-proektov-v-samodostatochnye-ispolnyaemye-fajly","title":{"rendered":"Release of PyOxidizer for packaging Python projects into standalone executables","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><noindex><a rel=\"nofollow\" href=\"https:\/\/gregoryszorc.com\/blog\/2019\/06\/24\/building-standalone-python-applications-with-pyoxidizer\/\">Prezentat<\/a><\/noindex> prima versiune a utilitarului <noindex><a rel=\"nofollow\" href=\"https:\/\/pyoxidizer.readthedocs.io\/en\/latest\/index.html\">PyOxidizer<\/a><\/noindex>, care permite \u00eempachetarea unui proiect \u00een limbajul Python sub forma unui fi\u0219ier executabil autosuficient, incluz\u00e2nd interpretatorul Python \u0219i toate bibliotecile \u0219i resursele necesare func\u021bion\u0103rii. Aceste fi\u0219iere pot fi rulate \u00een medii f\u0103r\u0103 instrumentele Python instalate sau independent de existen\u021ba versiunii necesare de Python. PyOxidizer poate, de asemenea, s\u0103 formeze fi\u0219iere executabile legate static, care nu depind de bibliotecile sistemului. Codul proiectului este scris \u00een limbajul Rust \u0219i <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/indygreg\/PyOxidizer\">se r\u0103sp\u00e2nde\u0219te<\/a><\/noindex> sub licen\u021ba MPL (Mozilla Public License) 2.0. <\/p>\n<p>Proiectul se bazeaz\u0103 pe modulul omonim pentru limbajul Rust, care permite \u00eencorporarea interpretatorului Python \u00een programele Rust pentru a rula scripturi Python \u00een acestea. PyOxidizer a ie\u0219it acum din sfera extensiei pentru Rust \u0219i este pozi\u021bionat ca un instrument accesibil pentru o audien\u021b\u0103 mai larg\u0103, destinat form\u0103rii \u0219i distribuirii pachetelor autosuficiente cu Python. Pentru cei care nu au nevoie s\u0103 distribuie aplica\u021bii sub form\u0103 de fi\u0219ier executabil, PyOxidizer ofer\u0103 posibilit\u0103\u021bi de generare a bibliotecilor potrivite pentru legarea cu orice aplica\u021bie pentru \u00eencorporarea interpretatorului Python \u0219i a setului necesar de extensii.<\/p>\n<p>Pentru utilizatorii finali, livrarea proiectului sub forma unui singur fi\u0219ier executabil simplific\u0103 semnificativ instalarea \u0219i elimin\u0103 necesitatea de a gestiona dependen\u021bele, ceea ce este relevant, de exemplu, pentru proiectele complexe \u00een Python, cum ar fi editorii video. Pentru dezvoltatorii de aplica\u021bii, PyOxidizer permite economisirea timpului \u00een organizarea livr\u0103rii aplica\u021biei, f\u0103r\u0103 a fi nevoie s\u0103 utilizeze diferite instrumente pentru formarea pachetelor pentru diverse sisteme de operare.<\/p>\n<p>Utilizarea configura\u021biilor propuse contribuie pozitiv la performan\u021b\u0103 \u2014 fi\u0219ierele generate \u00een PyOxidizer se \u00eencarc\u0103 mai repede dec\u00e2t cele care folosesc Python sistemic, datorit\u0103 elimin\u0103rii importului \u0219i determin\u0103rii modulelor de baz\u0103. \u00cen PyOxidizer, modulele sunt importate din memorie \u2014 toate modulele \u00eencorporate sunt \u00eenc\u0103rcate imediat \u00een memorie \u0219i apoi utilizate f\u0103r\u0103 acces la disc). \u00cen teste, timpul de lansare a aplica\u021biei utiliz\u00e2nd PyOxidizer este redus cu aproximativ 50%.<\/p>\n<p>Printre proiectele similare deja existente se num\u0103r\u0103: <noindex><a rel=\"nofollow\" href=\"https:\/\/www.pyinstaller.org\/\">PyInstaller<\/a><\/noindex> (dezarhiveaz\u0103 fi\u0219ierul \u00eentr-un director temporar \u0219i import\u0103 modulele din acesta), <noindex><a rel=\"nofollow\" href=\"http:\/\/www.py2exe.org\/\">py2exe<\/a><\/noindex> (legat de platforma Windows \u0219i necesit\u0103 distribuirea mai multor fi\u0219iere), <noindex><a rel=\"nofollow\" href=\"https:\/\/py2app.readthedocs.io\/en\/latest\/\">py2app<\/a><\/noindex> (legat de macOS), <noindex><a rel=\"nofollow\" href=\"https:\/\/cx-freeze.readthedocs.io\/en\/latest\/\">cx-freeze<\/a><\/noindex> (necesit\u0103 \u00eempachetarea separat\u0103 a dependen\u021belor), <noindex><a rel=\"nofollow\" href=\"https:\/\/shiv.readthedocs.io\/en\/latest\/\">Shiv<\/a><\/noindex> \u0219i <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/pantsbuild\/pex\">PEX<\/a><\/noindex> (formeaz\u0103 un pachet \u00een format zip \u0219i necesit\u0103 Python instalat \u00een sistem), <noindex><a rel=\"nofollow\" href=\"http:\/\/nuitka.net\/pages\/overview.html\">Nuitka<\/a><\/noindex> (compileaz\u0103 codul, nu \u00eencorporeaz\u0103 interpretul), <noindex><a rel=\"nofollow\" href=\"https:\/\/pynsist.readthedocs.io\/en\/latest\/index.html\">pynsist<\/a><\/noindex> (legat de Windows), <noindex><a rel=\"nofollow\" href=\"https:\/\/www.egenix.com\/products\/python\/PyRun\">PyRun<\/a><\/noindex> (dezvoltare proprietar\u0103 f\u0103r\u0103 explica\u021bii referitoare la principiile de func\u021bionare).<\/p>\n<p>\u00cen etapa actual\u0103 de dezvoltare, PyOxidizer a implementat deja func\u021bionalitatea principal\u0103 de generare a fi\u0219ierelor executabile pentru Windows, macOS \u0219i Linux. Printre func\u021biile \u00eenc\u0103 nedisponibile, <noindex><a rel=\"nofollow\" href=\"https:\/\/pyoxidizer.readthedocs.io\/en\/latest\/status.html\">se remarc\u0103<\/a><\/noindex> lipsa unui mediu standard de compilare, imposibilitatea de a genera pachete \u00een formatele MSI, DMG \u0219i deb\/rpm, probleme cu \u00eempachetarea proiectelor care includ extensii complexe \u00een limbajul C, absen\u021ba comenzilor pentru gestionarea livr\u0103rii (\u00abpyoxidizer add\u00bb, \u00abpyoxidizer analyze\u00bb \u0219i \u00abpyoxidizer upgrade\u00bb), suport limitat pentru Terminfo \u0219i Readline, lipsa suportului pentru versiuni diferite de Python 3.7, lipsa suportului pentru comprimarea resurselor, imposibilitatea de a face cross-compiling.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>Sursa: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50957\">opennet.ro<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u044b\u043f\u0443\u0441\u043a \u0443\u0442\u0438\u043b\u0438\u0442\u044b PyOxidizer, \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u044e\u0449\u0435\u0439 \u0443\u043f\u0430\u043a\u043e\u0432\u0430\u0442\u044c \u043f\u0440\u043e\u0435\u043a\u0442 \u043d\u0430 \u044f\u0437\u044b\u043a\u0435 Python \u0432 \u0444\u043e\u0440\u043c\u0443 \u0441\u0430\u043c\u043e\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u043e\u0433\u043e \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u043e\u0433\u043e \u0444\u0430\u0439\u043b\u0430, \u0432\u043a\u043b\u044e\u0447\u0430\u044e\u0449\u0435\u0433\u043e \u0438\u043d\u0442\u0435\u0440\u043f\u0440\u0435\u0442\u0430\u0442\u043e\u0440 Python \u0438 \u0432\u0441\u0435 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u044b\u0435 \u0434\u043b\u044f \u0440\u0430\u0431\u043e\u0442\u044b \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u044b. \u041f\u043e\u0434\u043e\u0431\u043d\u044b\u0435 \u0444\u0430\u0439\u043b\u044b \u043c\u043e\u0433\u0443\u0442 \u0432\u044b\u043f\u043e\u043b\u043d\u044f\u0442\u044c\u0441\u044f \u0432 \u043e\u043a\u0440\u0443\u0436\u0435\u043d\u0438\u044f\u0445 \u0431\u0435\u0437 \u0443\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043d\u043e\u0433\u043e \u0438\u043d\u0441\u0442\u0440\u0443\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f Python \u0438\u043b\u0438 \u043d\u0435\u0437\u0430\u0432\u0438\u0441\u0438\u043c\u043e \u043e\u0442 \u043d\u0430\u043b\u0438\u0447\u0438\u044f \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e\u0439 \u0432\u0435\u0440\u0441\u0438\u0438 Python. PyOxidizer \u0442\u0430\u043a\u0436\u0435 \u043c\u043e\u0436\u0435\u0442 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0442\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0441\u0432\u044f\u0437\u0430\u043d\u043d\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0435 \u0444\u0430\u0439\u043b\u044b, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u043f\u0440\u0438\u0432\u044f\u0437\u0430\u043d\u044b [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[702],"tags":[],"class_list":["post-35659","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u044b\u043f\u0443\u0441\u043a \u0443\u0442\u0438\u043b\u0438\u0442\u044b\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-pyoxidizer-dlya-upakovki-python-proektov-v-samodostatochnye-ispolnyaemye-fajly\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"ro_RO\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a PyOxidizer \u0434\u043b\u044f \u0443\u043f\u0430\u043a\u043e\u0432\u043a\u0438 Python-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0432 \u0441\u0430\u043c\u043e\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0435 \u0444\u0430\u0439\u043b\u044b | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u044b\u043f\u0443\u0441\u043a \u0443\u0442\u0438\u043b\u0438\u0442\u044b\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-pyoxidizer-dlya-upakovki-python-proektov-v-samodostatochnye-ispolnyaemye-fajly\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2019-10-31T19:05:38+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T19:05:38+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Versiunea PyOxidizer pentru \u00eempachetarea proiectelor Python \u00een fi\u0219iere executabile autocon\u021binute | ProHoster","description":"A fost lansat\u0103 prima versiune a utilitarului","canonical_url":"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-pyoxidizer-dlya-upakovki-python-proektov-v-samodostatochnye-ispolnyaemye-fajly","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"ro_RO","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0412\u044b\u043f\u0443\u0441\u043a PyOxidizer \u0434\u043b\u044f \u0443\u043f\u0430\u043a\u043e\u0432\u043a\u0438 Python-\u043f\u0440\u043e\u0435\u043a\u0442\u043e\u0432 \u0432 \u0441\u0430\u043c\u043e\u0434\u043e\u0441\u0442\u0430\u0442\u043e\u0447\u043d\u044b\u0435 \u0438\u0441\u043f\u043e\u043b\u043d\u044f\u0435\u043c\u044b\u0435 \u0444\u0430\u0439\u043b\u044b | ProHoster","og:description":"\u041f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u043f\u0435\u0440\u0432\u044b\u0439 \u0432\u044b\u043f\u0443\u0441\u043a \u0443\u0442\u0438\u043b\u0438\u0442\u044b","og:url":"https:\/\/prohoster.info\/ro\/blog\/news\/vypusk-pyoxidizer-dlya-upakovki-python-proektov-v-samodostatochnye-ispolnyaemye-fajly","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2019-10-31T19:05:38+00:00","article:modified_time":"2019-10-31T19:05:38+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"35659","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":"2026-01-22 00:14:22","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 01:58:29","updated":"2026-01-22 00:14:22","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/35659","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/comments?post=35659"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/posts\/35659\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/media?parent=35659"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/categories?post=35659"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/ro\/wp-json\/wp\/v2\/tags?post=35659"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}