733 Commits

Author SHA1 Message Date
Adam D. Barratt
ac61205d02 Improve the checks for affected packages during a sourceful update
When marking the reverse dependencies of each binary package as affected
by a sourceful update to testing, the reverse dependencies of those
packages are also affected, and so on.

This helps to avoid situations where the installability of immediate
reverse dependencies is unchanged, but that of other packages in the
dependency chain is altered, for example where alternative dependencies
are used.

See Debian bug #614249 for further details.
2011-03-01 23:35:12 +00:00
Adam D. Barratt
f7117c1ea4 Really make britney2 work with python 2.5
PyDict_Next()'s ppos argument should be a Py_ssize_t, not an int.  With
this change, britney2 no longer believes that all packages are
uninstallable.
2011-02-10 23:06:26 +00:00
Adam D. Barratt
38c842eb9e Correctly handle removal of failed tpu binNMUs in "easy"s or "hint"s
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

This extends the scope of commit 5e3a245759e1c8f2bff9072ce2aced2a5c626f12
to include cases where the tpu binNMUs are explicitly included in an "easy"
or "hint" rather than processed as part of the main run.
2010-12-23 21:42:35 +00:00
Adam D. Barratt
5e3a245759 Properly remove failed tpu binNMUs from the result set
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

When undoing the addition to the result set of a binNMU from tpu, the package
name from the hint will end in ${arch}_tpu, not ${arch}, so we should check
for both cases.  At the same time, reverse the sense of the associated test
to make the logic more obvious.
2010-12-23 20:54:14 +00:00
Adam D. Barratt
a8d8b8c451 Simplify the method of removing broken arch packages from the main list
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-11-03 19:05:46 +00:00
Adam D. Barratt
e74b600d7c Process tpu packages on broken arches in the broken architecture run
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-11-03 18:50:59 +00:00
Adam D. Barratt
b6d75ce442 Fix a typo
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-11-03 18:45:36 +00:00
Adam D. Barratt
6ac2a58e53 Stop trying to support partial removals from tpu; they make no sense
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-10-28 19:45:32 +00:00
Adam D. Barratt
19a7792982 Correctly handle binNMUs in t-p-u
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

"${pkg}/${arch}_tpu" means "the tpu binary packages for $pkg on
architecture $arch", not "the unstable binary packages for $pkg on
architecture ${arch}_tpu"
2010-10-28 19:40:38 +00:00
Adam D. Barratt
a11f4f6cfe Ignore arch:all packages when checking t-p-u readiness
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-09-21 08:41:17 +00:00
Adam D. Barratt
a015c1ef63 Make "approve" hints require the tpu package to be built on all arches
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

Previously, an "approve" hint would allow a package to migrate from
testing-proposed-updates to testing even if packages were not available
for some architectures on which the package existed in testing.

The t-p-u package must now have built on the same architectures as the
existing package in testing; the previous behaviour can be achieved by
combining "approve" and "force" hints.
2010-09-20 22:03:43 +00:00
Adam D. Barratt
4cdd25e517 Correctly process source packages in t-p-u
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

t-p-u packages are identified by the package name ending in "_tpu", not
by the first character of the name doing so
2010-09-17 19:33:22 +00:00
Adam D. Barratt
0c948a03f8 Add implicit unblocks for t-p-u approvals
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

t-p-u approval previously required both an "unblock" and an "approve"
hint if the package was blocked; the "approve" should be sufficient and
this is the simplest method of achieving that.

There are some cases where this does not quite do the right thing (e.g.
for a package which has both a t-p-u "approve" hint and an "unblock"
hint for the package in unstable) but it is preferable to requiring
t-p-u hints to be added in pairs always.
2010-09-17 18:49:46 +00:00
Adam D. Barratt
7bba1173e0 Increase the size of the tables used for storing package information
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

If the internal tables used in the C module are not large enough to store
the list of discovered packages then checking installability becomes very
slow.
2010-06-23 19:03:40 +00:00
Adam D. Barratt
f6c8c52fc7 Sort the lists of old / new RC bugs before listing them
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-03-11 19:09:31 +00:00
Adam D. Barratt
370d31b4ef Use self.__log() when warning about malformed BugsV lines
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-02-28 17:19:06 +00:00
Adam D. Barratt
92cf5754fc Print a warning if there are no unblock{,-udeb} hints
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-02-28 14:44:37 +00:00
Adam D. Barratt
1e4a1aa727 Override unblock{,-udeb} hints based on the versions they apply to
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

Based on patches to britney by Philipp Kern <pkern@debian.org>
2010-02-28 14:44:37 +00:00
Adam D. Barratt
644caa3f31 Fix typoes and grammar
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-02-28 14:44:37 +00:00
Adam D. Barratt
fa6b95e0b3 Remove duplicate binary packages when building package lists
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-02-28 14:44:36 +00:00
Adam D. Barratt
775cfc6f2b Modify the semantics of the "force" hint
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

Allow a package which is a candidate but invalidated by one or
more dependencies to be "force"d.

Based on a patch to britney by Andreas Barth <aba@debian.org>
2010-02-28 14:44:36 +00:00
Adam D. Barratt
0cf4dc85f6 Only include the latest version of each source package
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

The Sources file for unstable will contain multiple records for a single
source package when one or more architectures has out-of-date binaries.
As the latest version is that which will be considered for migration, only
that version should be added to the list of available sources.

This is not currently an issue in live use, as the data files are already
pre-processed by britney before being passed to britney2.
2010-02-28 14:44:36 +00:00
Adam D. Barratt
5809c672b7 Quote input used in URLs
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

Based on a patch to britney by Marc Brockschmidt <he@debian.org>
2010-02-28 14:44:36 +00:00
Adam D. Barratt
b711ef84a0 Support bugs filed against src:foo
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

Currently a bug against src:foo is treated as if it were filed against
foo.  As both may exist in the input list, we accumulate bugs for each
package rather than assuming package names are unique.
2010-02-28 14:44:36 +00:00
Adam D. Barratt
9336be8d7d Print a warning about malformed lines in the RC-bug list files
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-02-28 14:44:36 +00:00
Adam D. Barratt
975ac48a41 write_bugs(): Fix format string; the bug list is a string, not a number
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2010-02-28 14:44:36 +00:00
Adam D. Barratt
15f02bddd6 Update documentation relating to release-critical bugs
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>

britney now uses the "BugsV" files rather than "Bugs".  The new
files contain a list of bugs, not a count, and the migration
of the package is dependent on there being no new RC bugs in unstable
relative to testing, rather than simply fewer RC bugs.
2010-02-28 14:44:36 +00:00
Jurij Smakov
bb1d1a6f0a Add support for Breaks to b2.
Signed-off-by: Jurij Smakov <jurij@droopy.oc.cox.net>
2009-09-06 18:00:56 +01:00
Jurij Smakov
f61e151946 Do not exclude fake source packages from t-p-u processing, as they provide a mechanism for sourceless packages to propagate to testing through t-p-u. This change removes some b1/b2 diffs.
Signed-off-by: Jurij Smakov <jurij@droopy.oc.cox.net>
2009-09-03 00:40:56 +01:00
Jurij Smakov
f847e1b3c4 Return all packages solving a dep through virtual packages (like b1 does), not just the first one. This eliminates some b1/b2 excuse diffs.
Signed-off-by: Jurij Smakov <jurij@droopy.oc.cox.net>
2009-08-22 19:54:08 +01:00
Jurij Smakov
e522e541e6 More hints -> self.hints fixes.
Signed-off-by: Jurij Smakov <jurij@droopy.oc.cox.net>
2009-08-17 20:19:55 +01:00
Jurij Smakov
f52dea4d51 Use correct self.hints instead of non-existent hints.
Signed-off-by: Jurij Smakov <jurij@droopy.oc.cox.net>
2009-08-16 12:20:51 +01:00
Jurij Smakov
cda3145d95 Add udeb blocking/unblocking support for b2.
Signed-off-by: Jurij Smakov <jurij@debian.org>
2009-08-15 16:39:00 +01:00
Adeodato Simó
cf2bc3cbfb Go back to Python 2.4, since there are buggy results with 2.5.
(In particular, britney2 thinks all packages are uninstallable when
executing under Python 2.5.)
2009-03-14 16:54:46 +01:00
Adeodato Simó
75438d5854 britney.py: make executable. 2009-03-14 15:24:02 +01:00
Adeodato Simó
4f53a3db15 Print to stdout without --hint-tester, and print to output.txt with it. 2009-02-23 23:13:06 +01:00
Fabio Tranchitella
a44222fc44 Fixed a typo in write_control: we really want to write the maintainer, so
please use the correct field name.
2008-05-31 15:01:03 +00:00
Fabio Tranchitella
633eb5301f Fix a bug in write_control: we use lists and not dictionaries for storing
source packages in memory.
2008-05-28 11:13:56 +00:00
Adeodato Simó
c16bb0cc20 Compare version of approve hints against t-p-u and not testing.
source_u is the package as found in the origin distribution, normally
unstable, but t-p-u for t-p-u packages.

Acked by Fabio on IRC.
2008-05-20 19:37:27 +02:00
Adeodato Simó
b426d2a202 Make hints['approved'] also a dictionary. 2008-05-20 17:43:00 +02:00
Fabio Tranchitella
83022051b1 Do not read approvals, they are not used anymore; use the "approve" hints for
that purpose instead.
2008-05-20 12:27:03 +00:00
Fabio Tranchitella
872d087b56 My interpretation of britney's behaviour was wrong (and, strange enough, the
comment was correct); added a missing "not" for the if statement's condition.
2008-05-17 15:57:12 +00:00
Fabio Tranchitella
523bbf139b Applied patches from dato: make check_out emit a more human-readable output,
rename --check-out to --print-uninst; do not override the default
NOBREAKALL_ARCHES value when running in print-uninst mode.
2008-05-02 13:57:37 +00:00
Fabio Tranchitella
45322a7fc6 In fact, running in check-out mode all the architectures are nobreakarch; thanks dato. 2008-04-30 19:00:25 +00:00
Fabio Tranchitella
ac69b8d8b7 in check-out mode, nobreakall shuold be empty 2008-04-29 07:26:13 +00:00
Fabio Tranchitella
1768a56d7b Added check-out mode for britney.py 2008-04-29 05:08:58 +00:00
Fabio Tranchitella
024770f558 Do not break if SMOOTH_UPDATES is empty. 2008-04-23 17:25:56 +00:00
Fabio Tranchitella
752b3aab77 Implemented history for the command line hint tester (patch from dato). 2008-04-23 17:22:24 +00:00
Fabio Tranchitella
2cb47f7af2 Updates for arm/armel. 2008-04-20 15:49:47 +00:00
Fabio Tranchitella
469d67fca2 This should fix the diffs, armel is a BREAK_ARCH. 2008-02-28 17:23:37 +00:00