Gentoo Archives: gentoo-dev

From: Sergei Trofimovich <slyfox@g.o>
To: gentoo-dev@l.g.o
Cc: bircoph@g.o, haskell@g.o
Subject: Re: [gentoo-dev] Any deptree stabilization/keywording path finder?
Date: Sat, 18 Jul 2015 20:24:48
Message-Id: 20150718212413.0d708a56@sf
In Reply to: [gentoo-dev] Any deptree stabilization/keywording path finder? by Andrew Savchenko
1 On Fri, 17 Jul 2015 13:15:53 +0300
2 Andrew Savchenko <bircoph@g.o> wrote:
3
4 > Hello,
5 >
6 > TL;DR Is there any tool to build dependency tree for all packages
7 > needed to be stabilized (or keyworded) in order stabilize (keyword)
8 > foo/bar?
9 >
10 > Sometimes in order to stabilize a single version bump a whole lot
11 > of packages needs to be stabilized as dependencies. A good example
12 > is [1]. What I really need here is to stabilize
13 > dev-haskell/pandoc-siteproc (I don't even care about exact version,
14 > since any version looks ok for app-doc/root-docs), but this
15 > triggers a whole lot of haskell packages to be stabilized. There
16 > are several issues here:
17 >
18 > 1. There are many solutions for this issue, since version
19 > requirements usually allow some range of versions. Looks like this
20 > is a classical graph path finding task. It would be great to have a
21 > tool for best effort solution: e.g. for a tree with minimal number
22 > of dependencies of with most recent packages possible (for those
23 > which are in the tree for at least 30 days).
24 >
25 > 2. It is very tedious to build such dependency tree manually (this
26 > is how it was done in [1]). To make it worse such work is
27 > error-prone, because it is near to impossible to check that each
28 > stabilization in the dependency tree will not trigger any blocker
29 > in the whole portage tree. Actually at least one such error was made
30 > [2]. The best that can be done by hand is to verify that the
31 > stabilization dependency tree is self-consistent, but even this
32 > check requires a lot of time and effort.
33 >
34 > All these problems should be solvable with an appropriate tool, but
35 > I can't find such tool. Apparently it should inherit some of emerge
36 > and repoman functionality for deptree building and checking
37 > respectively.
38 >
39 > Any ideas? I suppose arch teams should have something similar for
40 > their goals.
41 >
42 > P.S. Note for the record: I filed a lot of stabilization request
43 > for dev-haskell/* packaged I do not maintain, because haskell team
44 > had not responded in a reasonable amount of time for my stable
45 > request [3]. I'm not blaming anyone here, just explaining why such
46 > action was taken.
47
48 > [1] https://bugs.gentoo.org/showdependencytree.cgi?id=529538&hide_resolved=0
49 > [2] https://bugs.gentoo.org/show_bug.cgi?id=552388
50 > [3] https://bugs.gentoo.org/show_bug.cgi?id=546260
51
52 As you have discovered haskell packages have deep dependency chains
53 and are interdependent. We (the haskell team) don't have a good stabilization
54 story at all.
55
56 It's partly why you didn't get any response.
57
58 Our plan used to be "stabilize new major GHC on all arches and fix
59 what breaks afterwards". We've improved our ebuild generation
60 since thus you get resolution-time conflicts instead of compile-time
61 ones.
62
63 To ease the STABLEREQ pain we need:
64 - stabilize stuff more argressively (needs some tooling), that
65 will solve dependency depth problem on every new stabilization
66 - fix repoman to help us in at least detecting inconsistent states:
67 https://bugs.gentoo.org/show_bug.cgi?id=555266
68 that way we will gain more confidence f stable tree not being
69 completely broken
70
71 --
72
73 Sergei

Attachments

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

Replies

Subject Author
Re: [gentoo-dev] Any deptree stabilization/keywording path finder? Andrew Savchenko <bircoph@g.o>