Gentoo Archives: gentoo-dev

From: "Michał Górny" <mgorny@g.o>
To: gentoo-dev@l.g.o
Cc: kensington@g.o
Subject: Re: [gentoo-dev] Re: revbumping ebuilds after USE dependency changes
Date: Sun, 28 Jul 2013 09:11:07
Message-Id: 20130728111113.318cdc6a@gentoo.org
In Reply to: [gentoo-dev] Re: revbumping ebuilds after USE dependency changes by Michael Palimaka
1 Dnia 2013-07-25, o godz. 17:07:00
2 Michael Palimaka <kensington@g.o> napisał(a):
3
4 > On 25/07/2013 05:17, Michał Górny wrote:
5 > > Actually per PMS you are required to revbump (and therefore require
6 > > upgrade on users' side) whenever you change the deps and don't expect
7 > > to add a new version soon enough.
8 >
9 > Can you please provide a link/reference to that part? I am interested in
10 > reading more about it.
11
12 To be honest, I have no idea if that's worded at all since PMS doesn't
13 cover vardb. I may have overused the term 'per PMS' then.
14
15 However, this is what Brian & Ciaran (at least) were criticizing for
16 some time. The idea is that when you build an ebuild, you are basically
17 either creating a binary package or installing a package to the system
18 (or both). Along with that, metadata is transferred from the ebuild to
19 the package or vardb.
20
21 With a proper design, you have two 'repos': one with ebuilds,
22 and the other consisting purely of installed packages (vardb/system).
23 What's important, per definition vardb is self-satisfactory. That is,
24 dependencies of every installed package are supposed to be satisfied by
25 installed packages purely.
26
27 Now, what portage does is implicitly applying _some_ of the metadata
28 from the ebuild tree to vardb without rebuilding the package. In some
29 cases. As an effect, vardb is no longer self-satisfactory,
30 and represents something between the package that was built
31 and the current ebuild.
32
33 Ciaran has already elaborated a bit on the potential issues. It gets
34 most dangerous when you create some meaningful changes without
35 a revbump. I'll give you a simple example that I can think of.
36
37 Say, you fix a semi-build-time issue of linking against unnecessary
38 dep. Users who build the ebuild from now on benefit by having less
39 deps. The dep is less problematic than rebuilding the package, so users
40 who built it before prefer to wait for next version.
41
42 But in this case, portage may implicitly update the deps from ebuild
43 without rebuilding it. This means that users who still link against
44 the dep, may end up with the dep removed and program broken.
45
46 --
47 Best regards,
48 Michał Górny

Attachments

File name MIME type
signature.asc application/pgp-signature

Replies

Subject Author
Re: [gentoo-dev] Re: revbumping ebuilds after USE dependency changes Kent Fredric <kentfredric@×××××.com>