Em 10-03-2018 15:24, Sven Joachim escreveu:
> On 2018-03-10 09:31 -0300, Herbert Fortes wrote:
>> Em 09-03-2018 17:03, Sven Joachim escreveu:
>>> On 2018-03-09 15:18 -0300, Herbert Fortes wrote:
>>>> Hi Sven Joachim,
>>>>>> My conclusion is that it is very risky to allow such combinations, and
>>>>>> to rule them out I propose to change the package name of the cdk
>>>>>> library, say to libcdk5a.  It would then have to build-depend on
>>>>>> libncurses-dev (>= 6.1+20180210) to ensure that it is linked against
>>>>>> libncurses6 and not libncurses5.  Of course this can only be uploaded
>>>>>> to experimental for now, but should go to unstable when the ncurses
>>>>>> transition starts there.
>>>> I am OK with changing the name. But libcdk5a does not say 
>>>> much about why the change.
>>>> Since the package name will change because of SONAME of 
>>>> libncurses, I thought to follow the SONAME of the library.
>>> Well, the SONAME of the cdk library does not change with my proposal.
>>>> libcdk5-6
>>> If you like that better than libcdk5a, choose it.  Or any other name,
>>> it's rather arbitrary anyway.
>>>> But maybe this will cause misunderstanding. The change is
>>>> on version 6.1+20180210.
>>> That's why the build-dependency on libncurses-dev (>= 6.1+20180210) is
>>> needed.
>>> I am not sure we understand each other yet, but I'm happy to answer
>>> questions.
>> Good! I am searching for a name. And talk about it could
>> help.
>> cdk library had problems before (about name), and I belive
>> the number "5" (cdk SONAME) was the choice to differ from the
>> other package. That's what I remember.
>>  - libcdk-java
>>  - libcdk-perl
>>  - libcdk5
>> The "5" was accepted because the SONAME does not change much.
> The "5" is there because it is the standard convention for shared
> library packages: if you ship libfoo.so.5 in your package, the package
> is supposed to be called libfoo5.  See the chapter in the Policy about
> shared libraries.[1]
> Now, the "chtype" change in ncurses changes the ABI of the cdk library,
> and hence the package name must change to not break reverse dependencies
> (e.g. gphoto2).  Ideally, the SONAME would also change, but this means
> you would have to invent your own SONAME since upstream did not take it
> into account.  Therefore I proposed to only change the package name,
> from libcdk5 to libcdk5a (or any other name, it's really arbitrary).
> This means that the reverse dependencies have to be upgraded in
> lock-step, but since there are only three of them (cpm, libcdk-perl and
> gphoto2), that looks manageable.

OK. I read what I wanted (SONAME part) and understood why the 
change. Thanks for that!

I only managed one SONAME change (libgphoto2), more than a year ago.
After change the name I must email the reverse_dependencies and
ask them to use the new package and let the old one die. Is that

(new package - add break, replaces)

I also have to deal with the repo name. I created it two years ago.
Named libcdk5 (libcdk5.git).

>> The number "6" is from libncurses. If the two projects have
>> a strong link, it could be used. But seeing the two numbers,
>> which of them refers to what. I can put an explanation on 
>> debian/README.Debian file. But maybe the name will be changed
>> more than expected.
> Well, you could use libcdk5nc6 or something like that to indicate that
> the package name change is related to libncurses6, but there is no need
> to explain this in a README.Debian, since shared libraries are usually
> automatically installed as a dependency of some other package and not
> for their own merits.

libcdk5nc6 sounds good to me.


Reply via email to