After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 654767 - shlib downgrade at update atk-1.32.0 to atk-2.0.1
shlib downgrade at update atk-1.32.0 to atk-2.0.1
Status: RESOLVED FIXED
Product: atk
Classification: Platform
Component: build
2.0.x
Other NetBSD
: Normal critical
: ---
Assigned To: ATK maintainer(s)
ATK maintainer(s)
Depends on:
Blocks:
 
 
Reported: 2011-07-17 04:48 UTC by OBATA Akio
Modified: 2011-07-19 10:26 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Using atk_major_version on the binary age (1.86 KB, patch)
2011-07-18 11:08 UTC, Alejandro Piñeiro Iglesias (IRC: infapi00)
none Details | Review

Description OBATA Akio 2011-07-17 04:48:44 UTC
On NetBSD-5.1,

atk-1.32.0: libatk-1.0.so.0.3209.1
atk-2.0.1:  libatk-1.0.so.0.10.1

 DOWNGDADED!

It is because ATK_API_VERSION is still 1.0, but it is only calculated with
atk_minor_version and atk_micro_version.

If atk-2 is ABI compatible with 1.32, 
shlib minor should be something like 20010, instead of 10
so that it will be greater than 3209.

atk_binary_age and lt_current should be pulsed "10000 * atk_major_version"?

The other hand, in comment of atk_api_version definition,
"Ths is expected to stay 1.0 until Atk 2.

 IT IS ATK-2.

so atk_version is missing bumped at updated atk to 2.0?
Comment 1 Matthias Scheler 2011-07-17 11:53:28 UTC
Under Mac OS X this problem is not only cosmetic it actually breaks existing applications after you upgrade ATK to 2.0.1:


> xchat
dyld: Library not loaded: /usr/pkg/lib/libatk-1.0.0.dylib
  Referenced from: /usr/pkg/bin/xchat
  Reason: Incompatible library version: xchat requires version 3210.0.0 or later, but libatk-1.0.0.dylib provides version 11.0.0
zsh: trace trap  xchat
Comment 2 Alejandro Piñeiro Iglesias (IRC: infapi00) 2011-07-18 10:58:08 UTC
(In reply to comment #0)
> On NetBSD-5.1,
> 
> atk-1.32.0: libatk-1.0.so.0.3209.1
> atk-2.0.1:  libatk-1.0.so.0.10.1
> 
>  DOWNGDADED!
> 
> It is because ATK_API_VERSION is still 1.0, but it is only calculated with
> atk_minor_version and atk_micro_version.

I think that instead of ATK_API_VERSION, the solution would be use atk_major_version here.

> If atk-2 is ABI compatible with 1.32, 
> shlib minor should be something like 20010, instead of 10
> so that it will be greater than 3209.
> 
> atk_binary_age and lt_current should be pulsed "10000 * atk_major_version"?
> 
> The other hand, in comment of atk_api_version definition,
> "Ths is expected to stay 1.0 until Atk 2.
> 
>  IT IS ATK-2.
> 
> so atk_version is missing bumped at updated atk to 2.0?

atk-2.0.1 is still API and ABI compatible. So the API version is still 1.0, and it will be in this case until atk-3.0

Li required to update the library version number for any reason. I don't know why, so Li if you are reading this ...).

The ideal solution would be bump all the stuff from 1.0 to 2.0, but that would mean that the apps using atk should require to link against a different library. Taking into account that libatk-2.0.1 is still fully API and ABI compatible with libatk-1.32.0 I think that the easiest solution is add the atk_major_version on the binary_age
Comment 3 Alejandro Piñeiro Iglesias (IRC: infapi00) 2011-07-18 11:08:30 UTC
Created attachment 192173 [details] [review]
Using atk_major_version on the binary age
Comment 4 Alejandro Piñeiro Iglesias (IRC: infapi00) 2011-07-18 11:09:30 UTC
(In reply to comment #1)
> Under Mac OS X this problem is not only cosmetic it actually breaks existing
> applications after you upgrade ATK to 2.0.1:
> 
> 
> > xchat
> dyld: Library not loaded: /usr/pkg/lib/libatk-1.0.0.dylib
>   Referenced from: /usr/pkg/bin/xchat
>   Reason: Incompatible library version: xchat requires version 3210.0.0 or
> later, but libatk-1.0.0.dylib provides version 11.0.0
> zsh: trace trap  xchat

Could you test the patch that I have just attached and check if solves the problem?
Comment 5 Matthias Scheler 2011-07-18 12:03:46 UTC
The provided patch fixes the problem under NetBSD/amd64 5.1_STABLE and Mac OS 10.6.8. Thanks a lot for the quick response.
Comment 6 Alejandro Piñeiro Iglesias (IRC: infapi00) 2011-07-18 14:20:50 UTC
(In reply to comment #5)
> The provided patch fixes the problem under NetBSD/amd64 5.1_STABLE and Mac OS
> 10.6.8. Thanks a lot for the quick response.

Ok, thanks for your answer.

Anyway, I will not apply this patch now. Before of that I would like a review from Li (atk maintainer), and in the same way asking about the 2.0 bump

I hope to get the answer for all those questions before next release.
Comment 7 Li Yuan 2011-07-19 03:27:37 UTC
I am OK with the patch. The reason I release ATK 2.0 is simple, we want to keep the minor version in sync with GNOME's minor version, just like Orca or mousetweaks.

We have a long way to go to archive next version of ATK (version 3), so I thought it doesn't hurt to release ATK 2.0.
Comment 8 Alejandro Piñeiro Iglesias (IRC: infapi00) 2011-07-19 10:26:09 UTC
(In reply to comment #7)
> I am OK with the patch. The reason I release ATK 2.0 is simple, we want to keep
> the minor version in sync with GNOME's minor version, just like Orca or
> mousetweaks.
> 
> We have a long way to go to archive next version of ATK (version 3), so I
> thought it doesn't hurt to release ATK 2.0.

Ok, thanks for the explanation.

And it seems that you applied the patch but didn't close the bug. Doing now.

Thanks.