[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#795314: marked as done (ben: use a different colour for packages that are both good and bad)



Your message dated Fri, 14 Aug 2015 22:48:50 +0000
with message-id <E1ZQNmM-0000Wv-F2@franck.debian.org>
and subject line Bug#795314: fixed in ben 0.7.1
has caused the Debian Bug report #795314,
regarding ben: use a different colour for packages that are both good and bad
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact owner@bugs.debian.org
immediately.)


-- 
795314: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=795314
Debian Bug Tracking System
Contact owner@bugs.debian.org with problems
--- Begin Message ---
Source: ben
Version: 0.7
Severity: wishlist
Tags: patch

Silly though it might sound, it is possible for ben to consider
a package to be both good and bad. For instance, in the current
libsigc++-2.0 transition, glibmm2.4 is in both states.

I think this might be because old binaries are being kept around
for those source packages in order to satisfy untransitioned packages'
dependencies?

Colouring those packages differently might make it easier to see where
action has and hasn't been taken, in extensively entangled transitions
(naming no C++ ABIs in particular).

The attached seems to produce a vaguely reasonable monitor page, but
please test and review thoroughly, I have no idea how either ben or
ocaml works...

    S
>From 241cd53ff6bdbe3992d57f3a8878e98b853743c7 Mon Sep 17 00:00:00 2001
From: Simon McVittie <smcv@debian.org>
Date: Wed, 12 Aug 2015 21:04:11 +0100
Subject: [PATCH] Add a new Partial category for packages that are both good
 and bad

This can happen if:

* one binary package from a source is good and another is bad
* the good and bad expressions are not mutually exclusive
* the package is good but has undergone a SONAME transition,
  and old (bad) binaries are being kept around to satisfy
  other packages' dependencies
---
 frontends/ben_monitor.ml | 18 ++++++++++++++++--
 lib/benl_base.ml         |  4 +++-
 media/styles.css         |  5 +++++
 3 files changed, 24 insertions(+), 3 deletions(-)

diff --git a/frontends/ben_monitor.ml b/frontends/ben_monitor.ml
index 3742f62..af52d76 100644
--- a/frontends/ben_monitor.ml
+++ b/frontends/ben_monitor.ml
@@ -73,6 +73,7 @@ let format_arch x =
     | Unknown -> (fun x -> "."^x^".")
     | Up_to_date -> (fun x -> "("^x^")")
     | Outdated -> (fun x -> "["^x^"]")
+    | Partial -> (fun x -> "¿"^x^"?")
   in
   let f =
     if !use_colors then
@@ -80,6 +81,7 @@ let format_arch x =
         | Unknown -> f
         | Up_to_date -> (fun x -> "\027[32m"^(f x)^"\027[0m")
         | Outdated -> (fun x -> "\027[1m\027[31m"^(f x)^"\027[0m")
+        | Partial -> (fun x -> "\027[33m"^(f x)^"\027[0m")
     else f
   in f
 
@@ -141,7 +143,10 @@ let relevant_arch arch_ref arch_pkg =
 
 let compute_state config pkg =
   if Query.eval_binary pkg !!(is_bad config) then
-    Outdated
+    if Query.eval_binary pkg !!(is_good config) then
+      Partial
+    else
+      Outdated
   else if Query.eval_binary pkg !!(is_good config) then
     Up_to_date
   else
@@ -149,6 +154,10 @@ let compute_state config pkg =
 
 let combine_states state1 state2 =
   match state1, state2 with
+    | Partial, _
+    | _, Partial -> Partial
+    | Outdated, Up_to_date
+    | Up_to_date, Outdated -> Partial
     | Outdated, _
     | _, Outdated -> Outdated
     | Up_to_date, _
@@ -285,7 +294,10 @@ let overrall_state l =
   if List.for_all (fun (_,(_,status)) -> status = Unknown) release_archs then
     Unknown
   else if List.for_all (fun (_,(_,status)) -> status <> Outdated) release_archs then
-    Up_to_date
+    if List.for_all (fun (_,(_,status)) -> status <> Partial) release_archs then
+      Up_to_date
+    else
+      Partial
   else
     Outdated
 
@@ -309,6 +321,8 @@ let generate_stats monitor_data =
           match overrall_state with
           | Outdated when (not !Benl_data.use_projectb || is_in_testing) ->
               return (all+1) (bad+1)
+          | Partial when (not !Benl_data.use_projectb || is_in_testing) ->
+              return (all+1) (bad+1)
           | Up_to_date ->
               return (all+1) bad
           | _ ->
diff --git a/lib/benl_base.ml b/lib/benl_base.ml
index 28a0e94..fbd25d2 100644
--- a/lib/benl_base.ml
+++ b/lib/benl_base.ml
@@ -68,17 +68,19 @@ let debian_ports_architectures =
     "m68k"; "powerpcspe"; "ppc64";
     "sh4"; "sparc64"; "x32" ]
 
-type status = Unknown | Up_to_date | Outdated
+type status = Unknown | Up_to_date | Outdated | Partial
 
 let string_of_status = function
   | Unknown -> " "
   | Up_to_date -> "✔"
   | Outdated -> "✘"
+  | Partial -> "⁈"
 
 let class_of_status = function
   | Unknown -> "unknown"
   | Up_to_date -> "good"
   | Outdated -> "bad"
+  | Partial -> "partial"
 
 module Version : sig
 
diff --git a/media/styles.css b/media/styles.css
index 112ce21..f19d45e 100644
--- a/media/styles.css
+++ b/media/styles.css
@@ -53,6 +53,11 @@ div.footer {
   text-align: center;
 }
 
+.partial {
+  background: Orange;
+  text-align: center;
+}
+
 .unknown {
   background: Cornsilk;
   text-align: center;
-- 
2.5.0


--- End Message ---
--- Begin Message ---
Source: ben
Source-Version: 0.7.1

We believe that the bug you reported is fixed in the latest version of
ben, which is due to be installed in the Debian FTP archive.

A summary of the changes between this version and the previous one is
attached.

Thank you for reporting the bug, which will now be closed.  If you
have further comments please address them to 795314@bugs.debian.org,
and the maintainer will reopen the bug report if appropriate.

Debian distribution maintenance software
pp.
Mehdi Dogguy <mehdi@debian.org> (supplier of updated ben package)

(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing ftpmaster@ftp-master.debian.org)


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256

Format: 1.8
Date: Sat, 15 Aug 2015 00:17:37 +0000
Source: ben
Binary: libben-ocaml-dev libben-ocaml ben
Architecture: source amd64
Version: 0.7.1
Distribution: unstable
Urgency: medium
Maintainer: Debian OCaml Maintainers <debian-ocaml-maint@lists.debian.org>
Changed-By: Mehdi Dogguy <mehdi@debian.org>
Description:
 ben        - toolbox for Debian maintainers
 libben-ocaml - OCaml libraries for Debian maintainers (runtime package)
 libben-ocaml-dev - OCaml libraries for Debian maintainers (development package)
Closes: 747875 747883 792054 795314
Changes:
 ben (0.7.1) unstable; urgency=medium
 .
   [ Paul Wise ]
   * cdn.debian.net has been deprecated, replace it with http.debian.net
 .
   [ Mehdi Dogguy ]
   * Ignore potential errors when deleting lock file
   * Use FileUtil.rm instead of calling /bin/rm
   * Replaces uses of Benl_core.list_iteri with List.iteri, which requires
     OCaml >= 4.0.
   * Call dose-debcheck with --deb-native-arch
   * Make build reproducible (Closes: #792054)
   * Add a note about order of command-line flags in documentation (Closes: #747875)
   * Add Json output format in monitor (Closes: #747883)
   * Drop --text, --xhtml and --color in favor of --output-format|-f
 .
   [ Emilio Pozuelo Monfort ]
   * Fix buildd.debian.org compact links
 .
   [ Simon McVittie ]
   * Add a new Partial category for packages that are both good and bad
     (Closes: #795314).
Checksums-Sha1:
 23270a91b7ff56eb7fd998da2b8e48971c0d697c 2097 ben_0.7.1.dsc
 a245f1c9a8275986c50baa21b4de2e6742ff0c10 84456 ben_0.7.1.tar.xz
 5b2c0107b60084f7ec52004350574b93379d431a 982740 ben_0.7.1_amd64.deb
 38eeacad017bb9aa33cad2ecb6ea193ce923ffd0 137702 libben-ocaml-dev_0.7.1_amd64.deb
 6b383949b2e5538c2492057e79506e5df46b290f 136712 libben-ocaml_0.7.1_amd64.deb
Checksums-Sha256:
 0130ef2d0c4adb566119ff1055dca43c8aba7a5432fed797b6b38f8a0893657b 2097 ben_0.7.1.dsc
 eefb983a9b3f776688ff09854567c97613f5c17640a150808db502b17a770087 84456 ben_0.7.1.tar.xz
 f9e08aa462ceb2861a439cbc7fe77f44bfd247dcdabed769ae23493a09a06a35 982740 ben_0.7.1_amd64.deb
 fc1afe7f31c0ca234c3c04dc87d5f0794cb8948ff5db271a73b0bbdaf50f556f 137702 libben-ocaml-dev_0.7.1_amd64.deb
 12864dbb2ca551e7bb374e7de69e2946aef3819768ac4b708ee95aae66c9c7e2 136712 libben-ocaml_0.7.1_amd64.deb
Files:
 305220a3c24c9a6d8979e2164528f01f 2097 ocaml optional ben_0.7.1.dsc
 265b3ac7402a704bb6fe3aa95eaed497 84456 ocaml optional ben_0.7.1.tar.xz
 4c012e41218a11478338723f5e851107 982740 ocaml optional ben_0.7.1_amd64.deb
 179e9f8300a2586c4a30f5fac31b9639 137702 ocaml optional libben-ocaml-dev_0.7.1_amd64.deb
 6cb8d3901226d25a7f9c34518e264910 136712 ocaml optional libben-ocaml_0.7.1_amd64.deb

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1

iQIcBAEBCAAGBQJVzooPAAoJEDO+GgqMLtj/Y7YQAIaev6H3pJEjFcilYcZjL0G0
s0ZbYUsezKEBmkRMrfUC7oA/WIf4WLruuL5sQ7e8cWv9oPMT+Ux8VdGp8TI/aMEe
p7MDXUHTxRozlNqpPjDF/dUzPcxHyf5IzmqFqoi1UMtctri8J+E0iP5B4AnfOLCa
Lq3yeYIv7MttTmI5Nr/bTpEA7K+3qWC3V5+LES7h6rikA5+8HQVK43BveN+02z8k
D3n57HAbPIGTi5Jan/uriAOQVJiGeyTBZatwnbSe2YxlDxmrhr+WiegQuar/Z+08
+pvnmStC9U55ADxFvndM0pIhmeOCyCQI6/Bfruz3Vd63GCueaXRriT+Y9W0GQzCn
u4UWiwBihyUsI+hiootK/FCEZE8b3uOSVsAFgQWPedAPfqt/vOfQ0SW2MFgxMUtH
5YJi/jLGaJ3wCd2T27yuflhWLdki4eIqpHh9AJ/U+iyeadnIPq8g3gufLuevocWy
iJEpaZ2DWUkU7yGeMgstPQ4ebYFUmBvYuV53sE7/CgUKVIDWX6LlazxdRclndpZ/
nunMulsIh3aIo5NWa4+e8NNOaJ9dOliRsAiqRjmQ4Jp0gbQ+lP5/dk7iUPce/xl4
3msFCziwWbTKSzVc24cbN/zubqmGcbx8cq1Ws2IMDGuTCd1O1owpcUfpl8R5EnTg
wesc2ksvG8fDtlQmigMu
=mCVi
-----END PGP SIGNATURE-----

--- End Message ---

Reply to: