in multiversion/src/main/scala/multiversion/loggers/Word.scala [36:48]
private def byteCount(bytes: Long, si: Boolean = false) = {
val unit = if (si) 1000 else 1024
if (bytes < unit)
bytes + " B"
else {
val prefixes = if (si) "kMGTPE" else "KMGTPE"
val exp = (math.log(bytes) / math.log(unit)).toInt min prefixes.length
val pre = prefixes.charAt(exp - 1) + (if (si) "" else "i")
val n = bytes / math.pow(unit, exp)
if (exp < 2) f"${n}%.1f ${pre}B"
else f"${n}%.2f ${pre}B" // Use more precision once we go over 1 GiB
}
}