859 Commits

Author SHA1 Message Date
Niels Thykier
e069d5e837 Merge remote-tracking branch 'github/master'
Fixes the travis test-runner on github
2018-03-31 05:17:51 +00:00
Niels Thykier
32b2ee326a Use lazy evaluation of format arguments in logging
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-03-30 17:38:50 +00:00
Niels Thykier
b23777c852 britney: Replace all calls to "log" with logger
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-03-30 17:11:10 +00:00
Niels Thykier
8bf73610ee policies: Use logger instead of "log"
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-03-30 17:11:10 +00:00
Niels Thykier
ac69b3b5c7 Migrate hint parser to fully use logging
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-03-30 17:11:10 +00:00
Niels Thykier
5e825043d3 Replace "print" logging with the "logging" module
This commit rewrites the make-shift "log" methods to use the logging
framework without requiring changes to the callers.  This will be done
in a latter commit to keep things reviewable.

Signed-off-by: Niels Thykier <niels@thykier.net>
2018-03-30 17:11:09 +00:00
Niels Thykier
e5d790f592 Typo fix
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-03-24 18:11:14 +00:00
Niels Thykier
0c1147e4e1 test: Fix typo
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-03-24 06:38:21 +00:00
Paul Gevers
2e627f9be5
travis: Disable one live data test to prevent time outs 2018-03-15 16:49:25 +01:00
Paul Gevers
49cd47681b
travis: Enable submission to codecov 2018-03-15 16:46:52 +01:00
Paul Gevers
bc73500002
tests: data has moved to salsa 2018-03-15 11:33:24 +01:00
Paul Gevers
dbf024bf7a
travis: Build Debian stable docker image and use it for testing 2018-03-15 11:33:24 +01:00
Niels Thykier
bc0a5f6e2b britney: Split "ood" and "unsat_deps" loops
The "Out of date" binaries loop has gotten too complex to also handle
the "unsatisifiable dependency" check.  Concretely, we failed to
generate proper excuses for arch:all packages due to this.

Separate the two loops to restore the arch:all check.

Signed-off-by: Niels Thykier <niels@thykier.net>
2018-01-07 13:16:08 +00:00
Niels Thykier
24bd315c20 Update .gitignore
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-01-07 12:19:46 +00:00
Paul Wise
94a3136f64 Drop duplicate 'has new bugs' excuses item
The other item includes bug numbers so this one is less useful.

Closes: https://bugs.debian.org/886509
Signed-off-by: Niels Thykier <niels@thykier.net>
2018-01-07 12:18:13 +00:00
Niels Thykier
20f709e157 doc: Wording/typos
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-12-05 06:31:23 +00:00
Niels Thykier
c11d329d77 Add Makefile to generate documentation
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-12-03 13:00:41 +00:00
Niels Thykier
0f41b1b6df Rewrite hints as restructured text
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-12-03 12:56:48 +00:00
Niels Thykier
90e4bb6ba2 Rewrite documentation in sphinx
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-12-03 12:06:37 +00:00
Niels Thykier
5c3229467a write_heidi: Include cruft arch:all packages in the output
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-11-19 21:47:38 +00:00
Paul Gevers
0b58a313cb
Treat arch:all nearly as regular arch when determining out-of-dateness
Closes #859566
2017-11-17 18:21:15 +01:00
Niels Thykier
7217c22b42 get_dependency_solvers: The "foo:any" modifier can also appear in B-D relations
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-11-12 11:46:17 +00:00
Niels Thykier
2242821c01 BuildDependsPolicy: Add missing build_depends=True to get_dependency_solvers
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-11-12 11:36:35 +00:00
Niels Thykier
c195268019 piuparts: Properly discard the URL for testing
The PiupartsPolicy does not use the report URL for testing, so we do
not need to store it in memory.  Unfortunately, the logic was broken
and the discard did not happen.

Signed-off-by: Niels Thykier <niels@thykier.net>
2017-11-12 08:41:39 +00:00
Niels Thykier
bda39f8ca0 Support :native in build-dependency relations
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-11-12 07:50:49 +00:00
Niels Thykier
89765bc374 BuildDependsPolicy: Keep block_txt and block in sync
If a package had:

  Build-Depends: foo [i386], uninstallable-pkg

Then the excuses for amd64 would point to "foo [i386]" rather than
"uninstallable-pkg".

Signed-off-by: Niels Thykier <niels@thykier.net>
2017-11-11 22:07:49 +00:00
Niels Thykier
ee27d7a67c Add BuildDependsPolicy to check Build-Depends(-Arch) availability
Add a new "BuildDependsPolicy" that will check the satisfiability of
the build-dependencies listed in the Build-Depends and
Build-Depends-Arch fields.  This enables gating of packages based on
missing / broken build-dependencies.

There are some limitations:

 * Build-Depends-Indep is ignored for now.  Missing or broken packages
   listed in Build-Depends-Indep will be continue to be silently
   ignored.

 * Being a policy check, it does not enforce "self-containedness" as
   a package can still migrate before a build-dependency.  However,
   this can only happen if the build-dependency is ready to migrate
   itself.  If the build-dependency is not ready (e.g. new RC bugs),
   then packages build-depending on it cannot migrate either (unless
   the version in testing satisfies there requirements).

Signed-off-by: Niels Thykier <niels@thykier.net>
2017-11-11 15:49:48 +00:00
Niels Thykier
c537f0554f Move PolicyVerdict to britney2.policies 2017-11-02 19:31:11 +00:00
Niels Thykier
784d80ab4c Replace a few lists with sets
We basically use them as sets and do not need to rely on the ordering,
so we might as well just turn them into proper sets.

Signed-off-by: Niels Thykier <niels@thykier.net>
2017-11-02 19:30:40 +00:00
Niels Thykier
94034f225f excuse: Drop unused field
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-11-02 19:29:51 +00:00
Adam D. Barratt
3ee3ba5463 doc/hints.md: subject-number agreement fix
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2017-10-05 17:56:25 +00:00
Adam D. Barratt
f7173b9d66 doc/hints.md: fix another couple of "Britney" -> "britney"
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2017-10-05 17:54:49 +00:00
Adam D. Barratt
5e58d18676 doc/hints.md: remove gendered pronouns, to match other documentation
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2017-10-05 17:54:06 +00:00
Adam D. Barratt
c6170a6042 docs/hints.md: be consistent of capitalisation of "britney"
Only capitalise it at the start of sentences, not within them

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2017-10-05 17:52:27 +00:00
Adam D. Barratt
ac39d2448f doc/hints.md: grammar fix - "if it was" -> "if it were"
This phrasing is the subjunctive mood, for which English always uses
"were"

Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2017-10-05 17:50:10 +00:00
Adam D. Barratt
3220710a6c britney.py: stop referring to the freeze policy while we're not frozen
Signed-off-by: Adam D. Barratt <adam@adam-barratt.org.uk>
2017-09-08 07:43:11 +00:00
Niels Thykier
d3b90e754b britney: Rewrite conditional assignment
The original method confused IntelliJ into thinking that binary_t was
a boolean rather than an object.

Signed-off-by: Niels Thykier <niels@thykier.net>
2017-09-02 11:10:58 +00:00
Niels Thykier
8352d62999 Improve bug example and avoid usage of "RC"
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-08-26 17:29:52 +00:00
Niels Thykier
7e2c62a600 Avoid gendered pronoun for britney
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-08-26 17:17:22 +00:00
Niels Thykier
e2cbe15157 Improve documentation based on review in #d-release
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-08-26 15:18:48 +00:00
Niels Thykier
cb5d888733 doc: Document basic migration handling/debugging
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-08-26 14:09:19 +00:00
Niels Thykier
1042c626ec excuse: Improve text for REJECTED_NEEDS_APPROVAL
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-08-26 12:53:20 +00:00
Niels Thykier
77d737cefe doc/hints.md: New doc based on the RT README for hints
There is no reason why the hint documentation is not in the britney
code base (particularly, as we would be more likely to update it when
we add new hints).

Signed-off-by: Niels Thykier <niels@thykier.net>
2017-08-13 19:25:08 +00:00
Niels Thykier
2692b503d4 Drop auto-generated doxygen documentation
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-08-13 17:13:08 +00:00
Niels Thykier
6e022eed54 test: Add test for a bug I was about to introduce
When I rewrote the compute_scc function into an iterative variant, I
almost included a bug that could make it come up with components that
were not strongly-connected.

Signed-off-by: Niels Thykier <niels@thykier.net>
2017-07-29 08:05:52 +00:00
Niels Thykier
69473eefca solver: Extract compute_scc into a function
Signed-off-by: Niels Thykier <niels@thykier.net>
2017-07-29 07:54:48 +00:00
Niels Thykier
bd375fdd85 solver: Make _compute_scc iterative
Rewrite _compute_scc to be iterative to avoid call recursion limit for
graphs with long dependency chains.

Signed-off-by: Niels Thykier <niels@thykier.net>
2017-07-29 07:40:15 +00:00
Niels Thykier
64653087d0 solver: Fix bug where some items were not emitted
Sometimes the solver would correctly compute which items are grouped
together, but then fail to emit some groups.  This is trivially
fixable by forcing an update of "before" + "after" relations.
Admittedly, this looks unnecessary, so it may just be hiding the bug.

Nonetheless, the change makes the new test_solver_simple_scc test
produce the expected result.

Signed-off-by: Niels Thykier <niels@thykier.net>
2017-07-28 21:36:01 +00:00
Jonathan Wiltshire
981b9333f6 Revert "Implement a mandatory 10 day migration delay"
This reverts commit 0349cd94774d4f7ba675570bb406fb0dbb21ef5f.

Signed-off-by: Jonathan Wiltshire <jmw@debian.org>
2017-06-19 19:11:13 +00:00
Ivo De Decker
363f51fd3b Give myself force and force-hint
Signed-off-by: Ivo De Decker <ivodd@debian.org>
2017-04-09 09:41:20 +00:00