Wireshark mailing list archives

Re: Future of Wireshark's shared library ABI stability


From: João Valverde <j () v6e pt>
Date: Fri, 21 Jan 2022 11:15:57 +0000



On 21/01/22 10:46, Roland Knall wrote:
May I suggest that we focus on the discussion at hand here. The discussion about the package itself seems to be better suited for the issue list specific for that package, as is the purpose for that list.

This is about package code that lives in the Wireshark repository, that Wireshark devs have to work on, and relates directly to the issue at hand, so I beg to differ. I think it is very relevant and in the proper place.


The issue here is, that with change https://gitlab.com/wireshark/wireshark/-/merge_requests/5318 version changes where backported in 3.6, which are only meant to be in 3.7 and beyond (hence the reference in libwireshark0.symbols). Regardless of what some may think of the ensuing discussion, as a general rule we do not introduce library changes within release branches. For that reason alone (and only for that reason) I would say that the change needs to be reversed.

The symbols added are fine, nobody is contesting them, and they were necessary fix bugs in the 3.6 branch. The issue is a symbol that was replaced by a different one in the backport. That removal that is what constitutes an ABI incompatibility and it was already fixed by Gerald so the particular issue you are raising is pretty much closed, on the other hand.


Now for the validity of the overall change, I do think it is valid and makes absolute sense. I also think that external programs should not expect huge stability for our APIs as they may change anytime between major releases. If it is within our scope and reason to avoid such changes or dependencies we should try to do so. I also do think that ABI compatibility should not be set in stone.

kind regards
Roland

Am Fr., 21. Jan. 2022 um 11:17 Uhr schrieb João Valverde <j () v6e pt>:



    On 21/01/22 09:44, Bálint Réczey wrote:
    > Hi João,
    >
    > João Valverde <j () v6e pt> ezt írta (időpont: 2022. jan. 21., P,
    1:14):
    >>
    >>
    >> On 20/01/22 12:41, Bálint Réczey wrote:
    >>> Hi All,
    >>>
    >>> João shared his opinion about the project's commitment to maintain
    >>> stable shared library ABI within stable branches:
    >>> https://gitlab.com/wireshark/wireshark/-/issues/17822
    >>>
    >>> I believe the current practice is reasonable and beneficial
    enough for
    >>> many parties to warrant the work, but I could be wrong.
    >>>
    >> I agree the current practice is reasonable and beneficial, and
    it is
    >> currently documented in README.Developer[1], chapter 7.3, to
    the best of
    >> my understanding and ability.
    > OK, great to hear that from you. I got the impression from the
    gitlab
    > comments that you had a different view.
    >
    >> Do you have changes you'd like to propose? I'll gladly go over
    those.
    > I'm happy with the the project's commitment to ABI stability and
    agree
    > with Gerald's proposal of trying to revive the
    abi-complicance-checker
    > test to help him in the final release checks. I may find time to
    > restore the changes after this discussion is settled.
    >
    > Since you are asking, I'd very much welcome less hostility from your
    > side than what I observed in [2] when I reported the ABI breakage.
    >
    > What triggered my email was that after I reported the ABI
    breakage you
    > made in the stable branch you refused to own and fix it [3] and even
    > after Gerald kindly stepped in with the fix [4] you kept arguing
    ([5]
    > [6] ...) and this made me tired and wondering if you really
    represent
    > the project's opinion as you seemed to believe.

    I don't mind the email. We do disagree on many things and what I
    said on
    the Gitlab issue is exactly what I meant. My lack of patience with
    you
    is entirely justified.

    >
    >> What I won't do, however, is maintain your package for you.
    > I maintain the package in Debian for the users and not particularly
    > for myself since I'm not using Wireshark in my profession as I
    used to
    > do.
    > In general I'm happy to accept help, but I think I've never
    asked for
    > your help specifically for that package and I note that I should not
    > ask in  the future either.
    >
    > The Debian packaging in the upstream repository, i.e. [7] serves a
    > different set of users, those who want to be closer to the latest
    > development of Wireshark and the packaging scripts are kept a bit
    > simpler. I intentionally don't make too many changes there to
    let the
    > Wireshark project members set the direction and the changes there go
    > through the regular local review process. I believe the packaging in
    > itself is useful and the .symbols files help noticing ABI changes.
    >

    I strongly believe the upstream Debian package to be a detriment
    to the
    project, and not in the interest of users either. I will share my
    experience as a user. I  had to build the Wireshark Debian package to
    fix something or other. I looked up online the incantation to use
    and it
    seemed to work ok. After it was done building it spewed a bunch of
    files
    all over my filesystem. Many different packages. I tried
    installing them
    one by one and didn't succeed. I tried all at once and didn't succeed
    either. I had to guess the order necessary to get it to install.
    Afterward there was some apt conflict with the Wireshark package
    in the
    official repos. I tried uninstalling the packages I had manually
    installed and broke the package manager with some dependency issue.
    After half an hour trying to fix it I gave up. The end.

    There is no good reason for this package to exist upstream in its
    current state, nor does Debian recommend that practice in general,
    AFAIK.
    ___________________________________________________________________________
    Sent via:    Wireshark-dev mailing list <wireshark-dev () wireshark org>
    Archives: https://www.wireshark.org/lists/wireshark-dev
    Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev
               
     mailto:wireshark-dev-request () wireshark org?subject=unsubscribe


___________________________________________________________________________
Sent via:    Wireshark-dev mailing list<wireshark-dev () wireshark org>
Archives:https://www.wireshark.org/lists/wireshark-dev
Unsubscribe:https://www.wireshark.org/mailman/options/wireshark-dev
              mailto:wireshark-dev-request () wireshark org?subject=unsubscribe
___________________________________________________________________________
Sent via:    Wireshark-dev mailing list <wireshark-dev () wireshark org>
Archives:    https://www.wireshark.org/lists/wireshark-dev
Unsubscribe: https://www.wireshark.org/mailman/options/wireshark-dev
             mailto:wireshark-dev-request () wireshark org?subject=unsubscribe

Current thread: