453 Commits

Author SHA1 Message Date
Niels Thykier
131a51ea25 Sync britney_nobreakall.conf with recent changes
Signed-off-by: Niels Thykier <niels@thykier.net>
2014-01-31 21:48:17 +01:00
Niels Thykier
5dfa64624f britney.conf: Remove ia64 from testing
Signed-off-by: Niels Thykier <niels@thykier.net>
2014-01-31 21:38:44 +01:00
Niels Thykier
07ad1de5de britney.conf: Add sparc to {BREAK,FUCKED}_ARCHES
Signed-off-by: Niels Thykier <niels@thykier.net>
2014-01-29 23:04:28 +01:00
Niels Thykier
3dc4a6367f Write "HeidiResultDelta" file containing the changes of the run
Based on Colin Watson's code to do the same from the "britney2-ubuntu"
repository[1] revision 306, 308 and 309.

Notable differences include:
 * output include version of source package being removed
 * output prefix removals with a "-" (otherwise it would be identical to
   a upgrade/new source with the change above).

[1] http://bazaar.launchpad.net/~ubuntu-release/britney/britney2-ubuntu/revision/306

Signed-off-by: Niels Thykier <niels@thykier.net>
2014-01-11 09:03:16 +01:00
Julien Cristau
cc644bc57f Avoid exploding when reading broken hints
If hint.check() fails, just ignore the hint instead of killing britney.

Signed-off-by: Julien Cristau <jcristau@debian.org>
2013-12-16 23:05:09 +01:00
Niels Thykier
36da23b5b7 britney.py: Remove obsolete comment about AIEEE
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-15 05:13:12 +01:00
Ivo De Decker
0214b41a4f Add note when a pkg is being removed because it is not in sid
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-11 21:56:51 +01:00
Niels Thykier
d9f04b88c9 britney.conf: Add EXCUSES_YAML_OUTPUT
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-11 21:49:17 +01:00
Niels Thykier
36b58958a3 excuse: Rename "generated" to "generated-date"
"generated-date" suggests the value as a date, whereas "generated"
suggests a boolean value.

Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-11 21:21:15 +01:00
Niels Thykier
f9d2d78734 util: Add new "write_excuses" function
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-11 21:21:15 +01:00
Niels Thykier
9e25dc2613 INSTALL: Mention the need for python-yaml
Also prune the "2.7" in the package names under the assumption
that people are running Jessie.

Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-11 21:21:15 +01:00
Niels Thykier
93af0aac7a excuse.py: Add "is-candidate" to the excuse
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-11 21:21:15 +01:00
Niels Thykier
1ab07cb054 excuse.py: Rename keys to include "-" between words
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-11 21:21:15 +01:00
Niels Thykier
0304b1adb4 excuse.py: Use a set for storing bugs
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-11 21:21:15 +01:00
Ivo De Decker
c971474945 handle export for excuse with 'force' 2013-12-11 21:21:15 +01:00
Ivo De Decker
e109b446df add remove reason when package not in unstable 2013-12-11 21:21:13 +01:00
Ivo De Decker
369f01e8d2 first attempt at adding reason 2013-12-10 22:27:32 +01:00
Ivo De Decker
511a25707b add bug list to yaml 2013-12-10 22:27:32 +01:00
Ivo De Decker
b7d6ee82d9 first attempt at yaml logging 2013-12-10 22:26:26 +01:00
Ivo De Decker
24d0dd7d4e fix maintainer regex to get rid of excess space
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-06 22:45:06 +01:00
Ivo De Decker
ce6357b671 if hintsdir is defined, read hints from there
This introduces a new variable HINTSDIR, which overrides the location of the
Hints dir (normally it is read from the UNSTABLE dir).

Please note that this is the location of the dir that contains the Hints dir.

Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-06 22:45:01 +01:00
Ivo De Decker
1163101cf7 read hints earlier
This allow to do quicker test of the code that reads the hints.

Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-06 22:44:56 +01:00
Ivo De Decker
c7c16a2a25 if outputdir is defined, write dates file there
This introduces a new variable OUTPUTDIR, which overrides the location where
the new dates file is written. This allow to run britney against a read-only
copy of the data.

Signed-off-by: Niels Thykier <niels@thykier.net>
2013-12-06 22:44:50 +01:00
Julien Cristau
a2d1793ab6 Fix urgency reading to obey 'low'
Set the default to maxint until we've read something.

Reported-by: Ivo De Decker <ivo.dedecker@ugent.be>
Signed-off-by: Julien Cristau <jcristau@debian.org>
2013-12-02 20:48:06 +01:00
Adam D. Barratt
d6adff3011 Only output arch:all packages which correspond to the testing source
If an architecture is marked as fucked, britney's package list for that
architecture may include arch:all packages for an older version. When
outputting the result file, we should not include those packages as
they will lead to import failures.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-12-02 09:15:32 +00:00
Julien Cristau
6fd11db7e9 Change the default urgency setting to medium
But don't force urgency to medium for new packages, they can still be
low.

Signed-off-by: Julien Cristau <jcristau@debian.org>
2013-12-01 19:01:19 +01:00
Adam D. Barratt
e06f514b80 Update hint permissions in line with team changes.
- Add ivodd
- Remove luk, he, vorlon and neilm
- Move faw to STANDARD

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-11-28 20:56:11 +00:00
Niels Thykier
d3dea1be37 Remove the old installability tester
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-11-27 19:54:22 +01:00
Niels Thykier
4030b5cb22 Rewrite installability tester
The new Installability Tester (IT) module replaces the remaining
C-parts.  Unlike C-implementation, it does not give up and emit an
"AIEEE" half-way through.

In order to determine installability, it uses two sets "musts" and
"never".  As the names suggest, the sets represents the packages that
must be (co-)installable with the package being tested and those that
can never be co-installable.  For a package to be installable, "musts"
and "never" have remain disjoint.

These sets are also used to reduce the number of alternatives that are
available to satisfy a given dependency.  When these sets are unable
to remove the choice completely, the new IT defers the choice to later.
This occasionally reduces backtracking as a later package may conflict
or unconditionally depend on one of the remaining alternatives.

Signed-off-by: Niels Thykier <niels@thykier.net>
2013-11-27 19:46:59 +01:00
Niels Thykier
f791c96f47 Defer building the nun-inst cache
This is needed for the next commit, where the "per-arch"
installability tester disappears.

Signed-off-by: Niels Thykier <niels@thykier.net>
2013-11-27 19:46:59 +01:00
Julien Cristau
db5c81f71c Add ia64 to {fucked,break}_arches
Signed-off-by: Julien Cristau <jcristau@debian.org>
2013-11-24 10:31:11 +01:00
Julien Cristau
498459d5e6 britney.conf: remove s390
Signed-off-by: Julien Cristau <jcristau@debian.org>
2013-10-14 20:41:38 +02:00
Niels Thykier
f62025871f britney.conf: Add "auto-removals" as hinter
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-09-29 19:53:15 +02:00
Adam D. Barratt
8bbdf65d07 lib/dpkg.c: don't try to dereference a NULL pointer
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-24 04:56:27 +00:00
Adam D. Barratt
e643daad28 Apply various typo and clarity fixes
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-18 20:40:00 +00:00
Adam D. Barratt
a881298103 Remove the C library placeholder for "pre-depends"
We stopped populating the element with real data some time ago, it's
time to drop it entirely.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-18 10:00:04 +00:00
Colin Watson
4576882338 Support :any architecture qualifiers for multiarch
Multiarch adds a Depends: foo:any syntax, permitted only if the
target of the dependency is "Multi-Arch: allowed".  This has
been supported by dpkg and apt for some time and is now safe to
use in unstable.

[Adam D. Barratt: adjusted to use consts.py]

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-17 20:07:38 +00:00
Adam D. Barratt
84718b7083 Make hint comparison more intelligent
"easy foo/1 bar/2" and "easy bar/2 foo/1" are simply different ways of
writing the same hint, so the corresponding Hint objects should compare
as equal.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-11 19:50:33 +00:00
Adam D. Barratt
0e3d363598 Add sanity-checking of hints
So far we only check that hints which should have version information
do (and those which should not do not).

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-11 19:25:57 +00:00
Adam D. Barratt
54b641945d Update copyright
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-07 18:21:00 +00:00
Adam D. Barratt
f1291b7463 Rename make_hintitem() to make_migrationitem()
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-07 18:19:17 +00:00
Adam D. Barratt
cf676f4105 britney_util: fix imports for the MigrationItem class rename
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-07 17:08:21 +00:00
Adam D. Barratt
504c0f9d0a hints: use MigrationItem
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-07 17:07:32 +00:00
Adam D. Barratt
e75c4a4815 Make MigrationItems versionned by default
As HintItem is now redundant, also replace it with a new class -
UnversionnedMigrationItem - and migrate users of the classes to use
the new versions.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-07 17:01:58 +00:00
Adam D. Barratt
89bc7c8d61 Replace uses of MigrationItem with HintItem
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-07 16:59:06 +00:00
Adam D. Barratt
629c80937d britney_util: add make_hintitem()
This function allows a textual representation of a package (e.g.
"foo/amd64") to be convered to a HintItem().

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2013-09-07 16:57:35 +00:00
Niels Thykier
09e9e16431 Reduce the number of "used-once" lists
Where possible, avoid creating a list only to discard immediately
afterwards.  Example:

"""
  for x in sorted([x for x in ...]):
      ...
"""

Creates a list, passes it to sorted, which generates a new list and
sorts that copy.  Since sorted accepts an iterable, we can avoid the
"inner" list and just pass it a generator expression instead.

Signed-off-by: Niels Thykier <niels@thykier.net>
2013-08-11 15:23:45 +02:00
Niels Thykier
c554bffee4 Move newlyuninst to britney_util
Also, renamed it for consistency with the other X_uninst functions.

Signed-off-by: Niels Thykier <niels@thykier.net>
2013-07-10 20:01:04 +02:00
Niels Thykier
8c911748c8 Move eval_uninst to britney_util
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-07-10 20:01:04 +02:00
Niels Thykier
a2d63aed07 Move write_heidi to britney_util
Signed-off-by: Niels Thykier <niels@thykier.net>
2013-07-10 20:01:04 +02:00