Proposal: how to make incompatible changes

Patrick Williams patrick at stwcx.xyz
Sat Apr 25 00:56:35 AEST 2020


On Thu, Apr 23, 2020 at 12:20:53PM -0400, Brad Bishop wrote:
> at 8:11 AM, Alexander Amelkin <a.amelkin at yadro.com> wrote:
> 
> > Internally, for inter-process dbus communication the interface version  
> > could be checked during compile time to prevent problems that couldn't be  
> > detected by compiler/linker automatically.
> 
> I like the idea of a stable, versioned DBus API.  Does anyone else?
> 
> In the past there was opposition to that.  I’m not sure if there still is.

Since we're deprecating the REST-dbus path and moving towards Redfish is
there much advantage to a versioned DBus API?  Alexander mentioned
compile-time checking of the interface, but we already have that through
sdbusplus.  The issues are:
    1. Client bindings are not currently being generated.
    2. Not every implementation is using them.
    3. We don't have a good mechanism to deal with cross-repository
       interface changes.

I don't think a versioned DBus API solves any of these, except maybe #3
but that is only if we're going to write servers that support N-versions 
of the interfaces.

It seems to me like a better investment is #1 and #2?  I'd personally
like to have #1 implemented by the end of Sept at the latest.  Solving
#3, I think, requires us to do some CI investment to support Gerrit
topic-based testing.

-- 
Patrick Williams
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://lists.ozlabs.org/pipermail/openbmc/attachments/20200424/93daf720/attachment-0001.sig>


More information about the openbmc mailing list