Вынікі паўгода працы праекта Repology, які аналізуе інфармацыю аб версіях пакетаў

Прайшлі чарговыя паўгода і праект Repology, у рамках якога збіраецца і параўноўваецца інфармацыя аб версіях пакетаў з мноства рэпазітароў, публікуе чарговую справаздачу. Мэтай праекта з'яўляецца паляпшэнне ўзаемадзеяння мантэйнераў пакетаў з розных дыстрыбутываў як паміж сабой, так і з аўтарамі ПЗ - у прыватнасці, праект дапамагае хутчэй выяўляць выпускі новых версій ПЗ, сачыць за актуальнасцю пакетаў, уніфікаваць схемы наймення і версіявання, падтрымліваць метаінфармацыю ў актуальным стане, дзяліцца. патчамі і рашэннямі праблем і паляпшаць пераноснасць ПЗ.

  • Колькасць падтрымліваемых рэпазітароў перавысіла 250. Дададзена падтрымка Cygwin, distri, Homebrew Casks, just-install, KISS Linux, Kwort, LuaRocks, Npackd, OS4Depot, RPM Sphere. Выдалены які спыніў развіццё рэпазітар Antergos. Падтрымка GNU Guix выдаленая (з-за зменаў на сайце Guix, якія зрабілі парсінг немагчымым) і пазней вернутая (дзякуючы рэалізацыі са боку Guix рэгулярнага дампа метададзеных у JSON фармаце), а заадно палепшаная.
  • Уведзена патрабаванне для рэпазітараў акрамя імя пакета і версіі падаваць URL (хатнія старонкі або спасылку на дыстрыбутыў) — гэтая інфармацыя дазваляе надзейна вырашаць шматлікія канфлікты імёнаў з якімі сутыкаецца праект. Рэпазітары, на дадзены момант не прадстаўляюць такой інфармацыі, запланаваны да выдалення.
  • Асноўны рэпазітар зыходнага кода праекта разбіты на два (дэман для абнаўлення дадзеных рэпазітароў і web дадатак, якое забяспечвае працу сайта), у кодзе завершана ўкараненне анатацый тыпаў (увесь код праекта зараз праходзіць mypy-strict) і прывядзенне ў адпаведнасць PEP8.
  • Дададзена падтрымка legacy галінак версій. Да прыкладу, зараз Repology можа паведаміць аб састарэлай PostgreSQL 11.2 (бо апошняя версія ў 11-й галінцы — 11.5) нават пры наяўнасці ў рэпазітары навейшай версіі 12.0 (раней усе версіі ніжэй апошняй у рэпазітары пазначаліся як legacy і не маглі мець статут у ). У сувязі з гэтым большая частка праектаў раней разбітых па мажорных версіях (напрыклад, wxwidgets28/wxwidgets30) была аб'яднана.
  • Дададзена магчымасць карэктнай апрацоўкі праектаў з паралельнымі несумяшчальнымі схемамі версіявання. Напрыклад, FreeCAD у якога 0.18.4 і 0.18.16146 адпавядаюць аднаму рэлізу.
  • Перапрацаваны спіс и індывідуальныя старонкі мантэйнераў - зараз статыстыка мантэйнера збіраецца паасобна па рэпазітарах. Практыка паказала, што рэпрэзентатыўная агрэгаваная статыстыка немагчымая з-за таго што пакеты, захоўваючы мантэйнера ў метададзеных, могуць міграваць у іншыя рэпазітары без яго ведама і пазбаўляючыся яго падтрымкі па факце (пры гэтым адсачыць гэта аўтаматычна не ўяўляецца магчымым). Пазней яны могуць састарэць, і звязваць гэты факт з арыгінальным мантэйнерам было б некарэктна - такая сітуацыя выклікала незадаволенасць мантэйнераў Gentoo з-за наяўнасці Funtoo - у сутнасці, не кантраляванага імі форка Gentoo, які захоўвае інфармацыю аб мантэйнерах. Прывязка статыстыкі да рэпазітароў дазволіла вырашыць гэтую праблему, заадно інфармацыя аб мантэйнерах стала больш падрабязнай і структураванай.
  • Дададзена эксперыментальная падтрымка новага тыпу badge, які ўяўляе сабой матрыцу версій абраных праектаў ва ўсіх рэпазітарах. Гэты інструмент карысны, напрыклад, для атрымання агульнага ўяўлення аб стане (наяўнасць пакета, версія, яе актуальнасць і адпаведнасць зададзенаму мінімуму) залежнасцяў які-небудзь праекту (ці проста адвольнага спісу праектаў). Дадзеная функцыянальнасць запытана (і выкарыстоўваецца) праектам PostGIS.
  • Палепшана падтрымка 404 старонак праектаў - у прыватнасці, калі запытанага праекта няма, але імя раней сустракалася (напрыклад, у якасці назвы пакета які быў аднесены да праекту з іншай назвай), то карыстачу прапануюцца варыянты праектаў якія ён мог мець на ўвазе, на манерстаронак дазволу неадназначнасці» Wikipedia. Прыклад.
  • Палепшана інтэграцыя з Вікідадзеныя - Акрамя паляпшэнняў у імпарце дадзеных, рэалізаваны і запушчаны бот, які абнаўляе інфармацыю аб ПЗ у Wikidata па дадзеных з Repology. Нагадаем, што Wikidata паступова становіцца асноўнай крыніцай структураванай інфармацыі для Wikipedia (у кантэксце навіны – фактаў аб праграмным забеспячэнні, такіх як гісторыя версій, ліцэнзія, сайт, якія падтрымліваюцца АС, аўтар, пакеты ў розных дыстрыбутывах і да т.п.), што дазваляе падтрымліваць актуальнасць дадзеных у адным месцы, замест дзясяткаў лакалізаваных версій старонкі кожнага праекта. Напрыклад, картка праекта Nginx у Wikipedia транслюе інфармацыю толькі з Wikidata.
  • За мінулыя паўгода было апрацавана больш за 500 заявак (reports) на даданне/змяненне правілаў з мэтай больш карэктнай апрацоўкі асобных праектаў.

Рэйтынг рэпазітараў па агульнай колькасці пакетаў:

  • AUR (49462)
  • nix (48660)
  • Debian і вытворныя (32972) (лідзіруе Raspbian)
  • FreeBSD (26921)
  • Fedora (22337)

Рэйтынг рэпазітароў па колькасці неўнікальных пакетаў (г.зн. пакетаў, якія прысутнічаюць таксама ў іншых дыстрыбутывах):

  • nix (41815)
  • Debian і вытворныя (24284) (лідзіруе Raspbian)
  • AUR (22176)
  • FreeBSD (21831)
  • Fedora (19215)

Рэйтынг рэпазітараў па колькасці свежых пакетаў:

  • nix (23210)
  • Debian і вытворныя (16107) (лідзіруе Raspbian)
  • FreeBSD (16095)
  • Fedora (13109)
  • AUR (12417)

Рэйтынг рэпазітараў па працэнтных суадносінах свежых пакетаў (толькі для рэпазітараў з 1000 і больш пакетамі і не лічачы upstream калекцый модуляў тыпу CPAN, Hackage, PyPi):

  • Ravenports (99.16%)
  • Arch і вытворныя (85.23%)
  • Homebrew (84.57%)
  • nix (84.55%)
  • Scoop (84.02%)

Агульная статыстыка:

  • 252 рэпазітараў
  • 180 тысяч праектаў
  • 2.3 мільёны асобных пакетаў
  • 36 тысяч мэйнтэйнераў
  • 153 тысячы зафіксаваных рэлізаў за апошнія паўгода (мінулы агляд утрымліваў памылку, за папярэднія паўгода было зафіксавана 150 тысяч рэлізаў)
  • 9.5% вядомых праектаў выпусцілі за мінулыя паўгода як мінімум адну новую версію

Крыніца: opennet.ru

Купіць надзейны хостынг для сайтаў з абаронай ад DDoS, VPS VDS серверы 🔥 Купіць надзейны хостынг для сайтаў з абаронай ад DDoS, VPS VDS серверы | ProHoster