The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Полугодовой отчёт проекта Repology, анализирующего информацию о версиях пакетов

16.11.2017 22:42

Прошли очередные полгода и проект Repology, в рамках которого регулярно собирается и сравнивается информация о версиях пакетов во множестве репозиториев, публикует очередной отчёт.

  • Число поддерживаемых репозиториев увеличилось почти в два раза и достигло 146. Добавлена поддержка Linux дистрибутивов AntiX, AOSC, Deepin, Devuan, Funtoo, KaOS, LEDE, MX Linux, OpenMandriva, Parrot, Rosa Server, Sparky, репозиториев Homebrew, Linuxbrew, OpenIndiana, HaikuPorts, vcpkg, Ravenports, UnitedRPMs, CRAN и новостного сайта Distrowatch.com. К сожалению, приостановлена поддержка репозитория Python модулей PyPi, из-за прекращения последним публикации полного списка всех пакетов.
  • Улучшены возможности по фильтрации и поиску пакетов. Теперь, например, можно посмотреть список пакетов из категории games, присутствующих в Ubuntu и ещё 5 дистрибутивах, но отсутствующих в OpenBSD.
  • Улучшена нормализация, обработка и сравнение версий. Помимо улучшений библиотеки libversion добавлена поддержка devel/unstable версий (даже при наличии в одном из репозиториев свежайшей нестабильной версии, последняя стабильная версия более не считается устаревшей (пример)) и legacy версий (при наличии в репозитории одновременно свежей и более старых версий, последние более не считаются требующими обновления (пример)). Добавлена возможность ручной нормализации версий с помощью правил, т.е. теперь набор версий 0.0.22, alpha22 и 22-alpha (разные написания одной официальной версии) можно привести к одному виду и корректно сравнить (пример).
  • Добавлен поиск родственных пакетов, у которых указана одна и та же домашняя страница (пример). Помимо непосредственного просмотра родственных пакетов это упростит связывание пакетов, для которых в различных репозиториях используются разные названия.
  • Добавлена главная страница со статистикой и основными инструментами
  • Добавлено больше статистики по репозиториям и мантейнерам и новые графики

Общая статистика:

  • 146 репозиториев
  • 130082 пакета (+10060 или +8.4% за полгода)
  • 23278 мантейнеров (+2190 или +10.4% за полгода)

Топ репозиториев по общему количеству пакетов:

  • AUR (40522)
  • Debian и производные (28741) (лидирует Deepin)
  • FreeBSD (26177)
  • Fedora (20386) (с прошлого отчёта обогнала Gentoo)
  • Gentoo (19394)

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

  • Debian и производные (21892)
  • FreeBSD (20248)
  • Fedora (16851)
  • AUR (15821)
  • Funtoo, Gentoo (14116)

Топ репозиториев по количеству свежих пакетов:

  • FreeBSD (15025)
  • Debian и производные (13817)
  • Fedora (12514)
  • AUR (9415) (с прошлого отчёта обогнал Gentoo)
  • Gentoo (9415)

Топ репозиториев по процентному соотношению свежих пакетов (только для репозиториев с 1000 и более пакетов и не считая upstream коллекций типа CPAN, Hackage, PyPi):

  • Ravenports (98.95%)
  • Homebrew (81.84%)
  • Arch и производные (81.59%)
  • KaOS (81.36%)
  • Fedora (74.20%)


  1. Главная ссылка к новости (https://repology.org/...)
  2. OpenNews: Итоги полугода работы проекта Repology, анализирующего информацию о версиях пакетов
  3. OpenNews: Введён в строй сервис для анализа версий пакетов в репозиториях
Автор новости: AMDmi3
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/47581-repology
Ключевые слова: repology
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (21) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 00:27, 17/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    Респект автору!
     
  • 1.2, Аноним (-), 01:00, 17/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    AUR учитывают, а оверлеи в Gentoo забыли.
     
     
  • 2.4, Аноним (-), 01:27, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    AUR централизован, а репозитории в Gentoo отдельные.
    Правда, есть и постоянно обновляемый список пакетов из всех доступных в layman репозиториев: http://git.exherbo.org/layman_repositories.tar.bz2 (используется в paludis для поиска пакетов).
     
     
  • 3.5, ryoken (ok), 07:12, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > AUR централизован, а репозитории в Gentoo отдельные.
    > Правда, есть и постоянно обновляемый список пакетов из всех доступных в layman
    > репозиториев: http://git.exherbo.org/layman_repositories.tar.bz2 (используется
    > в paludis для поиска пакетов).

    Подскажите обычному дебсидоводу. В AUR-е число пакетов, надеюсь, не из-за васянских хелловорлдов выше? :) Там софт больше разделён на части по сравнению с Дебом?

     
     
  • 4.6, Аноним (-), 07:50, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +4 +/
    >В AUR-е число пакетов, надеюсь, не из-за васянских хелловорлдов выше?

    Там скорее число пакетов такое из-за того, что для него, по сути, легче всего их создавать, и нет никаких ограничений. Написал скриптик для сборки/перепаковки и всё. Ещё нет проблем с лицензиями, ведь, по факту, каждый, использующий AUR для установки проприетарщины, просто скачивает официальный пакет себе на локальный компьютер и уже на нем делает с ним всё, что захочет.

     
  • 4.9, AMDmi3 (??), 11:01, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Подскажите обычному дебсидоводу. В AUR-е число пакетов, надеюсь, не из-за васянских хелловорлдов выше? :) Там софт больше разделён на части по сравнению с Дебом?

    Разделение софта на части для Repology неактуально, поскольку она всегда считает source пакеты, а source пакеты и в Debian не разделяются. Как, естественно, и PKGBUILD'ы, иначе пришлось бы дублировать слишком много кода. А AUR встречаются "варианты" (например, nginx-devel, nginx-libressl, nginx-rtmp, nginx-boringssl, nginx-custom, nginx-custom-dev), но их не так много и они по мере обнаружения склеиваются правилами в один nginx. Большая часть - это действительно уникальные пакеты, можно их посмотреть:

    https://repology.org/metapackages/?inrepo=aur&maxspread=1

    и AUR тут сам по себе уникален, так как если в обычном репозитории таких пакетов не больше 20-30%, то в AUR все 60%. А уж что это - действительно "васянские хелловорлды" которые никому кроме их авторов не нужны, или полезный софт, который постепенно появится и в других репозиториях, я пока не знаю.

    Следующий большой milestone в Repology - добавление истории каждого пакета, по ней можно будет такие вещи оценивать.

     
  • 4.10, Аноним (-), 12:31, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >В AUR-е число пакетов, надеюсь, не из-за васянских хелловорлдов выше? :)

    AUR - это огромная свалка. Там есть место всему - и хелловордам, и тому, чего в других дистрах нет и (по разным причинам) не будет никогда. Много дев-пакетов, собираемых прямиком из гита, например i3 в офрепе и i3-git AURе.

     
  • 4.15, Константавр (ok), 16:28, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Васянские пересборочки под разным соусом там есть в большом количестве. Фактически тот же пакет, но с другими опциями, например несколько фрикадов, несколько клементин и т.д. Они добавляют количество пакетов, но снижают количество актуальных версий, хотя если выкинуть заброшенные и просто устаревшие, то будет вообще вперде планеты.
     
  • 2.8, AMDmi3 (??), 10:37, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Я уже писал про это - оверлеи, равно как PPA и дополнительные репозитории openSUSE добавляются по запросу. Так, ребята из Pentoo не только попросили добавить репозиторий, но и активно сообщают о проблемах когда что-то в нём некорректно сравнивается. А всё подряд добавлять смысла я не вижу, ибо в массе это маленькие, устаревшие и плохо поддерживаемые репозитории.
     
     
  • 3.11, Аноним (-), 12:34, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >в массе это маленькие, устаревшие и плохо поддерживаемые репозитории.

    В том же AURе заброшенного неподдерживаемого старья овер дофига.

     

  • 1.3, Wladmis (ok), 01:04, 17/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    > Добавлен поиск родственных пакетов, у которых указана одна и та же домашняя страница (пример). Помимо непосредственного просмотра родственных пакетов это упростит связывание пакетов, для которых в различных репозиториях используются разные названия.

    Можно связывать пакеты с разными названиями в различных репозиториях, которые собраны из одних сорцов, по имени архива с исходным кодом, упакованного в исходный пакет.

     
     
  • 2.7, Аноним (-), 10:32, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это не будет работать - во-первых, лишь в небольшом количестве репозиториев доступна информация о URL исходников (см. колонки WWW против Downloads в https://github.com/repology/repology#repository-support таблице), во-вторых, URL меняются от версии к версии и в-третьих, часто используются зеркала. WWW же, как правило, доступен и однозначен.
     
     
  • 3.12, Wladmis (ok), 14:19, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Это не будет работать - во-первых, лишь в небольшом количестве репозиториев доступна
    > информация о URL исходников (см. колонки WWW против Downloads в https://github.com/repology/repology#repository-support
    > таблице), во-вторых, URL меняются от версии к версии и в-третьих, часто
    > используются зеркала. WWW же, как правило, доступен и однозначен.

    При чём тут URL? Моя мысль была использовать поле Source для связывания.

     
     
  • 4.13, AMDmi3 (??), 14:28, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Что такое "поле Source"?
     
     
  • 5.14, Wladmis (ok), 15:20, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Что такое "поле Source"?

    Примеры:

    https://src.fedoraproject.org/rpms/libxslt/blob/master/f/libxslt.spec#_9
    https://src.fedoraproject.org/rpms/openssh/blob/master/f/openssh.spec#_79
    https://gitweb.gentoo.org/repo/gentoo.git/tree/net-misc/openssh/openssh-7.6_p1
    https://gitweb.gentoo.org/repo/gentoo.git/tree/dev-libs/libxslt/libxslt-1.1.30

    Для rpm кверится по тегу %{SOURCE}. В нём содержится имя файла архива, из которого собирается пакет, или другие исходные материалы, которые будут упакованы или участвовать в сборке ПО.

    Даже если указан меняющийся url, то в нём всё-равно можно выделить регулярную часть: отсечь всё до последнего вхождения '/' включительно, суффикс формата архива и версию, которую можно вытащить из соответствующего поля.

     
     
  • 6.16, AMDmi3 (??), 18:55, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Примеры:

    Ровно это я имел в виду. Или это вдруг перестало быть URL'ами?

    > Даже если указан меняющийся url, то в нём всё-равно можно выделить регулярную часть: отсечь всё до последнего вхождения '/' включительно, суффикс формата архива и версию, которую можно вытащить из соответствующего поля.

    Т.е. оставить только имя пакета, по сути. Это ещё хуже, ибо будет много false positive - проектов с повторяющимися названиями накопилось предостаточно. Версию не всегда можно отсечь, ибо её формат в дистфайле может не совпадать с официальной версией. Но главная проблема в том что, повторюсь, эта информация доступна для очень небольшого числа репозиториев.

     
     
  • 7.17, Wladmis (ok), 21:58, 17/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    >> Примеры:
    > Ровно это я имел в виду. Или это вдруг перестало быть URL'ами?

    Я привык в терминах rpm: там Url — это домашняя страница проекта, а в поле Source не обязан быть url, может быть просто имя архива с исходниками, как тут:

    https://build.opensuse.org/package/view_file/openSUSE:Factory/tcl/tcl.spec?rev

    >> Даже если указан меняющийся url, то в нём всё-равно можно выделить регулярную часть: отсечь всё до последнего вхождения '/' включительно, суффикс формата архива и версию, которую можно вытащить из соответствующего поля.
    > Т.е. оставить только имя пакета, по сути. Это ещё хуже, ибо будет
    > много false positive - проектов с повторяющимися названиями накопилось предостаточно.
    > Версию не всегда можно отсечь, ибо её формат в дистфайле может
    > не совпадать с официальной версией. Но главная проблема в том что,
    > повторюсь, эта информация доступна для очень небольшого числа репозиториев.

    Да, не всегда. Похоже, в общем случае это невозможно сделать.

    Вот подобные случаи сейчас не отслеживаются:

    https://repology.org/metapackage/nss-ldap/versions
    https://repology.org/metapackage/libnss-ldap/versions

    Глазами видно, что они содержат одно и то же ПО. Пока не знаю, как можно их связать.

     
     
  • 8.18, AMDmi3 (??), 00:39, 18/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    Так они связываются, см раздел Related Просто правила всегда создаются только ... текст свёрнут, показать
     

  • 1.19, Аноним (-), 21:28, 18/11/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Autoimports для ALT Linux забыли.
     
     
  • 2.20, Andrey Mitrofanov (?), 11:22, 20/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    > Autoimports для ALT Linux забыли.

    и sourceforge "new release" RSS.

     
     
  • 3.22, Аноним (-), 16:42, 22/11/2017 [^] [^^] [^^^] [ответить]  
  • +/
    На SourceForge не стоит тратить время - там остались единицы живых проектов. А вот добавить поддержку релизов GitHub было бы здорово.
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру