|
|
Log in / Subscribe / Register

Calling for a new openSUSE development model

Calling for a new openSUSE development model

Posted Jun 18, 2012 14:24 UTC (Mon) by nix (subscriber, #2304)
In reply to: Calling for a new openSUSE development model by drag
Parent article: Calling for a new openSUSE development model

Then you let each desktop environment layer producer fend for itself.
That works great until you realise that a good few things the GNOME guys regard as quintessentially GNOME (e.g. glib) are used not only by other desktop environments (both KDE and xfce use glib) but even by what could be considered core system components if they can be considered anything (e.g. both syslog-ng and systemd use glib). Indeed syslog-ng migrated *from* its own object model *to* glib -- asking it to migrate back so that a core system component does not depend on a piece of a desktop environment is unlikely to be received well.


to post comments

Calling for a new openSUSE development model

Posted Jun 18, 2012 18:09 UTC (Mon) by joib (subscriber, #8541) [Link]

Well, then the "core OS" can include glib; I don't think it's worth getting too worked up by some idea that glib belongs "higher" up in the stack. If it's needed by some "core" component, then so be it. If GNOME, KDE, or some other (set of) packages requires a different version of glib, they can use a separate version (say, a different so version number or by using RPATH).

I suppose, in general one could (and should?) argue which packages/libraries should or should not belong to the core. But I don't think arriving at some consensus on this matter is the biggest hurdle for this approach, but rather getting buy-in for the general idea.

Calling for a new openSUSE development model

Posted Jun 18, 2012 19:03 UTC (Mon) by Cyberax (✭ supporter ✭, #52523) [Link] (7 responses)

glib by now should be considered a 'core' package. Besides, glib developers are very careful with backwards compatibility. So there's no reason to leave it out of the "core" profile.

IMO, all core libraries should be designed to be backwards compatible _forever_, just like libc or kernel ABI. That should be the main criterion for their inclusion.

Calling for a new openSUSE development model

Posted Jun 18, 2012 23:01 UTC (Mon) by nix (subscriber, #2304) [Link] (6 responses)

IMO, all core libraries should be designed to be backwards compatible _forever_, just like libc or kernel ABI. That should be the main criterion for their inclusion.
Agreed... but that rules out glib, glib 3 is not ABI nor API compatible with glib 2, and that was quite recent.

Calling for a new openSUSE development model

Posted Jun 18, 2012 23:05 UTC (Mon) by Cyberax (✭ supporter ✭, #52523) [Link]

Well, it's OK in itself if glib-2 is going to be supported for the foreseeable future. Besides, right now it's a good time to make one clean break and design something that can endure and THEN standardize on it.

Calling for a new openSUSE development model

Posted Jun 19, 2012 1:49 UTC (Tue) by rahulsundaram (subscriber, #21946) [Link] (4 responses)

I don't think it rules out Glib. Glib along with a significant amount of the GNOME platform(not things like GNOME Shell) including but not limited to GTK and Gstreamer maintain ABI compatibility for a long time. So does Qt et all.

When they do break it, they announce it widely and make both versions parallel installable which is really the best way to handle it unless you want to never ever break ABI compatibility which I think is a unreasonable expectation for anything higher up than say glibc.

Calling for a new openSUSE development model

Posted Jun 19, 2012 14:22 UTC (Tue) by nix (subscriber, #2304) [Link] (3 responses)

unless you want to never ever break ABI compatibility which I think is a unreasonable expectation for anything higher up than say glibc.
Why not? X11 did it. Furthermore, with symbol versions it's not even hard to do.

Calling for a new openSUSE development model

Posted Jun 19, 2012 21:33 UTC (Tue) by rahulsundaram (subscriber, #21946) [Link] (2 responses)

Because higher up layers make mistakes which they dont want to be struck with forever. If it was trivial, everyone would be doing it already.

Calling for a new openSUSE development model

Posted Jun 20, 2012 16:12 UTC (Wed) by mpr22 (subscriber, #60784) [Link] (1 responses)

I wouldn't ask them to be stuck with their mistakes forever, as long as they honour the proper sequencing of "create new; deprecate old; discard old". Some projects tend towards conflating "create new" and "discard old" into a single step. This is an understandable temptation, but one that should, as a general rule, be resisted by anyone working on a project that has (and wants to keep) actual users outside the project.

Calling for a new openSUSE development model

Posted Jun 20, 2012 17:44 UTC (Wed) by rahulsundaram (subscriber, #21946) [Link]

This is how popular libraries like glib do development. I was just noting that the "discard old" step is a ABI break.


Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds