• Re: Question regarding Trixie and SFML

    From Marc Haber@21:1/5 to First Name on Fri May 30 20:20:01 2025
    On Fri, May 30, 2025 at 01:43:25PM -0400, First Name wrote:
    I am wondering if in Debian Trixie, there would be separate packages for
    the SFML library 2.0 series and 3.0 series. The 3.0 series is not
    available yet in Debian 12, however, when it does come available, I would >want the 2.0 series to still be available due to the lack of backwards >compatibility SFML provides. Thanks for your help.

    As far as I can see as somebody who doesn't have a clue about the SFML
    library, I can see that trixie will most probably have libsfml 2.6. We
    have libsfml 3.0 in experimental.

    If the libraries are not backwards compatible, you might want to talk to
    the Debian Games Team (pkg-games-devel@lists.alioth.debian.org) whether
    they plan to package the 3.0 series independently from the 2.x series in
    Debian 14/forky.

    Greetings
    Marc

    -- ----------------------------------------------------------------------------- Marc Haber | "I don't trust Computers. They | Mailadresse im Header Leimen, Germany | lose things." Winona Ryder | Fon: *49 6224 1600402 Nordisch by Nature | How to make an American Quilt | Fax: *49 6224 1600421

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Soren Stoutner@21:1/5 to First Name on Fri May 30 11:56:54 2025
    Copy: debian-devel@lists.debian.org

    On Friday, May 30, 2025 11:15:47 AM Mountain Standard Time Marc Haber wrote:
    On Fri, May 30, 2025 at 01:43:25PM -0400, First Name wrote:
    I am wondering if in Debian Trixie, there would be separate packages for >the SFML library 2.0 series and 3.0 series. The 3.0 series is not
    available yet in Debian 12, however, when it does come available, I would >want the 2.0 series to still be available due to the lack of backwards >compatibility SFML provides. Thanks for your help.

    As far as I can see as somebody who doesn't have a clue about the SFML library, I can see that trixie will most probably have libsfml 2.6. We
    have libsfml 3.0 in experimental.

    If the libraries are not backwards compatible, you might want to talk to
    the Debian Games Team (pkg-games-devel@lists.alioth.debian.org) whether
    they plan to package the 3.0 series independently from the 2.x series in Debian 14/forky.

    In addition to what Marc said, you can track what version of SFML is going to be in any particular release youself on tracker.debian.org.

    https://tracker.debian.org/pkg/libcsfml

    --
    Soren Stoutner
    soren@debian.org
    -----BEGIN PGP SIGNATURE-----

    iQIzBAABCgAdFiEEJKVN2yNUZnlcqOI+wufLJ66wtgMFAmg5/3YACgkQwufLJ66w tgPrcg//ZinNekJgmhiQFyI8HwsN1AqxYt52aJuGndAlHP6fzLvq/66WVmS8N4um tWEcZTyKAAKzVckVrOxvrm4tTIvOoodEgZCUzhSGJ4MHjMgd6OlTHptGYIvtMXtW /w//y/h5xiU+Im2yqZVky8pwxDYYvtLNdszJQWcensHUBa+5fqo6x10KDCCK4Py/ l+RKy2KqN2ObEjTZWuyhcejCmetImWdV+lGuBERvFKcOi6Gt6XRVuF535nXHNgx7 xFtrZM8u+CnFdn2HmTqwJL0ZT8X+O2Jf6LAWilKVNM2PvPd4GvD3+YqtrnZqlqe0 4+d0wbQqoNzJh1TCQeQUy/LHZ6UriMy8S+pb48k6jjyYEYhPA20StBVMXJTzhg3D euL7mNGzyE0EDP6GP2xApAG4sRHdIlSDItmsCNahFbAku8VSE5b/mGchs2JIcFNO kKyPRsA5k4dYO2jJuqmeGUTQbCnYNzdopZDvBRyEj+aYZo9yFYzJiZnQqMjhxZzH uSJHMd+w/Ys7jpojZGsX/boD8coo+2/UuU3l/t3Lw8KDfjF0CHwbyp39iLAUWBAV eartEhA+i3QNhIgF205WO6NHfekIPpXFdVZikKIBBlXyBTEHvLHTXtjNJm0aSpaI mKVy2sUh4/CxWCkfi8xPtJO4ESy2C4VWme+vjB/QQzTpoocvNUk=
    =S4xs
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Simon McVittie@21:1/5 to Marc Haber on Fri May 30 21:40:02 2025
    On Fri, 30 May 2025 at 20:15:47 +0200, Marc Haber wrote:
    If the libraries are not backwards compatible, you might want to talk
    to the Debian Games Team (pkg-games-devel@lists.alioth.debian.org)
    whether they plan to package the 3.0 series independently from the 2.x
    series in Debian 14/forky.

    Better to contact the maintainers of this specific library via libcsfml@packages.debian.org or a bug report, and/or the games team's discussion list debian-devel-games@lists.debian.org, in this case. I've
    cc'd the relevant addresses here; please consider dropping the cc to debian-devel in any replies.

    The pkg-games-devel list is high-traffic with lots of autogenerated
    messages about all of the team's games, but most of the team probably
    don't read that whole list, because most of its traffic is not relevant
    to most team members - instead, I suspect most team members are only
    subscribed to messages about a few specific games and libraries that
    they're interested in.

    On Fri, May 30, 2025 at 01:43:25PM -0400, First Name wrote:
    The [SFML] 3.0 series is not
    available yet in Debian 12, however, when it does come available, I would >>want the 2.0 series to still be available due to the lack of backwards >>compatibility SFML provides.

    Whether to make the new major version completely replace the old one
    (like we do for new major versions of OpenSSL) or coexist for a while
    (like we do for new major versions of SDL, GTK and Qt) is a decision for
    the package's maintainer to make. At the moment the version packaged in experimental completely replaces SFML 2.x rather than being an
    independent package: they both implement libcsfml-dev. (Like OpenSSL,
    unlike SDL/GTK/Qt.)

    If the upstream developer of this library intended the two different
    major versions to be parallel-installable (like SDL, GTK and Qt do),
    then they would have needed to choose names for the files of the new
    major version that allow them to be installed together: <https://ometer.com/parallel.html> (which is 20+ years old but is still
    good advice). However, it seems they didn't do that: both version 2 and
    version 3 have pkg-config modules with names like csfml-audio.pc and
    shared libraries with names like libcsfml-audio.so, which means
    developers cannot have both version 2 and version 3 installed at the
    same time.

    Unless this has changed since 3.0.0 rc1, if SFML 3 was packaged
    separately, then libcsfml3-dev would need a Conflicts: libcsfml-dev
    preventing them from being installed at the same time (like the way libfltk1.3-dev and libfltk1.4-dev are separate packages, but cannot
    both be installed on the same system at the same time).

    It is not always completely obvious whether a separate package for a new
    major version is a good idea, even when it is technically possible. A
    recurring problem that we have in Debian is that upstream projects
    release a new major version of a library (like SFML 3), and either
    immediately or some time later they stop supporting the old version
    (like SFML 2). If the old version is a separate package, the risk is
    that the old, unsupported version continues to hang around in Debian for several years afterwards, taking up QA resources and suffering from bugs
    and sometimes security vulnerabilities, because nobody wants to remove
    older programs that still use the old version and were never ported to
    the new one - but nobody is really maintaining it either, because the
    most we can realistically do with a library that is dead upstream is to
    fix the most urgent issues to keep it on life-support.

    For example we've seen this with GTK 2, SDL 1.2, every previous Qt major version, libsoup 2.4 and many more. One way to force this not to happen
    is to only have the new library (similar to the way OpenSSL 3 completely replaced earlier OpenSSL versions in Debian), which gives dependent
    programs an ultimatum: either they must be updated to the new library,
    or they can't be in Debian any more.

    smcv

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From James Cowgill@21:1/5 to Simon McVittie on Mon Jun 2 12:20:01 2025
    Hi,

    On 30/05/2025 20:31, Simon McVittie wrote:
    On Fri, May 30, 2025 at 01:43:25PM -0400, First Name wrote:
    The [SFML] 3.0 series is not
    available yet in Debian 12, however, when it does come available, I
    would
    want the 2.0 series to still be available due to the lack of backwards
    compatibility SFML provides.

    Whether to make the new major version completely replace the old one
    (like we do for new major versions of OpenSSL) or coexist for a while
    (like we do for new major versions of SDL, GTK and Qt) is a decision for
    the package's maintainer to make. At the moment the version packaged in experimental completely replaces SFML 2.x rather than being an
    independent package: they both implement libcsfml-dev. (Like OpenSSL,
    unlike SDL/GTK/Qt.)

    I'm going to talk about SFML and not CSFML which is the C binding to
    SFML (related but not the same library).

    SFML 3.x did indeed make a number of changes to the API which make it incompatible to the point where applications need to make a lot of
    changes. Most of the changes are small though (renamed and removed a few functions, moved some APIs to a more C++17 style etc). Upstream
    published a migration guide with a list of changes.

    Upstream also declared SFML 2.x to be dead as soon as they released 3.x
    and they will not do any more 2.x releases.

    Given that and the fact the library isn't used too much in Debian, I
    decided I would replace SFML 2.x with 3.x without retaining the old
    library (which is also what I also did way way back when I moved from
    1.x to 2.x). I was originally planning for this to happen in trixie but
    some of the porting turned out to be a bit more complex than I thought
    and it didn't happen before the freeze.

    So trixie will only ship SFML 2.6. I intend to upload 3.0 (and therefore
    remove 2.6) just after the release happens.

    James

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)