[Development] Requesting a repository for Qt Interface Framework Reference APIs
Dominik Holland
dominik.holland at qt.io
Fri Dec 8 16:22:30 CET 2023
Am 08.12.23 um 11:40 schrieb Volker Hilsheimer via Development:
> The request at hand is to move two of the reference APIs that are
> based on the interface framework out into a separate qt-labs
> repository. Those two APIs are, as Dominik pointed out, very
> automotive specific. But just because they are based on the interface
> framework doesn’t mean that we need to use “interface framework” in
> the name.
>
> After trying to wrap my head around what the Qt Interface Framework
> does and how the reference APIs fit into that, and given that they are
> automotive specific, I’d call that new module perhaps
> “qt-labs/qtvehicleservices.git” or even
> “qt-labs/qtvehiclecabinservices.git” (since the modules under
> discussion are all about things in the cabin - airflow, windows, radio
> and other media - and not about engine- or driving-related stuff).
I like “qt-labs/qtvehicleservices.git” for the parts which should be
moved out to qtlabs.
>
> I do think that we should rename the overly generically named
> "interface framework" module before we make it part of a Qt release.
> It combines a number of different abstractions for building loosely
> coupled systems. Interface definitions and API abstractions are
> perhaps just “implementation details”. The core functionality of the
> interface framework seems to be service definition and discovery,
> enabling the building of modular systems. I don’t know if
> “qtservicediscoveryframework” is much of an improvement though, but
> that we don’t have a good name for that yet doesn’t have to block
> moving out of the vehicle-services-code.
Although not part of qt5.git the interface framework is part of Qt DCE
for quite some time already and also used by customers. From a
qt-project standpoint that module doesn't exist and is not part of
source/binary compatibility promises, but what's our standpoint for qt
commercial customers ? Giving the module a better name in the
documentation and the repo is not a big deal, but what about changing
the all class names and CMake macros, those start with QIf* as well.
Dominik
>
>
> Volker
>
>
>> On 7 Dec 2023, at 20:01, Maurice Kalinowski via Development
>> <development at qt-project.org> wrote:
>>
>> You are absolutely correct that this module started with a pure
>> automotive focus, back then called Qt IVI.
>> However, we recognized that its functionality can also be utilized in
>> a generic way, which was the reason for the rename and generalization
>> efforts done in the past. There might still be some leftovers.
>> There are developers/customers using it in their production
>> environment already, also outside of the automotive sector.
>> BR,
>> Maurice
>> *From:*Development <development-bounces at qt-project.org>*On Behalf
>> Of*Tor Arne Vestbø via Development
>> *Sent:*Thursday, 7 December 2023 18:37
>> *To:*Tuukka Turunen <tuukka.turunen at qt.io>
>> *Cc:*Macieira, Thiago <thiago.macieira at intel.com>;
>> development at qt-project.org
>> *Subject:*Re: [Development] Requesting a repository for Qt Interface
>> Framework Reference APIs
>> If it’s an option to rename this module we should take the
>> opportunity to do so I think.
>> The problem of the generic naming came up in the past, but the
>> understanding was that it was too late to change.
>> If that is not the case after all, we should strongly consider it.
>> The documentation at
>> https://doc.qt.io/QtInterfaceFramework/ describes it as:
>> "The Qt Interface Framework module provides both the tools and the
>> core APIs, for you to implement Middleware APIs, Middleware Back
>> ends, and Middleware Services. “
>>
>>
>> So is this the Qt Middleware module?
>>
>>
>> On the other hand, the module seems to also provide a lot more than
>> just core primitives. E.g. this set of classes for in-viechle
>> infotainment systems:
>> https://doc.qt.io/QtInterfaceFramework/qtifmedia-module.html
>>
>> So is this a Qt for Automotive specific module? These APIs seem to
>> indicate that as well:
>> https://doc.qt.io/QtInterfaceFramework/qtinterfaceframework-vehiclefunctions-qmlmodule.html
>>
>> If we do want to promote this to a Qt module, should the core
>> functionality be split off, and the rest stay Qt for Automotive specific?
>> https://doc.qt.io/QtInterfaceFramework/qtinterfaceframework-module.html
>> Cheers,
>> Tor Arne
>>
>>
>> On 7 Dec 2023, at 17:02, Tuukka Turunen via Development
>> <development at qt-project.org> wrote:
>> Hi,
>> Thiago is right, we can change the name as the module technically
>> is not part of Qt release
>> (https://download.qt.io/official_releases/qt/6.6/6.6.1/submodules/).
>> That said, we can also decide not to change the name. Like
>> mentioned by Dominik, it has existing since a while with the
>> current name (https://doc.qt.io/QtInterfaceFramework/) and
>> repository
>> (https://code.qt.io/cgit/qt/qtinterfaceframework.git/). Initially
>> it had a different name, so the current one is already a new
>> name, which is probably better than the initial at least.
>> So the question is what should this module be called, if it would
>> be renamed? And another question, is it feasible to implement the
>> renaming at this point?
>> Moving the proposed items out from it to labs modules makes sense
>> to me. The naming of labs modules should then be aligned with the
>> new naming of the module.
>> Yours,
>> Tuukka
>>
>> *From:*Development <development-bounces at qt-project.org> on behalf
>> of Thiago Macieira <thiago.macieira at intel.com>
>> *Date:*Tuesday, December 5, 2023 at 19:06
>> *To:*development at qt-project.org<development at qt-project.org>
>> *Subject:*Re: [Development] Requesting a repository for Qt
>> Interface Framework Reference APIs
>>
>> On Tuesday, 5 December 2023 08:54:29 PST Thiago Macieira wrote:
>> > Then why are you asking for a repository if it's already there?
>> When was
>> > that module approved by the Qt Project? I can't find anything
>> in the email
>> > archives.
>> >
>> > The first commit in this repository is "First version of the
>> QtGeniviExtras
>> > module". When was it renamed and who approved it?
>>
>> This module was requested at
>> https://lists.qt-project.org/pipermail/development/2015-August/022859.html
>>
>> There were no objections. Tuukka said it's a good idea to have
>> the modules
>> even if they aren't part of the released packages:
>>
>> > I think it is fine to create the requested repo for new module.
>> Depending on
>> > the need it can then either be included or not be included in
>> the release
>> > packages.
>>
>> That would explain why this isn't in the qt5.git/.gitmodules.
>>
>> But I said:
>>
>> > I am, however, questioning the design of the API that Dominik
>> presented.
>>
>> There have been zero other discussions of "genivi" since then
>> https://www.google.com/search?q=genivi+site%253Ahttps%253A%252F%252Flists.qt-project.org%252Fpipermail%252Fdevelopment%252F
>> <https://www.google.com/search?q=genivi+site%253Ahttps%253A%252F%252Flists.qt-project.org%252Fpipermail%252Fdevelopment%252F>
>>
>> I don't know what kind of API reviews have been done since. But
>> there has been
>> no discussion about renaming this module. Therefore, the name it
>> is currently
>> using is unauthorised and does not imply a precedent.
>>
>> -1 on this new module with this name.
>>
>>
>> --
>> Thiago Macieira - thiago.macieira (AT)intel.com
>> <http://intel.com/>
>> Cloud Software Architect - Intel DCAI Cloud Engineering
>> --
>> Development mailing list
>> Development at qt-project.org <mailto:Development at qt-project.org>
>> https://lists.qt-project.org/listinfo/development
>> <https://lists.qt-project.org/listinfo/development>
>>
>> --
>> Development mailing list
>> Development at qt-project.org
>> https://lists.qt-project.org/listinfo/development
>
>
More information about the Development
mailing list