On second thought, I think the first approach is more appropriate. Float formatting is already truncating to 6 digits of precision after the decimal point (and discarding unnecessary zeroes). Since this is a case where we are not applying any kind of calculation to the value parsed from the config then I think we can just rely on the standard float formatting to convey the value we parsed. If we were calculating the user limit then we could definitely run into precision annoyances like 0.250001 instead of 0.25, but since we're not calculating we shouldn't hit them.
So +1 for the original patch. Will commit later today if there are no objections.