548 Commits

Author SHA1 Message Date
Adam D. Barratt
9dc773b076 Merge branch 'master' into p-u
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-10-22 19:48:55 +00:00
Adam D. Barratt
bbfaba859e When auto-hinting, also try a "minimal" package set
The minimal set is comprised of only the first level of (reverse)
dependencies, before any further iterations of packages are added to
the set.  In some cases, the result of the full iteration will contain
packages which cause problems when migrated but the minimal set,
although possibly a less optimal solution, may be able to migrate
successfully.

It is assumed that migrating the larger set of packages will be
preferred if possible, so minimal sets are tried later.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-10-22 19:46:09 +00:00
Adam D. Barratt
be28f670a5 Don't consider intra-source dependencies for smooth updates
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-10-22 19:41:51 +00:00
Adam D. Barratt
f4c306e0e9 Remove an unused variable
(part of 22a9427c21b6216e093252ba77e09d5f10e436f7 from master)

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-10-22 19:38:26 +00:00
Niels Thykier
79f24cd38f Removed two unused methods, check_installable and check_conflicts 2011-10-22 19:37:13 +00:00
Niels Thykier
22d8167786 Allow a list as well as a tuple in Britney.do_hint 2011-10-22 19:30:00 +00:00
Adam D. Barratt
c47e08b8cf Fix up broken logic so that binary removals work again
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-10-22 19:28:09 +00:00
Adam D. Barratt
513a6ff453 smooth updates: pass a list of MigrationItems to remove, not strings
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-10-22 19:26:57 +00:00
Adam D. Barratt
2e51db80c9 Make sort_actions support MigrationItems
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-10-22 19:25:43 +00:00
Adam D. Barratt
49cbd35310 Fix up the addition of "unblock" hints for t-p-u approvals.
Thanks to Niels Thykier for the original idea.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-10-22 14:47:00 +00:00
Niels Thykier
ced28100fb Fixed tab-completion for packages containing "-"
Also fix broken tab-completion after the first "/".
2011-10-22 14:09:35 +02:00
Niels Thykier
7343b84288 Added package completion to the readline completor 2011-10-22 13:42:14 +02:00
Niels Thykier
dda7031ea3 Do not crash if writing histfile fails with --hint-tester
It does not affect the result and only means the user does not
have any readline-history.
2011-10-22 10:26:10 +02:00
Mehdi Dogguy
a687b00e18 Typo fix 2011-10-19 20:02:29 +00:00
Adam D. Barratt
dcad3f3480 When auto-hinting, also try a "minimal" package set
The minimal set is comprised of only the first level of (reverse)
dependencies, before any further iterations of packages are added to
the set.  In some cases, the result of the full iteration will contain
packages which cause problems when migrated but the minimal set,
although possibly a less optimal solution, may be able to migrate
successfully.

It is assumed that migrating the larger set of packages will be
preferred if possible, so minimal sets are tried later.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-10-19 18:23:52 +00:00
Niels Thykier
cf080e49bd Reduced Britney.parser to a local variable
Britney.parser was not used outside __parse_arguments, so there
is little use in keeping it alive as an instance variable.
2011-10-19 12:14:02 +02:00
Niels Thykier
33a10f6f35 Fixed some weird indentations 2011-10-19 11:49:25 +02:00
Niels Thykier
1103ee2e61 Removed some unused local variables and arguments 2011-10-19 11:40:11 +02:00
Niels Thykier
77c36ca7cb Removed two unused methods, check_installable and check_conflicts 2011-10-19 11:30:45 +02:00
Julien Cristau
04f3dd1d94 Typo fix 2011-10-16 19:39:24 +02:00
Adam D. Barratt
8268ab61a7 Don't consider intra-source dependencies for smooth updates
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-10-13 20:22:33 +00:00
Adam D. Barratt
04a7bc6bb2 hints: rename the "hints" method to the more helpful "search".
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-09-04 20:26:36 +00:00
Adam D. Barratt
6b953d8f9e Migrate "packages[0]"-style code to the package and version properties.
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-09-04 19:46:38 +00:00
Adam D. Barratt
7e324daa56 A failed unblock hint should list that hint's user, not the block's
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-09-04 19:00:59 +00:00
Adam D. Barratt
0af34d1629 Fix some brown paper bag bugs in the hint parsing code.
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-09-04 18:24:54 +00:00
Adam D. Barratt
0971adec29 Move hint-using code to using HintCollection and HintItem
In order to make a number of the changes required for the migration simpler,
we also complete the previous migration to using {Hint,Migration}Item rather
than passing around strings representing packages and converting between
the two forms in several places.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-09-04 16:41:33 +00:00
Adam D. Barratt
9c7fcbc42c Migrate most code parsing package names to use MigrationItems.
The use of MigrationItem allows us to centralise the parsing and splitting of
package names and architectures, avoiding duplication and simplifying a
number of conditions.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-08-31 19:55:22 +00:00
Adam D. Barratt
d10630ff56 Grammar / spelling fix some comments
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-08-28 21:45:14 +00:00
Adam D. Barratt
3b7fb3e733 Bring the author and version information in sync with reality.
The software hasn't been "alpha" for some time.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-08-28 21:28:47 +00:00
Adam D. Barratt
9bcc953588 Update a comment to account for proposed-updates support.
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-08-28 21:25:38 +00:00
Adam D. Barratt
17df888d6c Add myself to the copyright information.
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-08-28 21:22:31 +00:00
Adam D. Barratt
fb2279cf12 Better document the new auto-hinter functionality.
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-08-28 21:19:05 +00:00
Adam D. Barratt
0b4c63a832 Make the auto-hinter more intelligent.
Rather than only considering pairs of packages, we start from a "leaf"
package (i.e. one with an excuse which declares no dependencies on
other packages' excuses) and recursively build a list of packages
which are the dependency or reverse dependency of a package already
in the list.

Any list which is a subset of another list is ignored and the remaining
items are then processed as "easy" hints.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-08-27 08:50:14 +00:00
Adam D. Barratt
418a9db9f9 Avoid marking more valid excuses as impossible.
Previously we could not reliably detect whether an excuse's dependency
from a source package to a binNMU was valid, as the excuse did not
contain sufficient information to determine the set of  architecture(s)
on which the dependency existed.

By modifying the representation of the dependency list in the excuse to
include an architecture list we can walk the relationships in reverse
in order to sanity-check the source -> binNMU dependency.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-08-03 20:53:38 +00:00
Adam D. Barratt
88bc3eeb5e Avoid marking some valid excuses as impossible.
When considering an excuse for pkg1/arch, a dependency on either of
pkg2/source or pkg2/arch should be considered acceptable so long
as there is a corresponding excuse.

Dependencies from pkg1/source to pkg2/arch will still be considered
"impossible", as pkg1's excuse does not contain any information
regarding the architecture(s) on which its dependency to pkg2 exists.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-08-02 18:46:17 +00:00
Adam D. Barratt
4958255e54 Stop referring to impossible dependencies as "unpossible".
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-08-02 17:36:03 +00:00
Adam D. Barratt
ddf31479e2 Fix up p-u optionality
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-07-27 16:14:52 +00:00
Adam D. Barratt
c0f3af69a7 Make reading of pu package lists optional
This allows the consideration of packages from proposed-updates to be
{dis,en}abled depending on whether the configuration file specifies
the path to the packages / sources files.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-07-27 09:42:40 +00:00
Adam D. Barratt
0187eaaee1 Merge and re-factor some pu and tpu tests
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-07-27 09:38:27 +00:00
Adam D. Barratt
2e3dd20a36 Add initial support for pulling updates from stable-proposed-updates
This is most likely to be useful near the beginning of a release cycle,
when the versions of a package in stable and testing are the same and
the new version of the package is unable to migrate from unstable for
some reason.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-07-27 09:30:00 +00:00
Adam D. Barratt
b909f73d6a Make a variable name more descriptive (first -. circular-first)
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-07-27 08:43:02 +00:00
Adam D. Barratt
20d7614b70 Enhance the auto-hinter to support non-circular dependencies
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-07-27 08:41:17 +00:00
Adam D. Barratt
fa87a57536 Simplify (and fix) logic for assigning section "faux" to fake sources 2011-07-24 08:44:05 +00:00
Philipp Kern
ca27cd07db britney.py: turn on unbuffered writing 2011-07-23 18:40:03 +00:00
Adam D. Barratt
e2b6d344e0 Fix typoed method name. Thanks, Julien Cristau. 2011-06-30 17:45:44 +00:00
Adam D. Barratt
458bbb9a6f Re-enable writing of "Dates" at the end of the run.
The permissions issues which led to the writing being disabled no longer
exist and not persisting the date list makes b2 unsuitable for use as a
primary implementation.
2011-06-28 19:13:11 +00:00
Adam D. Barratt
ecb1c026fe List packages which became uninstallable during the run (if any) 2011-06-28 19:10:13 +00:00
Adam D. Barratt
bf50bc9782 Documentation typo / grammar fixes
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-05-31 20:57:59 +00:00
Adam D. Barratt
62f56a7ec3 Ensure reverse-dependencies of superseded packages are always checked.
If a binary package being processed as part of a hint has moved source
packages, the installability checks for the new version of the binary
need to include the reverse-dependency information from the previous
version.  In order to allow this, modify doop_source() to take an
optional list of undo information and iter_packages() to pass such
a list when processing hints.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-05-30 19:15:54 +00:00
Adam D. Barratt
a2539aa849 Replace references to "not installable" packages with "non-installable"
This reduces the number of ways in which we refer to uninstallable packages
to two.  Those should probably be unified further to be consistent across
all parts of the code, but in the meantime this ensures that methods are
internally consistent in their terminology.

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2011-05-20 20:40:48 +00:00