mirror of
https://github.com/anchore/syft
synced 2024-11-10 14:24:12 +00:00
f9407d0ce4
* Adds java and npm package comparison * Adds probable matching of extra packages syft found and missing packages that syft did not find (but inline did). This way there is a section of output that fuzzy-matches the package names to get a better sense of "real" problems (actual missing packages) vs slightly mismatched metadata during troubleshooting. * Adds a set or probable missing packages to the report based on the probable matches (again, to aid in troubleshooting) * Fixes image reference clean function to support references with registries * Only shows metadata differences when the package was found by both inline and syft * Splits the inline-compare code into more manageable pieces Signed-off-by: Alex Goodman <alex.goodman@anchore.com>
46 lines
1.2 KiB
Python
46 lines
1.2 KiB
Python
class Colors:
|
|
reset = "\033[0m"
|
|
bold = "\033[01m"
|
|
disable = "\033[02m"
|
|
underline = "\033[04m"
|
|
reverse = "\033[07m"
|
|
strikethrough = "\033[09m"
|
|
invisible = "\033[08m"
|
|
|
|
class FG:
|
|
black = "\033[30m"
|
|
red = "\033[31m"
|
|
green = "\033[32m"
|
|
orange = "\033[33m"
|
|
blue = "\033[34m"
|
|
purple = "\033[35m"
|
|
cyan = "\033[36m"
|
|
lightgrey = "\033[37m"
|
|
darkgrey = "\033[90m"
|
|
lightred = "\033[91m"
|
|
lightgreen = "\033[92m"
|
|
yellow = "\033[93m"
|
|
lightblue = "\033[94m"
|
|
pink = "\033[95m"
|
|
lightcyan = "\033[96m"
|
|
|
|
class BG:
|
|
black = "\033[40m"
|
|
red = "\033[41m"
|
|
green = "\033[42m"
|
|
orange = "\033[43m"
|
|
blue = "\033[44m"
|
|
purple = "\033[45m"
|
|
cyan = "\033[46m"
|
|
lightgrey = "\033[47m"
|
|
|
|
|
|
def print_rows(rows):
|
|
if not rows:
|
|
return
|
|
widths = []
|
|
for col, _ in enumerate(rows[0]):
|
|
width = max(len(row[col]) for row in rows) + 2 # padding
|
|
widths.append(width)
|
|
for row in rows:
|
|
print("".join(word.ljust(widths[col_idx]) for col_idx, word in enumerate(row)))
|