"In Fedora" or "For Fedora", or Library versions dependency management
Bryan Kearney
bkearney at redhat.com
Wed Sep 17 12:20:47 UTC 2008
Fernando Nasser wrote:
> Hi folks,
>
> We are preparing a set of JBoss AS 4.2.x RPMs _for_ Fedora. I say 'for'
> because we have a huge (hundreds) dependency set and some of the things
> are not suitable for Fedora. We've been working in reducing this set,
> solving problems but that will take a couple of years at least, and will
> probably be for an AS 5 version, never for the 4.2.x as there is no way
> to influence that upstream at this stage.
>
> So we decided to have a separate repository that people can subscribe
> their systems too and install a jbossas 4.2.x RPM with the dependencies
> that are not on Fedora etc.
>
> Another problem that is hitting us, and this is the main reason of this
> message, is that the versions of some packages that are in Fedora base
> are not compatible with ours stuff. An App Server has to pass TCK
> certification and has too many component interactions end up requiring
> very specific versions of the libraries. We are having to add some
> hacks to our package to work around that. Some cases we can solve by
> upgrading the package in the next Fedora base, *IF* that dosen't break
> something else that depends on those libraries and is in Fedora already.
> Some others we will keep bugging JBoss AS maintainers to upgrade in
> some new release. Some we have a 'versioned' package that installs in
> parallel. Other just can't be helped.
>
> This problem of conflicts of dependency version requirements happens
> even between our products. We have created a scoreboard with versions
> of the libraries we need so we could negotiate, among all projects, the
> versions we will be use in ALL products. But it is not easy, there are
> cases which are very difficult to solve -- you either break one or the
> other, backporting is difficult etc.
>
> My point is, the more packages we add to the Fedora base the worse it
> will be for us to agree on the versions of these. So this would
> indicate that the "for Fedora", as opposed to "in Fedora" approach
> should be considered by all.
>
> On the other hand, each of us having a different set of libraries in our
> own repositories will make it difficult for people wanting to install
> more than one. A solution for this would be for us to foresee possible
> cases where interoperability is desired and work out the dependency
> problems just between those ISV products involved.
>
> Another thing, even if we go to a "in Fedora" as the preferred method,
> we still can use the "for Fedora" approach as a intermediate state,
> before all dependencies needed by some product exist in Fedora.
>
> One of our possible solutions to make our JBoss AS RPM set available is
> release it in JPackage.org. They have mirrored repositories and there
> are distro specific repos, in addition to the generic repos, so our
> modifications for Fedora can be uploaded to their fedora-9 repo.
>
> Of course, if we all decide to make things available from JPackage, the
> dependency conflict will move there. But JPackage wants to have a
> 'base' repo with additional (and optional) repos for some major
> components like App Servers, so one can decide if they want, for
> instance, JOnAS or JBoss, and get the appropriate dependencies. This
> added to the yum priority plugin turns in a very flexible setup.
>
>
> The above looks more like a brain dump, sorry. I just came back from
> vacations and I am traveling for a meeting next week, so time is scarce.
This may be a big can-o-worms.. and if so I apologize, but is there a
thought to support multi-versions jars? I could see a scenario where
xerces 2.8.X is a stream (2.8.1 and 2.8.2) installed at the same time as
xerces 2.9. The value being that I guess the issue is over major
releases, not minor ones. The downside being I am sure this is verbotes
in some fedora packaging way.
-- bk
-- bk
More information about the Fedora-isv-sig-list
mailing list