[devel] dbus-introspection xml-files packaging

Anton Farygin rider на basealt.ru
Сб Мар 16 10:40:35 MSK 2024


Согласен. Примерно тоже-самое написал в bugzilla - непонятно какую цель 
хочется достичь.


On 15.03.2024 19:08, Evgeny Sinelnikov wrote:
> Добрый вечер,
>
> поскольку суть обсуждения явно не заявлена, попытаюсь её сформулировать.
>
> Речь идёт о файлах интроспекции. Стоит или не стоит их хранить вместе
> с пакетами? Или может быть стоит выносить в отдельные подпакеты?
>
> На мой взгляд это совершенно бесполезно, особенно в тех случаях, когда
> клиентам нужно проверять валидность интерфейсов. Например, мы именно
> для этого его сейчас используем для всех новых бекендов, создаваемых с
> помощью модуля alterator-module-executor.
>
> Кроме того, существует, действительно, и такая штука, как
> "кодогенерация на лету". Хотя "кодогенерацией" это может и не
> являться. Скорее статическим способом интроспекции.
>
> Стоит упомянуть также и такую особенность, как сам интерфейс
> интроспекции. Устроен он так, что выдаёт ровно те же xml'ки, которые
> предлагается куда-то, зачем-то спрятать:
>
> $ busctl call org.freedesktop.Accounts /org/freedesktop/Accounts
> org.freedesktop.DBus.Introspectable Introspect
> s "<!DOCTYPE node PUBLIC \"-//freedesktop//DTD D-BUS Object
> Introspection 1.0//EN\"\n
> [...]
> </interface>\n  <node name=\"User758801104\"/>\n  <node
> name=\"User500\"/>\n</node>\n"
>
> Ну, то есть все приложения и так выдают свой интерфейс в этом же
> формате. В ряде случаев, я думаю, это даже может быть реализовано как
> отправка в ответ на org.freedesktop.DBus.Introspectable.Introspect()
> содержимое того файла, который лежит в каталоге
> /usr/share/dbus-1/interfaces/, вместо того, чтобы прибивать его
> "гвоздями" в код сервиса.
>
> В общем, не понятна цель ради которой что-то предлагается. Свести dbus
> интроспекцию только к кодогенерации уже не очень получится. Разве что
> перенести эти файлы в отдельные пакеты может иметь смысл, чтобы не
> тащить в сборочное окружение лишние пакеты с их зависимостями. Тогда
> цель становится понятной. Но это довольно тогда большая работа. У нас
> и без неё много всего лишнего тянется в сборочное окружение. Эту
> задачу нужно решать более комплексно, я думаю. Уж точно не с dbusxml
> файлов начинать стоит.
>
>
> пт, 15 мар. 2024 г. в 17:21, Sergey V Turchin <zerg на altlinux.org>:
>> Привет всем!
>>
>> Предлагаю обсудить https://bugs.altlinux.org/49665 .
>> https://dbus.freedesktop.org/doc/dbus-api-design.html#code-generation
>> https://dbus.freedesktop.org/doc/dbus-api-design.html#apis
>> https://dbus.freedesktop.org/doc/dbus-specification.html#introspection-format
>>
>> --
>> Regards, Sergey.
>> _______________________________________________
>> Devel mailing list
>> Devel на lists.altlinux.org
>> https://lists.altlinux.org/mailman/listinfo/devel
>
>



Подробная информация о списке рассылки Devel