Commit Graph

749 Commits (c9dfcf9b06dccca7003452ae297fe33ead90eb10)

Author SHA1 Message Date
Niels Thykier fd614062ae Minor optimisation of force handling
8 years ago
Niels Thykier 56fa65f596 Replace a use of src[X] with src.x
8 years ago
Niels Thykier 0cc7f7a8d2 Move build_installability_tester to builder.py
8 years ago
Niels Thykier 7a63784876 Move get_dependency_solvers to utils
8 years ago
Niels Thykier c4be8436db Move read_sources_file to utils
8 years ago
Niels Thykier 0f45b195a6 Refactor doop_source to simplify logic
8 years ago
Niels Thykier 027142e12b Fix bug where compute_groups returned tuple instead of pkg_id
8 years ago
Niels Thykier a14ced6403 Drop now unused "from __future__" imports
8 years ago
Niels Thykier 7af650d36d "selected" is never None in iter_packages
8 years ago
Niels Thykier ecf95229d3 Use asserts to guard single binary removal items
8 years ago
Niels Thykier 9ca30aac81 Rename a variable for clarity reasons
8 years ago
Niels Thykier 9c563f1a96 Move data classes into britney2/__init__.py
8 years ago
Niels Thykier 6360daf8c5 Assert that binaries have sensible arch values
8 years ago
Niels Thykier 20c2b87833 Sprinkle some "no cover" pragmas over the code base
8 years ago
Martin Pitt 15fdf960d7 Use Excuse.is_valid when iterating through checks and Policies
8 years ago
Niels Thykier e13763d335 Refactor out some some hash lookup in _compute_groups
8 years ago
Niels Thykier 636f349def Correct description to say "Release" instead of "InRelease"
8 years ago
Niels Thykier 0e30d5c170 Use suite-info to provide the excuses suffix
8 years ago
Niels Thykier 50d4d45c59 Collect suite metadata in a new member hash
8 years ago
Niels Thykier dfaf0c63c3 Pull defaults for Components and Architectures from Release
8 years ago
Niels Thykier c86e1f7e9c britney: Skip architectures not listed in Release files
8 years ago
Niels Thykier 9bc94db01c Refactor all modules into a britney2 subdir
8 years ago
Niels Thykier 2bc523169b britney: Be less forgiving about unsatisfiable depends
8 years ago
Niels Thykier 0952d0b8c7 britney: Remove redundant if and obsolete comment
8 years ago
Martin Pitt e934ba1bb7 Move updating of excuses into policies
8 years ago
Martin Pitt dc52f019bc Pass excuse to BasePolicy.apply_policy()
8 years ago
Martin Pitt 7ded1c85db Move build checks before running policies
8 years ago
Colin Watson e5e6d7e5b7 Make removal of obsolete source packages configurable
8 years ago
Colin Watson fe7cc466e1 Rename fucked_arches to outofsync_arches
8 years ago
Niels Thykier 0664c580b0 Prefer s.x to s[X] for SourcePackage objects
8 years ago
Niels Thykier 5a19b4f74d Create a SourcePackage class
8 years ago
Niels Thykier cd7cdda61e britney: Remove out a tuple lookup in get_dependency_solvers
8 years ago
Niels Thykier f414b12130 britney: Make read_binaries read all binaries for a suite
8 years ago
Niels Thykier ea166f5bd3 britney -> util: Extract a "create_provides_map"
8 years ago
Robert Bruce Park 190be31014 Python loop performance enhancements.
8 years ago
Niels Thykier 34d27bbd15 britney.py: Make hinted removal excuses valid
8 years ago
Mathieu Trudel-Lapierre 31669ac5bd Update whitespace; make the output easier to read
8 years ago
Niels Thykier d43311be03 Support policies registering their own hints
8 years ago
Niels Thykier 948d15d536 HintParser: Support adding new hints to the parser
8 years ago
Niels Thykier 13417c18e4 hint-tester: Use hint-parser for parsing excuse hints
8 years ago
Niels Thykier 6328b15a9c Change argument order for HintCollection.add_hint
8 years ago
Niels Thykier ac13904f2a Really ignore nuninst issues for break arches
9 years ago
Niels Thykier 5dc162404f Actually forgive missing Packages files for new arches
9 years ago
Niels Thykier ac670bc75e Forgive missing Packages files for new arches
9 years ago
Niels Thykier 2fadfe3724 britney.py: Fix typo in variable name
9 years ago
Niels Thykier cb248a23eb Add more items to excuses.yaml
9 years ago
Niels Thykier 2fd6c59460 Ignore nuninst out-of-sync issues on break-arches
9 years ago
Niels Thykier d76ccaca3b Show missing builds for age-less items in excuses.html
9 years ago
Julien Cristau e2c7dc97d6 Use https for links in excuses.html
9 years ago
Julien Cristau 8545dc972a Fix link to source package bug page
9 years ago
Niels Thykier 855fe68009 Make tpu optional in the config file
9 years ago
Niels Thykier c224c55d88 Add a "block-all new-source" hint
9 years ago
Niels Thykier 481f7fde08 auto-hinter: Reduce size of inner loop
9 years ago
Niels Thykier e517c3f315 auto-hinter: Remove some now redundant conditionals
9 years ago
Niels Thykier 3294c99036 auto-hinter: Prune size of valid excuses and their deps
9 years ago
Niels Thykier 43266ee091 auto hinter: Prune some duplicates earlier
9 years ago
Niels Thykier 463d1a67d9 Prefer pkg_id.foo to pkg_id[X]
9 years ago
Niels Thykier 429e8f1199 britney.py: Turn pkg_ids into namedtuples
9 years ago
Niels Thykier bee0a99528 Reuse pkg_ids instead of creating them ad-hoc
9 years ago
Niels Thykier 71d181aa83 Add pkg_id field to BinaryPackage
9 years ago
Niels Thykier 856bbba232 Add missing "None" guard for faux packages
9 years ago
Niels Thykier c14ee0410b Let hintdir specific the actual directory of hints files
9 years ago
Niels Thykier 1ee1375d38 britney: Fix bug in reading d-i Packages
9 years ago
Niels Thykier f23a72dcdb britney2: Mirror layout - also read d-i Packages files
9 years ago
Niels Thykier 3c0dcf0de3 britney: Permit comments in Package-List field of constraints
9 years ago
Niels Thykier e50037a7da constraints parsing: Fix off-by-one in split
9 years ago
Niels Thykier 3fde3ca7a0 Make Faux packages default to non-free
9 years ago
Niels Thykier 17a8fd6cdc Correct error message to use the real field name
9 years ago
Niels Thykier c9ed47ca6d britney.py: Remove unused import
9 years ago
Niels Thykier ccb473e19f britney.py: Support compressed Packages/Sources
9 years ago
Niels Thykier 398c7a4959 Add support for loading faux packages
9 years ago
Niels Thykier 58b704f3d0 britney.py: Extract a _parse_provides method
9 years ago
Niels Thykier 7ccbfe2fdf Make "Keep-installable" constraints overrule nuninst counters
9 years ago
Niels Thykier f3e37faf7e Add present-and-installable constraints support
9 years ago
Niels Thykier ec37bd06aa Optimise checking of affected packages
9 years ago
Niels Thykier a4daee0866 britney.py: Optimise scheduling a bit
9 years ago
Niels Thykier ac66e3118d Reject some excuses with unsatisfiable depends
9 years ago
Niels Thykier 8991889fad Prefer pkg.foo to pkg[FOO] for binary packages
9 years ago
Niels Thykier 4eebb5180f Make binary packages a namedtuple
9 years ago
Niels Thykier 7230cd29c0 Re-order parsing of suites to avoid changing binary pkgs
9 years ago
Niels Thykier c4e7596837 read_pkgs: Parse Provides a bit earlier
9 years ago
Niels Thykier 946d705e2b read_pkgs: Refactor source+src_version parsing
9 years ago
Niels Thykier eb2c6aad27 Remove redundant notes about arch:all packages
9 years ago
Niels Thykier 5d31eee805 Add block/unblock-hint info to excuses.yaml
9 years ago
Niels Thykier 1028860c53 Move missing-builds/cruft to excuses
9 years ago
Niels Thykier 1400fa1384 Remove "Not considered" note from excuses.yaml
9 years ago
Niels Thykier 63b08f8278 Optimise a few hints.search calls
9 years ago
Niels Thykier 6d6a7ac529 Move RC bug handing into a policy
9 years ago
Niels Thykier 5ec3aea43a Move age-handling into a separate file
9 years ago
Niels Thykier 4ced8a3d41 britney.py: Fix crash with arch:all packages being shadowed
9 years ago
Niels Thykier 8ab7fc0e89 Avoid some unnecessary effort in compuing "affected"
9 years ago
Niels Thykier 38a198e8b2 Replace some string concat+split with tuples
9 years ago
Niels Thykier 1ddf63e14b britney.py: Remove uncommented printf debugging
9 years ago
Niels Thykier 28f69fa505 britney.py: Log when old libs are present but not removed
9 years ago
Niels Thykier b5db57715b Move two installability testing functions to britney_util
9 years ago
Niels Thykier 05de911090 Make excuses a dict rather than a list
9 years ago
Niels Thykier 9b9d44db3a Move some of the hint parsing into hints.py
9 years ago
Niels Thykier 5083311ec2 britney.py: Rename __log to log
9 years ago
Niels Thykier 7b0d4023d0 britney.py: Remove redundant open before TagFile
9 years ago
Niels Thykier 5bbca73391 Make components and --control-files mutually exclusive
9 years ago
Anthony Towns 496e48c9a7 britney.py: Add support for multiple components
9 years ago
Niels Thykier e2b98872cf Refactor some local expressions
9 years ago
Niels Thykier 7e475cd9f9 britney.py: assert provides table is up to date
9 years ago
Niels Thykier 3ff01b5ec9 britney.py: Avoid creating empty lists for provides
9 years ago
Emilio Pozuelo Monfort 203466bb51 Fix migration for sources with old cruft that isn't in testing
9 years ago
Niels Thykier efd3359aba britney.py: Remove unused named parameter
9 years ago
Niels Thykier 22cef671a5 Refactor some code to avoid unnecessary table lookups/checks
9 years ago
Niels Thykier 12d9ae8fa3 Use pkg_id instead pkg/arch in BINARIES
9 years ago
Niels Thykier aa34a47f8a Remove all calls to "same_source" - they were overkill
9 years ago
Niels Thykier 179ced304d britney: Work around bug 815995
9 years ago
Niels Thykier 6965dda5f7 Support versioned provides (without multi-arch)
9 years ago
Niels Thykier 7fcb6e3354 Partially support versioned provides
9 years ago
Niels Thykier 176fe04c98 Use sets in the provides-table
9 years ago
Niels Thykier 19e54380c3 Store the pkg_id in undo instead of the package info
9 years ago
Niels Thykier f5a52fcec4 britney.py: Add all_binaries to store binaries by pkg_id
9 years ago
Niels Thykier 92deb4d1b9 britney.py: Avoid some throw-away creation of collections
9 years ago
Niels Thykier dc8ae9e1ce britney.py: Fix typo
9 years ago
Niels Thykier 52a1dd6ffa britney.py: Remove some redundant if-statements
9 years ago
Niels Thykier 31377a7c39 Move loop invariant out of the loop
9 years ago
Niels Thykier da5e797fc9 Remove unused variables/assignments
9 years ago
Paul Wise cd66fc82d8 Do not hard-code codenames in the URL to the freeze policy
9 years ago
Niels Thykier 505e31b106 britney.py: Remove unused import
9 years ago
Emilio Pozuelo Monfort f6c974fdb7 Point to the Stretch freeze policy
9 years ago
Emilio Pozuelo Monfort 3bd5380afc britney.py: Fix migration of binNMUs for sources that have cruft
9 years ago
Adam D. Barratt 8480e1859c Always output excuses for packages with "wrong source" issues
9 years ago
Niels Thykier 1e99c780da britney.py: Fix the hint tester
9 years ago
Niels Thykier 3b610160ad britney.py: Update nuninst after writing the "accepted" stats
9 years ago
Niels Thykier 9c3d0afaf5 britney.py: Remove sort_actions, we no longer need it
9 years ago
Niels Thykier bbc6c34ca5 britney.py: Make iter_packages repeat until no more actions work
9 years ago
Niels Thykier 326cc0d98b Rewrite the main run to use the solver and allow combined migrations
9 years ago
Niels Thykier 65f74c226d Make try_migration support multiple actions
9 years ago
Niels Thykier 13d4d4801b britney: Factor out a try_migration method
9 years ago
Niels Thykier 6db0ed5ac8 britney: Move table lookup out of get_dependency_solvers
9 years ago
Niels Thykier 681a7b8cd7 Log when compiling Installability tester
9 years ago
Niels Thykier a9ee64470e Always use pkg ids in the InstallabilityTester API
9 years ago
Niels Thykier 2914a8a51b britney.py: Verify nuninst before updating control files
9 years ago
Niels Thykier 7736b53c60 Drop now unused register_reverses and RDEPENDS
9 years ago
Niels Thykier 3d5d328738 Use inst_tester to compute smooth updatable binaries
9 years ago
Niels Thykier 5123bc2317 Remove the now unused RCONFLICTS field
9 years ago
Niels Thykier 289807463e Rewrite computation and testing of "affected" packages
9 years ago
Niels Thykier 58edb64c99 Update nuninst correctly for arch:any -> arch:all migrations
9 years ago
Niels Thykier f3a8181bda britney.py: Fix statement without an effect
9 years ago
Niels Thykier 7c5fdc8aca britney.py: Use "is" rather than "==" for None comparisons
9 years ago
Ivo De Decker 606dbcb470 ignore arch all when looking for up-to-date bins
9 years ago
Ivo De Decker 984b07b58e Don't remove outdated binaries for fucked arches if they are in unstable
9 years ago
Ivo De Decker 88bf620896 Add option to ignore cruft
9 years ago
Cyril Brulebois d2fa0fb07c excuses: New try for block-udeb → d-i RM.
10 years ago
Cyril Brulebois d2bdcfc237 Revert "excuses: Point to the d-i release manager when block-udeb is involved."
10 years ago
Cyril Brulebois 6adee798cd excuses: Point to the d-i release manager when block-udeb is involved.
10 years ago
Niels Thykier 5f98e6b37b Create a clone_nuninst function for iter_packages{,_hint}
10 years ago
Niels Thykier da83e4cc23 iter_pkg: Refactor nuninst cloning
10 years ago
Niels Thykier 0043b09c45 britney.py: Avoid some O(n) look-ups in the auto-hinter
10 years ago
Niels Thykier 843952d627 Avoid O(n^2) duplication handling when building hints
10 years ago
Niels Thykier 72eb6af711 britney: Optimise original auto-hinter duplication handling
10 years ago
Niels Thykier 0b9006c36b britney.py: Pre-split self.options.*_arches
10 years ago
Niels Thykier bf3aa08023 britney.py: Minor optimisation to sort_actions
10 years ago
Niels Thykier d5cfd5aebd britney.py: Remove redundant arg to format
10 years ago
Niels Thykier e725647175 Be verbose when rejecting a hint due to invalid candidates
10 years ago
Niels Thykier d017fe1a8c Remove "leading" from hints - it provides no new information
10 years ago
Niels Thykier 2047eb1e50 Remove unused local variable
10 years ago
Adam D. Barratt b4bed1ca62 britney.py: reverse sense of tests for architecture-indep packages
10 years ago
Adam D. Barratt bc037efccb britney.py: typo fixes
10 years ago
Adam D. Barratt 11eef30869 britney.py: drop inaccurate comment
10 years ago
Anthony Towns c7fbe91b2a britney: Take more care with hijacked binaries
10 years ago
Niels Thykier d911314c2d britney.py: Enable the new consistency checks by default
10 years ago
Niels Thykier 0c5651576a britney.py: Skip ESSENTIAL consistency check
10 years ago
Anthony Towns c28bc84f57 britney: Check for mismatched packages between suites.
10 years ago
Niels Thykier b4e4ba4681 Collect more statistics from the installability tester
10 years ago
Niels Thykier 2a34970304 Compute simple stats installability tester graph
10 years ago
Niels Thykier 074eb46766 Remove unused assignments/parameters
10 years ago
Niels Thykier bfb71f966b britney.py: Remove trailing semi-colons
10 years ago
Niels Thykier 8623ffc224 britney.py: Fix use before assignment
10 years ago
Niels Thykier 74060e4e0a britney.py: Avoid some redundancy in auto_hinter()
10 years ago
Niels Thykier 2f663fa7b9 britney: Optimise the original auto-hinter a bit
10 years ago
Niels Thykier be1ee0fcd3 get_dependency_solvers: Avoid unnecessary boolean ret value
10 years ago
Julien Cristau b9f30120ad Fix silly NameError
10 years ago
Julien Cristau 994906c673 Add explicit encoding to all files
10 years ago
Julien Cristau fb2f30bcef Sources and Packages are utf-8
10 years ago
Julien Cristau d86c7b9c7a Don't crash if the urgencies file contains non-ascii
10 years ago
Julien Cristau 6c344589ee Remove dependency on six
10 years ago
Julien Cristau 354f6a6bc9 Use python3
10 years ago
Julien Cristau 18f7101847 Use six.moves for itertools, urllib and intern
10 years ago
Julien Cristau 90f5993c4a Use the key= argument to sorted()
10 years ago
Julien Cristau c79c0848e5 Stop using sys.maxint
10 years ago
Julien Cristau 2eee806263 Stop using dict.iter* methods
10 years ago
Julien Cristau 16f77bf6f9 Use python3-compatible form for except clause
10 years ago
Julien Cristau 4249d3868a Replace map() with list comprehensions
10 years ago
Julien Cristau 94666b55f9 Simplify a bit the loop to read our config file
10 years ago
Julien Cristau 58a6a6ed1d Don't use the file builtin
10 years ago
Julien Cristau 94f18322db Switch to print_function
10 years ago
Julien Cristau 6371eaf102 Remove sys.path frobbing
10 years ago
Julien Cristau 20ffcc6dc5 Fix typo
10 years ago
Niels Thykier 9d5f47a9b7 britney: Ignore "remark" hints as they are not meant for us
10 years ago
Ivo De Decker 371ad09113 excuses: show cruft and missing builds
10 years ago
Ivo De Decker 0e90214698 Link to the freeze policy for blocked packages
10 years ago
Adam D. Barratt 09f7ab83cf Don't remove arch:all binaries when migrating *pu binNMUs
10 years ago
Niels Thykier ef45659797 britney.py: Fix bug where nuninst would be copied incorrectly
10 years ago
Niels Thykier 97fcba644c britney.py: Fix a regression in nuninst counting for hints
11 years ago
Niels Thykier bae9338a74 do_all(): Only sort_actions after recurse runs
11 years ago
Niels Thykier 822d847c11 britney.py: Skip lundo maintenance in non-hint recurse runs
11 years ago
Niels Thykier 04afa83ad8 Avoid unnecessary nuninst regressions for break archs
11 years ago
Niels Thykier a2d63a1c73 Move the nuninst checker function to britney_util
11 years ago
Niels Thykier d93f299fe5 britney.py: Avoid making migration items from migration items
11 years ago
Niels Thykier f88bcd98a2 britney.py: Save a table look up
11 years ago
Niels Thykier 0714b3bed8 britney.py: Correct the hash key in nuninst_arch_report
11 years ago
Niels Thykier 4383fe93a5 britney.py: Use defaultdict instead of "{}.setdefault"
11 years ago
Niels Thykier 12691baa87 Exploit equivalency to skip unneeded computation
11 years ago
Niels Thykier 37608071e9 britney.py: Refactor doop_source
11 years ago
Niels Thykier e9a7a07856 doop_source: Remove unncessary table loop up
11 years ago
Niels Thykier baa9eebc5c doop_source: Remove redundant part of the return value
11 years ago
Niels Thykier a46dd88709 britney.py: Split iter_packages into two
11 years ago
Niels Thykier c25e7f9cd7 britney.py: Handle version-ranged dependencies a bit smarter
11 years ago
Niels Thykier e45f2fe84e britney.py: _compute_groups returns sets of tuples, not str
11 years ago
Niels Thykier d63b5a95d8 britney.py: dict does not have a .add (in _compute_groups)
11 years ago
Niels Thykier 8251b56e66 britney.py: Fix use of undefined variable
11 years ago
Adam D. Barratt 791b71d441 Remove an obsolete comment
11 years ago
Niels Thykier 1306eb664d Britney: Fix malformed removal hints from auto hinter
11 years ago
Niels Thykier afa9a543b1 britney.py: Fix bug with hinting removals
11 years ago
Niels Thykier 2079b1fb5e Add auto hinter on top of the new installability tester
11 years ago
Niels Thykier d90681eca2 Handle smooth updates better in "easy"-hints
11 years ago
Niels Thykier 643b1098d1 Rewrite, rename and extend find_upgraded_binaries
11 years ago
Niels Thykier d359759e9d Move "old_libraries" to britney_util
11 years ago
Niels Thykier 5ddd9ebc36 Move write_controlfiles to britney_util
11 years ago
Niels Thykier b429d4871e Factor write_sources into its own function
11 years ago
Niels Thykier 691bda4bd8 Write "HeidiResultDelta" file containing the changes of the run
11 years ago
Niels Thykier 7f471eca25 britney.py: Remove obsolete comment about AIEEE
11 years ago
Ivo De Decker 9345e9f6fe Add note when a pkg is being removed because it is not in sid
11 years ago
Niels Thykier a378bb6060 util: Add new "write_excuses" function
11 years ago
Ivo De Decker 87813401bf handle export for excuse with 'force'
11 years ago
Ivo De Decker a037c189e9 add remove reason when package not in unstable
11 years ago
Ivo De Decker 68d2d54663 first attempt at adding reason
11 years ago
Ivo De Decker 6a7aeac400 add bug list to yaml
11 years ago
Ivo De Decker ab4de3b93c first attempt at yaml logging
11 years ago
Ivo De Decker 9d79ce7297 if hintsdir is defined, read hints from there
11 years ago
Ivo De Decker cd242ff453 read hints earlier
11 years ago
Ivo De Decker 581204696c if outputdir is defined, write dates file there
11 years ago
Julien Cristau 7eef861a15 Fix urgency reading to obey 'low'
11 years ago
Julien Cristau 7966ceae1a Change the default urgency setting to medium
11 years ago
Niels Thykier ea4e4493a2 Remove the old installability tester
11 years ago
Niels Thykier 7051d5b0e9 Rewrite installability tester
11 years ago
Niels Thykier cf84bcfa58 Defer building the nun-inst cache
11 years ago
Adam D. Barratt 69b3154d79 Apply various typo and clarity fixes
11 years ago
Adam D. Barratt f2f9939f20 Remove the C library placeholder for "pre-depends"
11 years ago
Colin Watson b9f6417351 Support :any architecture qualifiers for multiarch
11 years ago
Adam D. Barratt 253590ba27 Update copyright
11 years ago
Adam D. Barratt 1b89f7fa22 Rename make_hintitem() to make_migrationitem()
11 years ago
Adam D. Barratt f284e76cc4 Make MigrationItems versionned by default
11 years ago
Adam D. Barratt 909dd08542 Replace uses of MigrationItem with HintItem
11 years ago
Niels Thykier c91cfe64ae Reduce the number of "used-once" lists
12 years ago
Niels Thykier 6c81d39c2f Move newlyuninst to britney_util
12 years ago