Em 11-03-2018 17:35, Sven Joachim escreveu: > On 2018-03-11 10:57 -0300, Herbert Fortes wrote: > >> 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 >> it? > > No, reverse dependencies just have to be binNMU'ed. For cpm and gphoto2 > this will happen anyway as part of the ncurses transition, for > libcdk-perl we'll have to ask the release team separately. But I can > take care of that. > >> (new package - add break, replaces) > > Or Conflicts+Replaces as in my original patch. > >> I also have to deal with the repo name. I created it two years ago. >> Named libcdk5 (libcdk5.git). > > It probably should have been named cdk instead, but I would postpone > renaming the source package until the SONAME actually changes. But > that's up to you. The downside (if you rename the source package now) > is that the FTP masters may take longer to review it than if there's > just a new binary package.
Yes. But cdk already exists[0]. [0] - https://tracker.debian.org/pkg/cdk > >>>> 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. > > Fine with me, I have attached an updated patch for that new name. > Thank you very much! I will get the new upstream version, apply the patch and send it to experimental this week. Regards, Herbert