Subject: Re: [PATCH ethtool-next 09/14] qsfp: Add JSON output handling to --module-info in SFF8636 modules

From: Petr Machata <[email-masked]>
Date: Wed, 29 Jan 2025 11:44:26 +0100

Danielle Ratson <[email-masked]> writes:

> From: Jakub Kicinski <[email-masked]>
>> 
>> On Sun, 26 Jan 2025 13:56:30 +0200 Danielle Ratson wrote:
>> > +		open_json_object("extended_identifier");
>> > +		print_int(PRINT_JSON, "value", "0x%02x",
>> > +			  map->page_00h[SFF8636_EXT_ID_OFFSET]);
>> 
>> Hm, why hex here?
>> Priority for JSON output is to make it easy to handle in code, rather than easy
>> to read. Hex strings need extra manual decoding, no?
>
> I kept the same convention as in the regular output.
>
> And as agreed in Daniel's design those hex fields remain hex fields and are followed by a description field.
>
> Do you think otherwise?  

Regular output is for human consumption, JSON is for machine
consumption. IMHO it makes sense to reasonably diverge and use the
"correct" JSON type where available, even if the human-readable output
is different. So numbers should IMHO be numbers, true / false, yes / no,
off / on etc. should probably be booleans, arrays should be arrays, etc.