{"id":34324,"date":"2019-10-31T21:57:38","date_gmt":"2019-10-31T18:57:38","guid":{"rendered":"https:\/\/prohoster.info\/blog\/namechena-bolshaya-chistka-standartnoj-biblioteki-python\/"},"modified":"2019-10-31T21:57:38","modified_gmt":"2019-10-31T18:57:38","slug":"namechena-bolshaya-chistka-standartnoj-biblioteki-python","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/news\/namechena-bolshaya-chistka-standartnoj-biblioteki-python","title":{"rendered":"Planowana jest du\u017ca aktualizacja standardowej biblioteki Python.","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>Programi\u015bci projektu Python <noindex><a rel=\"nofollow\" href=\"https:\/\/www.python.org\/dev\/peps\/pep-0594\/\">opublikowali<\/a><\/noindex> propozycja (PEP 594) dotycz\u0105ca przeprowadzenia istotnego oczyszczenia standardowej biblioteki. Do usuni\u0119cia z standardowej biblioteki Python proponowane s\u0105 zar\u00f3wno wyra\u017anie przestarza\u0142e i wyspecjalizowane mo\u017cliwo\u015bci, jak i komponenty, w kt\u00f3rych wyst\u0119puj\u0105 problemy architektoniczne i kt\u00f3re nie udaje si\u0119 ujednolici\u0107 na wszystkich platformach. <\/p>\n<p>Na przyk\u0142ad z standardowej biblioteki zaproponowano wykluczenie takich modu\u0142\u00f3w jak crypt (brak dost\u0119pno\u015bci dla Windows i zale\u017cno\u015b\u0107 dost\u0119pno\u015bci algorytm\u00f3w haszuj\u0105cych od bibliotek systemowych), cgi (nieoptymalna architektura, wymaga uruchomienia nowego procesu przy ka\u017cdym \u017c\u0105daniu), imp (zalecane u\u017cycie importlib), pipes (zalecane u\u017cycie modu\u0142u subprocess), nis (zalecane u\u017cycie NSS, LDAP lub Kerberos\/GSSAPI), spwd (nie zaleca si\u0119 bezpo\u015bredniej pracy z baz\u0105 danych kont). Na li\u015bcie do usuni\u0119cia znalaz\u0142y si\u0119 r\u00f3wnie\u017c modu\u0142y binhex, uu, xdrlib,<br \/>\n    aifc,<br \/>\n    audioop,<br \/>\n    chunk,<br \/>\n    imghdr,<br \/>\n    ossaudiodev,<br \/>\n    sndhdr,<br \/>\n    sunau,<br \/>\n    asynchat,<br \/>\n    asyncore,<br \/>\n    cgitb,<br \/>\n    smtpd,<br \/>\n    nntplib, macpath,<br \/>\n    formatter, msilib i parser.<\/p>\n<p>Zgodnie z proponowanym planem w Pythonie 3.8 wspomniane modu\u0142y zostan\u0105 oznaczone jako przestarza\u0142e, w Pythonie 3.8 zacznie si\u0119 wy\u015bwietla\u0107 ostrze\u017cenie, a w Pythonie 3.10 zostan\u0105 usuni\u0119te z repozytori\u00f3w CPython.<br \/>\n Modu\u0142 parser planuje si\u0119 usun\u0105\u0107 w wersji 3.9, poniewa\u017c zosta\u0142 oznaczony jako przestarza\u0142y ju\u017c w wydaniu Python 2.5, a modu\u0142 macpath w ga\u0142\u0119zi 3.8. Po usuni\u0119ciu z g\u0142\u00f3wnego zbioru kod zostanie przeniesiony do osobnego repozytorium legacylib, a jego przysz\u0142o\u015b\u0107 b\u0119dzie zale\u017ca\u0142a od zainteresowania przedstawicieli spo\u0142eczno\u015bci. Oczekuje si\u0119, \u017ce ga\u0142\u0105\u017a Pythona 3.9 b\u0119dzie wspierana do 2026 roku, co zapewni wystarczaj\u0105co du\u017co czasu na migracj\u0119 projekt\u00f3w do alternatyw zewn\u0119trznych.<\/p>\n<p>Pocz\u0105tkowo do usuni\u0119cia zaproponowano r\u00f3wnie\u017c modu\u0142y ftplib, optparse, getopt, colorsys, fileinput, lib2to3 i wave, ale postanowiono je na razie pozostawi\u0107 w standardowej bibliotece, poniewa\u017c s\u0105 szeroko rozpowszechnione i pozostaj\u0105 aktualne, pomimo istnienia bardziej zaawansowanych alternatyw lub zwi\u0105zania z specyficznymi mo\u017cliwo\u015bciami system\u00f3w operacyjnych.<\/p>\n<p>Przypomnijmy, \u017ce na pocz\u0105tku projekt Python stosuje podej\u015bcie &#171;pracuj\u0105ce z bateriami&#187;, w ramach kt\u00f3rego standardowa biblioteka oferuje szeroki zestaw funkcji dla r\u00f3\u017cnych obszar\u00f3w zastosowa\u0144. Do zalet tego podej\u015bcia nale\u017cy &#8212; uproszczenie utrzymania projekt\u00f3w w Pythonie i \u015bledzenie bezpiecze\u0144stwa u\u017cywanych w projektach modu\u0142\u00f3w. Wykrywane w modu\u0142ach luki bezpiecze\u0144stwa cz\u0119sto staj\u0105 si\u0119 \u017ar\u00f3d\u0142em zagro\u017ce\u0144 w aplikacjach, kt\u00f3re je wykorzystuj\u0105. Je\u015bli funkcje s\u0105 cz\u0119\u015bci\u0105 standardowej biblioteki, wystarczy kontrolowa\u0107 stan g\u0142\u00f3wnego projektu. Przy podziale standardowej biblioteki programi\u015bci musz\u0105 korzysta\u0107 z zewn\u0119trznych modu\u0142\u00f3w, w kt\u00f3rych luki bezpiecze\u0144stwa nale\u017cy kontrolowa\u0107 osobno. W przypadku wysokiego stopnia fragmentacji i du\u017cej liczby zale\u017cno\u015bci pojawia si\u0119 zagro\u017cenie atakami poprzez kompromitacj\u0119 infrastruktury deweloper\u00f3w modu\u0142\u00f3w.<\/p>\n<p>Z drugiej strony, ka\u017cdy dodatkowy modu\u0142 w standardowej bibliotece wymaga zasob\u00f3w od zespo\u0142u programist\u00f3w Pythona do jego utrzymania. W bibliotece zgromadzi\u0142a si\u0119 du\u017ca liczba powtarzaj\u0105cych si\u0119 i zb\u0119dnych funkcji, kt\u00f3re mo\u017cna by wyeliminowa\u0107, aby obni\u017cy\u0107 koszty utrzymania. W miar\u0119 rozwoju katalogu <noindex><a rel=\"nofollow\" href=\"https:\/\/pypi.org\/\">PyPI<\/a><\/noindex> i uproszczenia procesu instalacji i \u0142adowania dodatkowych pakiet\u00f3w, korzystanie z zewn\u0119trznych modu\u0142\u00f3w sta\u0142o si\u0119 na tyle powszechne jak funkcje wbudowane. <\/p>\n<p>Coraz wi\u0119cej programist\u00f3w korzysta z bardziej funkcjonalnych zewn\u0119trznych zamiennik\u00f3w dla standardowych modu\u0142\u00f3w, na przyk\u0142ad z modu\u0142u lxml zamiast xml. Usuni\u0119cie porzuconych modu\u0142\u00f3w ze standardowej biblioteki pozwoli zwi\u0119kszy\u0107 popularno\u015b\u0107 aktywnie rozwijanych przez spo\u0142eczno\u015b\u0107 alternatyw. Ponadto skr\u00f3cenie standardowej biblioteki zmniejszy rozmiar podstawowej dostawy, co jest istotne przy u\u017cywaniu Pythona na wbudowanych platformach z ograniczonym rozmiarem magazynu.<\/p>\n<p><noindex><a rel=\"nofollow\" name=\"link\"><\/a><\/noindex><\/p>\n<p>\u0179r\u00f3d\u0142o: <a \ncontent=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=50726\">opennet.ru<\/a><\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Python \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 (PEP 594) \u043f\u043e \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044e \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0447\u0438\u0441\u0442\u043a\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438. \u041a \u0432\u044b\u043d\u043e\u0441\u0443 \u0438\u0437 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Python \u043f\u0440\u0435\u0434\u043b\u0430\u0433\u0430\u044e\u0442\u0441\u044f \u043a\u0430\u043a \u044f\u0432\u043d\u043e \u0443\u0441\u0442\u0430\u0440\u0435\u0432\u0448\u0438\u0435 \u0438 \u0443\u0437\u043a\u043e\u0441\u043f\u0435\u0446\u0438\u0430\u043b\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0435 \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u0438, \u0442\u0430\u043a \u0438 \u043a\u043e\u043c\u043f\u043e\u043d\u0435\u043d\u0442\u044b, \u0432 \u043a\u043e\u0442\u043e\u0440\u044b\u0445 \u0438\u043c\u0435\u044e\u0442\u0441\u044f \u0430\u0440\u0445\u0438\u0442\u0435\u043a\u0442\u0443\u0440\u043d\u044b\u0435 \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u044b \u0438 \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u043d\u0435 \u0443\u0434\u0430\u0451\u0442\u0441\u044f \u0443\u043d\u0438\u0444\u0438\u0446\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0434\u043b\u044f \u0432\u0441\u0435\u0445 \u043f\u043b\u0430\u0442\u0444\u043e\u0440\u043c. \u041d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0438\u0437 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u043e \u0438\u0441\u043a\u043b\u044e\u0447\u0438\u0442\u044c \u0442\u0430\u043a\u0438\u0435 \u043c\u043e\u0434\u0443\u043b\u0438, \u043a\u0430\u043a crypt (\u043d\u0435\u0434\u043e\u0441\u0442\u0443\u043f\u043d\u043e\u0441\u0442\u044c \u0434\u043b\u044f Windows [&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-34324","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.1.1 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Python \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 (PEP 594) \u043f\u043e \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044e \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0447\u0438\u0441\u0442\u043a\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438.\" \/>\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\/pl\/blog\/news\/namechena-bolshaya-chistka-standartnoj-biblioteki-python\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.1.1\" \/>\n\t\t<meta property=\"og:locale\" content=\"pl_PL\" \/>\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\u041d\u0430\u043c\u0435\u0447\u0435\u043d\u0430 \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0438\u0441\u0442\u043a\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Python | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Python \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 (PEP 594) \u043f\u043e \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044e \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0447\u0438\u0441\u0442\u043a\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/news\/namechena-bolshaya-chistka-standartnoj-biblioteki-python\" \/>\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-31T18:57:38+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2019-10-31T18:57: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\udd47Zapowiedziano du\u017c\u0105 reorganizacj\u0119 standardowej biblioteki Pythona | ProHoster","description":"Programi\u015bci projektu Python opublikowali propozycj\u0119 (PEP 594) przeprowadzenia znacz\u0105cego porz\u0105dkowania standardowej biblioteki.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/news\/namechena-bolshaya-chistka-standartnoj-biblioteki-python","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"pl_PL","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\u041d\u0430\u043c\u0435\u0447\u0435\u043d\u0430 \u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0447\u0438\u0441\u0442\u043a\u0430 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438 Python | ProHoster","og:description":"\u0420\u0430\u0437\u0440\u0430\u0431\u043e\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u043e\u0435\u043a\u0442\u0430 Python \u043e\u043f\u0443\u0431\u043b\u0438\u043a\u043e\u0432\u0430\u043b\u0438 \u043f\u0440\u0435\u0434\u043b\u043e\u0436\u0435\u043d\u0438\u0435 (PEP 594) \u043f\u043e \u043f\u0440\u043e\u0432\u0435\u0434\u0435\u043d\u0438\u044e \u0437\u043d\u0430\u0447\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0439 \u0447\u0438\u0441\u0442\u043a\u0438 \u0441\u0442\u0430\u043d\u0434\u0430\u0440\u0442\u043d\u043e\u0439 \u0431\u0438\u0431\u043b\u0438\u043e\u0442\u0435\u043a\u0438.","og:url":"https:\/\/prohoster.info\/pl\/blog\/news\/namechena-bolshaya-chistka-standartnoj-biblioteki-python","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-31T18:57:38+00:00","article:modified_time":"2019-10-31T18:57:38+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"34324","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-21 18:45:22","breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-03-01 02:24:25","updated":"2026-01-21 18:45:22","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/34324","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/comments?post=34324"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/34324\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=34324"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=34324"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=34324"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}