support/graph-size: display human-readable size
authorYann E. MORIN <yann.morin.1998@free.fr>
Sat, 17 Aug 2019 17:18:26 +0000 (19:18 +0200)
committerArnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Mon, 26 Aug 2019 20:15:35 +0000 (22:15 +0200)
commit3fc3c4ac99a81d5f473239e3b254ace5d4dfadcf
tree73453e0dc77710e7efdce96e2b761fe43376e93f
parente8de561436fff18a07d95ed95c985fa26c97941e
support/graph-size: display human-readable size

Currently, we forcibly report sizes in multiple of Kilobytes. In some
big configurations, the sizes of the system as a whole, as well as that
of individual packages, may exceed megabytes, and when some artistic
assets get used, even the gigabyte may get exceed.

These big sizes are not easy to read when expressed in kilobytes.

Additionally, some very small packages might have sizes below the
kilobyte (and when we can specify the cut-off grouping size, they may
get reported), and thus the size displayed for those would be 0 kB.

Add a helper function that can format a floating-point size into a
string with all the appropriate formatting:

  - there are at least 3 meaningfull digits visible, i.e. we display
    "3.14" or "10.4" instead of just "3" or "10", but for big number we
    don't care about too many precision either, so we report "100" or
    "1000", not "100.42" or "1000.27";

  - the proper SI prefix is appended, if needed.

Signed-off-by: Yann E. MORIN <yann.morin.1998@free.fr>
Cc: Thomas De Schampheleire <thomas.de_schampheleire@nokia.com>
Signed-off-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
support/scripts/size-stats