Bug 48831
| Summary: | По зависимости на rpm-build-ruby не приезжает rdoc | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | Vitaly Chikunov <vt> |
| Component: | rpm-build-ruby | Assignee: | majioa <majioa> |
| Status: | CLOSED FIXED | QA Contact: | qa-sisyphus |
| Severity: | normal | ||
| Priority: | P5 | CC: | 3aHyga, admsasha, cas, majioa, mike, nbr, pav, rider, thatman |
| Version: | unstable | ||
| Hardware: | x86 | ||
| OS: | Linux | ||
rdoc встроенъ прямо въ ruby-stdlibs, отдѣльный gem не трѣбуется Уточнение - при установке пакета rpm-build-ruby /usr/bin/rdoc отсутствует, хотя раньше был. доступенъ этотъ файлъ /usr/lib/ruby/bin/rdoc и онъ долженъ находиться по пути $PATH и быть доступенъ which-у /usr/lib/ruby/bin это нестандартный путь. Сейчас создана несовместимость между p10 и Сизифом (и архивом), что аукнется при копировании пакетов. Теперь, вместо того, чтоб запустить configure, как раньше (чтоб объехать эту несовместимость) я должен в спеке делать логику поиска бинарника rdoc. Так как rdoc это базовая утилита разработчика на ruby для генерации документации, то, полагаю, что она должна быть доступна в /usr/bin. Кроме того, считаю, пакет/провайдс rdoc должен предоставлять утилиту /usr/bin/rdoc[*], а не модуль ruby, а его (модуль) должен предоставлять ruby-rdoc. Иначе, это ошибка в наименовании пакетов/провайдсов. * Так же как bundle предоставляет /usr/bin/bundle, а пакет gem предоставляет /usr/bin/gem Хотя, вы меня запутали. У нас _есть_ пакет rdoc содержащий /usr/bin/rdoc, но он (как я и отрепортил изначально) больше _не приезжает_ с rpm-build-ruby. Видимо, теперь надо делать BuildRequires: /usr/bin/rdoc. Надеюсь, хотя бы этот бинарник не пропадет в следующем апдейте руби. Если rdoc не установленъ, то долженъ подцепиться тотъ, что находится по /usr/lib/rubyg/bin/ (In reply to Малъ Скрылевъ from comment #6) > Если rdoc не установленъ, то долженъ подцепиться тотъ, что находится по > /usr/lib/rubyg/bin/ Что это значит? У вас есть пакет rdoc с /usr/bin/rdoc, но он не приезжает, потому что ruby-stdlibs ошибочно провайдит rdoc вместо ruby-rdoc. Проверка актуальности: актуально на ruby 3.3.12-alt3. Файла /usr/bin/rdoc нет ни в одном пакете Сизифа; ruby-stdlibs предоставляет виртуальные Provides «rdoc» и «/usr/bin/rdoc», а сам бинарник лежит в /usr/lib/ruby/bin/rdoc, который в PATH не входит. rpm-build-ruby требует «rdoc» и получает ruby-stdlibs, так что ситуация из комментария 8 не изменилась. (Ответ для Anton Farygin на комментарий #9) > Проверка актуальности: актуально на ruby 3.3.12-alt3. Файла /usr/bin/rdoc > нет ни в одном пакете Сизифа; ruby-stdlibs предоставляет виртуальные > Provides «rdoc» и «/usr/bin/rdoc», а сам бинарник лежит в > /usr/lib/ruby/bin/rdoc, который в PATH не входит. rpm-build-ruby требует > «rdoc» и получает ruby-stdlibs, так что ситуация из комментария 8 не > изменилась. /usr/bin/rdoc šnj альтернатива изъ пакетов rdoc либо ruby-stdlib а по hsh-install rpm-build-ruby приѣзжает самъ пакетъ: $ hsh-install rpm-build-ruby ... <13>Sep 6 18:17:57 rpmi: ruby-stdlibs-3.3.12-alt3 sisyphus+431556.40.2.1 1788481246 installed ... 1702423926 installed $ hsh-shell $ rdoc -v 6.6.3.1 Малъ, спасибо за проверку — вы правы, беру свои слова из комментария 9 назад. Перепроверил в чистом контейнере Sisyphus: после `apt-get install rpm-build-ruby` приезжает ruby-stdlibs 3.3.12-alt3, и /usr/bin/rdoc на месте — это символьная ссылка, создаваемая через alternatives (/usr/bin/rdoc -> /etc/alternatives/links/|usr|bin|rdoc -> /usr/lib/ruby/bin/rdoc), поэтому в списке файлов пакета её нет, и я ошибочно решил, что файла нет вовсе. `rdoc -v` даёт 6.6.3.1 при стандартном PATH. Ошибка из репорта действительно исправлена. (Ответ для Anton Farygin на комментарий #11) > Малъ, спасибо за проверку — вы правы, беру свои слова из комментария. ? |

Description
Vitaly Chikunov 2023-12-16 15:31:21 MSK