459 Commits

Author SHA1 Message Date
Niels Thykier
f4ecd86000
Pass migration items to policies (instead of src + suite)
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-27 09:52:33 +00:00
Niels Thykier
97abb6f467
ExcuseFinder: Reduce the number of migration items created
With this change, we reduce the number of migration items creted only
to be discarded because the item is not relevant/actionable.

Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-27 06:58:05 +00:00
Niels Thykier
78d120114f
ExcuseFinder: Merge two loops
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-27 06:58:04 +00:00
Niels Thykier
9a0a99abc9
ExcuseFinder: Have _should_* work on migration items
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-27 06:58:03 +00:00
Niels Thykier
d9f9c6d4a9
Let ExcuseFinder create migration items
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-27 06:58:02 +00:00
Niels Thykier
6dde43a339
Create an ExcuseFinder class for computing relevant excuses
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-27 06:58:00 +00:00
Niels Thykier
59633a92b5
Clone all_buildarchs before mutating it
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-27 06:55:49 +00:00
Niels Thykier
2c9e0b9b97
do_all: Prune cruft after non-recursive hints (e.g. "easy")
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-21 20:48:14 +00:00
Niels Thykier
c30ecbb7e8
Skip cruft on source migration / removal items
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-21 20:35:02 +00:00
Niels Thykier
73791e48d0
Rename migrate_item{,s}_to_target_suite
It accepts multiple items, so using a singular "item" seems like a
misfeature.

Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-21 20:35:01 +00:00
Niels Thykier
5d408fa800
Remove new cruft items in iter_packages
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-21 20:34:59 +00:00
Niels Thykier
32ebe9d4e0
Ensure get_auto_hinter_hints does not choke on cruft items
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-21 20:34:58 +00:00
Paul Gevers
16f823dd91 autopkgtest: in Debian we want linux to be treated as any other 2019-01-21 20:22:59 +00:00
Paul Gevers
1ca76486b5
Replace libreoffice with doxygen as the libgcc smoke test for gcc.
Bug-Ubuntu: https://bugs.launchpad.net/bugs/1793260

Original patches by Steve Langasek
2019-01-20 21:33:30 +01:00
Niels Thykier
69d42ffb36
solver: improve apply_order to simplify more code
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:13:09 +00:00
Niels Thykier
b306700376
solver: Extract a function from _comute_group_order_adds
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:13:08 +00:00
Niels Thykier
259fecf6cf
solver: Rename a variable to avoid confusion
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:13:07 +00:00
Niels Thykier
cdcfe85bfa
solver: Replace dict with a proper object
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:13:06 +00:00
Niels Thykier
93f101bee2
solver: Extract some common code into a function
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:13:05 +00:00
Niels Thykier
2ed6161b49
solver: Refactor out a function to avoid duplicated code
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:13:04 +00:00
Niels Thykier
af20634b12
solver: Merge some loops to reduce nesting level
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:13:03 +00:00
Niels Thykier
b61e1086bd
solver: Invert an if-statement to reduce max indentation level
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:13:02 +00:00
Niels Thykier
68407c53c0
Remove an unnecessary if-statement
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:13:01 +00:00
Niels Thykier
9971714e27
solver: Merge two loops by using chain
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:13:00 +00:00
Niels Thykier
16dc303190
solver: Reduce two small loops into a comprehension
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:12:59 +00:00
Niels Thykier
d3e06fc45f
solver: Split _compute_group_order into three methods
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:12:58 +00:00
Niels Thykier
c65b377c5d
solver: Split solve_groups into 3 smaller methods
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:12:56 +00:00
Niels Thykier
4eb038ab6d
autopkgtest: Move field creation into __init__
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 22:12:14 +00:00
Paul Gevers
1ecb07ac2d
autopkgtest: bug fix in baseline cache 2019-01-19 20:14:31 +01:00
Paul Gevers
075d4d823b
autopkgtest: fix copy() in save_state 2019-01-19 20:13:00 +01:00
Paul Gevers
c6c5c45287
autopkgtest: tiny change for easier understanding 2019-01-19 20:12:51 +01:00
Paul Gevers
d038e7bbe6
autopkgtest: simplify bin_triggers logic/naming 2019-01-19 20:12:41 +01:00
Niels Thykier
caf83b9357
Fix the remaining two style issues in britney2/__init__.py
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 17:02:10 +00:00
Niels Thykier
e0b46e5196
Make the source pkg consistency checks a TargetSuite method
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 16:47:40 +00:00
Niels Thykier
b200c15062
Add a missing "no cover"
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 13:06:19 +00:00
Niels Thykier
427328821e
Remove redundant variables
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 12:56:10 +00:00
Niels Thykier
b0835fa4a1
Fix pycodestyle warnings
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 12:51:16 +00:00
Ivo De Decker
66648c1a03
Add BuiltUsingPolicy
Signed-off-by: Ivo De Decker <ivodd@debian.org>
2019-01-19 12:45:07 +00:00
Ivo De Decker
4fcb90b775
Read Built-Using info for binary packages
Signed-off-by: Ivo De Decker <ivodd@debian.org>
2019-01-19 12:45:06 +00:00
Ivo De Decker
35ae8848b4
Fix apply_src_policies when policy is applied on multiple archs
Move the logic of apply_src_policy and apply_srcarch_policy into PolicyEngine.

This fixes an issue with the excuses.yaml output introduced in commit
15e5228669: only the last verdict was added to the excuse info for that
policy.

Signed-off-by: Ivo De Decker <ivodd@debian.org>
2019-01-19 12:45:05 +00:00
Niels Thykier
bb699f7416
Make britney2/utils.py PEP-8 clean
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 12:03:36 +00:00
Niels Thykier
5a38e00996
Fix pep8 issues in check_target_suite_source_pkg_consistency
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 12:03:35 +00:00
Niels Thykier
c9d523da93
Remove trailing whitespace
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-19 12:03:34 +00:00
Ivo De Decker
cd08deb943 Fix build-dep check for source with only arch: all binaries
When a source has only arch: all binaries, the Build-Depends had no relevant
architectures, so the check was skipped. Instead check it on any architecture,
just like Build-Depends-Indep.

Signed-off-by: Ivo De Decker <ivodd@debian.org>
2019-01-19 09:45:52 +00:00
Ivo De Decker
15e5228669 Add src_policy option to policies.
The src_policy defines wether, for source items, the source policy should be
run (RUN_SRC, the default), the arch policy should be run on every arch
(RUN_ON_EVERY_ARCH_ONLY), or both (RUN_SRC_AND_EVERY_ARCH).

Signed-off-by: Ivo De Decker <ivodd@debian.org>
2019-01-17 18:40:39 +00:00
Niels Thykier
82fa58df20 Extract a compute_item_name method
Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-16 22:37:23 +00:00
Ivo De Decker
97ed917db4 Sort some data for deterministic output in excuses
Signed-off-by: Ivo De Decker <ivodd@debian.org>
2019-01-16 22:37:23 +00:00
Niels Thykier
f928c7ed3d Make SourcePackage.binaries a set
The recent code changes made use remove from the "binaries" field in
SourcePackages.  Lists are not particularly optimized for this kind
of removal and we have a few source packages with a lot of binary
packages (e.g. libreoffice, gcc-X-cross{,-ports}) that might trip
poor performance.

Signed-off-by: Niels Thykier <niels@thykier.net>
2019-01-14 13:19:05 +00:00
Ivo De Decker
37a173af67 Always create a new SourcePackage
When an item is migrated to the target suite, always create a new
SourcePackage object with a separate binaries list (independent from the list
in the source suite). That list is updated for every binary that is added,
updated or removed. This should ensure consistent source package information
in the target suite.

The undo code doesn't need to be updated for this, because the old
SourcePackage object is put back on undo, with the old binary list.

Signed-off-by: Ivo De Decker <ivodd@debian.org>
2019-01-14 13:19:05 +00:00
Ivo De Decker
7bba77726b Always define source_t in apply_item_to_target_suite
Signed-off-by: Ivo De Decker <ivodd@debian.org>
2019-01-14 13:19:05 +00:00