Fwd: ABI breaking between kdelibs 4.5 and 4.6

Stephen Kelly steveire at gmail.com
Wed Feb 9 18:41:01 GMT 2011


Hi,

There is an API/ABI break in kdelibs because a patch was committed to 
4.5 but not 4.6.

The patch applies cleanly and is easily cherry-pickable. It is a break 
of API freeze on 4.6 branch so I thought I'd mention that it's going to 
happen.

However, this shouldn't have happened. What do we have in place for 
preventing this from happening again?

I knew packaging people have tools like this for finding such issues, 
but I thought the tools were actually being used on betas and RCs. 
Otherwise what's the point? I also imagined such an issue would be 
caught by bindings people. Shouldn't the removal of the API break 
bindings? Did bindings people and other packaging people notice this but 
just not tell anyone? Should packagers be asked specifically to run 
their tools on RCs and betas to catch issues like this?

All the best,

Steve.


-------- Original Message --------
Subject: 	ABI breaking between kdelibs 4.5 and 4.6
Date: 	Tue, 8 Feb 2011 23:51:00 +0100
From: 	José Manuel Santamaría Lema <panfaust at gmail.com>
To: 	Stephen Kelly <steveire at gmail.com>



Hi,

while I was developing debian packages for KDE 4.6, I realized that a public
symbol was removed. The symbol in question is

QModelIndexList KRecursiveFilterProxyModel::match( const QModelIndex&  start, int
role, const QVariant&  value, int hits, Qt::MatchFlags flags ) const

which was introduced in commit 596af538a248906dd9cf910dc4b83b84c0f1e81a, this
commit is only in 4.5 branch.

We contacted the author of the commit, see below part of the conversation:

>  [15:17:58]<santa_>  till: ping!
>  [15:18:54]<till>  santa_: pong
>  [15:20:09]<santa_>  till: sorry for coming up with this in this channel (is
ot) but I think that perhaps you forgot to forward port commit ed33bb5 in
kdelibs
>  [15:20:21]<santa_>  it breaks abi afaiu
>  [15:21:31]<till>  I don't remember committing to kdelibs, but let me check.
>  [15:21:48]<svuorela>  git logs doesn't lie :p
>  [15:22:17]<till>  Can't find that commit in the log
>  [15:22:51]<till>  Ah, found it.
>  [15:23:15]<till>  I think I didn't forward port it, because Stephen said it
was already in trunk.
>  [15:24:09]<santa_>  it's only in 4.5 branch
>  [snip]
>  [15:24:30]<till>  Then it should probably be forward ported indeed, but that's
Stephen's call.
>  [snip]
>  [15:25:28]<svuorela>  till: the symbol *must* be forward ported, even if it is
just implementing as 'calling upwards'.
>  [15:26:22]<till>  svuorela: ok, fair enough. I won't have time to deal with it
before later tonight, I'm on kid duty.
>  [15:26:25]<till>  So feel free to forward port it.
>  [15:26:50]<svuorela>  by 'stephen', do you mean kelly ?
>  [15:29:47]<till>  Yes.
>  [15:29:58]<till>  HE's on vacation this week, but might be online.

Could you handle this, please?
Thank you.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20110209/0a326864/attachment.htm>


More information about the kde-core-devel mailing list