පැකේජ අනුවාද පිළිබඳ තොරතුරු විශ්ලේෂණය කරන 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)
  • නික්ස් (48660)
  • ඩේබියන් සහ ව්‍යුත්පන්න (32972) (රාස්ප්බියන් නායකත්වය)
  • FreeBSD (26921)
  • ෆෙඩෝරා (22337)

Рейтинг репозиториев по количеству неуникальных пакетов (т.е. пакетов, присутствующих также в других дистрибутивах):

  • නික්ස් (41815)
  • ඩේබියන් සහ ව්‍යුත්පන්න (24284) (රාස්ප්බියන් නායකත්වය)
  • AUR (22176)
  • FreeBSD (21831)
  • ෆෙඩෝරා (19215)

Рейтинг репозиториев නැවුම් පැකේජ ගණන අනුව:

  • නික්ස් (23210)
  • ඩේබියන් සහ ව්‍යුත්පන්න (16107) (රාස්ප්බියන් නායකත්වය)
  • FreeBSD (16095)
  • ෆෙඩෝරා (13109)
  • AUR (12417)

Рейтинг репозиториев නැවුම් පැකේජවල ප්‍රතිශතය අනුව (පැකේජ 1000ක් හෝ ඊට වැඩි ප්‍රමාණයක් සහිත ගබඩාවන් සඳහා පමණක් වන අතර CPAN, Hackage, PyPi වැනි මොඩියුලවල උඩුගත එකතු කිරීම් ගණන් නොගනී):

  • Ravenports (99.16%)
  • ආරුක්කු සහ ව්‍යුත්පන්න (85.23%)
  • Homebrew (84.57%)
  • නික්ස් (84.55%)
  • Scoop (84.02%)

සාමාන්ය සංඛ්යා ලේඛන:

  • ගබඩා 252 ක්
  • ව්යාපෘති 180 දහසක්
  • තනි පැකේජ මිලියන 2.3 කි
  • නඩත්තු කරන්නන් 36 දහසක්
  • 153 тысячи зафиксированных релизов за последние полгода (прошлый обзор содержал ошибку, за предедущие полгода было зафиксировано 150 тысячи релизов)
  • 9.5% известных проектов выпустили за прошедшие полгода как минимум одну новую версию

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න