{"id":106631,"date":"2023-02-03T18:48:10","date_gmt":"2023-02-03T16:48:10","guid":{"rendered":"https:\/\/prohoster.info\/?p=106631"},"modified":"2023-02-03T21:50:32","modified_gmt":"2023-02-03T19:50:32","slug":"sboi-v-sistemah-sborki-iz-za-izmeneniya-kontrolnyh-summ-arhivov-v-github","status":"publish","type":"post","link":"https:\/\/prohoster.info\/pl\/blog\/news\/sboi-v-sistemah-sborki-iz-za-izmeneniya-kontrolnyh-summ-arhivov-v-github","title":{"rendered":"Problemy w systemach budowania spowodowane zmian\u0105 sum kontrolnych archiw\u00f3w w GitHub","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p>GitHub zmieni\u0142 metod\u0119 tworzenia automatycznie generowanych archiw\u00f3w \u201e.tar.gz\u201d i \u201e.tgz\u201d na stronach wydania, co spowodowa\u0142o zmian\u0119 ich sum kontrolnych i masowe awarie w zautomatyzowanych systemach budowy, kt\u00f3re do weryfikacji integralno\u015bci por\u00f3wnuj\u0105 pobrane z GitHub archiwa z wcze\u015bniej zapisanymi sumami kontrolnymi, na przyk\u0142ad umieszczonymi w metadanych pakiet\u00f3w lub w skryptach budowlanych.     <\/p>\n<p>Od wydania 2.38 w narz\u0119dziach Git wbudowana implementacja gzip zosta\u0142a w\u0142\u0105czona domy\u015blnie, co umo\u017cliwi\u0142o ujednolicenie wsparcia tego metody kompresji w r\u00f3\u017cnych systemach operacyjnych i zwi\u0119kszy\u0142o wydajno\u015b\u0107 tworzenia archiw\u00f3w. GitHub przyj\u0105\u0142 t\u0119 zmian\u0119 po aktualizacji wersji git w swojej infrastrukturze. Problem spowodowa\u0142o to, \u017ce skompresowane archiwa generowane przez wbudowan\u0105 implementacj\u0119 gzip opart\u0105 na zlib r\u00f3\u017cni\u0105 si\u0119 binarnie od archiw\u00f3w stworzonych przez narz\u0119dzie gzip, co doprowadzi\u0142o do r\u00f3\u017cnic w sumach kontrolnych dla archiw\u00f3w tworzonych przez r\u00f3\u017cne wersje git podczas wykonywania polecenia \u201egit archive\u201d.        <\/p>\n<p>W zwi\u0105zku z tym, po aktualizacji git w GitHub na stronach z wydaniami zacz\u0119to przekazywa\u0107 nieco inne archiwa, kt\u00f3re nie przechodzi\u0142y weryfikacji wed\u0142ug starych sum kontrolnych. Problem objawi\u0142 si\u0119 w r\u00f3\u017cnych systemach budowania, systemach ci\u0105g\u0142ej integracji oraz w narz\u0119dziach do budowy pakiet\u00f3w z kodu \u017ar\u00f3d\u0142owego. Na przyk\u0142ad, naruszono kompilacj\u0119 oko\u0142o 5800 port\u00f3w FreeBSD, kt\u00f3rych kod \u017ar\u00f3d\u0142owy zosta\u0142 pobrany z GitHub.     <\/p>\n<p>W odpowiedzi na pierwsze skargi dotycz\u0105ce wyst\u0119puj\u0105cych awarii, przedstawiciele GitHub pocz\u0105tkowo argumentowali, \u017ce sta\u0142e sumy kontrolne dla archiw\u00f3w nigdy nie by\u0142y gwarantowane. Po tym, jak wykazano, \u017ce przywr\u00f3cenie funkcjonalno\u015bci system\u00f3w kompilacji, na kt\u00f3re wp\u0142yn\u0119\u0142a zmiana, b\u0119dzie wymaga\u0107 kolosalnej pracy nad aktualizacj\u0105 metadanych w r\u00f3\u017cnych ekosystemach, przedstawiciele GitHub zmienili swoje zdanie, anulowali zmian\u0119 i przywr\u00f3cili star\u0105 metod\u0119 generowania archiw\u00f3w.      <\/p>\n<p>Programi\u015bci Git na razie nie doszli do \u017cadnego rozwi\u0105zania i jedynie dyskutuj\u0105 nad mo\u017cliwymi dzia\u0142aniami. Rozwa\u017cane by\u0142y takie opcje, jak powr\u00f3t do u\u017cywania narz\u0119dzia gzip jako domy\u015blnego; dodanie flagi \u201e\u2014stable\u201d w celu zachowania zgodno\u015bci ze starymi archiwami; zwi\u0105zanie wbudowanej implementacji z oddzielnym formatem archiwum; u\u017cycie narz\u0119dzia gzip dla starych commit\u00f3w i wbudowanej implementacji dla commit\u00f3w od okre\u015blonej daty; zapewnienie stabilno\u015bci formatu jedynie dla niekompresowanych archiw\u00f3w.     <\/p>\n<p>Trudno\u015b\u0107 w podj\u0119ciu decyzji wynika z tego, \u017ce powr\u00f3t do wywo\u0142ywania zewn\u0119trznego narz\u0119dzia nie rozwi\u0105zuje ca\u0142kowicie problemu niezmienno\u015bci sum kontrolnych, poniewa\u017c zmiana w zewn\u0119trznym programie gzip mo\u017ce r\u00f3wnie\u017c prowadzi\u0107 do zmiany formatu archiwum. W tej chwili do przegl\u0105dania zaproponowano zestaw poprawek, przywracaj\u0105cych domy\u015blne stare zachowanie (wywo\u0142anie zewn\u0119trznego narz\u0119dzia gzip) i wykorzystuj\u0105cych wbudowan\u0105 implementacj\u0119 w przypadku braku w systemie narz\u0119dzia gzip. Poprawki r\u00f3wnie\u017c dodaj\u0105 do dokumentacji wzmiank\u0119, \u017ce stabilno\u015b\u0107 wyj\u015bcia \u201egit archive\u201d nie jest gwarantowana i format mo\u017ce zosta\u0107 zmieniony w przysz\u0142o\u015bci.<br \/>\n<br \/>\u0179r\u00f3d\u0142o: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/www.opennet.ru\/opennews\/art.shtml?num=58595\">opennet.ru<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>GitHub \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u043c\u0435\u0442\u043e\u0434 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u0430\u0440\u0445\u0438\u0432\u043e\u0432 &#171;.tar.gz&#187; \u0438 &#171;.tgz&#187; \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0445 \u0441 \u0440\u0435\u043b\u0438\u0437\u0430\u043c\u0438, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u043b\u043e \u043a \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044e \u0438\u0445 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0445 \u0441\u0443\u043c\u043c \u0438 \u043c\u0430\u0441\u0441\u043e\u0432\u044b\u043c \u0441\u0431\u043e\u044f\u043c \u0432 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0441\u0431\u043e\u0440\u043a\u0438, \u043a\u043e\u0442\u043e\u0440\u044b\u0435 \u0434\u043b\u044f \u043f\u043e\u0434\u0442\u0432\u0435\u0440\u0436\u0434\u0435\u043d\u0438\u044f \u0446\u0435\u043b\u043e\u0441\u0442\u043d\u043e\u0441\u0442\u0438 \u043e\u0441\u0443\u0449\u0435\u0441\u0442\u0432\u043b\u044f\u044e\u0442 \u0441\u0432\u0435\u0440\u043a\u0443 \u0437\u0430\u0433\u0440\u0443\u0436\u0430\u0435\u043c\u044b\u0445 \u0441 GitHub \u0430\u0440\u0445\u0438\u0432\u043e\u0432 \u0441 \u0440\u0430\u043d\u0435\u0435 \u0441\u043e\u0445\u0440\u0430\u043d\u0451\u043d\u043d\u044b\u043c\u0438 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u043c\u0438 \u0441\u0443\u043c\u043c\u0430\u043c\u0438, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440, \u0440\u0430\u0437\u043c\u0435\u0449\u0451\u043d\u043d\u044b\u043c\u0438 \u0432 \u043c\u0435\u0442\u0430\u0434\u0430\u043d\u043d\u044b\u0445 \u043f\u0430\u043a\u0435\u0442\u043e\u0432 \u0438\u043b\u0438 \u0432 \u0441\u0431\u043e\u0440\u043e\u0447\u043d\u044b\u0445 \u0441\u0446\u0435\u043d\u0430\u0440\u0438\u044f\u0445. \u041d\u0430\u0447\u0438\u043d\u0430\u044f \u0441 \u0432\u044b\u043f\u0443\u0441\u043a\u0430 [&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-106631","post","type-post","status-publish","format-standard","hentry","category-news"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.2 - aioseo.com -->\n\t<meta name=\"description\" content=\"GitHub \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u043c\u0435\u0442\u043e\u0434 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u0430\u0440\u0445\u0438\u0432\u043e\u0432 &quot;.tar.gz&quot; \u0438 &quot;.tgz&quot; \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0445 \u0441 \u0440\u0435\u043b\u0438\u0437\u0430\u043c\u0438, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u043b\u043e \u043a \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044e \u0438\u0445 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0445 \u0441\u0443\u043c\u043c \u0438 \u043c\u0430\u0441\u0441\u043e\u0432\u044b\u043c \u0441\u0431\u043e\u044f\u043c \u0432 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0441\u0431\u043e\u0440\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\/sboi-v-sistemah-sborki-iz-za-izmeneniya-kontrolnyh-summ-arhivov-v-github\" \/>\n\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.2\" \/>\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\u0421\u0431\u043e\u0438 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0437-\u0437\u0430 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0445 \u0441\u0443\u043c\u043c \u0430\u0440\u0445\u0438\u0432\u043e\u0432 \u0432 GitHub | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"GitHub \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u043c\u0435\u0442\u043e\u0434 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u0430\u0440\u0445\u0438\u0432\u043e\u0432 &quot;.tar.gz&quot; \u0438 &quot;.tgz&quot; \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0445 \u0441 \u0440\u0435\u043b\u0438\u0437\u0430\u043c\u0438, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u043b\u043e \u043a \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044e \u0438\u0445 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0445 \u0441\u0443\u043c\u043c \u0438 \u043c\u0430\u0441\u0441\u043e\u0432\u044b\u043c \u0441\u0431\u043e\u044f\u043c \u0432 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0441\u0431\u043e\u0440\u043a\u0438.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/pl\/blog\/news\/sboi-v-sistemah-sborki-iz-za-izmeneniya-kontrolnyh-summ-arhivov-v-github\" \/>\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=\"2023-02-03T16:48:10+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2023-02-03T19:50:32+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\udd47Awarie w systemach budowania spowodowane zmian\u0105 sum kontrolnych archiw\u00f3w w GitHub | ProHoster","description":"GitHub zmieni\u0142 metod\u0119 tworzenia automatycznie generowanych archiw\u00f3w \".tar.gz\" oraz \".tgz\" na stronach z wydaniami, co spowodowa\u0142o zmian\u0119 ich sum kontrolnych oraz masowe awarie w zautomatyzowanych systemach budowania.","canonical_url":"https:\/\/prohoster.info\/pl\/blog\/news\/sboi-v-sistemah-sborki-iz-za-izmeneniya-kontrolnyh-summ-arhivov-v-github","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\u0421\u0431\u043e\u0438 \u0432 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0441\u0431\u043e\u0440\u043a\u0438 \u0438\u0437-\u0437\u0430 \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044f \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0445 \u0441\u0443\u043c\u043c \u0430\u0440\u0445\u0438\u0432\u043e\u0432 \u0432 GitHub | ProHoster","og:description":"GitHub \u0438\u0437\u043c\u0435\u043d\u0438\u043b \u043c\u0435\u0442\u043e\u0434 \u0444\u043e\u0440\u043c\u0438\u0440\u043e\u0432\u0430\u043d\u0438\u044f \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438 \u0433\u0435\u043d\u0435\u0440\u0438\u0440\u0443\u0435\u043c\u044b\u0445 \u0430\u0440\u0445\u0438\u0432\u043e\u0432 &quot;.tar.gz&quot; \u0438 &quot;.tgz&quot; \u043d\u0430 \u0441\u0442\u0440\u0430\u043d\u0438\u0446\u0430\u0445 \u0441 \u0440\u0435\u043b\u0438\u0437\u0430\u043c\u0438, \u0447\u0442\u043e \u043f\u0440\u0438\u0432\u0435\u043b\u043e \u043a \u0438\u0437\u043c\u0435\u043d\u0435\u043d\u0438\u044e \u0438\u0445 \u043a\u043e\u043d\u0442\u0440\u043e\u043b\u044c\u043d\u044b\u0445 \u0441\u0443\u043c\u043c \u0438 \u043c\u0430\u0441\u0441\u043e\u0432\u044b\u043c \u0441\u0431\u043e\u044f\u043c \u0432 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u043d\u043d\u044b\u0445 \u0441\u0438\u0441\u0442\u0435\u043c\u0430\u0445 \u0441\u0431\u043e\u0440\u043a\u0438.","og:url":"https:\/\/prohoster.info\/pl\/blog\/news\/sboi-v-sistemah-sborki-iz-za-izmeneniya-kontrolnyh-summ-arhivov-v-github","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":"2023-02-03T16:48:10+00:00","article:modified_time":"2023-02-03T19:50:32+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":[],"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/106631","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=106631"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/posts\/106631\/revisions"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/media?parent=106631"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/categories?post=106631"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/pl\/wp-json\/wp\/v2\/tags?post=106631"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}